Struct RestrictionPoliciesAPI

Source
pub struct RestrictionPoliciesAPI { /* private fields */ }
Expand description

A restriction policy defines the access control rules for a resource, mapping a set of relations (such as editor and viewer) to a set of allowed principals (such as roles, teams, or users). The restriction policy determines who is authorized to perform what actions on the resource.

Implementations§

Source§

impl RestrictionPoliciesAPI

Source

pub fn new() -> Self

Source

pub fn with_config(config: Configuration) -> Self

Examples found in repository?
examples/v2_restriction-policies_GetRestrictionPolicy.rs (line 8)
6async fn main() {
7    let configuration = datadog::Configuration::new();
8    let api = RestrictionPoliciesAPI::with_config(configuration);
9    let resp = api
10        .get_restriction_policy("dashboard:test-get".to_string())
11        .await;
12    if let Ok(value) = resp {
13        println!("{:#?}", value);
14    } else {
15        println!("{:#?}", resp.unwrap_err());
16    }
17}
More examples
Hide additional examples
examples/v2_restriction-policies_DeleteRestrictionPolicy.rs (line 8)
6async fn main() {
7    let configuration = datadog::Configuration::new();
8    let api = RestrictionPoliciesAPI::with_config(configuration);
9    let resp = api
10        .delete_restriction_policy("dashboard:test-delete".to_string())
11        .await;
12    if let Ok(value) = resp {
13        println!("{:#?}", value);
14    } else {
15        println!("{:#?}", resp.unwrap_err());
16    }
17}
examples/v2_restriction-policies_UpdateRestrictionPolicy.rs (line 23)
12async fn main() {
13    // there is a valid "user" in the system
14    let body = RestrictionPolicyUpdateRequest::new(RestrictionPolicy::new(
15        RestrictionPolicyAttributes::new(vec![RestrictionPolicyBinding::new(
16            vec!["org:00000000-0000-beef-0000-000000000000".to_string()],
17            "editor".to_string(),
18        )]),
19        "dashboard:test-update".to_string(),
20        RestrictionPolicyType::RESTRICTION_POLICY,
21    ));
22    let configuration = datadog::Configuration::new();
23    let api = RestrictionPoliciesAPI::with_config(configuration);
24    let resp = api
25        .update_restriction_policy(
26            "dashboard:test-update".to_string(),
27            body,
28            UpdateRestrictionPolicyOptionalParams::default(),
29        )
30        .await;
31    if let Ok(value) = resp {
32        println!("{:#?}", value);
33    } else {
34        println!("{:#?}", resp.unwrap_err());
35    }
36}
Source

pub fn with_client_and_config( config: Configuration, client: ClientWithMiddleware, ) -> Self

Source

pub async fn delete_restriction_policy( &self, resource_id: String, ) -> Result<(), Error<DeleteRestrictionPolicyError>>

Deletes the restriction policy associated with a specified resource.

Examples found in repository?
examples/v2_restriction-policies_DeleteRestrictionPolicy.rs (line 10)
6async fn main() {
7    let configuration = datadog::Configuration::new();
8    let api = RestrictionPoliciesAPI::with_config(configuration);
9    let resp = api
10        .delete_restriction_policy("dashboard:test-delete".to_string())
11        .await;
12    if let Ok(value) = resp {
13        println!("{:#?}", value);
14    } else {
15        println!("{:#?}", resp.unwrap_err());
16    }
17}
Source

pub async fn delete_restriction_policy_with_http_info( &self, resource_id: String, ) -> Result<ResponseContent<()>, Error<DeleteRestrictionPolicyError>>

Deletes the restriction policy associated with a specified resource.

Source

pub async fn get_restriction_policy( &self, resource_id: String, ) -> Result<RestrictionPolicyResponse, Error<GetRestrictionPolicyError>>

Retrieves the restriction policy associated with a specified resource.

Examples found in repository?
examples/v2_restriction-policies_GetRestrictionPolicy.rs (line 10)
6async fn main() {
7    let configuration = datadog::Configuration::new();
8    let api = RestrictionPoliciesAPI::with_config(configuration);
9    let resp = api
10        .get_restriction_policy("dashboard:test-get".to_string())
11        .await;
12    if let Ok(value) = resp {
13        println!("{:#?}", value);
14    } else {
15        println!("{:#?}", resp.unwrap_err());
16    }
17}
Source

pub async fn get_restriction_policy_with_http_info( &self, resource_id: String, ) -> Result<ResponseContent<RestrictionPolicyResponse>, Error<GetRestrictionPolicyError>>

Retrieves the restriction policy associated with a specified resource.

Source

pub async fn update_restriction_policy( &self, resource_id: String, body: RestrictionPolicyUpdateRequest, params: UpdateRestrictionPolicyOptionalParams, ) -> Result<RestrictionPolicyResponse, Error<UpdateRestrictionPolicyError>>

Updates the restriction policy associated with a resource.

§Supported resources

Restriction policies can be applied to the following resources:

  • Dashboards: dashboard
  • Integration Accounts: integration-account
  • Integration Services: integration-service
  • Integration Webhooks: integration-webhook
  • Notebooks: notebook
  • Powerpacks: powerpack
  • Reference Tables: reference-table
  • Security Rules: security-rule
  • Service Level Objectives: slo
  • Synthetic Global Variables: synthetics-global-variable
  • Synthetic Tests: synthetics-test
  • Synthetic Private Locations: synthetics-private-location
  • Monitors: monitor
  • Workflows: workflow
  • App Builder Apps: app-builder-app
  • Connections: connection
  • Connection Groups: connection-group
  • RUM Applications: rum-application
  • Cross Org Connections: cross-org-connection
  • Spreadsheets: spreadsheet
