Class: Aws::CloudDirectory::Client

Inherits:
Seahorse::Client::Base show all
Includes:
Aws::ClientStubs
Defined in:
gems/aws-sdk-clouddirectory/lib/aws-sdk-clouddirectory/client.rb

Overview

An API client for CloudDirectory. To construct a client, you need to configure a :region and :credentials.

client = Aws::CloudDirectory::Client.new(
  region: region_name,
  credentials: credentials,
  # ...
)

For details on configuring region and credentials see the developer guide.

See #initialize for a full list of supported configuration options.

Instance Attribute Summary

Attributes inherited from Seahorse::Client::Base

#config, #handlers

API Operations collapse

Instance Method Summary collapse

Methods included from Aws::ClientStubs

#api_requests, #stub_data, #stub_responses

Methods inherited from Seahorse::Client::Base

add_plugin, api, clear_plugins, define, new, #operation_names, plugins, remove_plugin, set_api, set_plugins

Methods included from Seahorse::Client::HandlerBuilder

#handle, #handle_request, #handle_response

Constructor Details

#initialize(options) ⇒ Client

Returns a new instance of Client.

Parameters:

  • options (Hash)

Options Hash (options):

  • :plugins (Array<Seahorse::Client::Plugin>) — default: []]

    A list of plugins to apply to the client. Each plugin is either a class name or an instance of a plugin class.

  • :credentials (required, Aws::CredentialProvider)

    Your AWS credentials. This can be an instance of any one of the following classes:

    • Aws::Credentials - Used for configuring static, non-refreshing credentials.

    • Aws::SharedCredentials - Used for loading static credentials from a shared file, such as ~/.aws/config.

    • Aws::AssumeRoleCredentials - Used when you need to assume a role.

    • Aws::AssumeRoleWebIdentityCredentials - Used when you need to assume a role after providing credentials via the web.

    • Aws::SSOCredentials - Used for loading credentials from AWS SSO using an access token generated from aws login.

    • Aws::ProcessCredentials - Used for loading credentials from a process that outputs to stdout.

    • Aws::InstanceProfileCredentials - Used for loading credentials from an EC2 IMDS on an EC2 instance.

    • Aws::ECSCredentials - Used for loading credentials from instances running in ECS.

    • Aws::CognitoIdentityCredentials - Used for loading credentials from the Cognito Identity service.

    When :credentials are not configured directly, the following locations will be searched for credentials:

    • Aws.config[:credentials]
    • The :access_key_id, :secret_access_key, :session_token, and :account_id options.
    • ENV['AWS_ACCESS_KEY_ID'], ENV['AWS_SECRET_ACCESS_KEY'], ENV['AWS_SESSION_TOKEN'], and ENV['AWS_ACCOUNT_ID']
    • ~/.aws/credentials
    • ~/.aws/config
    • EC2/ECS IMDS instance profile - When used by default, the timeouts are very aggressive. Construct and pass an instance of Aws::InstanceProfileCredentials or Aws::ECSCredentials to enable retries and extended timeouts. Instance profile credential fetching can be disabled by setting ENV['AWS_EC2_METADATA_DISABLED'] to true.
  • :region (required, String)

    The AWS region to connect to. The configured :region is used to determine the service :endpoint. When not passed, a default :region is searched for in the following locations:

    • Aws.config[:region]
    • ENV['AWS_REGION']
    • ENV['AMAZON_REGION']
    • ENV['AWS_DEFAULT_REGION']
    • ~/.aws/credentials
    • ~/.aws/config
  • :access_key_id (String)
  • :account_id (String)
  • :active_endpoint_cache (Boolean) — default: false

    When set to true, a thread polling for endpoints will be running in the background every 60 secs (default). Defaults to false.

  • :adaptive_retry_wait_to_fill (Boolean) — default: true

    Used only in adaptive retry mode. When true, the request will sleep until there is sufficent client side capacity to retry the request. When false, the request will raise a RetryCapacityNotAvailableError and will not retry instead of sleeping.

  • :client_side_monitoring (Boolean) — default: false

    When true, client-side metrics will be collected for all API requests from this client.

  • :client_side_monitoring_client_id (String) — default: ""

    Allows you to provide an identifier for this client which will be attached to all generated client side metrics. Defaults to an empty string.

  • :client_side_monitoring_host (String) — default: "127.0.0.1"

    Allows you to specify the DNS hostname or IPv4 or IPv6 address that the client side monitoring agent is running on, where client metrics will be published via UDP.

  • :client_side_monitoring_port (Integer) — default: 31000

    Required for publishing client metrics. The port that the client side monitoring agent is running on, where client metrics will be published via UDP.

  • :client_side_monitoring_publisher (Aws::ClientSideMonitoring::Publisher) — default: Aws::ClientSideMonitoring::Publisher

    Allows you to provide a custom client-side monitoring publisher class. By default, will use the Client Side Monitoring Agent Publisher.

  • :convert_params (Boolean) — default: true

    When true, an attempt is made to coerce request parameters into the required types.

  • :correct_clock_skew (Boolean) — default: true

    Used only in standard and adaptive retry modes. Specifies whether to apply a clock skew correction and retry requests with skewed client clocks.

  • :defaults_mode (String) — default: "legacy"

    See DefaultsModeConfiguration for a list of the accepted modes and the configuration defaults that are included.

  • :disable_host_prefix_injection (Boolean) — default: false

    Set to true to disable SDK automatically adding host prefix to default service endpoint when available.

  • :disable_request_compression (Boolean) — default: false

    When set to 'true' the request body will not be compressed for supported operations.

  • :endpoint (String, URI::HTTPS, URI::HTTP)

    Normally you should not configure the :endpoint option directly. This is normally constructed from the :region option. Configuring :endpoint is normally reserved for connecting to test or custom endpoints. The endpoint should be a URI formatted like:

    'http://example.com'
    'https://example.com'
    'http://example.com:123'
    
  • :endpoint_cache_max_entries (Integer) — default: 1000

    Used for the maximum size limit of the LRU cache storing endpoints data for endpoint discovery enabled operations. Defaults to 1000.

  • :endpoint_cache_max_threads (Integer) — default: 10

    Used for the maximum threads in use for polling endpoints to be cached, defaults to 10.

  • :endpoint_cache_poll_interval (Integer) — default: 60

    When :endpoint_discovery and :active_endpoint_cache is enabled, Use this option to config the time interval in seconds for making requests fetching endpoints information. Defaults to 60 sec.

  • :endpoint_discovery (Boolean) — default: false

    When set to true, endpoint discovery will be enabled for operations when available.

  • :ignore_configured_endpoint_urls (Boolean)

    Setting to true disables use of endpoint URLs provided via environment variables and the shared configuration file.

  • :log_formatter (Aws::Log::Formatter) — default: Aws::Log::Formatter.default

    The log formatter.

  • :log_level (Symbol) — default: :info

    The log level to send messages to the :logger at.

  • :logger (Logger)

    The Logger instance to send log messages to. If this option is not set, logging will be disabled.

  • :max_attempts (Integer) — default: 3

    An integer representing the maximum number attempts that will be made for a single request, including the initial attempt. For example, setting this value to 5 will result in a request being retried up to 4 times. Used in standard and adaptive retry modes.

  • :profile (String) — default: "default"

    Used when loading credentials from the shared credentials file at HOME/.aws/credentials. When not specified, 'default' is used.

  • :request_min_compression_size_bytes (Integer) — default: 10240

    The minimum size in bytes that triggers compression for request bodies. The value must be non-negative integer value between 0 and 10485780 bytes inclusive.

  • :retry_backoff (Proc)

    A proc or lambda used for backoff. Defaults to 2**retries * retry_base_delay. This option is only used in the legacy retry mode.

  • :retry_base_delay (Float) — default: 0.3

    The base delay in seconds used by the default backoff function. This option is only used in the legacy retry mode.

  • :retry_jitter (Symbol) — default: :none

    A delay randomiser function used by the default backoff function. Some predefined functions can be referenced by name - :none, :equal, :full, otherwise a Proc that takes and returns a number. This option is only used in the legacy retry mode.

    @see https://www.awsarchitectureblog.com/2015/03/backoff.html

  • :retry_limit (Integer) — default: 3

    The maximum number of times to retry failed requests. Only ~ 500 level server errors and certain ~ 400 level client errors are retried. Generally, these are throttling errors, data checksum errors, networking errors, timeout errors, auth errors, endpoint discovery, and errors from expired credentials. This option is only used in the legacy retry mode.

  • :retry_max_delay (Integer) — default: 0

    The maximum number of seconds to delay between retries (0 for no limit) used by the default backoff function. This option is only used in the legacy retry mode.

  • :retry_mode (String) — default: "legacy"

    Specifies which retry algorithm to use. Values are:

    • legacy - The pre-existing retry behavior. This is default value if no retry mode is provided.

    • standard - A standardized set of retry rules across the AWS SDKs. This includes support for retry quotas, which limit the number of unsuccessful retries a client can make.

    • adaptive - An experimental retry mode that includes all the functionality of standard mode along with automatic client side throttling. This is a provisional mode that may change behavior in the future.

  • :sdk_ua_app_id (String)

    A unique and opaque application ID that is appended to the User-Agent header as app/sdk_ua_app_id. It should have a maximum length of 50. This variable is sourced from environment variable AWS_SDK_UA_APP_ID or the shared config profile attribute sdk_ua_app_id.

  • :secret_access_key (String)
  • :session_token (String)
  • :sigv4a_signing_region_set (Array)

    A list of regions that should be signed with SigV4a signing. When not passed, a default :sigv4a_signing_region_set is searched for in the following locations:

    • Aws.config[:sigv4a_signing_region_set]
    • ENV['AWS_SIGV4A_SIGNING_REGION_SET']
    • ~/.aws/config
  • :stub_responses (Boolean) — default: false

    Causes the client to return stubbed responses. By default fake responses are generated and returned. You can specify the response data to return or errors to raise by calling Aws::ClientStubs#stub_responses. See Aws::ClientStubs for more information.

    Please note When response stubbing is enabled, no HTTP requests are made, and retries are disabled.

  • :telemetry_provider (Aws::Telemetry::TelemetryProviderBase) — default: Aws::Telemetry::NoOpTelemetryProvider

    Allows you to provide a telemetry provider, which is used to emit telemetry data. By default, uses NoOpTelemetryProvider which will not record or emit any telemetry data. The SDK supports the following telemetry providers:

    • OpenTelemetry (OTel) - To use the OTel provider, install and require the opentelemetry-sdk gem and then, pass in an instance of a Aws::Telemetry::OTelProvider for telemetry provider.
  • :token_provider (Aws::TokenProvider)

    A Bearer Token Provider. This can be an instance of any one of the following classes:

    • Aws::StaticTokenProvider - Used for configuring static, non-refreshing tokens.

    • Aws::SSOTokenProvider - Used for loading tokens from AWS SSO using an access token generated from aws login.

    When :token_provider is not configured directly, the Aws::TokenProviderChain will be used to search for tokens configured for your profile in shared configuration files.

  • :use_dualstack_endpoint (Boolean)

    When set to true, dualstack enabled endpoints (with .aws TLD) will be used if available.

  • :use_fips_endpoint (Boolean)

    When set to true, fips compatible endpoints will be used if available. When a fips region is used, the region is normalized and this config is set to true.

  • :validate_params (Boolean) — default: true

    When true, request parameters are validated before sending the request.

  • :endpoint_provider (Aws::CloudDirectory::EndpointProvider)

    The endpoint provider used to resolve endpoints. Any object that responds to #resolve_endpoint(parameters) where parameters is a Struct similar to Aws::CloudDirectory::EndpointParameters.

  • :http_continue_timeout (Float) — default: 1

    The number of seconds to wait for a 100-continue response before sending the request body. This option has no effect unless the request has "Expect" header set to "100-continue". Defaults to nil which disables this behaviour. This value can safely be set per request on the session.

  • :http_idle_timeout (Float) — default: 5

    The number of seconds a connection is allowed to sit idle before it is considered stale. Stale connections are closed and removed from the pool before making a request.

  • :http_open_timeout (Float) — default: 15

    The default number of seconds to wait for response data. This value can safely be set per-request on the session.

  • :http_proxy (URI::HTTP, String)

    A proxy to send requests through. Formatted like 'http://proxy.com:123'.

  • :http_read_timeout (Float) — default: 60

    The default number of seconds to wait for response data. This value can safely be set per-request on the session.

  • :http_wire_trace (Boolean) — default: false

    When true, HTTP debug output will be sent to the :logger.

  • :on_chunk_received (Proc)

    When a Proc object is provided, it will be used as callback when each chunk of the response body is received. It provides three arguments: the chunk, the number of bytes received, and the total number of bytes in the response (or nil if the server did not send a content-length).

  • :on_chunk_sent (Proc)

    When a Proc object is provided, it will be used as callback when each chunk of the request body is sent. It provides three arguments: the chunk, the number of bytes read from the body, and the total number of bytes in the body.

  • :raise_response_errors (Boolean) — default: true

    When true, response errors are raised.

  • :ssl_ca_bundle (String)

    Full path to the SSL certificate authority bundle file that should be used when verifying peer certificates. If you do not pass :ssl_ca_bundle or :ssl_ca_directory the the system default will be used if available.

  • :ssl_ca_directory (String)

    Full path of the directory that contains the unbundled SSL certificate authority files for verifying peer certificates. If you do not pass :ssl_ca_bundle or :ssl_ca_directory the the system default will be used if available.

  • :ssl_ca_store (String)

    Sets the X509::Store to verify peer certificate.

  • :ssl_cert (OpenSSL::X509::Certificate)

    Sets a client certificate when creating http connections.

  • :ssl_key (OpenSSL::PKey)

    Sets a client key when creating http connections.

  • :ssl_timeout (Float)

    Sets the SSL timeout in seconds

  • :ssl_verify_peer (Boolean) — default: true

    When true, SSL peer certificates are verified when establishing a connection.



444
445
446
# File 'gems/aws-sdk-clouddirectory/lib/aws-sdk-clouddirectory/client.rb', line 444

def initialize(*args)
  super
end

Instance Method Details

#add_facet_to_object(params = {}) ⇒ Struct

Adds a new Facet to an object. An object can have more than one facet applied on it.

Examples:

Example: To add a facet to an object


resp = client.add_facet_to_object({
  directory_arn: "arn:aws:clouddirectory:us-west-2:45132example:directory/AYb8AOV81kHNgdj8mAO3dNY", 
  object_attribute_list: [
  ], 
  object_reference: {
    selector: "$AQGG_ADlfNZBzYHY_JgDt3TWmspn1fxfQmSQaaVKSbvEiQ", 
  }, 
  schema_facet: {
    facet_name: "node1", 
    schema_arn: "arn:aws:clouddirectory:us-west-2:45132example:directory/AYb8AOV81kHNgdj8mAO3dNY/schema/org/1", 
  }, 
})

resp.to_h outputs the following:
{
}

Request syntax with placeholder values


resp = client.add_facet_to_object({
  directory_arn: "Arn", # required
  schema_facet: { # required
    schema_arn: "Arn",
    facet_name: "FacetName",
  },
  object_attribute_list: [
    {
      key: { # required
        schema_arn: "Arn", # required
        facet_name: "FacetName", # required
        name: "AttributeName", # required
      },
      value: { # required
        string_value: "StringAttributeValue",
        binary_value: "data",
        boolean_value: false,
        number_value: "NumberAttributeValue",
        datetime_value: Time.now,
      },
    },
  ],
  object_reference: { # required
    selector: "SelectorObjectReference",
  },
})

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :directory_arn (required, String)

    The Amazon Resource Name (ARN) that is associated with the Directory where the object resides. For more information, see arns.

  • :schema_facet (required, Types::SchemaFacet)

    Identifiers for the facet that you are adding to the object. See SchemaFacet for details.

  • :object_attribute_list (Array<Types::AttributeKeyAndValue>)

    Attributes on the facet that you are adding to the object.

  • :object_reference (required, Types::ObjectReference)

    A reference to the object you are adding the specified facet to.

Returns:

  • (Struct)

    Returns an empty response.

See Also:



522
523
524
525
# File 'gems/aws-sdk-clouddirectory/lib/aws-sdk-clouddirectory/client.rb', line 522

def add_facet_to_object(params = {}, options = {})
  req = build_request(:add_facet_to_object, params)
  req.send_request(options)
end

#apply_schema(params = {}) ⇒ Types::ApplySchemaResponse

Copies the input published schema, at the specified version, into the Directory with the same name and version as that of the published schema.

Examples:

Example: To apply a schema


resp = client.apply_schema({
  directory_arn: "arn:aws:clouddirectory:us-west-2:45132example:directory/AfMr4qym1kZTvwqOafAYfqI", 
  published_schema_arn: "arn:aws:clouddirectory:us-west-2:45132example:schema/published/org/1", 
})

resp.to_h outputs the following:
{
  applied_schema_arn: "arn:aws:clouddirectory:us-west-2:45132example:directory/AfMr4qym1kZTvwqOafAYfqI/schema/org/1", 
  directory_arn: "arn:aws:clouddirectory:us-west-2:45132example:directory/AfMr4qym1kZTvwqOafAYfqI", 
}

Request syntax with placeholder values


resp = client.apply_schema({
  published_schema_arn: "Arn", # required
  directory_arn: "Arn", # required
})

Response structure


resp.applied_schema_arn #=> String
resp.directory_arn #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :published_schema_arn (required, String)

    Published schema Amazon Resource Name (ARN) that needs to be copied. For more information, see arns.

  • :directory_arn (required, String)

    The Amazon Resource Name (ARN) that is associated with the Directory into which the schema is copied. For more information, see arns.

Returns:

See Also:



574
575
576
577
# File 'gems/aws-sdk-clouddirectory/lib/aws-sdk-clouddirectory/client.rb', line 574

def apply_schema(params = {}, options = {})
  req = build_request(:apply_schema, params)
  req.send_request(options)
end

#attach_object(params = {}) ⇒ Types::AttachObjectResponse

Attaches an existing object to another object. An object can be accessed in two ways:

  1. Using the path

  2. Using ObjectIdentifier

Examples:

Example: To attach an object


resp = client.attach_object({
  child_reference: {
    selector: "$AQGG_ADlfNZBzYHY_JgDt3TWSvfuEnDqTdmeCuTs6YBNUA", 
  }, 
  directory_arn: "arn:aws:clouddirectory:us-west-2:45132example:directory/AYb8AOV81kHNgdj8mAO3dNY", 
  link_name: "link2", 
  parent_reference: {
    selector: "$AQGG_ADlfNZBzYHY_JgDt3TWcU7IARvOTeaR09zme1sVsw", 
  }, 
})

resp.to_h outputs the following:
{
  attached_object_identifier: "AQGG_ADlfNZBzYHY_JgDt3TWSvfuEnDqTdmeCuTs6YBNUA", 
}

Request syntax with placeholder values


resp = client.attach_object({
  directory_arn: "Arn", # required
  parent_reference: { # required
    selector: "SelectorObjectReference",
  },
  child_reference: { # required
    selector: "SelectorObjectReference",
  },
  link_name: "LinkName", # required
})

Response structure


resp.attached_object_identifier #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :directory_arn (required, String)

    Amazon Resource Name (ARN) that is associated with the Directory where both objects reside. For more information, see arns.

  • :parent_reference (required, Types::ObjectReference)

    The parent object reference.

  • :child_reference (required, Types::ObjectReference)

    The child object reference to be attached to the object.

  • :link_name (required, String)

    The link name with which the child object is attached to the parent.

Returns:

See Also:



643
644
645
646
# File 'gems/aws-sdk-clouddirectory/lib/aws-sdk-clouddirectory/client.rb', line 643

def attach_object(params = {}, options = {})
  req = build_request(:attach_object, params)
  req.send_request(options)
end

#attach_policy(params = {}) ⇒ Struct

Attaches a policy object to a regular object. An object can have a limited number of attached policies.

Examples:

Example: To attach a policy to an object


resp = client.attach_policy({
  directory_arn: "arn:aws:clouddirectory:us-west-2:45132example:directory/AYb8AOV81kHNgdj8mAO3dNY", 
  object_reference: {
    selector: "$AQGG_ADlfNZBzYHY_JgDt3TWQoovm1s3Ts2v0NKrzdVnPw", 
  }, 
  policy_reference: {
    selector: "$AQGG_ADlfNZBzYHY_JgDt3TWgcBsTVmcQEWs6jlygfhuew", 
  }, 
})

resp.to_h outputs the following:
{
}

Request syntax with placeholder values


resp = client.attach_policy({
  directory_arn: "Arn", # required
  policy_reference: { # required
    selector: "SelectorObjectReference",
  },
  object_reference: { # required
    selector: "SelectorObjectReference",
  },
})

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :directory_arn (required, String)

    The Amazon Resource Name (ARN) that is associated with the Directory where both objects reside. For more information, see arns.

  • :policy_reference (required, Types::ObjectReference)

    The reference that is associated with the policy object.

  • :object_reference (required, Types::ObjectReference)

    The reference that identifies the object to which the policy will be attached.

Returns:

  • (Struct)

    Returns an empty response.

See Also:



697
698
699
700
# File 'gems/aws-sdk-clouddirectory/lib/aws-sdk-clouddirectory/client.rb', line 697

def attach_policy(params = {}, options = {})
  req = build_request(:attach_policy, params)
  req.send_request(options)
end

#attach_to_index(params = {}) ⇒ Types::AttachToIndexResponse

Attaches the specified object to the specified index.

Examples:

Example: To attach a index to an object


resp = client.attach_to_index({
  directory_arn: "arn:aws:clouddirectory:us-west-2:45132example:directory/AYb8AOV81kHNgdj8mAO3dNY", 
  index_reference: {
    selector: "$AQGG_ADlfNZBzYHY_JgDt3TW45F26R1HTY2z-stwKBte_Q", 
  }, 
  target_reference: {
    selector: "$AQGG_ADlfNZBzYHY_JgDt3TWcU7IARvOTeaR09zme1sVsw", 
  }, 
})

resp.to_h outputs the following:
{
  attached_object_identifier: "AQGG_ADlfNZBzYHY_JgDt3TWcU7IARvOTeaR09zme1sVsw", 
}

Request syntax with placeholder values


resp = client.attach_to_index({
  directory_arn: "Arn", # required
  index_reference: { # required
    selector: "SelectorObjectReference",
  },
  target_reference: { # required
    selector: "SelectorObjectReference",
  },
})

Response structure


resp.attached_object_identifier #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :directory_arn (required, String)

    The Amazon Resource Name (ARN) of the directory where the object and index exist.

  • :index_reference (required, Types::ObjectReference)

    A reference to the index that you are attaching the object to.

  • :target_reference (required, Types::ObjectReference)

    A reference to the object that you are attaching to the index.

Returns:

See Also:



756
757
758
759
# File 'gems/aws-sdk-clouddirectory/lib/aws-sdk-clouddirectory/client.rb', line 756

def attach_to_index(params = {}, options = {})
  req = build_request(:attach_to_index, params)
  req.send_request(options)
end

Attaches a typed link to a specified source and target object. For more information, see Typed Links.

Examples:

Example: To attach a typed link to an object


resp = client.attach_typed_link({
  attributes: [
    {
      attribute_name: "22", 
      value: {
        binary_value: "c3Ry", 
      }, 
    }, 
  ], 
  directory_arn: "arn:aws:clouddirectory:us-west-2:45132example:directory/AYb8AOV81kHNgdj8mAO3dNY", 
  source_object_reference: {
    selector: "$AQGG_ADlfNZBzYHY_JgDt3TWSvfuEnDqTdmeCuTs6YBNUA", 
  }, 
  target_object_reference: {
    selector: "$AQGG_ADlfNZBzYHY_JgDt3TWcU7IARvOTeaR09zme1sVsw", 
  }, 
  typed_link_facet: {
    schema_arn: "arn:aws:clouddirectory:us-west-2:45132example:directory/AYb8AOV81kHNgdj8mAO3dNY/schema/org/1", 
    typed_link_name: "exampletypedlink8", 
  }, 
})

resp.to_h outputs the following:
{
  typed_link_specifier: {
    identity_attribute_values: [
      {
        attribute_name: "22", 
        value: {
          binary_value: "c3Ry", 
        }, 
      }, 
    ], 
    source_object_reference: {
      selector: "$AQGG_ADlfNZBzYHY_JgDt3TWSvfuEnDqTdmeCuTs6YBNUA", 
    }, 
    target_object_reference: {
      selector: "$AQGG_ADlfNZBzYHY_JgDt3TWcU7IARvOTeaR09zme1sVsw", 
    }, 
    typed_link_facet: {
      schema_arn: "arn:aws:clouddirectory:us-west-2:45132example:directory/AYb8AOV81kHNgdj8mAO3dNY/schema/org/1", 
      typed_link_name: "exampletypedlink8", 
    }, 
  }, 
}

Request syntax with placeholder values


resp = client.attach_typed_link({
  directory_arn: "Arn", # required
  source_object_reference: { # required
    selector: "SelectorObjectReference",
  },
  target_object_reference: { # required
    selector: "SelectorObjectReference",
  },
  typed_link_facet: { # required
    schema_arn: "Arn", # required
    typed_link_name: "TypedLinkName", # required
  },
  attributes: [ # required
    {
      attribute_name: "AttributeName", # required
      value: { # required
        string_value: "StringAttributeValue",
        binary_value: "data",
        boolean_value: false,
        number_value: "NumberAttributeValue",
        datetime_value: Time.now,
      },
    },
  ],
})

Response structure


resp.typed_link_specifier.typed_link_facet.schema_arn #=> String
resp.typed_link_specifier.typed_link_facet.typed_link_name #=> String
resp.typed_link_specifier.source_object_reference.selector #=> String
resp.typed_link_specifier.target_object_reference.selector #=> String
resp.typed_link_specifier.identity_attribute_values #=> Array
resp.typed_link_specifier.identity_attribute_values[0].attribute_name #=> String
resp.typed_link_specifier.identity_attribute_values[0].value.string_value #=> String
resp.typed_link_specifier.identity_attribute_values[0].value.binary_value #=> String
resp.typed_link_specifier.identity_attribute_values[0].value.boolean_value #=> Boolean
resp.typed_link_specifier.identity_attribute_values[0].value.number_value #=> String
resp.typed_link_specifier.identity_attribute_values[0].value.datetime_value #=> Time

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :directory_arn (required, String)

    The Amazon Resource Name (ARN) of the directory where you want to attach the typed link.

  • :source_object_reference (required, Types::ObjectReference)

    Identifies the source object that the typed link will attach to.

  • :target_object_reference (required, Types::ObjectReference)

    Identifies the target object that the typed link will attach to.

  • :typed_link_facet (required, Types::TypedLinkSchemaAndFacetName)

    Identifies the typed link facet that is associated with the typed link.

  • :attributes (required, Array<Types::AttributeNameAndValue>)

    A set of attributes that are associated with the typed link.

Returns:

See Also:



884
885
886
887
# File 'gems/aws-sdk-clouddirectory/lib/aws-sdk-clouddirectory/client.rb', line 884

def attach_typed_link(params = {}, options = {})
  req = build_request(:attach_typed_link, params)
  req.send_request(options)
end

#batch_read(params = {}) ⇒ Types::BatchReadResponse

Performs all the read operations in a batch.

Examples:

Example: To run a batch read command


resp = client.batch_read({
  consistency_level: "EVENTUAL", 
  directory_arn: "arn:aws:clouddirectory:us-west-2:45132example:directory/AYb8AOV81kHNgdj8mAO3dNY", 
  operations: [
  ], 
})

resp.to_h outputs the following:
{
  responses: [
  ], 
}

Request syntax with placeholder values


resp = client.batch_read({
  directory_arn: "Arn", # required
  operations: [ # required
    {
      list_object_attributes: {
        object_reference: { # required
          selector: "SelectorObjectReference",
        },
        next_token: "NextToken",
        max_results: 1,
        facet_filter: {
          schema_arn: "Arn",
          facet_name: "FacetName",
        },
      },
      list_object_children: {
        object_reference: { # required
          selector: "SelectorObjectReference",
        },
        next_token: "NextToken",
        max_results: 1,
      },
      list_attached_indices: {
        target_reference: { # required
          selector: "SelectorObjectReference",
        },
        next_token: "NextToken",
        max_results: 1,
      },
      list_object_parent_paths: {
        object_reference: { # required
          selector: "SelectorObjectReference",
        },
        next_token: "NextToken",
        max_results: 1,
      },
      get_object_information: {
        object_reference: { # required
          selector: "SelectorObjectReference",
        },
      },
      get_object_attributes: {
        object_reference: { # required
          selector: "SelectorObjectReference",
        },
        schema_facet: { # required
          schema_arn: "Arn",
          facet_name: "FacetName",
        },
        attribute_names: ["AttributeName"], # required
      },
      list_object_parents: {
        object_reference: { # required
          selector: "SelectorObjectReference",
        },
        next_token: "NextToken",
        max_results: 1,
      },
      list_object_policies: {
        object_reference: { # required
          selector: "SelectorObjectReference",
        },
        next_token: "NextToken",
        max_results: 1,
      },
      list_policy_attachments: {
        policy_reference: { # required
          selector: "SelectorObjectReference",
        },
        next_token: "NextToken",
        max_results: 1,
      },
      lookup_policy: {
        object_reference: { # required
          selector: "SelectorObjectReference",
        },
        next_token: "NextToken",
        max_results: 1,
      },
      list_index: {
        ranges_on_indexed_values: [
          {
            attribute_key: {
              schema_arn: "Arn", # required
              facet_name: "FacetName", # required
              name: "AttributeName", # required
            },
            range: {
              start_mode: "FIRST", # required, accepts FIRST, LAST, LAST_BEFORE_MISSING_VALUES, INCLUSIVE, EXCLUSIVE
              start_value: {
                string_value: "StringAttributeValue",
                binary_value: "data",
                boolean_value: false,
                number_value: "NumberAttributeValue",
                datetime_value: Time.now,
              },
              end_mode: "FIRST", # required, accepts FIRST, LAST, LAST_BEFORE_MISSING_VALUES, INCLUSIVE, EXCLUSIVE
              end_value: {
                string_value: "StringAttributeValue",
                binary_value: "data",
                boolean_value: false,
                number_value: "NumberAttributeValue",
                datetime_value: Time.now,
              },
            },
          },
        ],
        index_reference: { # required
          selector: "SelectorObjectReference",
        },
        max_results: 1,
        next_token: "NextToken",
      },
      list_outgoing_typed_links: {
        object_reference: { # required
          selector: "SelectorObjectReference",
        },
        filter_attribute_ranges: [
          {
            attribute_name: "AttributeName",
            range: { # required
              start_mode: "FIRST", # required, accepts FIRST, LAST, LAST_BEFORE_MISSING_VALUES, INCLUSIVE, EXCLUSIVE
              start_value: {
                string_value: "StringAttributeValue",
                binary_value: "data",
                boolean_value: false,
                number_value: "NumberAttributeValue",
                datetime_value: Time.now,
              },
              end_mode: "FIRST", # required, accepts FIRST, LAST, LAST_BEFORE_MISSING_VALUES, INCLUSIVE, EXCLUSIVE
              end_value: {
                string_value: "StringAttributeValue",
                binary_value: "data",
                boolean_value: false,
                number_value: "NumberAttributeValue",
                datetime_value: Time.now,
              },
            },
          },
        ],
        filter_typed_link: {
          schema_arn: "Arn", # required
          typed_link_name: "TypedLinkName", # required
        },
        next_token: "NextToken",
        max_results: 1,
      },
      list_incoming_typed_links: {
        object_reference: { # required
          selector: "SelectorObjectReference",
        },
        filter_attribute_ranges: [
          {
            attribute_name: "AttributeName",
            range: { # required
              start_mode: "FIRST", # required, accepts FIRST, LAST, LAST_BEFORE_MISSING_VALUES, INCLUSIVE, EXCLUSIVE
              start_value: {
                string_value: "StringAttributeValue",
                binary_value: "data",
                boolean_value: false,
                number_value: "NumberAttributeValue",
                datetime_value: Time.now,
              },
              end_mode: "FIRST", # required, accepts FIRST, LAST, LAST_BEFORE_MISSING_VALUES, INCLUSIVE, EXCLUSIVE
              end_value: {
                string_value: "StringAttributeValue",
                binary_value: "data",
                boolean_value: false,
                number_value: "NumberAttributeValue",
                datetime_value: Time.now,
              },
            },
          },
        ],
        filter_typed_link: {
          schema_arn: "Arn", # required
          typed_link_name: "TypedLinkName", # required
        },
        next_token: "NextToken",
        max_results: 1,
      },
      get_link_attributes: {
        typed_link_specifier: { # required
          typed_link_facet: { # required
            schema_arn: "Arn", # required
            typed_link_name: "TypedLinkName", # required
          },
          source_object_reference: { # required
            selector: "SelectorObjectReference",
          },
          target_object_reference: { # required
            selector: "SelectorObjectReference",
          },
          identity_attribute_values: [ # required
            {
              attribute_name: "AttributeName", # required
              value: { # required
                string_value: "StringAttributeValue",
                binary_value: "data",
                boolean_value: false,
                number_value: "NumberAttributeValue",
                datetime_value: Time.now,
              },
            },
          ],
        },
        attribute_names: ["AttributeName"], # required
      },
    },
  ],
  consistency_level: "SERIALIZABLE", # accepts SERIALIZABLE, EVENTUAL
})

Response structure


resp.responses #=> Array
resp.responses[0].successful_response.list_object_attributes.attributes #=> Array
resp.responses[0].successful_response.list_object_attributes.attributes[0].key.schema_arn #=> String
resp.responses[0].successful_response.list_object_attributes.attributes[0].key.facet_name #=> String
resp.responses[0].successful_response.list_object_attributes.attributes[0].key.name #=> String
resp.responses[0].successful_response.list_object_attributes.attributes[0].value.string_value #=> String
resp.responses[0].successful_response.list_object_attributes.attributes[0].value.binary_value #=> String
resp.responses[0].successful_response.list_object_attributes.attributes[0].value.boolean_value #=> Boolean
resp.responses[0].successful_response.list_object_attributes.attributes[0].value.number_value #=> String
resp.responses[0].successful_response.list_object_attributes.attributes[0].value.datetime_value #=> Time
resp.responses[0].successful_response.list_object_attributes.next_token #=> String
resp.responses[0].successful_response.list_object_children.children #=> Hash
resp.responses[0].successful_response.list_object_children.children["LinkName"] #=> String
resp.responses[0].successful_response.list_object_children.next_token #=> String
resp.responses[0].successful_response.get_object_information.schema_facets #=> Array
resp.responses[0].successful_response.get_object_information.schema_facets[0].schema_arn #=> String
resp.responses[0].successful_response.get_object_information.schema_facets[0].facet_name #=> String
resp.responses[0].successful_response.get_object_information.object_identifier #=> String
resp.responses[0].successful_response.get_object_attributes.attributes #=> Array
resp.responses[0].successful_response.get_object_attributes.attributes[0].key.schema_arn #=> String
resp.responses[0].successful_response.get_object_attributes.attributes[0].key.facet_name #=> String
resp.responses[0].successful_response.get_object_attributes.attributes[0].key.name #=> String
resp.responses[0].successful_response.get_object_attributes.attributes[0].value.string_value #=> String
resp.responses[0].successful_response.get_object_attributes.attributes[0].value.binary_value #=> String
resp.responses[0].successful_response.get_object_attributes.attributes[0].value.boolean_value #=> Boolean
resp.responses[0].successful_response.get_object_attributes.attributes[0].value.number_value #=> String
resp.responses[0].successful_response.get_object_attributes.attributes[0].value.datetime_value #=> Time
resp.responses[0].successful_response.list_attached_indices.index_attachments #=> Array
resp.responses[0].successful_response.list_attached_indices.index_attachments[0].indexed_attributes #=> Array
resp.responses[0].successful_response.list_attached_indices.index_attachments[0].indexed_attributes[0].key.schema_arn #=> String
resp.responses[0].successful_response.list_attached_indices.index_attachments[0].indexed_attributes[0].key.facet_name #=> String
resp.responses[0].successful_response.list_attached_indices.index_attachments[0].indexed_attributes[0].key.name #=> String
resp.responses[0].successful_response.list_attached_indices.index_attachments[0].indexed_attributes[0].value.string_value #=> String
resp.responses[0].successful_response.list_attached_indices.index_attachments[0].indexed_attributes[0].value.binary_value #=> String
resp.responses[0].successful_response.list_attached_indices.index_attachments[0].indexed_attributes[0].value.boolean_value #=> Boolean
resp.responses[0].successful_response.list_attached_indices.index_attachments[0].indexed_attributes[0].value.number_value #=> String
resp.responses[0].successful_response.list_attached_indices.index_attachments[0].indexed_attributes[0].value.datetime_value #=> Time
resp.responses[0].successful_response.list_attached_indices.index_attachments[0].object_identifier #=> String
resp.responses[0].successful_response.list_attached_indices.next_token #=> String
resp.responses[0].successful_response.list_object_parent_paths.path_to_object_identifiers_list #=> Array
resp.responses[0].successful_response.list_object_parent_paths.path_to_object_identifiers_list[0].path #=> String
resp.responses[0].successful_response.list_object_parent_paths.path_to_object_identifiers_list[0].object_identifiers #=> Array
resp.responses[0].successful_response.list_object_parent_paths.path_to_object_identifiers_list[0].object_identifiers[0] #=> String
resp.responses[0].successful_response.list_object_parent_paths.next_token #=> String
resp.responses[0].successful_response.list_object_policies.attached_policy_ids #=> Array
resp.responses[0].successful_response.list_object_policies.attached_policy_ids[0] #=> String
resp.responses[0].successful_response.list_object_policies.next_token #=> String
resp.responses[0].successful_response.list_policy_attachments.object_identifiers #=> Array
resp.responses[0].successful_response.list_policy_attachments.object_identifiers[0] #=> String
resp.responses[0].successful_response.list_policy_attachments.next_token #=> String
resp.responses[0].successful_response.lookup_policy.policy_to_path_list #=> Array
resp.responses[0].successful_response.lookup_policy.policy_to_path_list[0].path #=> String
resp.responses[0].successful_response.lookup_policy.policy_to_path_list[0].policies #=> Array
resp.responses[0].successful_response.lookup_policy.policy_to_path_list[0].policies[0].policy_id #=> String
resp.responses[0].successful_response.lookup_policy.policy_to_path_list[0].policies[0].object_identifier #=> String
resp.responses[0].successful_response.lookup_policy.policy_to_path_list[0].policies[0].policy_type #=> String
resp.responses[0].successful_response.lookup_policy.next_token #=> String
resp.responses[0].successful_response.list_index.index_attachments #=> Array
resp.responses[0].successful_response.list_index.index_attachments[0].indexed_attributes #=> Array
resp.responses[0].successful_response.list_index.index_attachments[0].indexed_attributes[0].key.schema_arn #=> String
resp.responses[0].successful_response.list_index.index_attachments[0].indexed_attributes[0].key.facet_name #=> String
resp.responses[0].successful_response.list_index.index_attachments[0].indexed_attributes[0].key.name #=> String
resp.responses[0].successful_response.list_index.index_attachments[0].indexed_attributes[0].value.string_value #=> String
resp.responses[0].successful_response.list_index.index_attachments[0].indexed_attributes[0].value.binary_value #=> String
resp.responses[0].successful_response.list_index.index_attachments[0].indexed_attributes[0].value.boolean_value #=> Boolean
resp.responses[0].successful_response.list_index.index_attachments[0].indexed_attributes[0].value.number_value #=> String
resp.responses[0].successful_response.list_index.index_attachments[0].indexed_attributes[0].value.datetime_value #=> Time
resp.responses[0].successful_response.list_index.index_attachments[0].object_identifier #=> String
resp.responses[0].successful_response.list_index.next_token #=> String
resp.responses[0].successful_response.list_outgoing_typed_links.typed_link_specifiers #=> Array
resp.responses[0].successful_response.list_outgoing_typed_links.typed_link_specifiers[0].typed_link_facet.schema_arn #=> String
resp.responses[0].successful_response.list_outgoing_typed_links.typed_link_specifiers[0].typed_link_facet.typed_link_name #=> String
resp.responses[0].successful_response.list_outgoing_typed_links.typed_link_specifiers[0].source_object_reference.selector #=> String
resp.responses[0].successful_response.list_outgoing_typed_links.typed_link_specifiers[0].target_object_reference.selector #=> String
resp.responses[0].successful_response.list_outgoing_typed_links.typed_link_specifiers[0].identity_attribute_values #=> Array
resp.responses[0].successful_response.list_outgoing_typed_links.typed_link_specifiers[0].identity_attribute_values[0].attribute_name #=> String
resp.responses[0].successful_response.list_outgoing_typed_links.typed_link_specifiers[0].identity_attribute_values[0].value.string_value #=> String
resp.responses[0].successful_response.list_outgoing_typed_links.typed_link_specifiers[0].identity_attribute_values[0].value.binary_value #=> String
resp.responses[0].successful_response.list_outgoing_typed_links.typed_link_specifiers[0].identity_attribute_values[0].value.boolean_value #=> Boolean
resp.responses[0].successful_response.list_outgoing_typed_links.typed_link_specifiers[0].identity_attribute_values[0].value.number_value #=> String
resp.responses[0].successful_response.list_outgoing_typed_links.typed_link_specifiers[0].identity_attribute_values[0].value.datetime_value #=> Time
resp.responses[0].successful_response.list_outgoing_typed_links.next_token #=> String
resp.responses[0].successful_response.list_incoming_typed_links.link_specifiers #=> Array
resp.responses[0].successful_response.list_incoming_typed_links.link_specifiers[0].typed_link_facet.schema_arn #=> String
resp.responses[0].successful_response.list_incoming_typed_links.link_specifiers[0].typed_link_facet.typed_link_name #=> String
resp.responses[0].successful_response.list_incoming_typed_links.link_specifiers[0].source_object_reference.selector #=> String
resp.responses[0].successful_response.list_incoming_typed_links.link_specifiers[0].target_object_reference.selector #=> String
resp.responses[0].successful_response.list_incoming_typed_links.link_specifiers[0].identity_attribute_values #=> Array
resp.responses[0].successful_response.list_incoming_typed_links.link_specifiers[0].identity_attribute_values[0].attribute_name #=> String
resp.responses[0].successful_response.list_incoming_typed_links.link_specifiers[0].identity_attribute_values[0].value.string_value #=> String
resp.responses[0].successful_response.list_incoming_typed_links.link_specifiers[0].identity_attribute_values[0].value.binary_value #=> String
resp.responses[0].successful_response.list_incoming_typed_links.link_specifiers[0].identity_attribute_values[0].value.boolean_value #=> Boolean
resp.responses[0].successful_response.list_incoming_typed_links.link_specifiers[0].identity_attribute_values[0].value.number_value #=> String
resp.responses[0].successful_response.list_incoming_typed_links.link_specifiers[0].identity_attribute_values[0].value.datetime_value #=> Time
resp.responses[0].successful_response.list_incoming_typed_links.next_token #=> String
resp.responses[0].successful_response.get_link_attributes.attributes #=> Array
resp.responses[0].successful_response.get_link_attributes.attributes[0].key.schema_arn #=> String
resp.responses[0].successful_response.get_link_attributes.attributes[0].key.facet_name #=> String
resp.responses[0].successful_response.get_link_attributes.attributes[0].key.name #=> String
resp.responses[0].successful_response.get_link_attributes.attributes[0].value.string_value #=> String
resp.responses[0].successful_response.get_link_attributes.attributes[0].value.binary_value #=> String
resp.responses[0].successful_response.get_link_attributes.attributes[0].value.boolean_value #=> Boolean
resp.responses[0].successful_response.get_link_attributes.attributes[0].value.number_value #=> String
resp.responses[0].successful_response.get_link_attributes.attributes[0].value.datetime_value #=> Time
resp.responses[0].successful_response.list_object_parents.parent_links #=> Array
resp.responses[0].successful_response.list_object_parents.parent_links[0].object_identifier #=> String
resp.responses[0].successful_response.list_object_parents.parent_links[0].link_name #=> String
resp.responses[0].successful_response.list_object_parents.next_token #=> String
resp.responses[0].exception_response.type #=> String, one of "ValidationException", "InvalidArnException", "ResourceNotFoundException", "InvalidNextTokenException", "AccessDeniedException", "NotNodeException", "FacetValidationException", "CannotListParentOfRootException", "NotIndexException", "NotPolicyException", "DirectoryNotEnabledException", "LimitExceededException", "InternalServiceException"
resp.responses[0].exception_response.message #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :directory_arn (required, String)

    The Amazon Resource Name (ARN) that is associated with the Directory. For more information, see arns.

  • :operations (required, Array<Types::BatchReadOperation>)

    A list of operations that are part of the batch.

  • :consistency_level (String)

    Represents the manner and timing in which the successful write or update of an object is reflected in a subsequent read operation of that same object.