§Supported relations for resources
Resource TypeSupported Relations
Dashboardsviewer, editor
Integration Accountsviewer, editor
Integration Servicesviewer, editor
Integration Webhooksviewer, editor
Notebooksviewer, editor
Powerpacksviewer, editor
Security Rulesviewer, editor
Service Level Objectivesviewer, editor
Synthetic Global Variablesviewer, editor
Synthetic Testsviewer, editor
Synthetic Private Locationsviewer, editor
Monitorsviewer, editor
Reference Tablesviewer, editor
Workflowsviewer, runner, editor
App Builder Appsviewer, editor
Connectionsviewer, resolver, editor
Connection Groupsviewer, editor
RUM Applicationviewer, editor
Cross Org Connectionsviewer, editor
Spreadsheetsviewer, editor
Examples found in repository?
examples/v2_restriction-policies_UpdateRestrictionPolicy.rs (lines 25-29)
12async fn main() {
13    // there is a valid "user" in the system
14    let body = RestrictionPolicyUpdateRequest::new(RestrictionPolicy::new(
15        RestrictionPolicyAttributes::new(vec![RestrictionPolicyBinding::new(
16            vec!["org:00000000-0000-beef-0000-000000000000".to_string()],
17            "editor".to_string(),
18        )]),
19        "dashboard:test-update".to_string(),
20        RestrictionPolicyType::RESTRICTION_POLICY,
21    ));
22    let configuration = datadog::Configuration::new();
23    let api = RestrictionPoliciesAPI::with_config(configuration);
24    let resp = api
25        .update_restriction_policy(
26            "dashboard:test-update".to_string(),
27            body,
28            UpdateRestrictionPolicyOptionalParams::default(),
29        )
30        .await;
31    if let Ok(value) = resp {
32        println!("{:#?}", value);
33    } else {
34        println!("{:#?}", resp.unwrap_err());
35    }
36}
Source

pub async fn update_restriction_policy_with_http_info( &self, resource_id: String, body: RestrictionPolicyUpdateRequest, params: UpdateRestrictionPolicyOptionalParams, ) -> Result<ResponseContent<RestrictionPolicyResponse>, Error<UpdateRestrictionPolicyError>>

Updates the restriction policy associated with a resource.

§Supported resources

Restriction policies can be applied to the following resources:

  • Dashboards: dashboard
  • Integration Accounts: integration-account
  • Integration Services: integration-service
  • Integration Webhooks: integration-webhook
  • Notebooks: notebook
  • Powerpacks: powerpack
  • Reference Tables: reference-table
  • Security Rules: security-rule
  • Service Level Objectives: slo
  • Synthetic Global Variables: synthetics-global-variable
  • Synthetic Tests: synthetics-test
  • Synthetic Private Locations: synthetics-private-location
  • Monitors: monitor
  • Workflows: workflow
  • App Builder Apps: app-builder-app
  • Connections: connection
  • Connection Groups: connection-group
  • RUM Applications: rum-application
  • Cross Org Connections: cross-org-connection
  • Spreadsheets: spreadsheet
§Supported relations for resources
Resource TypeSupported Relations
Dashboardsviewer, editor
Integration Accountsviewer, editor
Integration Servicesviewer, editor
Integration Webhooksviewer, editor
Notebooksviewer, editor
Powerpacksviewer, editor
Security Rulesviewer, editor
Service Level Objectivesviewer, editor
Synthetic Global Variablesviewer, editor
Synthetic Testsviewer, editor
Synthetic Private Locationsviewer, editor
Monitorsviewer, editor
Reference Tablesviewer, editor
Workflowsviewer, runner, editor
App Builder Appsviewer, editor
Connectionsviewer, resolver, editor
Connection Groupsviewer, editor
RUM Applicationviewer, editor
Cross Org Connectionsviewer, editor
Spreadsheetsviewer, editor

Trait Implementations§

Source§

impl Clone for RestrictionPoliciesAPI

Source§

fn clone(&self) -> RestrictionPoliciesAPI

Returns a duplicate of the value. Read more
1.0.0 · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl Debug for RestrictionPoliciesAPI

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl Default for RestrictionPoliciesAPI

Source§

fn default() -> Self

Returns the “default value” for a type. Read more

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T> Instrument for T

Source§

fn instrument(self, span: Span) -> Instrumented<Self>

Instruments this type with the provided Span, returning an Instrumented wrapper. Read more
Source§

fn in_current_span(self) -> Instrumented<Self>

Instruments this type with the current Span, returning an Instrumented wrapper. Read more
Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> ToOwned for T
where T: Clone,

Source§

type Owned = T

The resulting type after obtaining ownership.
Source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
Source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
Source§

impl<V, T> VZip<V> for T
where V: MultiLane<T>,

Source§

fn vzip(self) -> V

Source§

impl<T> WithSubscriber for T

Source§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a WithDispatch wrapper. Read more
Source§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a WithDispatch wrapper. Read more
Source§

impl<T> ErasedDestructor for T
where T: 'static,