Returns:

See Also:



1255
1256
1257
1258
# File 'gems/aws-sdk-clouddirectory/lib/aws-sdk-clouddirectory/client.rb', line 1255

def batch_read(params = {}, options = {})
  req = build_request(:batch_read, params)
  req.send_request(options)
end

#batch_write(params = {}) ⇒ Types::BatchWriteResponse

Performs all the write operations in a batch. Either all the operations succeed or none.

Examples:

Example: To run a batch write command


resp = client.batch_write({
  directory_arn: "arn:aws:clouddirectory:us-west-2:45132example:directory/AYb8AOV81kHNgdj8mAO3dNY", 
  operations: [
  ], 
})

resp.to_h outputs the following:
{
  responses: [
  ], 
}

Request syntax with placeholder values


resp = client.batch_write({
  directory_arn: "Arn", # required
  operations: [ # required
    {
      create_object: {
        schema_facet: [ # required
          {
            schema_arn: "Arn",
            facet_name: "FacetName",
          },
        ],
        object_attribute_list: [ # required
          {
            key: { # required
              schema_arn: "Arn", # required
              facet_name: "FacetName", # required
              name: "AttributeName", # required
            },
            value: { # required
              string_value: "StringAttributeValue",
              binary_value: "data",
              boolean_value: false,
              number_value: "NumberAttributeValue",
              datetime_value: Time.now,
            },
          },
        ],
        parent_reference: {
          selector: "SelectorObjectReference",
        },
        link_name: "LinkName",
        batch_reference_name: "BatchReferenceName",
      },
      attach_object: {
        parent_reference: { # required
          selector: "SelectorObjectReference",
        },
        child_reference: { # required
          selector: "SelectorObjectReference",
        },
        link_name: "LinkName", # required
      },
      detach_object: {
        parent_reference: { # required
          selector: "SelectorObjectReference",
        },
        link_name: "LinkName", # required
        batch_reference_name: "BatchReferenceName",
      },
      update_object_attributes: {
        object_reference: { # required
          selector: "SelectorObjectReference",
        },
        attribute_updates: [ # required
          {
            object_attribute_key: {
              schema_arn: "Arn", # required
              facet_name: "FacetName", # required
              name: "AttributeName", # required
            },
            object_attribute_action: {
              object_attribute_action_type: "CREATE_OR_UPDATE", # accepts CREATE_OR_UPDATE, DELETE
              object_attribute_update_value: {
                string_value: "StringAttributeValue",
                binary_value: "data",
                boolean_value: false,
                number_value: "NumberAttributeValue",
                datetime_value: Time.now,
              },
            },
          },
        ],
      },
      delete_object: {
        object_reference: { # required
          selector: "SelectorObjectReference",
        },
      },
      add_facet_to_object: {
        schema_facet: { # required
          schema_arn: "Arn",
          facet_name: "FacetName",
        },
        object_attribute_list: [ # required
          {
            key: { # required
              schema_arn: "Arn", # required
              facet_name: "FacetName", # required
              name: "AttributeName", # required
            },
            value: { # required
              string_value: "StringAttributeValue",
              binary_value: "data",
              boolean_value: false,
              number_value: "NumberAttributeValue",
              datetime_value: Time.now,
            },
          },
        ],
        object_reference: { # required
          selector: "SelectorObjectReference",
        },
      },
      remove_facet_from_object: {
        schema_facet: { # required
          schema_arn: "Arn",
          facet_name: "FacetName",
        },
        object_reference: { # required
          selector: "SelectorObjectReference",
        },
      },
      attach_policy: {
        policy_reference: { # required
          selector: "SelectorObjectReference",
        },
        object_reference: { # required
          selector: "SelectorObjectReference",
        },
      },
      detach_policy: {
        policy_reference: { # required
          selector: "SelectorObjectReference",
        },
        object_reference: { # required
          selector: "SelectorObjectReference",
        },
      },
      create_index: {
        ordered_indexed_attribute_list: [ # required
          {
            schema_arn: "Arn", # required
            facet_name: "FacetName", # required
            name: "AttributeName", # required
          },
        ],
        is_unique: false, # required
        parent_reference: {
          selector: "SelectorObjectReference",
        },
        link_name: "LinkName",
        batch_reference_name: "BatchReferenceName",
      },
      attach_to_index: {
        index_reference: { # required
          selector: "SelectorObjectReference",
        },
        target_reference: { # required
          selector: "SelectorObjectReference",
        },
      },
      detach_from_index: {
        index_reference: { # required
          selector: "SelectorObjectReference",
        },
        target_reference: { # required
          selector: "SelectorObjectReference",
        },
      },
      attach_typed_link: {
        source_object_reference: { # required
          selector: "SelectorObjectReference",
        },
        target_object_reference: { # required
          selector: "SelectorObjectReference",
        },
        typed_link_facet: { # required
          schema_arn: "Arn", # required
          typed_link_name: "TypedLinkName", # required
        },
        attributes: [ # required
          {
            attribute_name: "AttributeName", # required
            value: { # required
              string_value: "StringAttributeValue",
              binary_value: "data",
              boolean_value: false,
              number_value: "NumberAttributeValue",
              datetime_value: Time.now,
            },
          },
        ],
      },
      detach_typed_link: {
        typed_link_specifier: { # required
          typed_link_facet: { # required
            schema_arn: "Arn", # required
            typed_link_name: "TypedLinkName", # required
          },
          source_object_reference: { # required
            selector: "SelectorObjectReference",
          },
          target_object_reference: { # required
            selector: "SelectorObjectReference",
          },
          identity_attribute_values: [ # required
            {
              attribute_name: "AttributeName", # required
              value: { # required
                string_value: "StringAttributeValue",
                binary_value: "data",
                boolean_value: false,
                number_value: "NumberAttributeValue",
                datetime_value: Time.now,
              },
            },
          ],
        },
      },
      update_link_attributes: {
        typed_link_specifier: { # required
          typed_link_facet: { # required
            schema_arn: "Arn", # required
            typed_link_name: "TypedLinkName", # required
          },
          source_object_reference: { # required
            selector: "SelectorObjectReference",
          },
          target_object_reference: { # required
            selector: "SelectorObjectReference",
          },
          identity_attribute_values: [ # required
            {
              attribute_name: "AttributeName", # required
              value: { # required
                string_value: "StringAttributeValue",
                binary_value: "data",
                boolean_value: false,
                number_value: "NumberAttributeValue",
                datetime_value: Time.now,
              },
            },
          ],
        },
        attribute_updates: [ # required
          {
            attribute_key: {
              schema_arn: "Arn", # required
              facet_name: "FacetName", # required
              name: "AttributeName", # required
            },
            attribute_action: {
              attribute_action_type: "CREATE_OR_UPDATE", # accepts CREATE_OR_UPDATE, DELETE
              attribute_update_value: {
                string_value: "StringAttributeValue",
                binary_value: "data",
                boolean_value: false,
                number_value: "NumberAttributeValue",
                datetime_value: Time.now,
              },
            },
          },
        ],
      },
    },
  ],
})

Response structure


resp.responses #=> Array
resp.responses[0].create_object.object_identifier #=> String
resp.responses[0].attach_object.attached_object_identifier #=> String
resp.responses[0].detach_object.detached_object_identifier #=> String
resp.responses[0].update_object_attributes.object_identifier #=> String
resp.responses[0].create_index.object_identifier #=> String
resp.responses[0].attach_to_index.attached_object_identifier #=> String
resp.responses[0].detach_from_index.detached_object_identifier #=> String
resp.responses[0].attach_typed_link.typed_link_specifier.typed_link_facet.schema_arn #=> String
resp.responses[0].attach_typed_link.typed_link_specifier.typed_link_facet.typed_link_name #=> String
resp.responses[0].attach_typed_link.typed_link_specifier.source_object_reference.selector #=> String
resp.responses[0].attach_typed_link.typed_link_specifier.target_object_reference.selector #=> String
resp.responses[0].attach_typed_link.typed_link_specifier.identity_attribute_values #=> Array
resp.responses[0].attach_typed_link.typed_link_specifier.identity_attribute_values[0].attribute_name #=> String
resp.responses[0].attach_typed_link.typed_link_specifier.identity_attribute_values[0].value.string_value #=> String
resp.responses[0].attach_typed_link.typed_link_specifier.identity_attribute_values[0].value.binary_value #=> String
resp.responses[0].attach_typed_link.typed_link_specifier.identity_attribute_values[0].value.boolean_value #=> Boolean
resp.responses[0].attach_typed_link.typed_link_specifier.identity_attribute_values[0].value.number_value #=> String
resp.responses[0].attach_typed_link.typed_link_specifier.identity_attribute_values[0].value.datetime_value #=> Time

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :directory_arn (required, String)

    The Amazon Resource Name (ARN) that is associated with the Directory. For more information, see arns.

  • :operations (required, Array<Types::BatchWriteOperation>)

    A list of operations that are part of the batch.

Returns:

See Also:



1575
1576
1577
1578
# File 'gems/aws-sdk-clouddirectory/lib/aws-sdk-clouddirectory/client.rb', line 1575

def batch_write(params = {}, options = {})
  req = build_request(:batch_write, params)
  req.send_request(options)
end

#create_directory(params = {}) ⇒ Types::CreateDirectoryResponse

Creates a Directory by copying the published schema into the directory. A directory cannot be created without a schema.

You can also quickly create a directory using a managed schema, called the QuickStartSchema. For more information, see Managed Schema in the Amazon Cloud Directory Developer Guide.

Examples:

Example: To create a new Cloud Directory


resp = client.create_directory({
  name: "ExampleCD", 
  schema_arn: "arn:aws:clouddirectory:us-west-2:45132example:schema/published/person/1", 
})

resp.to_h outputs the following:
{
  applied_schema_arn: "arn:aws:clouddirectory:us-west-2:45132example:directory/AfMr4qym1kZTvwqOafAYfqI/schema/person/1", 
  directory_arn: "arn:aws:clouddirectory:us-west-2:45132example:directory/AfMr4qym1kZTvwqOafAYfqI", 
  name: "ExampleCD", 
  object_identifier: "AQHzK-KsptZGU78KjmnwGH6i-4guCM3uQFOTA9_NjeHDrg", 
}

Request syntax with placeholder values


resp = client.create_directory({
  name: "DirectoryName", # required
  schema_arn: "Arn", # required
})

Response structure


resp.directory_arn #=> String
resp.name #=> String
resp.object_identifier #=> String
resp.applied_schema_arn #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :name (required, String)

    The name of the Directory. Should be unique per account, per region.

  • :schema_arn (required, String)

    The Amazon Resource Name (ARN) of the published schema that will be copied into the data Directory. For more information, see arns.

Returns:

See Also:



1639
1640
1641
1642
# File 'gems/aws-sdk-clouddirectory/lib/aws-sdk-clouddirectory/client.rb', line 1639

def create_directory(params = {}, options = {})
  req = build_request(:create_directory, params)
  req.send_request(options)
end

#create_facet(params = {}) ⇒ Struct

Creates a new Facet in a schema. Facet creation is allowed only in development or applied schemas.

Examples:

Example: To create a facet


resp = client.create_facet({
  name: "node1", 
  object_type: "NODE", 
  schema_arn: "arn:aws:clouddirectory:us-west-2:45132example:directory/AYb8AOV81kHNgdj8mAO3dNY/schema/org/1", 
})

resp.to_h outputs the following:
{
}

Request syntax with placeholder values


resp = client.create_facet({
  schema_arn: "Arn", # required
  name: "FacetName", # required
  attributes: [
    {
      name: "AttributeName", # required
      attribute_definition: {
        type: "STRING", # required, accepts STRING, BINARY, BOOLEAN, NUMBER, DATETIME, VARIANT
        default_value: {
          string_value: "StringAttributeValue",
          binary_value: "data",
          boolean_value: false,
          number_value: "NumberAttributeValue",
          datetime_value: Time.now,
        },
        is_immutable: false,
        rules: {
          "RuleKey" => {
            type: "BINARY_LENGTH", # accepts BINARY_LENGTH, NUMBER_COMPARISON, STRING_FROM_SET, STRING_LENGTH
            parameters: {
              "RuleParameterKey" => "RuleParameterValue",
            },
          },
        },
      },
      attribute_reference: {
        target_facet_name: "FacetName", # required
        target_attribute_name: "AttributeName", # required
      },
      required_behavior: "REQUIRED_ALWAYS", # accepts REQUIRED_ALWAYS, NOT_REQUIRED
    },
  ],
  object_type: "NODE", # accepts NODE, LEAF_NODE, POLICY, INDEX
  facet_style: "STATIC", # accepts STATIC, DYNAMIC
})

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :schema_arn (required, String)

    The schema ARN in which the new Facet will be created. For more information, see arns.

  • :name (required, String)

    The name of the Facet, which is unique for a given schema.

  • :attributes (Array<Types::FacetAttribute>)

    The attributes that are associated with the Facet.

  • :object_type (String)

    Specifies whether a given object created from this facet is of type node, leaf node, policy or index.

    • Node: Can have multiple children but one parent.

    ^ ^

    • Leaf node: Cannot have children but can have multiple parents.

    ^ ^

    • Policy: Allows you to store a policy document and policy type. For more information, see Policies.

    ^ ^

    • Index: Can be created with the Index API.

    ^

  • :facet_style (String)

    There are two different styles that you can define on any given facet, Static and Dynamic. For static facets, all attributes must be defined in the schema. For dynamic facets, attributes can be defined during data plane operations.

Returns:

  • (Struct)

    Returns an empty response.

See Also:



1748
1749
1750
1751
# File 'gems/aws-sdk-clouddirectory/lib/aws-sdk-clouddirectory/client.rb', line 1748

def create_facet(params = {}, options = {})
  req = build_request(:create_facet, params)
  req.send_request(options)
end

#create_index(params = {}) ⇒ Types::CreateIndexResponse

Creates an index object. See Indexing and search for more information.

Examples:

Example: To create an index


resp = client.create_index({
  directory_arn: "arn:aws:clouddirectory:us-west-2:45132example:directory/AXQXDXvdgkOWktRXV4HnRa8", 
  is_unique: true, 
  link_name: "Examplelink", 
  ordered_indexed_attribute_list: [
  ], 
  parent_reference: {
  }, 
})

resp.to_h outputs the following:
{
  object_identifier: "AQF0Fw173YJDlpLUV1eB50WvYsWFtVoUSmOzZjz_BLULIA", 
}

Request syntax with placeholder values


resp = client.create_index({
  directory_arn: "Arn", # required
  ordered_indexed_attribute_list: [ # required
    {
      schema_arn: "Arn", # required
      facet_name: "FacetName", # required
      name: "AttributeName", # required
    },
  ],
  is_unique: false, # required
  parent_reference: {
    selector: "SelectorObjectReference",
  },
  link_name: "LinkName",
})

Response structure


resp.object_identifier #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :directory_arn (required, String)

    The ARN of the directory where the index should be created.

  • :ordered_indexed_attribute_list (required, Array<Types::AttributeKey>)

    Specifies the attributes that should be indexed on. Currently only a single attribute is supported.

  • :is_unique (required, Boolean)

    Indicates whether the attribute that is being indexed has unique values or not.

  • :parent_reference (Types::ObjectReference)

    A reference to the parent object that contains the index object.

  • :link_name (String)

    The name of the link between the parent object and the index object.

Returns:

See Also:



1825
1826
1827
1828
# File 'gems/aws-sdk-clouddirectory/lib/aws-sdk-clouddirectory/client.rb', line 1825

def create_index(params = {}, options = {})
  req = build_request(:create_index, params)
  req.send_request(options)
end

#create_object(params = {}) ⇒ Types::CreateObjectResponse

Creates an object in a Directory. Additionally attaches the object to a parent, if a parent reference and LinkName is specified. An object is simply a collection of Facet attributes. You can also use this API call to create a policy object, if the facet from which you create the object is a policy facet.

Examples:

Example: To create an object


resp = client.create_object({
  directory_arn: "arn:aws:clouddirectory:us-west-2:45132example:directory/AXQXDXvdgkOWktRXV4HnRa8", 
  schema_facets: [
    {
      facet_name: "Organization_Person", 
      schema_arn: "arn:aws:clouddirectory:us-west-2:45132example:directory/AXQXDXvdgkOWktRXV4HnRa8/schema/ExampleOrgPersonSchema/1", 
    }, 
  ], 
})

resp.to_h outputs the following:
{
  object_identifier: "AQF0Fw173YJDlpLUV1eB50WvScvjsYXcS3K2nP1HwDuuYQ", 
}

Request syntax with placeholder values


resp = client.create_object({
  directory_arn: "Arn", # required
  schema_facets: [ # required
    {
      schema_arn: "Arn",
      facet_name: "FacetName",
    },
  ],
  object_attribute_list: [
    {
      key: { # required
        schema_arn: "Arn", # required
        facet_name: "FacetName", # required
        name: "AttributeName", # required
      },
      value: { # required
        string_value: "StringAttributeValue",
        binary_value: "data",
        boolean_value: false,
        number_value: "NumberAttributeValue",
        datetime_value: Time.now,
      },
    },
  ],
  parent_reference: {
    selector: "SelectorObjectReference",
  },
  link_name: "LinkName",
})

Response structure


resp.object_identifier #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :directory_arn (required, String)

    The Amazon Resource Name (ARN) that is associated with the Directory in which the object will be created. For more information, see arns.

  • :schema_facets (required, Array<Types::SchemaFacet>)

    A list of schema facets to be associated with the object. Do not provide minor version components. See SchemaFacet for details.

  • :object_attribute_list (Array<Types::AttributeKeyAndValue>)

    The attribute map whose attribute ARN contains the key and attribute value as the map value.

  • :parent_reference (Types::ObjectReference)

    If specified, the parent reference to which this object will be attached.

  • :link_name (String)

    The name of link that is used to attach this object to a parent.

Returns:

See Also:



1917
1918
1919
1920
# File 'gems/aws-sdk-clouddirectory/lib/aws-sdk-clouddirectory/client.rb', line 1917

def create_object(params = {}, options = {})
  req = build_request(:create_object, params)
  req.send_request(options)
end

#create_schema(params = {}) ⇒ Types::CreateSchemaResponse

Creates a new schema in a development state. A schema can exist in three phases:

  • Development: This is a mutable phase of the schema. All new schemas are in the development phase. Once the schema is finalized, it can be published.

  • Published: Published schemas are immutable and have a version associated with them.

  • Applied: Applied schemas are mutable in a way that allows you to add new schema facets. You can also add new, nonrequired attributes to existing schema facets. You can apply only published schemas to directories.

Examples:

Example: To create a schema


resp = client.create_schema({
  name: "Customers", 
})

resp.to_h outputs the following:
{
  schema_arn: "arn:aws:clouddirectory:us-west-2:45132example:schema/development/Customers", 
}

Request syntax with placeholder values


resp = client.create_schema({
  name: "SchemaName", # required
})

Response structure


resp.schema_arn #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :name (required, String)

    The name that is associated with the schema. This is unique to each account and in each region.

Returns:

See Also:



1971
1972
1973
1974
# File 'gems/aws-sdk-clouddirectory/lib/aws-sdk-clouddirectory/client.rb', line 1971

def create_schema(params = {}, options = {})
  req = build_request(:create_schema, params)
  req.send_request(options)
end

Creates a TypedLinkFacet. For more information, see Typed Links.

Examples:

Example: To create a typed link facet


resp = client.create_typed_link_facet({
  facet: {
    attributes: [
      {
        name: "1", 
        required_behavior: "REQUIRED_ALWAYS", 
        type: "BINARY", 
      }, 
    ], 
    identity_attribute_order: [
      "1", 
    ], 
    name: "FacetExample", 
  }, 
  schema_arn: "arn:aws:clouddirectory:us-west-2:45132example:schema/development/typedlinkschema", 
})

resp.to_h outputs the following:
{
}

Request syntax with placeholder values


resp = client.create_typed_link_facet({
  schema_arn: "Arn", # required
  facet: { # required
    name: "TypedLinkName", # required
    attributes: [ # required
      {
        name: "AttributeName", # required
        type: "STRING", # required, accepts STRING, BINARY, BOOLEAN, NUMBER, DATETIME, VARIANT
        default_value: {
          string_value: "StringAttributeValue",
          binary_value: "data",
          boolean_value: false,
          number_value: "NumberAttributeValue",
          datetime_value: Time.now,
        },
        is_immutable: false,
        rules: {
          "RuleKey" => {
            type: "BINARY_LENGTH", # accepts BINARY_LENGTH, NUMBER_COMPARISON, STRING_FROM_SET, STRING_LENGTH
            parameters: {
              "RuleParameterKey" => "RuleParameterValue",
            },
          },
        },
        required_behavior: "REQUIRED_ALWAYS", # required, accepts REQUIRED_ALWAYS, NOT_REQUIRED
      },
    ],
    identity_attribute_order: ["AttributeName"], # required
  },
})

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :schema_arn (required, String)

    The Amazon Resource Name (ARN) that is associated with the schema. For more information, see arns.

  • :facet (required, Types::TypedLinkFacet)

    Facet structure that is associated with the typed link facet.

Returns:

  • (Struct)

    Returns an empty response.

See Also:



2052
2053
2054
2055
# File 'gems/aws-sdk-clouddirectory/lib/aws-sdk-clouddirectory/client.rb', line 2052

def create_typed_link_facet(params = {}, options = {})
  req = build_request(:create_typed_link_facet, params)
  req.send_request(options)
end

#delete_directory(params = {}) ⇒ Types::DeleteDirectoryResponse

Deletes a directory. Only disabled directories can be deleted. A deleted directory cannot be undone. Exercise extreme caution when deleting directories.

Examples:

Example: To delete a directory


resp = client.delete_directory({
  directory_arn: "arn:aws:clouddirectory:us-west-2:45132example:directory/AXQXDXvdgkOWktRXV4HnRa8", 
})

resp.to_h outputs the following:
{
  directory_arn: "arn:aws:clouddirectory:us-west-2:45132example:directory/AXQXDXvdgkOWktRXV4HnRa8", 
}

Request syntax with placeholder values


resp = client.delete_directory({
  directory_arn: "Arn", # required
})

Response structure


resp.directory_arn #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :directory_arn (required, String)

    The ARN of the directory to delete.

Returns:

See Also:



2094
2095
2096
2097
# File 'gems/aws-sdk-clouddirectory/lib/aws-sdk-clouddirectory/client.rb', line 2094

def delete_directory(params = {}, options = {})
  req = build_request(:delete_directory, params)
  req.send_request(options)
end

#delete_facet(params = {}) ⇒ Struct

Deletes a given Facet. All attributes and Rules that are associated with the facet will be deleted. Only development schema facets are allowed deletion.

Examples:

Example: To delete a facet


resp = client.delete_facet({
  name: "Organization", 
  schema_arn: "arn:aws:clouddirectory:us-west-2:45132example:schema/development/exampleorgtest", 
})

resp.to_h outputs the following:
{
}

Request syntax with placeholder values


resp = client.delete_facet({
  schema_arn: "Arn", # required
  name: "FacetName", # required
})

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :schema_arn (required, String)

    The Amazon Resource Name (ARN) that is associated with the Facet. For more information, see arns.

  • :name (required, String)

    The name of the facet to delete.

Returns:

  • (Struct)

    Returns an empty response.

See Also:



2135
2136
2137
2138
# File 'gems/aws-sdk-clouddirectory/lib/aws-sdk-clouddirectory/client.rb', line 2135

def delete_facet(params = {}, options = {})
  req = build_request(:delete_facet, params)
  req.send_request(options)
end

#delete_object(params = {}) ⇒ Struct

Deletes an object and its associated attributes. Only objects with no children and no parents can be deleted. The maximum number of attributes that can be deleted during an object deletion is 30. For more information, see Amazon Cloud Directory Limits.

Examples:

Example: To delete an object


resp = client.delete_object({
  directory_arn: "arn:aws:clouddirectory:us-west-2:45132example:directory/AfMr4qym1kZTvwqOafAYfqI", 
  object_reference: {
    selector: "$AQHzK-KsptZGU78KjmnwGH6i8H-voMZDSNCqfx-fRUcBFg", 
  }, 
})

resp.to_h outputs the following:
{
}

Request syntax with placeholder values


resp = client.delete_object({
  directory_arn: "Arn", # required
  object_reference: { # required
    selector: "SelectorObjectReference",
  },
})

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :directory_arn (required, String)

    The Amazon Resource Name (ARN) that is associated with the Directory where the object resides. For more information, see arns.

  • :object_reference (required, Types::ObjectReference)

    A reference that identifies the object.

Returns:

  • (Struct)

    Returns an empty response.

See Also:



2185
2186
2187
2188
# File 'gems/aws-sdk-clouddirectory/lib/aws-sdk-clouddirectory/client.rb', line 2185

def delete_object(params = {}, options = {})
  req = build_request(:delete_object, params)
  req.send_request(options)
end

#delete_schema(params = {}) ⇒ Types::DeleteSchemaResponse

Deletes a given schema. Schemas in a development and published state can only be deleted.

Examples:

Example: To delete a schema


resp = client.delete_schema({
  schema_arn: "arn:aws:clouddirectory:us-west-2:45132example:schema/development/exampleorgtest", 
})

resp.to_h outputs the following:
{
  schema_arn: "arn:aws:clouddirectory:us-west-2:45132example:schema/development/exampleorgtest", 
}

Request syntax with placeholder values


resp = client.delete_schema({
  schema_arn: "Arn", # required
})

Response structure


resp.schema_arn #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :schema_arn (required, String)

    The Amazon Resource Name (ARN) of the development schema. For more information, see arns.

Returns:

See Also:



2227
2228
2229
2230
# File 'gems/aws-sdk-clouddirectory/lib/aws-sdk-clouddirectory/client.rb', line 2227

def delete_schema(params = {}, options = {})
  req = build_request(:delete_schema, params)
  req.send_request(options)
end

Deletes a TypedLinkFacet. For more information, see Typed Links.

Examples:

Example: To delete a typed link facet


resp = client.delete_typed_link_facet({
  name: "ExampleFacet", 
  schema_arn: "arn:aws:clouddirectory:us-west-2:45132example:schema/development/typedlinkschematest", 
})

resp.to_h outputs the following:
{
}

Request syntax with placeholder values


resp = client.delete_typed_link_facet({
  schema_arn: "Arn", # required
  name: "TypedLinkName", # required
})

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :schema_arn (required, String)

    The Amazon Resource Name (ARN) that is associated with the schema. For more information, see arns.

  • :name (required, String)

    The unique name of the typed link facet.

Returns:

  • (Struct)

    Returns an empty response.

See Also:



2270
2271
2272
2273
# File 'gems/aws-sdk-clouddirectory/lib/aws-sdk-clouddirectory/client.rb', line 2270

def delete_typed_link_facet(params = {}, options = {})
  req = build_request(:delete_typed_link_facet, params)
  req.send_request(options)
end

#detach_from_index(params = {}) ⇒ Types::DetachFromIndexResponse

Detaches the specified object from the specified index.

Examples:

Example: To detach an object from an index


resp = client.detach_from_index({
  directory_arn: "arn:aws:clouddirectory:us-west-2:45132example:directory/AYb8AOV81kHNgdj8mAO3dNY", 
  index_reference: {
    selector: "$AQGG_ADlfNZBzYHY_JgDt3TW45F26R1HTY2z-stwKBte_Q", 
  }, 
  target_reference: {
    selector: "$AQGG_ADlfNZBzYHY_JgDt3TWcU7IARvOTeaR09zme1sVsw", 
  }, 
})

resp.to_h outputs the following:
{
  detached_object_identifier: "AQGG_ADlfNZBzYHY_JgDt3TWcU7IARvOTeaR09zme1sVsw", 
}

Request syntax with placeholder values


resp = client.detach_from_index({
  directory_arn: "Arn", # required
  index_reference: { # required
    selector: "SelectorObjectReference",
  },
  target_reference: { # required
    selector: "SelectorObjectReference",
  },
})

Response structure


resp.detached_object_identifier #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :directory_arn (required, String)

    The Amazon Resource Name (ARN) of the directory the index and object exist in.

  • :index_reference (required, Types::ObjectReference)

    A reference to the index object.

  • :target_reference (required, Types::ObjectReference)

    A reference to the object being detached from the index.

Returns:

See Also:



2329
2330
2331
2332
# File 'gems/aws-sdk-clouddirectory/lib/aws-sdk-clouddirectory/client.rb', line 2329

def detach_from_index(params = {}, options = {})
  req = build_request(:detach_from_index, params)
  req.send_request(options)
end

#detach_object(params = {}) ⇒ Types::DetachObjectResponse

Detaches a given object from the parent object. The object that is to be detached from the parent is specified by the link name.

Examples:

Example: To detach an object from its parent object


resp = client.detach_object({
  directory_arn: "arn:aws:clouddirectory:us-west-2:45132example:directory/AYb8AOV81kHNgdj8mAO3dNY", 
  link_name: "link2", 
  parent_reference: {
    selector: "$AQGG_ADlfNZBzYHY_JgDt3TWcU7IARvOTeaR09zme1sVsw", 
  }, 
})

resp.to_h outputs the following:
{
  detached_object_identifier: "AQGG_ADlfNZBzYHY_JgDt3TWSvfuEnDqTdmeCuTs6YBNUA", 
}

Request syntax with placeholder values


resp = client.detach_object({
  directory_arn: "Arn", # required
  parent_reference: { # required
    selector: "SelectorObjectReference",
  },
  link_name: "LinkName", # required
})

Response structure


resp.detached_object_identifier #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :directory_arn (required, String)

    The Amazon Resource Name (ARN) that is associated with the Directory where objects reside. For more information, see arns.

  • :parent_reference (required, Types::ObjectReference)

    The parent reference from which the object with the specified link name is detached.

  • :link_name (required, String)

    The link name associated with the object that needs to be detached.

Returns:

See Also:



2386
2387
2388
2389
# File 'gems/aws-sdk-clouddirectory/lib/aws-sdk-clouddirectory/client.rb', line 2386

def detach_object(params = {}, options = {})
  req = build_request(:detach_object, params)
  req.send_request(options)
end

#detach_policy(params = {}) ⇒ Struct

Detaches a policy from an object.

Examples:

Example: To detach a policy from an object


resp = client.detach_policy({
  directory_arn: "arn:aws:clouddirectory:us-west-2:45132example:directory/AYb8AOV81kHNgdj8mAO3dNY", 
  object_reference: {
    selector: "$AQGG_ADlfNZBzYHY_JgDt3TWQoovm1s3Ts2v0NKrzdVnPw", 
  }, 
  policy_reference: {
    selector: "$AQGG_ADlfNZBzYHY_JgDt3TWgcBsTVmcQEWs6jlygfhuew", 
  }, 
})

resp.to_h outputs the following:
{
}

Request syntax with placeholder values


resp = client.detach_policy({
  directory_arn: "Arn", # required
  policy_reference: { # required
    selector: "SelectorObjectReference",
  },
  object_reference: { # required
    selector: "SelectorObjectReference",
  },
})

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :directory_arn (required, String)

    The Amazon Resource Name (ARN) that is associated with the Directory where both objects reside. For more information, see arns.

  • :policy_reference (required, Types::ObjectReference)

    Reference that identifies the policy object.

  • :object_reference (required, Types::ObjectReference)

    Reference that identifies the object whose policy object will be detached.

Returns:

  • (Struct)

    Returns an empty response.

See Also:



2439
2440
2441
2442
# File 'gems/aws-sdk-clouddirectory/lib/aws-sdk-clouddirectory/client.rb', line 2439

def detach_policy(params = {}, options = {})
  req = build_request(:detach_policy, params)
  req.send_request(options)
end

Detaches a typed link from a specified source and target object. For more information, see Typed Links.

Examples:

Example: To detach a typed link from an object


resp = client.detach_typed_link({
  directory_arn: "arn:aws:clouddirectory:us-west-2:45132example:directory/AYb8AOV81kHNgdj8mAO3dNY", 
  typed_link_specifier: {
    identity_attribute_values: [
      {
        attribute_name: "22", 
        value: {
          binary_value: "c3Ry", 
        }, 
      }, 
    ], 
    source_object_reference: {
      selector: "$AQGG_ADlfNZBzYHY_JgDt3TWSvfuEnDqTdmeCuTs6YBNUA", 
    }, 
    target_object_reference: {
      selector: "$AQGG_ADlfNZBzYHY_JgDt3TWcU7IARvOTeaR09zme1sVsw", 
    }, 
    typed_link_facet: {
      schema_arn: "arn:aws:clouddirectory:us-west-2:45132example:directory/AYb8AOV81kHNgdj8mAO3dNY/schema/org/1", 
      typed_link_name: "exampletypedlink8", 
    }, 
  }, 
})

Request syntax with placeholder values


resp = client.detach_typed_link({
  directory_arn: "Arn", # required
  typed_link_specifier: { # required
    typed_link_facet: { # required
      schema_arn: "Arn", # required
      typed_link_name: "TypedLinkName", # required
    },
    source_object_reference: { # required
      selector: "SelectorObjectReference",
    },
    target_object_reference: { # required
      selector: "SelectorObjectReference",
    },
    identity_attribute_values: [ # required
      {
        attribute_name: "AttributeName", # required
        value: { # required
          string_value: "StringAttributeValue",
          binary_value: "data",
          boolean_value: false,
          number_value: "NumberAttributeValue",
          datetime_value: Time.now,
        },
      },
    ],
  },
})

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :directory_arn (required, String)

    The Amazon Resource Name (ARN) of the directory where you want to detach the typed link.

  • :typed_link_specifier (required, Types::TypedLinkSpecifier)

    Used to accept a typed link specifier as input.

Returns:

  • (Struct)

    Returns an empty response.

See Also:



2521
2522
2523
2524
# File 'gems/aws-sdk-clouddirectory/lib/aws-sdk-clouddirectory/client.rb', line 2521

def detach_typed_link(params = {}, options = {})
  req = build_request(:detach_typed_link, params)
  req.send_request(options)
end

#disable_directory(params = {}) ⇒ Types::DisableDirectoryResponse

Disables the specified directory. Disabled directories cannot be read or written to. Only enabled directories can be disabled. Disabled directories may be reenabled.

Examples:

Example: To disable a directory


resp = client.disable_directory({
  directory_arn: "arn:aws:clouddirectory:us-west-2:45132example:directory/AXQXDXvdgkOWktRXV4HnRa8", 
})

resp.to_h outputs the following:
{
  directory_arn: "arn:aws:clouddirectory:us-west-2:45132example:directory/AXQXDXvdgkOWktRXV4HnRa8", 
}

Request syntax with placeholder values


resp = client.disable_directory({
  directory_arn: "Arn", # required
})

Response structure


resp.directory_arn #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :directory_arn (required, String)

    The ARN of the directory to disable.

Returns:

See Also:



2563
2564
2565
2566
# File 'gems/aws-sdk-clouddirectory/lib/aws-sdk-clouddirectory/client.rb', line 2563

def disable_directory(params = {}, options = {})
  req = build_request(:disable_directory, params)
  req.send_request(options)
end

#enable_directory(params = {}) ⇒ Types::EnableDirectoryResponse

Enables the specified directory. Only disabled directories can be enabled. Once enabled, the directory can then be read and written to.

Examples:

Example: To enable a disabled directory


resp = client.enable_directory({
  directory_arn: "arn:aws:clouddirectory:us-west-2:45132example:directory/AXQXDXvdgkOWktRXV4HnRa8", 
})

resp.to_h outputs the following:
{
  directory_arn: "arn:aws:clouddirectory:us-west-2:45132example:directory/AXQXDXvdgkOWktRXV4HnRa8", 
}

Request syntax with placeholder values


resp = client.enable_directory({
  directory_arn: "Arn", # required
})

Response structure


resp.directory_arn #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :directory_arn (required, String)

    The ARN of the directory to enable.

Returns:

See Also:



2604
2605
2606
2607
# File 'gems/aws-sdk-clouddirectory/lib/aws-sdk-clouddirectory/client.rb', line 2604

def enable_directory(params = {}, options = {})
  req = build_request(:enable_directory, params)
  req.send_request(options)
end

#get_applied_schema_version(params = {}) ⇒ Types::GetAppliedSchemaVersionResponse

Returns current applied schema version ARN, including the minor version in use.

Examples:

Request syntax with placeholder values


resp = client.get_applied_schema_version({
  schema_arn: "Arn", # required
})

Response structure


resp.applied_schema_arn #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :schema_arn (required, String)

    The ARN of the applied schema.

Returns:

See Also:



2633
2634
2635
2636
# File 'gems/aws-sdk-clouddirectory/lib/aws-sdk-clouddirectory/client.rb', line 2633

def get_applied_schema_version(params = {}, options = {})
  req = build_request(:get_applied_schema_version, params)
  req.send_request(options)
end

#get_directory(params = {}) ⇒ Types::GetDirectoryResponse

Retrieves metadata about a directory.

Examples:

Example: To get information about a directory


resp = client.get_directory({
  directory_arn: "arn:aws:clouddirectory:us-west-2:45132example:directory/AYb8AOV81kHNgdj8mAO3dNY", 
})

resp.to_h outputs the following:
{
  directory: {
    creation_date_time: Time.parse(1506115781.186), 
    directory_arn: "arn:aws:clouddirectory:us-west-2:45132example:directory/AYb8AOV81kHNgdj8mAO3dNY", 
    name: "ExampleCD", 
    state: "ENABLED", 
  }, 
}

Request syntax with placeholder values


resp = client.get_directory({
  directory_arn: "DirectoryArn", # required
})

Response structure


resp.directory.name #=> String
resp.directory.directory_arn #=> String
resp.directory.state #=> String, one of "ENABLED", "DISABLED", "DELETED"
resp.directory.creation_date_time #=> Time

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :directory_arn (required, String)

    The ARN of the directory.

Returns:

See Also:



2681
2682
2683
2684
# File 'gems/aws-sdk-clouddirectory/lib/aws-sdk-clouddirectory/client.rb', line 2681

def get_directory(params = {}, options = {})
  req = build_request(:get_directory, params)
  req.send_request(options)
end

#get_facet(params = {}) ⇒ Types::GetFacetResponse

Gets details of the Facet, such as facet name, attributes, Rules, or ObjectType. You can call this on all kinds of schema facets -- published, development, or applied.

Examples:

Example: To get information about a facet


resp = client.get_facet({
  name: "node2", 
  schema_arn: "arn:aws:clouddirectory:us-west-2:45132example:directory/AYb8AOV81kHNgdj8mAO3dNY/schema/org/1", 
})

resp.to_h outputs the following:
{
  facet: {
    name: "node2", 
    object_type: "NODE", 
  }, 
}

Request syntax with placeholder values


resp = client.get_facet({
  schema_arn: "Arn", # required
  name: "FacetName", # required
})

Response structure


resp.facet.name #=> String
resp.facet.object_type #=> String, one of "NODE", "LEAF_NODE", "POLICY", "INDEX"
resp.facet.facet_style #=> String, one of "STATIC", "DYNAMIC"

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :schema_arn (required, String)

    The Amazon Resource Name (ARN) that is associated with the Facet. For more information, see arns.

  • :name (required, String)

    The name of the facet to retrieve.

Returns:

See Also:



2734
2735
2736
2737
# File 'gems/aws-sdk-clouddirectory/lib/aws-sdk-clouddirectory/client.rb', line 2734

def get_facet(params = {}, options = {})
  req = build_request(:get_facet, params)
  req.send_request(options)
end

Retrieves attributes that are associated with a typed link.

Examples:

Request syntax with placeholder values


resp = client.get_link_attributes({
  directory_arn: "Arn", # required
  typed_link_specifier: { # required
    typed_link_facet: { # required
      schema_arn: "Arn", # required
      typed_link_name: "TypedLinkName", # required
    },
    source_object_reference: { # required
      selector: "SelectorObjectReference",
    },
    target_object_reference: { # required
      selector: "SelectorObjectReference",
    },
    identity_attribute_values: [ # required
      {
        attribute_name: "AttributeName", # required
        value: { # required
          string_value: "StringAttributeValue",
          binary_value: "data",
          boolean_value: false,
          number_value: "NumberAttributeValue",
          datetime_value: Time.now,
        },
      },
    ],
  },
  attribute_names: ["AttributeName"], # required
  consistency_level: "SERIALIZABLE", # accepts SERIALIZABLE, EVENTUAL
})

Response structure


resp.attributes #=> Array
resp.attributes[0].key.schema_arn #=> String
resp.attributes[0].key.facet_name #=> String
resp.attributes[0].key.name #=> String
resp.attributes[0].value.string_value #=> String
resp.attributes[0].value.binary_value #=> String
resp.attributes[0].value.boolean_value #=> Boolean
resp.attributes[0].value.number_value #=> String
resp.attributes[0].value.datetime_value #=> Time

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :directory_arn (required, String)

    The Amazon Resource Name (ARN) that is associated with the Directory where the typed link resides. For more information, see arns or Typed Links.

  • :typed_link_specifier (required, Types::TypedLinkSpecifier)

    Allows a typed link specifier to be accepted as input.

  • :attribute_names (required, Array<String>)

    A list of attribute names whose values will be retrieved.

  • :consistency_level (String)

    The consistency level at which to retrieve the attributes on a typed link.

Returns:

See Also:



2812
2813
2814
2815
# File 'gems/aws-sdk-clouddirectory/lib/aws-sdk-clouddirectory/client.rb', line 2812

def get_link_attributes(params = {}, options = {})
  req = build_request(:get_link_attributes, params)
  req.send_request(options)
end

#get_object_attributes(params = {}) ⇒ Types::GetObjectAttributesResponse

Retrieves attributes within a facet that are associated with an object.

Examples:

Request syntax with placeholder values


resp = client.get_object_attributes({
  directory_arn: "Arn", # required
  object_reference: { # required
    selector: "SelectorObjectReference",
  },
  consistency_level: "SERIALIZABLE", # accepts SERIALIZABLE, EVENTUAL
  schema_facet: { # required
    schema_arn: "Arn",
    facet_name: "FacetName",
  },
  attribute_names: ["AttributeName"], # required
})

Response structure


resp.attributes #=> Array
resp.attributes[0].key.schema_arn #=> String
resp.attributes[0].key.facet_name #=> String
resp.attributes[0].key.name #=> String
resp.attributes[0].value.string_value #=> String
resp.attributes[0].value.binary_value #=> String
resp.attributes[0].value.boolean_value #=> Boolean
resp.attributes[0].value.number_value #=> String
resp.attributes[0].value.datetime_value #=> Time

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :directory_arn (required, String)

    The Amazon Resource Name (ARN) that is associated with the Directory where the object resides.

  • :object_reference (required, Types::ObjectReference)

    Reference that identifies the object whose attributes will be retrieved.

  • :consistency_level (String)

    The consistency level at which to retrieve the attributes on an object.

  • :schema_facet (required, Types::SchemaFacet)

    Identifier for the facet whose attributes will be retrieved. See SchemaFacet for details.

  • :attribute_names (required, Array<String>)

    List of attribute names whose values will be retrieved.

Returns:

See Also:



2874
2875
2876
2877
# File 'gems/aws-sdk-clouddirectory/lib/aws-sdk-clouddirectory/client.rb', line 2874

def get_object_attributes(params = {}, options = {})
  req = build_request(:get_object_attributes, params)
  req.send_request(options)
end

#get_object_information(params = {}) ⇒ Types::GetObjectInformationResponse

Retrieves metadata about an object.

Examples:

Example: To get information about an object


resp = client.get_object_information({
  consistency_level: "SERIALIZABLE", 
  directory_arn: "arn:aws:clouddirectory:us-west-2:45132example:directory/AYb8AOV81kHNgdj8mAO3dNY", 
  object_reference: {
    selector: "$AQGG_ADlfNZBzYHY_JgDt3TWmspn1fxfQmSQaaVKSbvEiQ", 
  }, 
})

resp.to_h outputs the following:
{
  object_identifier: "AQGG_ADlfNZBzYHY_JgDt3TWmspn1fxfQmSQaaVKSbvEiQ", 
  schema_facets: [
    {
      facet_name: "node2", 
      schema_arn: "arn:aws:clouddirectory:us-west-2:45132example:directory/AYb8AOV81kHNgdj8mAO3dNY/schema/org/1", 
    }, 
  ], 
}

Request syntax with placeholder values


resp = client.get_object_information({
  directory_arn: "Arn", # required
  object_reference: { # required
    selector: "SelectorObjectReference",
  },
  consistency_level: "SERIALIZABLE", # accepts SERIALIZABLE, EVENTUAL
})

Response structure


resp.schema_facets #=> Array
resp.schema_facets[0].schema_arn #=> String
resp.schema_facets[0].facet_name #=> String
resp.object_identifier #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :directory_arn (required, String)

    The ARN of the directory being retrieved.

  • :object_reference (required, Types::ObjectReference)

    A reference to the object.

  • :consistency_level (String)

    The consistency level at which to retrieve the object information.

Returns:

See Also:



2938
2939
2940
2941
# File 'gems/aws-sdk-clouddirectory/lib/aws-sdk-clouddirectory/client.rb', line 2938

def get_object_information(params = {}, options = {})
  req = build_request(:get_object_information, params)
  req.send_request(options)
end

#get_schema_as_json(params = {}) ⇒ Types::GetSchemaAsJsonResponse

Retrieves a JSON representation of the schema. See JSON Schema Format for more information.

Examples:

Example: To get schema information and display it in JSON format


resp = client.get_schema_as_json({
  schema_arn: "arn:aws:clouddirectory:us-west-2:45132example:directory/AYb8AOV81kHNgdj8mAO3dNY/schema/org/1", 
})

resp.to_h outputs the following:
{
  document: "{\"sourceSchemaArn\":\"arn:aws:clouddirectory:us-west-2:45132example:schema/published/org/1\",\"facets\":{\"node2\":{\"facetAttributes\":{},\"objectType\":\"NODE\"},\"Organization\":{\"facetAttributes\":{\"account_id\":{\"attributeDefinition\":{\"attributeType\":\"STRING\",\"isImmutable\":false,\"attributeRules\":{\"nameLength\":{\"parameters\":{\"min\":\"1\",\"max\":\"1024\"},\"ruleType\":\"STRING_LENGTH\"}}},\"requiredBehavior\":\"NOT_REQUIRED\"},\"account_name\":{\"attributeDefinition\":{\"attributeType\":\"STRING\",\"isImmutable\":false,\"attributeRules\":{\"nameLength\":{\"parameters\":{\"min\":\"1\",\"max\":\"1024\"},\"ruleType\":\"STRING_LENGTH\"}}},\"requiredBehavior\":\"NOT_REQUIRED\"},\"telephone_number\":{\"attributeDefinition\":{\"attributeType\":\"STRING\",\"isImmutable\":false,\"attributeRules\":{\"nameLength\":{\"parameters\":{\"min\":\"1\",\"max\":\"1024\"},\"ruleType\":\"STRING_LENGTH\"}}},\"requiredBehavior\":\"NOT_REQUIRED\"},\"description\":{\"attributeDefinition\":{\"attributeType\":\"STRING\",\"isImmutable\":false,\"attributeRules\":{\"nameLength\":{\"parameters\":{\"min\":\"1\",\"max\":\"1024\"},\"ruleType\":\"STRING_LENGTH\"}}},\"requiredBehavior\":\"NOT_REQUIRED\"},\"mailing_address_country\":{\"attributeDefinition\":{\"attributeType\":\"STRING\",\"isImmutable\":false,\"attributeRules\":{\"nameLength\":{\"parameters\":{\"min\":\"1\",\"max\":\"1024\"},\"ruleType\":\"STRING_LENGTH\"}}},\"requiredBehavior\":\"NOT_REQUIRED\"},\"mailing_address_state\":{\"attributeDefinition\":{\"attributeType\":\"STRING\",\"isImmutable\":false,\"attributeRules\":{\"nameLength\":{\"parameters\":{\"min\":\"1\",\"max\":\"1024\"},\"ruleType\":\"STRING_LENGTH\"}}},\"requiredBehavior\":\"NOT_REQUIRED\"},\"mailing_address_street2\":{\"attributeDefinition\":{\"attributeType\":\"STRING\",\"isImmutable\":false,\"attributeRules\":{\"nameLength\":{\"parameters\":{\"min\":\"1\",\"max\":\"1024\"},\"ruleType\":\"STRING_LENGTH\"}}},\"requiredBehavior\":\"NOT_REQUIRED\"},\"mailing_address_street1\":{\"attributeDefinition\":{\"attributeType\":\"STRING\",\"isImmutable\":false,\"attributeRules\":{\"nameLength\":{\"parameters\":{\"min\":\"1\",\"max\":\"1024\"},\"ruleType\":\"STRING_LENGTH\"}}},\"requiredBehavior\":\"NOT_REQUIRED\"},\"web_site\":{\"attributeDefinition\":{\"attributeType\":\"STRING\",\"isImmutable\":false,\"attributeRules\":{\"nameLength\":{\"parameters\":{\"min\":\"1\",\"max\":\"1024\"},\"ruleType\":\"STRING_LENGTH\"}}},\"requiredBehavior\":\"NOT_REQUIRED\"},\"email\":{\"attributeDefinition\":{\"attributeType\":\"STRING\",\"isImmutable\":false,\"attributeRules\":{\"nameLength\":{\"parameters\":{\"min\":\"1\",\"max\":\"1024\"},\"ruleType\":\"STRING_LENGTH\"}}},\"requiredBehavior\":\"NOT_REQUIRED\"},\"mailing_address_city\":{\"attributeDefinition\":{\"attributeType\":\"STRING\",\"isImmutable\":false,\"attributeRules\":{\"nameLength\":{\"parameters\":{\"min\":\"1\",\"max\":\"1024\"},\"ruleType\":\"STRING_LENGTH\"}}},\"requiredBehavior\":\"NOT_REQUIRED\"},\"organization_status\":{\"attributeDefinition\":{\"attributeType\":\"STRING\",\"isImmutable\":false,\"attributeRules\":{\"nameLength\":{\"parameters\":{\"min\":\"1\",\"max\":\"1024\"},\"ruleType\":\"STRING_LENGTH\"}}},\"requiredBehavior\":\"NOT_REQUIRED\"},\"mailing_address_postal_code\":{\"attributeDefinition\":{\"attributeType\":\"STRING\",\"isImmutable\":false,\"attributeRules\":{\"nameLength\":{\"parameters\":{\"min\":\"1\",\"max\":\"1024\"},\"ruleType\":\"STRING_LENGTH\"}}},\"requiredBehavior\":\"NOT_REQUIRED\"}},\"objectType\":\"LEAF_NODE\"},\"nodex\":{\"facetAttributes\":{},\"objectType\":\"NODE\"},\"Legal_Entity\":{\"facetAttributes\":{\"industry_vertical\":{\"attributeDefinition\":{\"attributeType\":\"STRING\",\"isImmutable\":false,\"attributeRules\":{\"nameLength\":{\"parameters\":{\"min\":\"1\",\"max\":\"1024\"},\"ruleType\":\"STRING_LENGTH\"}}},\"requiredBehavior\":\"NOT_REQUIRED\"},\"registered_company_name\":{\"attributeDefinition\":{\"attributeType\":\"STRING\",\"isImmutable\":false,\"attributeRules\":{\"nameLength\":{\"parameters\":{\"min\":\"1\",\"max\":\"1024\"},\"ruleType\":\"STRING_LENGTH\"}}},\"requiredBehavior\":\"NOT_REQUIRED\"},\"billing_currency\":{\"attributeDefinition\":{\"attributeType\":\"STRING\",\"isImmutable\":false,\"attributeRules\":{\"nameLength\":{\"parameters\":{\"min\":\"1\",\"max\":\"1024\"},\"ruleType\":\"STRING_LENGTH\"}}},\"requiredBehavior\":\"NOT_REQUIRED\"},\"mailing_address_country\":{\"attributeDefinition\":{\"attributeType\":\"STRING\",\"isImmutable\":false,\"attributeRules\":{\"nameLength\":{\"parameters\":{\"min\":\"1\",\"max\":\"1024\"},\"ruleType\":\"STRING_LENGTH\"}}},\"requiredBehavior\":\"NOT_REQUIRED\"},\"mailing_address_state\":{\"attributeDefinition\":{\"attributeType\":\"STRING\",\"isImmutable\":false,\"attributeRules\":{\"nameLength\":{\"parameters\":{\"min\":\"1\",\"max\":\"1024\"},\"ruleType\":\"STRING_LENGTH\"}}},\"requiredBehavior\":\"NOT_REQUIRED\"},\"mailing_address_street2\":{\"attributeDefinition\":{\"attributeType\":\"STRING\",\"isImmutable\":false,\"attributeRules\":{\"nameLength\":{\"parameters\":{\"min\":\"1\",\"max\":\"1024\"},\"ruleType\":\"STRING_LENGTH\"}}},\"requiredBehavior\":\"NOT_REQUIRED\"},\"mailing_address_street1\":{\"attributeDefinition\":{\"attributeType\":\"STRING\",\"isImmutable\":false,\"attributeRules\":{\"nameLength\":{\"parameters\":{\"min\":\"1\",\"max\":\"1024\"},\"ruleType\":\"STRING_LENGTH\"}}},\"requiredBehavior\":\"NOT_REQUIRED\"},\"tax_id\":{\"attributeDefinition\":{\"attributeType\":\"STRING\",\"isImmutable\":false,\"attributeRules\":{\"nameLength\":{\"parameters\":{\"min\":\"1\",\"max\":\"1024\"},\"ruleType\":\"STRING_LENGTH\"}}},\"requiredBehavior\":\"NOT_REQUIRED\"},\"mailing_address_city\":{\"attributeDefinition\":{\"attributeType\":\"STRING\",\"isImmutable\":false,\"attributeRules\":{\"nameLength\":{\"parameters\":{\"min\":\"1\",\"max\":\"1024\"},\"ruleType\":\"STRING_LENGTH\"}}},\"requiredBehavior\":\"NOT_REQUIRED\"},\"mailing_address_postal_code\":{\"attributeDefinition\":{\"attributeType\":\"STRING\",\"isImmutable\":false,\"attributeRules\":{\"nameLength\":{\"parameters\":{\"min\":\"1\",\"max\":\"1024\"},\"ruleType\":\"STRING_LENGTH\"}}},\"requiredBehavior\":\"NOT_REQUIRED\"}},\"objectType\":\"LEAF_NODE\"},\"policyfacet\":{\"facetAttributes\":{},\"objectType\":\"POLICY\"},\"node1\":{\"facetAttributes\":{},\"objectType\":\"NODE\"}},\"typedLinkFacets\":{\"exampletypedlink\":{\"facetAttributes\":{\"1\":{\"attributeDefinition\":{\"attributeType\":\"BINARY\",\"isImmutable\":false,\"attributeRules\":{}},\"requiredBehavior\":\"REQUIRED_ALWAYS\"}},\"identityAttributeOrder\":[\"1\"]},\"exampletypedlink8\":{\"facetAttributes\":{\"22\":{\"attributeDefinition\":{\"attributeType\":\"BINARY\",\"isImmutable\":false,\"attributeRules\":{}},\"requiredBehavior\":\"REQUIRED_ALWAYS\"}},\"identityAttributeOrder\":[\"22\"]}}}", 
  name: "org", 
}

Request syntax with placeholder values


resp = client.get_schema_as_json({
  schema_arn: "Arn", # required
})

Response structure


resp.name #=> String
resp.document #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :schema_arn (required, String)

    The ARN of the schema to retrieve.

Returns:

See Also:



2986
2987
2988
2989
# File 'gems/aws-sdk-clouddirectory/lib/aws-sdk-clouddirectory/client.rb', line 2986

def get_schema_as_json(params = {}, options = {})
  req = build_request(:get_schema_as_json, params)
  req.send_request(options)
end

Returns the identity attribute order for a specific TypedLinkFacet. For more information, see Typed Links.

Examples:

Example: To get information about a typed link facet


resp = client.get_typed_link_facet_information({
  name: "exampletypedlink8", 
  schema_arn: "arn:aws:clouddirectory:us-west-2:45132example:directory/AYb8AOV81kHNgdj8mAO3dNY/schema/org/1", 
})

resp.to_h outputs the following:
{
  identity_attribute_order: [
    "22", 
  ], 
}

Request syntax with placeholder values


resp = client.get_typed_link_facet_information({
  schema_arn: "Arn", # required
  name: "TypedLinkName", # required
})

Response structure


resp.identity_attribute_order #=> Array
resp.identity_attribute_order[0] #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :schema_arn (required, String)

    The Amazon Resource Name (ARN) that is associated with the schema. For more information, see arns.

  • :name (required, String)

    The unique name of the typed link facet.

Returns:

See Also:



3040
3041
3042
3043
# File 'gems/aws-sdk-clouddirectory/lib/aws-sdk-clouddirectory/client.rb', line 3040

def get_typed_link_facet_information(params = {}, options = {})
  req = build_request(:get_typed_link_facet_information, params)
  req.send_request(options)
end

#list_applied_schema_arns(params = {}) ⇒ Types::ListAppliedSchemaArnsResponse

Lists schema major versions applied to a directory. If SchemaArn is provided, lists the minor version.

The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.

Examples:

Example: To list applied schema ARNs for a specified directory


resp = client.list_applied_schema_arns({
  directory_arn: "arn:aws:clouddirectory:us-west-2:45132example:directory/AYb8AOV81kHNgdj8mAO3dNY", 
})

resp.to_h outputs the following:
{
  schema_arns: [
    "arn:aws:clouddirectory:us-west-2:45132example:directory/AYb8AOV81kHNgdj8mAO3dNY/schema/org/1", 
  ], 
}

Request syntax with placeholder values


resp = client.list_applied_schema_arns({
  directory_arn: "Arn", # required
  schema_arn: "Arn",
  next_token: "NextToken",
  max_results: 1,
})

Response structure


resp.schema_arns #=> Array
resp.schema_arns[0] #=> String
resp.next_token #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :directory_arn (required, String)

    The ARN of the directory you are listing.

  • :schema_arn (String)

    The response for ListAppliedSchemaArns when this parameter is used will list all minor version ARNs for a major version.

  • :next_token (String)

    The pagination token.

  • :max_results (Integer)

    The maximum number of results to retrieve.

Returns:

See Also:



3101
3102
3103
3104
# File 'gems/aws-sdk-clouddirectory/lib/aws-sdk-clouddirectory/client.rb', line 3101

def list_applied_schema_arns(params = {}, options = {})
  req = build_request(:list_applied_schema_arns, params)
  req.send_request(options)
end

#list_attached_indices(params = {}) ⇒ Types::ListAttachedIndicesResponse

Lists indices attached to the specified object.

The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.

Examples:

Example: To list the indices attached to an object


resp = client.list_attached_indices({
  directory_arn: "arn:aws:clouddirectory:us-west-2:45132example:directory/AYb8AOV81kHNgdj8mAO3dNY", 
  target_reference: {
    selector: "$AQGG_ADlfNZBzYHY_JgDt3TWcU7IARvOTeaR09zme1sVsw", 
  }, 
})

resp.to_h outputs the following:
{
  index_attachments: [
    {
      indexed_attributes: [
      ], 
      object_identifier: "AQGG_ADlfNZBzYHY_JgDt3TW45F26R1HTY2z-stwKBte_Q", 
    }, 
  ], 
}

Request syntax with placeholder values


resp = client.list_attached_indices({
  directory_arn: "Arn", # required
  target_reference: { # required
    selector: "SelectorObjectReference",
  },
  next_token: "NextToken",
  max_results: 1,
  consistency_level: "SERIALIZABLE", # accepts SERIALIZABLE, EVENTUAL
})

Response structure


resp.index_attachments #=> Array
resp.index_attachments[0].indexed_attributes #=> Array
resp.index_attachments[0].indexed_attributes[0].key.schema_arn #=> String
resp.index_attachments[0].indexed_attributes[0].key.facet_name #=> String
resp.index_attachments[0].indexed_attributes[0].key.name #=> String
resp.index_attachments[0].indexed_attributes[0].value.string_value #=> String
resp.index_attachments[0].indexed_attributes[0].value.binary_value #=> String
resp.index_attachments[0].indexed_attributes[0].value.boolean_value #=> Boolean
resp.index_attachments[0].indexed_attributes[0].value.number_value #=> String
resp.index_attachments[0].indexed_attributes[0].value.datetime_value #=> Time
resp.index_attachments[0].object_identifier #=> String
resp.next_token #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :directory_arn (required, String)

    The ARN of the directory.

  • :target_reference (required, Types::ObjectReference)

    A reference to the object that has indices attached.

  • :next_token (String)

    The pagination token.

  • :max_results (Integer)

    The maximum number of results to retrieve.

  • :consistency_level (String)

    The consistency level to use for this operation.

Returns:

See Also:



3182
3183
3184
3185
# File 'gems/aws-sdk-clouddirectory/lib/aws-sdk-clouddirectory/client.rb', line 3182

def list_attached_indices(params = {}, options = {})
  req = build_request(:list_attached_indices, params)
  req.send_request(options)
end

#list_development_schema_arns(params = {}) ⇒ Types::ListDevelopmentSchemaArnsResponse

Retrieves each Amazon Resource Name (ARN) of schemas in the development state.

The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.

Examples:

Example: To list all development schema arns in your AWS account


resp = client.list_development_schema_arns({
})

resp.to_h outputs the following:
{
  schema_arns: [
    "arn:aws:clouddirectory:us-west-2:45132example:schema/development/typedlinkschematest", 
    "arn:aws:clouddirectory:us-west-2:45132example:schema/development/testCDschema", 
    "arn:aws:clouddirectory:us-west-2:45132example:schema/development/Customers", 
    "arn:aws:clouddirectory:us-west-2:45132example:schema/development/CourseCatalog", 
    "arn:aws:clouddirectory:us-west-2:45132example:schema/development/Consumers", 
    "arn:aws:clouddirectory:us-west-2:45132example:schema/development/exampleorg", 
  ], 
}

Request syntax with placeholder values


resp = client.list_development_schema_arns({
  next_token: "NextToken",
  max_results: 1,
})

Response structure


resp.schema_arns #=> Array
resp.schema_arns[0] #=> String
resp.next_token #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :next_token (String)

    The pagination token.

  • :max_results (Integer)

    The maximum number of results to retrieve.

Returns:

See Also:



3238
3239
3240
3241
# File 'gems/aws-sdk-clouddirectory/lib/aws-sdk-clouddirectory/client.rb', line 3238

def list_development_schema_arns(params = {}, options = {})
  req = build_request(:list_development_schema_arns, params)
  req.send_request(options)
end

#list_directories(params = {}) ⇒ Types::ListDirectoriesResponse

Lists directories created within an account.

The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.

Examples:

Example: To list all directories in your AWS account


resp = client.list_directories({
})

resp.to_h outputs the following:
{
  directories: [
    {
      creation_date_time: Time.parse(1506121791.167), 
      directory_arn: "arn:aws:clouddirectory:us-west-2:45132example:directory/Ae89hOKmw0bRpvYgW8EAsus", 
      name: "ExampleCD4", 
      state: "ENABLED", 
    }, 
    {
      creation_date_time: Time.parse(1485473189.746), 
      directory_arn: "arn:aws:clouddirectory:us-west-2:45132example:directory/AXQXDXvdgkOWktRXV4HnRa8", 
      name: "testCD", 
      state: "DELETED", 
    }, 
    {
      creation_date_time: Time.parse(1506115781.186), 
      directory_arn: "arn:aws:clouddirectory:us-west-2:45132example:directory/AYb8AOV81kHNgdj8mAO3dNY", 
      name: "ExampleCD", 
      state: "ENABLED", 
    }, 
    {
      creation_date_time: Time.parse(1506118003.859), 
      directory_arn: "arn:aws:clouddirectory:us-west-2:45132example:directory/AfMr4qym1kZTvwqOafAYfqI", 
      name: "ExampleCD2", 
      state: "ENABLED", 
    }, 
    {
      creation_date_time: Time.parse(1485477107.925), 
      directory_arn: "arn:aws:clouddirectory:us-west-2:45132example:directory/AWeI1yjiB0SylWVTvQklCD0", 
      name: "testCD2", 
      state: "DELETED", 
    }, 
  ], 
}

Request syntax with placeholder values


resp = client.list_directories({
  next_token: "NextToken",
  max_results: 1,
  state: "ENABLED", # accepts ENABLED, DISABLED, DELETED
})

Response structure


resp.directories #=> Array
resp.directories[0].name #=> String
resp.directories[0].directory_arn #=> String
resp.directories[0].state #=> String, one of "ENABLED", "DISABLED", "DELETED"
resp.directories[0].creation_date_time #=> Time
resp.next_token #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :next_token (String)

    The pagination token.

  • :max_results (Integer)

    The maximum number of results to retrieve.

  • :state (String)

    The state of the directories in the list. Can be either Enabled, Disabled, or Deleted.

Returns:

See Also:



3325
3326
3327
3328
# File 'gems/aws-sdk-clouddirectory/lib/aws-sdk-clouddirectory/client.rb', line 3325

def list_directories(params = {}, options = {})
  req = build_request(:list_directories, params)
  req.send_request(options)
end

#list_facet_attributes(params = {}) ⇒ Types::ListFacetAttributesResponse

Retrieves attributes attached to the facet.

The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.

Examples:

Example: To list facet attributes


resp = client.list_facet_attributes({
  name: "Organization", 
  schema_arn: "arn:aws:clouddirectory:us-west-2:45132example:directory/AYb8AOV81kHNgdj8mAO3dNY/schema/org/1", 
})

resp.to_h outputs the following:
{
  attributes: [
    {
      attribute_definition: {
        is_immutable: false, 
        rules: {
          "nameLength" => {
            parameters: {
              "max" => "1024", 
              "min" => "1", 
            }, 
            type: "STRING_LENGTH", 
          }, 
        }, 
        type: "STRING", 
      }, 
      name: "account_id", 
      required_behavior: "NOT_REQUIRED", 
    }, 
    {
      attribute_definition: {
        is_immutable: false, 
        rules: {
          "nameLength" => {
            parameters: {
              "max" => "1024", 
              "min" => "1", 
            }, 
            type: "STRING_LENGTH", 
          }, 
        }, 
        type: "STRING", 
      }, 
      name: "account_name", 
      required_behavior: "NOT_REQUIRED", 
    }, 
    {
      attribute_definition: {
        is_immutable: false, 
        rules: {
          "nameLength" => {
            parameters: {
              "max" => "1024", 
              "min" => "1", 
            }, 
            type: "STRING_LENGTH", 
          }, 
        }, 
        type: "STRING", 
      }, 
      name: "description", 
      required_behavior: "NOT_REQUIRED", 
    }, 
    {
      attribute_definition: {
        is_immutable: false, 
        rules: {
          "nameLength" => {
            parameters: {
              "max" => "1024", 
              "min" => "1", 
            }, 
            type: "STRING_LENGTH", 
          }, 
        }, 
        type: "STRING", 
      }, 
      name: "email", 
      required_behavior: "NOT_REQUIRED", 
    }, 
    {
      attribute_definition: {
        is_immutable: false, 
        rules: {
          "nameLength" => {
            parameters: {
              "max" => "1024", 
              "min" => "1", 
            }, 
            type: "STRING_LENGTH", 
          }, 
        }, 
        type: "STRING", 
      }, 
      name: "mailing_address_city", 
      required_behavior: "NOT_REQUIRED", 
    }, 
    {
      attribute_definition: {
        is_immutable: false, 
        rules: {
          "nameLength" => {
            parameters: {
              "max" => "1024", 
              "min" => "1", 
            }, 
            type: "STRING_LENGTH", 
          }, 
        }, 
        type: "STRING", 
      }, 
      name: "mailing_address_country", 
      required_behavior: "NOT_REQUIRED", 
    }, 
    {
      attribute_definition: {
        is_immutable: false, 
        rules: {
          "nameLength" => {
            parameters: {
              "max" => "1024", 
              "min" => "1", 
            }, 
            type: "STRING_LENGTH", 
          }, 
        }, 
        type: "STRING", 
      }, 
      name: "mailing_address_postal_code", 
      required_behavior: "NOT_REQUIRED", 
    }, 
    {
      attribute_definition: {
        is_immutable: false, 
        rules: {
          "nameLength" => {
            parameters: {
              "max" => "1024", 
              "min" => "1", 
            }, 
            type: "STRING_LENGTH", 
          }, 
        }, 
        type: "STRING", 
      }, 
      name: "mailing_address_state", 
      required_behavior: "NOT_REQUIRED", 
    }, 
    {
      attribute_definition: {
        is_immutable: false, 
        rules: {
          "nameLength" => {
            parameters: {
              "max" => "1024", 
              "min" => "1", 
            }, 
            type: "STRING_LENGTH", 
          }, 
        }, 
        type: "STRING", 
      }, 
      name: "mailing_address_street1", 
      required_behavior: "NOT_REQUIRED", 
    }, 
    {
      attribute_definition: {
        is_immutable: false, 
        rules: {
          "nameLength" => {
            parameters: {
              "max" => "1024", 
              "min" => "1", 
            }, 
            type: "STRING_LENGTH", 
          }, 
        }, 
        type: "STRING", 
      }, 
      name: "mailing_address_street2", 
      required_behavior: "NOT_REQUIRED", 
    }, 
  ], 
  next_token: "V0b3JnYW5pemF0aW9uX3N0YXR1cw==", 
}

Request syntax with placeholder values


resp = client.list_facet_attributes({
  schema_arn: "Arn", # required
  name: "FacetName", # required
  next_token: "NextToken",
  max_results: 1,
})

Response structure


resp.attributes #=> Array
resp.attributes[0].name #=> String
resp.attributes[0].attribute_definition.type #=> String, one of "STRING", "BINARY", "BOOLEAN", "NUMBER", "DATETIME", "VARIANT"
resp.attributes[0].attribute_definition.default_value.string_value #=> String
resp.attributes[0].attribute_definition.default_value.binary_value #=> String
resp.attributes[0].attribute_definition.default_value.boolean_value #=> Boolean
resp.attributes[0].attribute_definition.default_value.number_value #=> String
resp.attributes[0].attribute_definition.default_value.datetime_value #=> Time
resp.attributes[0].attribute_definition.is_immutable #=> Boolean
resp.attributes[0].attribute_definition.rules #=> Hash
resp.attributes[0].attribute_definition.rules["RuleKey"].type #=> String, one of "BINARY_LENGTH", "NUMBER_COMPARISON", "STRING_FROM_SET", "STRING_LENGTH"
resp.attributes[0].attribute_definition.rules["RuleKey"].parameters #=> Hash
resp.attributes[0].attribute_definition.rules["RuleKey"].parameters["RuleParameterKey"] #=> String
resp.attributes[0].attribute_reference.target_facet_name #=> String
resp.attributes[0].attribute_reference.target_attribute_name #=> String
resp.attributes[0].required_behavior #=> String, one of "REQUIRED_ALWAYS", "NOT_REQUIRED"
resp.next_token #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :schema_arn (required, String)

    The ARN of the schema where the facet resides.

  • :name (required, String)

    The name of the facet whose attributes will be retrieved.

  • :next_token (String)

    The pagination token.

  • :max_results (Integer)

    The maximum number of results to retrieve.

Returns:

See Also:



3569
3570
3571
3572
# File 'gems/aws-sdk-clouddirectory/lib/aws-sdk-clouddirectory/client.rb', line 3569

def list_facet_attributes(params = {}, options = {})
  req = build_request(:list_facet_attributes, params)
  req.send_request(options)
end

#list_facet_names(params = {}) ⇒ Types::ListFacetNamesResponse

Retrieves the names of facets that exist in a schema.

The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.

Examples:

Example: To list facet names


resp = client.list_facet_names({
  schema_arn: "arn:aws:clouddirectory:us-west-2:45132example:directory/AYb8AOV81kHNgdj8mAO3dNY/schema/org/1", 
})

resp.to_h outputs the following:
{
  facet_names: [
    "Legal_Entity", 
    "Organization", 
    "node1", 
    "node2", 
    "nodex", 
    "policyfacet", 
  ], 
}

Request syntax with placeholder values


resp = client.list_facet_names({
  schema_arn: "Arn", # required
  next_token: "NextToken",
  max_results: 1,
})

Response structure


resp.facet_names #=> Array
resp.facet_names[0] #=> String
resp.next_token #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :schema_arn (required, String)

    The Amazon Resource Name (ARN) to retrieve facet names from.

  • :next_token (String)

    The pagination token.

  • :max_results (Integer)

    The maximum number of results to retrieve.

Returns:

See Also:



3629
3630
3631
3632
# File 'gems/aws-sdk-clouddirectory/lib/aws-sdk-clouddirectory/client.rb', line 3629

def list_facet_names(params = {}, options = {})
  req = build_request(:list_facet_names, params)
  req.send_request(options)
end

Returns a paginated list of all the incoming TypedLinkSpecifier information for an object. It also supports filtering by typed link facet and identity attributes. For more information, see Typed Links.

Examples:

Example: To list incoming typed links


resp = client.list_incoming_typed_links({
  directory_arn: "arn:aws:clouddirectory:us-west-2:45132example:directory/AYb8AOV81kHNgdj8mAO3dNY", 
  object_reference: {
    selector: "$AQGG_ADlfNZBzYHY_JgDt3TWcU7IARvOTeaR09zme1sVsw", 
  }, 
})

resp.to_h outputs the following:
{
  link_specifiers: [
    {
      identity_attribute_values: [
        {
          attribute_name: "22", 
          value: {
            binary_value: "", 
          }, 
        }, 
      ], 
      source_object_reference: {
        selector: "$AQGG_ADlfNZBzYHY_JgDt3TWSvfuEnDqTdmeCuTs6YBNUA", 
      }, 
      target_object_reference: {
        selector: "$AQGG_ADlfNZBzYHY_JgDt3TWcU7IARvOTeaR09zme1sVsw", 
      }, 
      typed_link_facet: {
        schema_arn: "arn:aws:clouddirectory:us-west-2:45132example:directory/AYb8AOV81kHNgdj8mAO3dNY/schema/org/1", 
        typed_link_name: "exampletypedlink8", 
      }, 
    }, 
    {
      identity_attribute_values: [
        {
          attribute_name: "22", 
          value: {
            binary_value: "MA==", 
          }, 
        }, 
      ], 
      source_object_reference: {
        selector: "$AQGG_ADlfNZBzYHY_JgDt3TWSvfuEnDqTdmeCuTs6YBNUA", 
      }, 
      target_object_reference: {
        selector: "$AQGG_ADlfNZBzYHY_JgDt3TWcU7IARvOTeaR09zme1sVsw", 
      }, 
      typed_link_facet: {
        schema_arn: "arn:aws:clouddirectory:us-west-2:45132example:directory/AYb8AOV81kHNgdj8mAO3dNY/schema/org/1", 
        typed_link_name: "exampletypedlink8", 
      }, 
    }, 
    {
      identity_attribute_values: [
        {
          attribute_name: "22", 
          value: {
            binary_value: "c3Ry", 
          }, 
        }, 
      ], 
      source_object_reference: {
        selector: "$AQGG_ADlfNZBzYHY_JgDt3TWSvfuEnDqTdmeCuTs6YBNUA", 
      }, 
      target_object_reference: {
        selector: "$AQGG_ADlfNZBzYHY_JgDt3TWcU7IARvOTeaR09zme1sVsw", 
      }, 
      typed_link_facet: {
        schema_arn: "arn:aws:clouddirectory:us-west-2:45132example:directory/AYb8AOV81kHNgdj8mAO3dNY/schema/org/1", 
        typed_link_name: "exampletypedlink8", 
      }, 
    }, 
  ], 
  next_token: "", 
}

Request syntax with placeholder values


resp = client.list_incoming_typed_links({
  directory_arn: "Arn", # required
  object_reference: { # required
    selector: "SelectorObjectReference",
  },
  filter_attribute_ranges: [
    {
      attribute_name: "AttributeName",
      range: { # required
        start_mode: "FIRST", # required, accepts FIRST, LAST, LAST_BEFORE_MISSING_VALUES, INCLUSIVE, EXCLUSIVE
        start_value: {
          string_value: "StringAttributeValue",
          binary_value: "data",
          boolean_value: false,
          number_value: "NumberAttributeValue",
          datetime_value: Time.now,
        },
        end_mode: "FIRST", # required, accepts FIRST, LAST, LAST_BEFORE_MISSING_VALUES, INCLUSIVE, EXCLUSIVE
        end_value: {
          string_value: "StringAttributeValue",
          binary_value: "data",
          boolean_value: false,
          number_value: "NumberAttributeValue",
          datetime_value: Time.now,
        },
      },
    },
  ],
  filter_typed_link: {
    schema_arn: "Arn", # required
    typed_link_name: "TypedLinkName", # required
  },
  next_token: "NextToken",
  max_results: 1,
  consistency_level: "SERIALIZABLE", # accepts SERIALIZABLE, EVENTUAL
})

Response structure


resp.link_specifiers #=> Array
resp.link_specifiers[0].typed_link_facet.schema_arn #=> String
resp.link_specifiers[0].typed_link_facet.typed_link_name #=> String
resp.link_specifiers[0].source_object_reference.selector #=> String
resp.link_specifiers[0].target_object_reference.selector #=> String
resp.link_specifiers[0].identity_attribute_values #=> Array
resp.link_specifiers[0].identity_attribute_values[0].attribute_name #=> String
resp.link_specifiers[0].identity_attribute_values[0].value.string_value #=> String
resp.link_specifiers[0].identity_attribute_values[0].value.binary_value #=> String
resp.link_specifiers[0].identity_attribute_values[0].value.boolean_value #=> Boolean
resp.link_specifiers[0].identity_attribute_values[0].value.number_value #=> String
resp.link_specifiers[0].identity_attribute_values[0].value.datetime_value #=> Time
resp.next_token #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :directory_arn (required, String)

    The Amazon Resource Name (ARN) of the directory where you want to list the typed links.

  • :object_reference (required, Types::ObjectReference)

    Reference that identifies the object whose attributes will be listed.

  • :filter_attribute_ranges (Array<Types::TypedLinkAttributeRange>)

    Provides range filters for multiple attributes. When providing ranges to typed link selection, any inexact ranges must be specified at the end. Any attributes that do not have a range specified are presumed to match the entire range.

  • :filter_typed_link (Types::TypedLinkSchemaAndFacetName)

    Filters are interpreted in the order of the attributes on the typed link facet, not the order in which they are supplied to any API calls.

  • :next_token (String)

    The pagination token.

  • :max_results (Integer)

    The maximum number of results to retrieve.

  • :consistency_level (String)

    The consistency level to execute the request at.

Returns:

See Also:



3810
3811
3812
3813
# File 'gems/aws-sdk-clouddirectory/lib/aws-sdk-clouddirectory/client.rb', line 3810

def list_incoming_typed_links(params = {}, options = {})
  req = build_request(:list_incoming_typed_links, params)
  req.send_request(options)
end

#list_index(params = {}) ⇒ Types::ListIndexResponse

Lists objects attached to the specified index.

The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.

Examples:

Example: To list an index


resp = client.list_index({
  directory_arn: "arn:aws:clouddirectory:us-west-2:45132example:directory/AYb8AOV81kHNgdj8mAO3dNY", 
  index_reference: {
    selector: "$AQGG_ADlfNZBzYHY_JgDt3TW45F26R1HTY2z-stwKBte_Q", 
  }, 
})

resp.to_h outputs the following:
{
  index_attachments: [
    {
      indexed_attributes: [
        {
          key: {
            facet_name: "Organization", 
            name: "description", 
            schema_arn: "arn:aws:clouddirectory:us-west-2:45132example:directory/AYb8AOV81kHNgdj8mAO3dNY/schema/org/1", 
          }, 
          value: {
          }, 
        }, 
      ], 
      object_identifier: "AQGG_ADlfNZBzYHY_JgDt3TWcU7IARvOTeaR09zme1sVsw", 
    }, 
  ], 
}

Request syntax with placeholder values


resp = client.list_index({
  directory_arn: "Arn", # required
  ranges_on_indexed_values: [
    {
      attribute_key: {
        schema_arn: "Arn", # required
        facet_name: "FacetName", # required
        name: "AttributeName", # required
      },
      range: {
        start_mode: "FIRST", # required, accepts FIRST, LAST, LAST_BEFORE_MISSING_VALUES, INCLUSIVE, EXCLUSIVE
        start_value: {
          string_value: "StringAttributeValue",
          binary_value: "data",
          boolean_value: false,
          number_value: "NumberAttributeValue",
          datetime_value: Time.now,
        },
        end_mode: "FIRST", # required, accepts FIRST, LAST, LAST_BEFORE_MISSING_VALUES, INCLUSIVE, EXCLUSIVE
        end_value: {
          string_value: "StringAttributeValue",
          binary_value: "data",
          boolean_value: false,
          number_value: "NumberAttributeValue",
          datetime_value: Time.now,
        },
      },
    },
  ],
  index_reference: { # required
    selector: "SelectorObjectReference",
  },
  max_results: 1,
  next_token: "NextToken",
  consistency_level: "SERIALIZABLE", # accepts SERIALIZABLE, EVENTUAL
})

Response structure


resp.index_attachments #=> Array
resp.index_attachments[0].indexed_attributes #=> Array
resp.index_attachments[0].indexed_attributes[0].key.schema_arn #=> String
resp.index_attachments[0].indexed_attributes[0].key.facet_name #=> String
resp.index_attachments[0].indexed_attributes[0].key.name #=> String
resp.index_attachments[0].indexed_attributes[0].value.string_value #=> String
resp.index_attachments[0].indexed_attributes[0].value.binary_value #=> String
resp.index_attachments[0].indexed_attributes[0].value.boolean_value #=> Boolean
resp.index_attachments[0].indexed_attributes[0].value.number_value #=> String
resp.index_attachments[0].indexed_attributes[0].value.datetime_value #=> Time
resp.index_attachments[0].object_identifier #=> String
resp.next_token #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :directory_arn (required, String)

    The ARN of the directory that the index exists in.

  • :ranges_on_indexed_values (Array<Types::ObjectAttributeRange>)

    Specifies the ranges of indexed values that you want to query.

  • :index_reference (required, Types::ObjectReference)

    The reference to the index to list.

  • :max_results (Integer)

    The maximum number of objects in a single page to retrieve from the index during a request. For more information, see Amazon Cloud Directory Limits.

  • :next_token (String)

    The pagination token.

  • :consistency_level (String)

    The consistency level to execute the request at.

Returns:

See Also:



3936
3937
3938
3939
# File 'gems/aws-sdk-clouddirectory/lib/aws-sdk-clouddirectory/client.rb', line 3936

def list_index(params = {}, options = {})
  req = build_request(:list_index, params)
  req.send_request(options)
end

#list_managed_schema_arns(params = {}) ⇒ Types::ListManagedSchemaArnsResponse

Lists the major version families of each managed schema. If a major version ARN is provided as SchemaArn, the minor version revisions in that family are listed instead.

The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.

Examples:

Request syntax with placeholder values


resp = client.list_managed_schema_arns({
  schema_arn: "Arn",
  next_token: "NextToken",
  max_results: 1,
})

Response structure


resp.schema_arns #=> Array
resp.schema_arns[0] #=> String
resp.next_token #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :schema_arn (String)

    The response for ListManagedSchemaArns. When this parameter is used, all minor version ARNs for a major version are listed.

  • :next_token (String)

    The pagination token.

  • :max_results (Integer)

    The maximum number of results to retrieve.

Returns:

See Also:



3980
3981
3982
3983
# File 'gems/aws-sdk-clouddirectory/lib/aws-sdk-clouddirectory/client.rb', line 3980

def list_managed_schema_arns(params = {}, options = {})
  req = build_request(:list_managed_schema_arns, params)
  req.send_request(options)
end

#list_object_attributes(params = {}) ⇒ Types::ListObjectAttributesResponse

Lists all attributes that are associated with an object.

The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.

Examples:

Example: To list object attributes


resp = client.list_object_attributes({
  directory_arn: "arn:aws:clouddirectory:us-west-2:45132example:directory/AYb8AOV81kHNgdj8mAO3dNY", 
  object_reference: {
    selector: "$AQGG_ADlfNZBzYHY_JgDt3TW45F26R1HTY2z-stwKBte_Q", 
  }, 
})

resp.to_h outputs the following:
{
  attributes: [
    {
      key: {
        facet_name: "INDEX", 
        name: "index_is_unique", 
        schema_arn: "arn:aws:clouddirectory:us-west-2:45132example:directory/AYb8AOV81kHNgdj8mAO3dNY/schema/CloudDirectory/1.0", 
      }, 
      value: {
        boolean_value: true, 
      }, 
    }, 
    {
      key: {
        facet_name: "INDEX", 
        name: "ordered_indexed_attributes", 
        schema_arn: "arn:aws:clouddirectory:us-west-2:45132example:directory/AYb8AOV81kHNgdj8mAO3dNY/schema/CloudDirectory/1.0", 
      }, 
      value: {
        string_value: "arn:aws:clouddirectory:us-west-2:45132example:directory/AYb8AOV81kHNgdj8mAO3dNY/schema/org/1*Organization*description", 
      }, 
    }, 
  ], 
}

Request syntax with placeholder values


resp = client.list_object_attributes({
  directory_arn: "Arn", # required
  object_reference: { # required
    selector: "SelectorObjectReference",
  },
  next_token: "NextToken",
  max_results: 1,
  consistency_level: "SERIALIZABLE", # accepts SERIALIZABLE, EVENTUAL
  facet_filter: {
    schema_arn: "Arn",
    facet_name: "FacetName",
  },
})

Response structure


resp.attributes #=> Array
resp.attributes[0].key.schema_arn #=> String
resp.attributes[0].key.facet_name #=> String
resp.attributes[0].key.name #=> String
resp.attributes[0].value.string_value #=> String
resp.attributes[0].value.binary_value #=> String
resp.attributes[0].value.boolean_value #=> Boolean
resp.attributes[0].value.number_value #=> String
resp.attributes[0].value.datetime_value #=> Time
resp.next_token #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :directory_arn (required, String)

    The Amazon Resource Name (ARN) that is associated with the Directory where the object resides. For more information, see arns.

  • :object_reference (required, Types::ObjectReference)

    The reference that identifies the object whose attributes will be listed.

  • :next_token (String)

    The pagination token.

  • :max_results (Integer)

    The maximum number of items to be retrieved in a single call. This is an approximate number.

  • :consistency_level (String)

    Represents the manner and timing in which the successful write or update of an object is reflected in a subsequent read operation of that same object.

  • :facet_filter (Types::SchemaFacet)

    Used to filter the list of object attributes that are associated with a certain facet.

Returns:

See Also:



4087
4088
4089
4090
# File 'gems/aws-sdk-clouddirectory/lib/aws-sdk-clouddirectory/client.rb', line 4087

def list_object_attributes(params = {}, options = {})
  req = build_request(:list_object_attributes, params)
  req.send_request(options)
end

#list_object_children(params = {}) ⇒ Types::ListObjectChildrenResponse

Returns a paginated list of child objects that are associated with a given object.

The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.

Examples:

Example: To list an objects children


resp = client.list_object_children({
  directory_arn: "arn:aws:clouddirectory:us-west-2:45132example:directory/AYb8AOV81kHNgdj8mAO3dNY", 
  object_reference: {
    selector: "$AQGG_ADlfNZBzYHY_JgDt3TWcU7IARvOTeaR09zme1sVsw", 
  }, 
})

resp.to_h outputs the following:
{
  children: {
    "link2" => "AQGG_ADlfNZBzYHY_JgDt3TWSvfuEnDqTdmeCuTs6YBNUA", 
  }, 
}

Request syntax with placeholder values


resp = client.list_object_children({
  directory_arn: "Arn", # required
  object_reference: { # required
    selector: "SelectorObjectReference",
  },
  next_token: "NextToken",
  max_results: 1,
  consistency_level: "SERIALIZABLE", # accepts SERIALIZABLE, EVENTUAL
})

Response structure


resp.children #=> Hash
resp.children["LinkName"] #=> String
resp.next_token #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :directory_arn (required, String)

    The Amazon Resource Name (ARN) that is associated with the Directory where the object resides. For more information, see arns.

  • :object_reference (required, Types::ObjectReference)

    The reference that identifies the object for which child objects are being listed.

  • :next_token (String)

    The pagination token.

  • :max_results (Integer)

    The maximum number of items to be retrieved in a single call. This is an approximate number.

  • :consistency_level (String)

    Represents the manner and timing in which the successful write or update of an object is reflected in a subsequent read operation of that same object.

Returns:

See Also:



4161
4162
4163
4164
# File 'gems/aws-sdk-clouddirectory/lib/aws-sdk-clouddirectory/client.rb', line 4161

def list_object_children(params = {}, options = {})
  req = build_request(:list_object_children, params)
  req.send_request(options)
end

#list_object_parent_paths(params = {}) ⇒ Types::ListObjectParentPathsResponse

Retrieves all available parent paths for any object type such as node, leaf node, policy node, and index node objects. For more information about objects, see Directory Structure.

Use this API to evaluate all parents for an object. The call returns all objects from the root of the directory up to the requested object. The API returns the number of paths based on user-defined MaxResults, in case there are multiple paths to the parent. The order of the paths and nodes returned is consistent among multiple API calls unless the objects are deleted or moved. Paths not leading to the directory root are ignored from the target object.

The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.

Examples:

Request syntax with placeholder values


resp = client.list_object_parent_paths({
  directory_arn: "Arn", # required
  object_reference: { # required
    selector: "SelectorObjectReference",
  },
  next_token: "NextToken",
  max_results: 1,
})

Response structure


resp.path_to_object_identifiers_list #=> Array
resp.path_to_object_identifiers_list[0].path #=> String
resp.path_to_object_identifiers_list[0].object_identifiers #=> Array
resp.path_to_object_identifiers_list[0].object_identifiers[0] #=> String
resp.next_token #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :directory_arn (required, String)

    The ARN of the directory to which the parent path applies.

  • :object_reference (required, Types::ObjectReference)

    The reference that identifies the object whose parent paths are listed.

  • :next_token (String)

    The pagination token.

  • :max_results (Integer)

    The maximum number of items to be retrieved in a single call. This is an approximate number.

Returns:

See Also:



4226
4227
4228
4229
# File 'gems/aws-sdk-clouddirectory/lib/aws-sdk-clouddirectory/client.rb', line 4226

def list_object_parent_paths(params = {}, options = {})
  req = build_request(:list_object_parent_paths, params)
  req.send_request(options)
end

#list_object_parents(params = {}) ⇒ Types::ListObjectParentsResponse

Lists parent objects that are associated with a given object in pagination fashion.

The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.

Examples:

Request syntax with placeholder values


resp = client.list_object_parents({
  directory_arn: "Arn", # required
  object_reference: { # required
    selector: "SelectorObjectReference",
  },
  next_token: "NextToken",
  max_results: 1,
  consistency_level: "SERIALIZABLE", # accepts SERIALIZABLE, EVENTUAL
  include_all_links_to_each_parent: false,
})

Response structure


resp.parents #=> Hash
resp.parents["ObjectIdentifier"] #=> String
resp.next_token #=> String
resp.parent_links #=> Array
resp.parent_links[0].object_identifier #=> String
resp.parent_links[0].link_name #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :directory_arn (required, String)

    The Amazon Resource Name (ARN) that is associated with the Directory where the object resides. For more information, see arns.

  • :object_reference (required, Types::ObjectReference)

    The reference that identifies the object for which parent objects are being listed.

  • :next_token (String)

    The pagination token.

  • :max_results (Integer)

    The maximum number of items to be retrieved in a single call. This is an approximate number.

  • :consistency_level (String)

    Represents the manner and timing in which the successful write or update of an object is reflected in a subsequent read operation of that same object.

  • :include_all_links_to_each_parent (Boolean)

    When set to True, returns all ListObjectParentsResponse$ParentLinks. There could be multiple links between a parent-child pair.

Returns:

See Also:



4292
4293
4294
4295
# File 'gems/aws-sdk-clouddirectory/lib/aws-sdk-clouddirectory/client.rb', line 4292

def list_object_parents(params = {}, options = {})
  req = build_request(:list_object_parents, params)
  req.send_request(options)
end

#list_object_policies(params = {}) ⇒ Types::ListObjectPoliciesResponse

Returns policies attached to an object in pagination fashion.

The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.

Examples:

Request syntax with placeholder values


resp = client.list_object_policies({
  directory_arn: "Arn", # required
  object_reference: { # required
    selector: "SelectorObjectReference",
  },
  next_token: "NextToken",
  max_results: 1,
  consistency_level: "SERIALIZABLE", # accepts SERIALIZABLE, EVENTUAL
})

Response structure


resp.attached_policy_ids #=> Array
resp.attached_policy_ids[0] #=> String
resp.next_token #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :directory_arn (required, String)

    The Amazon Resource Name (ARN) that is associated with the Directory where objects reside. For more information, see arns.

  • :object_reference (required, Types::ObjectReference)

    Reference that identifies the object for which policies will be listed.

  • :next_token (String)

    The pagination token.

  • :max_results (Integer)

    The maximum number of items to be retrieved in a single call. This is an approximate number.

  • :consistency_level (String)

    Represents the manner and timing in which the successful write or update of an object is reflected in a subsequent read operation of that same object.

Returns:

See Also:



4348
4349
4350
4351
# File 'gems/aws-sdk-clouddirectory/lib/aws-sdk-clouddirectory/client.rb', line 4348

def list_object_policies(params = {}, options = {})
  req = build_request(:list_object_policies, params)
  req.send_request(options)
end

Returns a paginated list of all the outgoing TypedLinkSpecifier information for an object. It also supports filtering by typed link facet and identity attributes. For more information, see Typed Links.

Examples:

Request syntax with placeholder values


resp = client.list_outgoing_typed_links({
  directory_arn: "Arn", # required
  object_reference: { # required
    selector: "SelectorObjectReference",
  },
  filter_attribute_ranges: [
    {
      attribute_name: "AttributeName",
      range: { # required
        start_mode: "FIRST", # required, accepts FIRST, LAST, LAST_BEFORE_MISSING_VALUES, INCLUSIVE, EXCLUSIVE
        start_value: {
          string_value: "StringAttributeValue",
          binary_value: "data",
          boolean_value: false,
          number_value: "NumberAttributeValue",
          datetime_value: Time.now,
        },
        end_mode: "FIRST", # required, accepts FIRST, LAST, LAST_BEFORE_MISSING_VALUES, INCLUSIVE, EXCLUSIVE
        end_value: {
          string_value: "StringAttributeValue",
          binary_value: "data",
          boolean_value: false,
          number_value: "NumberAttributeValue",
          datetime_value: Time.now,
        },
      },
    },
  ],
  filter_typed_link: {
    schema_arn: "Arn", # required
    typed_link_name: "TypedLinkName", # required
  },
  next_token: "NextToken",
  max_results: 1,
  consistency_level: "SERIALIZABLE", # accepts SERIALIZABLE, EVENTUAL
})

Response structure


resp.typed_link_specifiers #=> Array
resp.typed_link_specifiers[0].typed_link_facet.schema_arn #=> String
resp.typed_link_specifiers[0].typed_link_facet.typed_link_name #=> String
resp.typed_link_specifiers[0].source_object_reference.selector #=> String
resp.typed_link_specifiers[0].target_object_reference.selector #=> String
resp.typed_link_specifiers[0].identity_attribute_values #=> Array
resp.typed_link_specifiers[0].identity_attribute_values[0].attribute_name #=> String
resp.typed_link_specifiers[0].identity_attribute_values[0].value.string_value #=> String
resp.typed_link_specifiers[0].identity_attribute_values[0].value.binary_value #=> String
resp.typed_link_specifiers[0].identity_attribute_values[0].value.boolean_value #=> Boolean
resp.typed_link_specifiers[0].identity_attribute_values[0].value.number_value #=> String
resp.typed_link_specifiers[0].identity_attribute_values[0].value.datetime_value #=> Time
resp.next_token #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :directory_arn (required, String)

    The Amazon Resource Name (ARN) of the directory where you want to list the typed links.

  • :object_reference (required, Types::ObjectReference)

    A reference that identifies the object whose attributes will be listed.

  • :filter_attribute_ranges (Array<Types::TypedLinkAttributeRange>)

    Provides range filters for multiple attributes. When providing ranges to typed link selection, any inexact ranges must be specified at the end. Any attributes that do not have a range specified are presumed to match the entire range.

  • :filter_typed_link (Types::TypedLinkSchemaAndFacetName)

    Filters are interpreted in the order of the attributes defined on the typed link facet, not the order they are supplied to any API calls.

  • :next_token (String)

    The pagination token.

  • :max_results (Integer)

    The maximum number of results to retrieve.

  • :consistency_level (String)

    The consistency level to execute the request at.

Returns:

See Also:



4453
4454
4455
4456
# File 'gems/aws-sdk-clouddirectory/lib/aws-sdk-clouddirectory/client.rb', line 4453

def list_outgoing_typed_links(params = {}, options = {})
  req = build_request(:list_outgoing_typed_links, params)
  req.send_request(options)
end

#list_policy_attachments(params = {}) ⇒ Types::ListPolicyAttachmentsResponse

Returns all of the ObjectIdentifiers to which a given policy is attached.

The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.

Examples:

Request syntax with placeholder values


resp = client.list_policy_attachments({
  directory_arn: "Arn", # required
  policy_reference: { # required
    selector: "SelectorObjectReference",
  },
  next_token: "NextToken",
  max_results: 1,
  consistency_level: "SERIALIZABLE", # accepts SERIALIZABLE, EVENTUAL
})

Response structure


resp.object_identifiers #=> Array
resp.object_identifiers[0] #=> String
resp.next_token #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :directory_arn (required, String)

    The Amazon Resource Name (ARN) that is associated with the Directory where objects reside. For more information, see arns.

  • :policy_reference (required, Types::ObjectReference)

    The reference that identifies the policy object.

  • :next_token (String)

    The pagination token.

  • :max_results (Integer)

    The maximum number of items to be retrieved in a single call. This is an approximate number.

  • :consistency_level (String)

    Represents the manner and timing in which the successful write or update of an object is reflected in a subsequent read operation of that same object.

Returns:

See Also:



4509
4510
4511
4512
# File 'gems/aws-sdk-clouddirectory/lib/aws-sdk-clouddirectory/client.rb', line 4509

def list_policy_attachments(params = {}, options = {})
  req = build_request(:list_policy_attachments, params)
  req.send_request(options)
end

#list_published_schema_arns(params = {}) ⇒ Types::ListPublishedSchemaArnsResponse

Lists the major version families of each published schema. If a major version ARN is provided as SchemaArn, the minor version revisions in that family are listed instead.

The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.

Examples:

Request syntax with placeholder values


resp = client.list_published_schema_arns({
  schema_arn: "Arn",
  next_token: "NextToken",
  max_results: 1,
})

Response structure


resp.schema_arns #=> Array
resp.schema_arns[0] #=> String
resp.next_token #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :schema_arn (String)

    The response for ListPublishedSchemaArns when this parameter is used will list all minor version ARNs for a major version.

  • :next_token (String)

    The pagination token.

  • :max_results (Integer)

    The maximum number of results to retrieve.

Returns:

See Also:



4553
4554
4555
4556
# File 'gems/aws-sdk-clouddirectory/lib/aws-sdk-clouddirectory/client.rb', line 4553

def list_published_schema_arns(params = {}, options = {})
  req = build_request(:list_published_schema_arns, params)
  req.send_request(options)
end

#list_tags_for_resource(params = {}) ⇒ Types::ListTagsForResourceResponse

Returns tags for a resource. Tagging is currently supported only for directories with a limit of 50 tags per directory. All 50 tags are returned for a given directory with this API call.

The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.

Examples:

Request syntax with placeholder values


resp = client.list_tags_for_resource({
  resource_arn: "Arn", # required
  next_token: "NextToken",
  max_results: 1,
})

Response structure


resp.tags #=> Array
resp.tags[0].key #=> String
resp.tags[0].value #=> String
resp.next_token #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :resource_arn (required, String)

    The Amazon Resource Name (ARN) of the resource. Tagging is only supported for directories.

  • :next_token (String)

    The pagination token. This is for future use. Currently pagination is not supported for tagging.

  • :max_results (Integer)

    The MaxResults parameter sets the maximum number of results returned in a single page. This is for future use and is not supported currently.

Returns:

See Also:



4601
4602
4603
4604
# File 'gems/aws-sdk-clouddirectory/lib/aws-sdk-clouddirectory/client.rb', line 4601

def list_tags_for_resource(params = {}, options = {})
  req = build_request(:list_tags_for_resource, params)
  req.send_request(options)
end

Returns a paginated list of all attribute definitions for a particular TypedLinkFacet. For more information, see Typed Links.

The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.

Examples:

Request syntax with placeholder values


resp = client.list_typed_link_facet_attributes({
  schema_arn: "Arn", # required
  name: "TypedLinkName", # required
  next_token: "NextToken",
  max_results: 1,
})

Response structure


resp.attributes #=> Array
resp.attributes[0].name #=> String
resp.attributes[0].type #=> String, one of "STRING", "BINARY", "BOOLEAN", "NUMBER", "DATETIME", "VARIANT"
resp.attributes[0].default_value.string_value #=> String
resp.attributes[0].default_value.binary_value #=> String
resp.attributes[0].default_value.boolean_value #=> Boolean
resp.attributes[0].default_value.number_value #=> String
resp.attributes[0].default_value.datetime_value #=> Time
resp.attributes[0].is_immutable #=> Boolean
resp.attributes[0].rules #=> Hash
resp.attributes[0].rules["RuleKey"].type #=> String, one of "BINARY_LENGTH", "NUMBER_COMPARISON", "STRING_FROM_SET", "STRING_LENGTH"
resp.attributes[0].rules["RuleKey"].parameters #=> Hash
resp.attributes[0].rules["RuleKey"].parameters["RuleParameterKey"] #=> String
resp.attributes[0].required_behavior #=> String, one of "REQUIRED_ALWAYS", "NOT_REQUIRED"
resp.next_token #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :schema_arn (required, String)

    The Amazon Resource Name (ARN) that is associated with the schema. For more information, see arns.

  • :name (required, String)

    The unique name of the typed link facet.

  • :next_token (String)

    The pagination token.

  • :max_results (Integer)

    The maximum number of results to retrieve.

Returns:

See Also:



4664
4665
4666
4667
# File 'gems/aws-sdk-clouddirectory/lib/aws-sdk-clouddirectory/client.rb', line 4664

def list_typed_link_facet_attributes(params = {}, options = {})
  req = build_request(:list_typed_link_facet_attributes, params)
  req.send_request(options)
end

Returns a paginated list of TypedLink facet names for a particular schema. For more information, see Typed Links.

The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.

Examples:

Request syntax with placeholder values


resp = client.list_typed_link_facet_names({
  schema_arn: "Arn", # required
  next_token: "NextToken",
  max_results: 1,
})

Response structure


resp.facet_names #=> Array
resp.facet_names[0] #=> String
resp.next_token #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :schema_arn (required, String)

    The Amazon Resource Name (ARN) that is associated with the schema. For more information, see arns.

  • :next_token (String)

    The pagination token.

  • :max_results (Integer)

    The maximum number of results to retrieve.

Returns:

See Also:



4711
4712
4713
4714
# File 'gems/aws-sdk-clouddirectory/lib/aws-sdk-clouddirectory/client.rb', line 4711

def list_typed_link_facet_names(params = {}, options = {})
  req = build_request(:list_typed_link_facet_names, params)
  req.send_request(options)
end

#lookup_policy(params = {}) ⇒ Types::LookupPolicyResponse

Lists all policies from the root of the Directory to the object specified. If there are no policies present, an empty list is returned. If policies are present, and if some objects don't have the policies attached, it returns the ObjectIdentifier for such objects. If policies are present, it returns ObjectIdentifier, policyId, and policyType. Paths that don't lead to the root from the target object are ignored. For more information, see Policies.

The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.

Examples:

Request syntax with placeholder values


resp = client.lookup_policy({
  directory_arn: "Arn", # required
  object_reference: { # required
    selector: "SelectorObjectReference",
  },
  next_token: "NextToken",
  max_results: 1,
})

Response structure


resp.policy_to_path_list #=> Array
resp.policy_to_path_list[0].path #=> String
resp.policy_to_path_list[0].policies #=> Array
resp.policy_to_path_list[0].policies[0].policy_id #=> String
resp.policy_to_path_list[0].policies[0].object_identifier #=> String
resp.policy_to_path_list[0].policies[0].policy_type #=> String
resp.next_token #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :directory_arn (required, String)

    The Amazon Resource Name (ARN) that is associated with the Directory. For more information, see arns.

  • :object_reference (required, Types::ObjectReference)

    Reference that identifies the object whose policies will be looked up.

  • :next_token (String)

    The token to request the next page of results.

  • :max_results (Integer)

    The maximum number of items to be retrieved in a single call. This is an approximate number.

Returns:

See Also:



4774
4775
4776
4777
# File 'gems/aws-sdk-clouddirectory/lib/aws-sdk-clouddirectory/client.rb', line 4774

def lookup_policy(params = {}, options = {})
  req = build_request(:lookup_policy, params)
  req.send_request(options)
end

#publish_schema(params = {}) ⇒ Types::PublishSchemaResponse

Publishes a development schema with a major version and a recommended minor version.

Examples:

Request syntax with placeholder values


resp = client.publish_schema({
  development_schema_arn: "Arn", # required
  version: "Version", # required
  minor_version: "Version",
  name: "SchemaName",
})

Response structure


resp.published_schema_arn #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :development_schema_arn (required, String)

    The Amazon Resource Name (ARN) that is associated with the development schema. For more information, see arns.

  • :version (required, String)

    The major version under which the schema will be published. Schemas have both a major and minor version associated with them.

  • :minor_version (String)

    The minor version under which the schema will be published. This parameter is recommended. Schemas have both a major and minor version associated with them.

  • :name (String)

    The new name under which the schema will be published. If this is not provided, the development schema is considered.

Returns:

See Also:



4820
4821
4822
4823
# File 'gems/aws-sdk-clouddirectory/lib/aws-sdk-clouddirectory/client.rb', line 4820

def publish_schema(params = {}, options = {})
  req = build_request(:publish_schema, params)
  req.send_request(options)
end

#put_schema_from_json(params = {}) ⇒ Types::PutSchemaFromJsonResponse

Allows a schema to be updated using JSON upload. Only available for development schemas. See JSON Schema Format for more information.

Examples:

Request syntax with placeholder values


resp = client.put_schema_from_json({
  schema_arn: "Arn", # required
  document: "SchemaJsonDocument", # required
})

Response structure


resp.arn #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :schema_arn (required, String)

    The ARN of the schema to update.

  • :document (required, String)

    The replacement JSON schema.

Returns:

See Also:



4857
4858
4859
4860
# File 'gems/aws-sdk-clouddirectory/lib/aws-sdk-clouddirectory/client.rb', line 4857

def put_schema_from_json(params = {}, options = {})
  req = build_request(:put_schema_from_json, params)
  req.send_request(options)
end

#remove_facet_from_object(params = {}) ⇒ Struct

Removes the specified facet from the specified object.

Examples:

Request syntax with placeholder values


resp = client.remove_facet_from_object({
  directory_arn: "Arn", # required
  schema_facet: { # required
    schema_arn: "Arn",
    facet_name: "FacetName",
  },
  object_reference: { # required
    selector: "SelectorObjectReference",
  },
})

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :directory_arn (required, String)

    The ARN of the directory in which the object resides.

  • :schema_facet (required, Types::SchemaFacet)

    The facet to remove. See SchemaFacet for details.

  • :object_reference (required, Types::ObjectReference)

    A reference to the object to remove the facet from.

Returns:

  • (Struct)

    Returns an empty response.

See Also:



4892
4893
4894
4895
# File 'gems/aws-sdk-clouddirectory/lib/aws-sdk-clouddirectory/client.rb', line 4892

def remove_facet_from_object(params = {}, options = {})
  req = build_request(:remove_facet_from_object, params)
  req.send_request(options)
end

#tag_resource(params = {}) ⇒ Struct

An API operation for adding tags to a resource.

Examples:

Request syntax with placeholder values


resp = client.tag_resource({
  resource_arn: "Arn", # required
  tags: [ # required
    {
      key: "TagKey",
      value: "TagValue",
    },
  ],
})

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :resource_arn (required, String)

    The Amazon Resource Name (ARN) of the resource. Tagging is only supported for directories.

  • :tags (required, Array<Types::Tag>)

    A list of tag key-value pairs.

Returns:

  • (Struct)

    Returns an empty response.

See Also:



4924
4925
4926
4927
# File 'gems/aws-sdk-clouddirectory/lib/aws-sdk-clouddirectory/client.rb', line 4924

def tag_resource(params = {}, options = {})
  req = build_request(:tag_resource, params)
  req.send_request(options)
end

#untag_resource(params = {}) ⇒ Struct

An API operation for removing tags from a resource.

Examples:

Request syntax with placeholder values


resp = client.untag_resource({
  resource_arn: "Arn", # required
  tag_keys: ["TagKey"], # required
})

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :resource_arn (required, String)

    The Amazon Resource Name (ARN) of the resource. Tagging is only supported for directories.

  • :tag_keys (required, Array<String>)

    Keys of the tag that need to be removed from the resource.

Returns:

  • (Struct)

    Returns an empty response.

See Also:



4951
4952
4953
4954
# File 'gems/aws-sdk-clouddirectory/lib/aws-sdk-clouddirectory/client.rb', line 4951

def untag_resource(params = {}, options = {})
  req = build_request(:untag_resource, params)
  req.send_request(options)
end

#update_facet(params = {}) ⇒ Struct

Does the following:

  1. Adds new Attributes, Rules, or ObjectTypes.

  2. Updates existing Attributes, Rules, or ObjectTypes.

  3. Deletes existing Attributes, Rules, or ObjectTypes.

Examples:

Request syntax with placeholder values


resp = client.update_facet({
  schema_arn: "Arn", # required
  name: "FacetName", # required
  attribute_updates: [
    {
      attribute: {
        name: "AttributeName", # required
        attribute_definition: {
          type: "STRING", # required, accepts STRING, BINARY, BOOLEAN, NUMBER, DATETIME, VARIANT
          default_value: {
            string_value: "StringAttributeValue",
            binary_value: "data",
            boolean_value: false,
            number_value: "NumberAttributeValue",
            datetime_value: Time.now,
          },
          is_immutable: false,
          rules: {
            "RuleKey" => {
              type: "BINARY_LENGTH", # accepts BINARY_LENGTH, NUMBER_COMPARISON, STRING_FROM_SET, STRING_LENGTH
              parameters: {
                "RuleParameterKey" => "RuleParameterValue",
              },
            },
          },
        },
        attribute_reference: {
          target_facet_name: "FacetName", # required
          target_attribute_name: "AttributeName", # required
        },
        required_behavior: "REQUIRED_ALWAYS", # accepts REQUIRED_ALWAYS, NOT_REQUIRED
      },
      action: "CREATE_OR_UPDATE", # accepts CREATE_OR_UPDATE, DELETE
    },
  ],
  object_type: "NODE", # accepts NODE, LEAF_NODE, POLICY, INDEX
})

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :schema_arn (required, String)

    The Amazon Resource Name (ARN) that is associated with the Facet. For more information, see arns.

  • :name (required, String)

    The name of the facet.

  • :attribute_updates (Array<Types::FacetAttributeUpdate>)

    List of attributes that need to be updated in a given schema Facet. Each attribute is followed by AttributeAction, which specifies the type of update operation to perform.

  • :object_type (String)

    The object type that is associated with the facet. See CreateFacetRequest$ObjectType for more details.

Returns:

  • (Struct)

    Returns an empty response.

See Also:



5026
5027
5028
5029
# File 'gems/aws-sdk-clouddirectory/lib/aws-sdk-clouddirectory/client.rb', line 5026

def update_facet(params = {}, options = {})
  req = build_request(:update_facet, params)
  req.send_request(options)
end

Updates a given typed link’s attributes. Attributes to be updated must not contribute to the typed link’s identity, as defined by its IdentityAttributeOrder.

Examples:

Request syntax with placeholder values


resp = client.update_link_attributes({
  directory_arn: "Arn", # required
  typed_link_specifier: { # required
    typed_link_facet: { # required
      schema_arn: "Arn", # required
      typed_link_name: "TypedLinkName", # required
    },
    source_object_reference: { # required
      selector: "SelectorObjectReference",
    },
    target_object_reference: { # required
      selector: "SelectorObjectReference",
    },
    identity_attribute_values: [ # required
      {
        attribute_name: "AttributeName", # required
        value: { # required
          string_value: "StringAttributeValue",
          binary_value: "data",
          boolean_value: false,
          number_value: "NumberAttributeValue",
          datetime_value: Time.now,
        },
      },
    ],
  },
  attribute_updates: [ # required
    {
      attribute_key: {
        schema_arn: "Arn", # required
        facet_name: "FacetName", # required
        name: "AttributeName", # required
      },
      attribute_action: {
        attribute_action_type: "CREATE_OR_UPDATE", # accepts CREATE_OR_UPDATE, DELETE
        attribute_update_value: {
          string_value: "StringAttributeValue",
          binary_value: "data",
          boolean_value: false,
          number_value: "NumberAttributeValue",
          datetime_value: Time.now,
        },
      },
    },
  ],
})

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :directory_arn (required, String)

    The Amazon Resource Name (ARN) that is associated with the Directory where the updated typed link resides. For more information, see arns or Typed Links.

  • :typed_link_specifier (required, Types::TypedLinkSpecifier)

    Allows a typed link specifier to be accepted as input.

  • :attribute_updates (required, Array<Types::LinkAttributeUpdate>)

    The attributes update structure.

Returns:

  • (Struct)

    Returns an empty response.

See Also:



5105
5106
5107
5108
# File 'gems/aws-sdk-clouddirectory/lib/aws-sdk-clouddirectory/client.rb', line 5105

def update_link_attributes(params = {}, options = {})
  req = build_request(:update_link_attributes, params)
  req.send_request(options)
end

#update_object_attributes(params = {}) ⇒ Types::UpdateObjectAttributesResponse

Updates a given object's attributes.

Examples:

Request syntax with placeholder values


resp = client.update_object_attributes({
  directory_arn: "Arn", # required
  object_reference: { # required
    selector: "SelectorObjectReference",
  },
  attribute_updates: [ # required
    {
      object_attribute_key: {
        schema_arn: "Arn", # required
        facet_name: "FacetName", # required
        name: "AttributeName", # required
      },
      object_attribute_action: {
        object_attribute_action_type: "CREATE_OR_UPDATE", # accepts CREATE_OR_UPDATE, DELETE
        object_attribute_update_value: {
          string_value: "StringAttributeValue",
          binary_value: "data",
          boolean_value: false,
          number_value: "NumberAttributeValue",
          datetime_value: Time.now,
        },
      },
    },
  ],
})

Response structure


resp.object_identifier #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :directory_arn (required, String)

    The Amazon Resource Name (ARN) that is associated with the Directory where the object resides. For more information, see arns.

  • :object_reference (required, Types::ObjectReference)

    The reference that identifies the object.

  • :attribute_updates (required, Array<Types::ObjectAttributeUpdate>)

    The attributes update structure.

Returns:

See Also:



5162
5163
5164
5165
# File 'gems/aws-sdk-clouddirectory/lib/aws-sdk-clouddirectory/client.rb', line 5162

def update_object_attributes(params = {}, options = {})
  req = build_request(:update_object_attributes, params)
  req.send_request(options)
end

#update_schema(params = {}) ⇒ Types::UpdateSchemaResponse

Updates the schema name with a new name. Only development schema names can be updated.

Examples:

Request syntax with placeholder values


resp = client.update_schema({
  schema_arn: "Arn", # required
  name: "SchemaName", # required
})

Response structure


resp.schema_arn #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :schema_arn (required, String)

    The Amazon Resource Name (ARN) of the development schema. For more information, see arns.

  • :name (required, String)

    The name of the schema.

Returns:

See Also:



5196
5197
5198
5199
# File 'gems/aws-sdk-clouddirectory/lib/aws-sdk-clouddirectory/client.rb', line 5196

def update_schema(params = {}, options = {})
  req = build_request(:update_schema, params)
  req.send_request(options)
end

Updates a TypedLinkFacet. For more information, see Typed Links.

Examples:

Request syntax with placeholder values


resp = client.update_typed_link_facet({
  schema_arn: "Arn", # required
  name: "TypedLinkName", # required
  attribute_updates: [ # required
    {
      attribute: { # required
        name: "AttributeName", # required
        type: "STRING", # required, accepts STRING, BINARY, BOOLEAN, NUMBER, DATETIME, VARIANT
        default_value: {
          string_value: "StringAttributeValue",
          binary_value: "data",
          boolean_value: false,
          number_value: "NumberAttributeValue",
          datetime_value: Time.now,
        },
        is_immutable: false,
        rules: {
          "RuleKey" => {
            type: "BINARY_LENGTH", # accepts BINARY_LENGTH, NUMBER_COMPARISON, STRING_FROM_SET, STRING_LENGTH
            parameters: {
              "RuleParameterKey" => "RuleParameterValue",
            },
          },
        },
        required_behavior: "REQUIRED_ALWAYS", # required, accepts REQUIRED_ALWAYS, NOT_REQUIRED
      },
      action: "CREATE_OR_UPDATE", # required, accepts CREATE_OR_UPDATE, DELETE
    },
  ],
  identity_attribute_order: ["AttributeName"], # required
})

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :schema_arn (required, String)

    The Amazon Resource Name (ARN) that is associated with the schema. For more information, see arns.

  • :name (required, String)

    The unique name of the typed link facet.

  • :attribute_updates (required, Array<Types::TypedLinkFacetAttributeUpdate>)

    Attributes update structure.

  • :identity_attribute_order (required, Array<String>)

    The order of identity attributes for the facet, from most significant to least significant. The ability to filter typed links considers the order that the attributes are defined on the typed link facet. When providing ranges to a typed link selection, any inexact ranges must be specified at the end. Any attributes that do not have a range specified are presumed to match the entire range. Filters are interpreted in the order of the attributes on the typed link facet, not the order in which they are supplied to any API calls. For more information about identity attributes, see Typed Links.

Returns:

  • (Struct)

    Returns an empty response.

See Also:



5272
5273
5274
5275
# File 'gems/aws-sdk-clouddirectory/lib/aws-sdk-clouddirectory/client.rb', line 5272

def update_typed_link_facet(params = {}, options = {})
  req = build_request(:update_typed_link_facet, params)
  req.send_request(options)
end

#upgrade_applied_schema(params = {}) ⇒ Types::UpgradeAppliedSchemaResponse

Upgrades a single directory in-place using the PublishedSchemaArn with schema updates found in MinorVersion. Backwards-compatible minor version upgrades are instantaneously available for readers on all objects in the directory. Note: This is a synchronous API call and upgrades only one schema on a given directory per call. To upgrade multiple directories from one schema, you would need to call this API on each directory.

Examples:

Request syntax with placeholder values


resp = client.upgrade_applied_schema({
  published_schema_arn: "Arn", # required
  directory_arn: "Arn", # required
  dry_run: false,
})

Response structure


resp.upgraded_schema_arn #=> String
resp.directory_arn #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :published_schema_arn (required, String)

    The revision of the published schema to upgrade the directory to.

  • :directory_arn (required, String)

    The ARN for the directory to which the upgraded schema will be applied.

  • :dry_run (Boolean)

    Used for testing whether the major version schemas are backward compatible or not. If schema compatibility fails, an exception would be thrown else the call would succeed but no changes will be saved. This parameter is optional.

Returns:

See Also:



5320
5321
5322
5323
# File 'gems/aws-sdk-clouddirectory/lib/aws-sdk-clouddirectory/client.rb', line 5320

def upgrade_applied_schema(params = {}, options = {})
  req = build_request(:upgrade_applied_schema, params)
  req.send_request(options)
end

#upgrade_published_schema(params = {}) ⇒ Types::UpgradePublishedSchemaResponse

Upgrades a published schema under a new minor version revision using the current contents of DevelopmentSchemaArn.

Examples:

Request syntax with placeholder values


resp = client.upgrade_published_schema({
  development_schema_arn: "Arn", # required
  published_schema_arn: "Arn", # required
  minor_version: "Version", # required
  dry_run: false,
})

Response structure


resp.upgraded_schema_arn #=> String

Parameters:

  • params (Hash) (defaults to: {})

    ({})

Options Hash (params):

  • :development_schema_arn (required, String)

    The ARN of the development schema with the changes used for the upgrade.

  • :published_schema_arn (required, String)

    The ARN of the published schema to be upgraded.

  • :minor_version (required, String)

    Identifies the minor version of the published schema that will be created. This parameter is NOT optional.

  • :dry_run (Boolean)

    Used for testing whether the Development schema provided is backwards compatible, or not, with the publish schema provided by the user to be upgraded. If schema compatibility fails, an exception would be thrown else the call would succeed. This parameter is optional and defaults to false.

Returns:

See Also:



5367
5368
5369
5370
# File 'gems/aws-sdk-clouddirectory/lib/aws-sdk-clouddirectory/client.rb', line 5367

def upgrade_published_schema(params = {}, options = {})
  req = build_request(:upgrade_published_schema, params)
  req.send_request(options)
end