Class: Aws::Amplify::Client

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

Overview

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

client = Aws::Amplify::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 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 used for authentication. This can be any class that includes and implements Aws::CredentialProvider, or 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.

  • :auth_scheme_preference (Array<String>) —

    A list of preferred authentication schemes to use when making a request. Supported values are: sigv4, sigv4a, httpBearerAuth, and noAuth. When set using ENV['AWS_AUTH_SCHEME_PREFERENCE'] or in shared config as auth_scheme_preference, the value should be a comma-separated list.

  • :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. Takes effect only when disable_clock_skew_correction is not set.

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

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

  • :disable_clock_skew_correction (Boolean) —

    Used only in standard and adaptive retry modes. When true, the SDK does not apply a clock skew correction, does not update its stored skew from responses, and does not retry clock skew errors. Clock skew correction is enabled by default.

  • :disable_host_prefix_injection (Boolean) — default: false —

    When true, the SDK will not prepend the modeled host prefix to the endpoint.

  • :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_checksum_calculation (String) — default: "when_supported" —

    Determines when a checksum will be calculated for request payloads. Values are:

    • when_supported - (default) When set, a checksum will be calculated for all request payloads of operations modeled with the httpChecksum trait where requestChecksumRequired is true and/or a requestAlgorithmMember is modeled.
    • when_required - When set, a checksum will only be calculated for request payloads of operations modeled with the httpChecksum trait where requestChecksumRequired is true or where a requestAlgorithmMember is modeled and supplied.
  • :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.

  • :response_checksum_validation (String) — default: "when_supported" —

    Determines when checksum validation will be performed on response payloads. Values are:

    • when_supported - (default) When set, checksum validation is performed on all response payloads of operations modeled with the httpChecksum trait where responseAlgorithms is modeled, except when no modeled checksum algorithms are supported.
    • when_required - When set, checksum validation is not performed on response payloads of operations unless the checksum algorithm is supported and the requestValidationModeMember member is set to ENABLED.
  • :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 the 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 - A retry mode that includes all the functionality of standard mode along with automatic client side throttling.

  • :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 ClientStubs#stub_responses. See 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) —

    Your Bearer token used for authentication. This can be any class that includes and implements Aws::TokenProvider, or 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::Amplify::EndpointProvider) —

    The endpoint provider used to resolve endpoints. Any object that responds to #resolve_endpoint(parameters) where parameters is a Struct similar to Aws::Amplify::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.



478
479
480
# File 'gems/aws-sdk-amplify/lib/aws-sdk-amplify/client.rb', line 478

def initialize(*args)
  super
end

Instance Method Details

#create_app(params = {}) ⇒ Types::CreateAppResult

Creates a new Amplify app.

Examples:

Request syntax with placeholder values


resp = client.create_app({
  name: "Name", # required
  description: "Description",
  repository: "Repository",
  platform: "WEB", # accepts WEB, WEB_DYNAMIC, WEB_COMPUTE
  compute_role_arn: "ComputeRoleArn",
  iam_service_role_arn: "ServiceRoleArn",
  oauth_token: "OauthToken",
  access_token: "AccessToken",
  environment_variables: {
    "EnvKey" => "EnvValue",
  },
  enable_branch_auto_build: false,
  enable_branch_auto_deletion: false,
  enable_basic_auth: false,
  basic_auth_credentials: "BasicAuthCredentials",
  custom_rules: [
    {
      source: "Source", # required
      target: "Target", # required
      status: "Status",
      condition: "Condition",
    },
  ],
  tags: {
    "TagKey" => "TagValue",
  },
  build_spec: "BuildSpec",
  custom_headers: "CustomHeaders",
  enable_auto_branch_creation: false,
  auto_branch_creation_patterns: ["AutoBranchCreationPattern"],
  auto_branch_creation_config: {
    stage: "PRODUCTION", # accepts PRODUCTION, BETA, DEVELOPMENT, EXPERIMENTAL, PULL_REQUEST
    framework: "Framework",
    enable_auto_build: false,
    environment_variables: {
      "EnvKey" => "EnvValue",
    },
    basic_auth_credentials: "BasicAuthCredentials",
    enable_basic_auth: false,
    enable_performance_mode: false,
    build_spec: "BuildSpec",
    enable_pull_request_preview: false,
    pull_request_environment_name: "PullRequestEnvironmentName",
  },
  job_config: {
    build_compute_type: "STANDARD_8GB", # required, accepts STANDARD_8GB, LARGE_16GB, XLARGE_72GB
  },
  cache_config: {
    type: "AMPLIFY_MANAGED", # required, accepts AMPLIFY_MANAGED, AMPLIFY_MANAGED_NO_COOKIES
  },
})

Response structure


resp.app.app_id #=> String
resp.app.app_arn #=> String
resp.app.name #=> String
resp.app.tags #=> Hash
resp.app.tags["TagKey"] #=> String
resp.app.description #=> String
resp.app.repository #=> String
resp.app.platform #=> String, one of "WEB", "WEB_DYNAMIC", "WEB_COMPUTE"
resp.app.create_time #=> Time
resp.app.update_time #=> Time
resp.app.compute_role_arn #=> String
resp.app.iam_service_role_arn #=> String
resp.app.environment_variables #=> Hash
resp.app.environment_variables["EnvKey"] #=> String
resp.app.default_domain #=> String
resp.app.enable_branch_auto_build #=> Boolean
resp.app.enable_branch_auto_deletion #=> Boolean
resp.app.enable_basic_auth #=> Boolean
resp.app.basic_auth_credentials #=> String
resp.app.custom_rules #=> Array
resp.app.custom_rules[0].source #=> String
resp.app.custom_rules[0].target #=> String
resp.app.custom_rules[0].status #=> String
resp.app.custom_rules[0].condition #=> String
resp.app.production_branch.last_deploy_time #=> Time
resp.app.production_branch.status #=> String
resp.app.production_branch.thumbnail_url #=> String
resp.app.production_branch.branch_name #=> String
resp.app.build_spec #=> String
resp.app.custom_headers #=> String
resp.app.enable_auto_branch_creation #=> Boolean
resp.app.auto_branch_creation_patterns #=> Array
resp.app.auto_branch_creation_patterns[0] #=> String
resp.app.auto_branch_creation_config.stage #=> String, one of "PRODUCTION", "BETA", "DEVELOPMENT", "EXPERIMENTAL", "PULL_REQUEST"
resp.app.auto_branch_creation_config.framework #=> String
resp.app.auto_branch_creation_config.enable_auto_build #=> Boolean
resp.app.auto_branch_creation_config.environment_variables #=> Hash
resp.app.auto_branch_creation_config.environment_variables["EnvKey"] #=> String
resp.app.auto_branch_creation_config.basic_auth_credentials #=> String
resp.app.auto_branch_creation_config.enable_basic_auth #=> Boolean
resp.app.auto_branch_creation_config.enable_performance_mode #=> Boolean
resp.app.auto_branch_creation_config.build_spec #=> String
resp.app.auto_branch_creation_config.enable_pull_request_preview #=> Boolean
resp.app.auto_branch_creation_config.pull_request_environment_name #=> String
resp.app.repository_clone_method #=> String, one of "SSH", "TOKEN", "SIGV4"
resp.app.cache_config.type #=> String, one of "AMPLIFY_MANAGED", "AMPLIFY_MANAGED_NO_COOKIES"
resp.app.webhook_create_time #=> Time
resp.app.waf_configuration.web_acl_arn #=> String
resp.app.waf_configuration.waf_status #=> String, one of "ASSOCIATING", "ASSOCIATION_FAILED", "ASSOCIATION_SUCCESS", "DISASSOCIATING", "DISASSOCIATION_FAILED"
resp.app.waf_configuration.status_reason #=> String
resp.app.job_config.build_compute_type #=> String, one of "STANDARD_8GB", "LARGE_16GB", "XLARGE_72GB"

Parameters:

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

    ({})

Options Hash (params):

  • :name (required, String) —

    The name of the Amplify app.

  • :description (String) —

    The description of the Amplify app.

  • :repository (String) —

    The Git repository for the Amplify app.

  • :platform (String) —

    The platform for the Amplify app. For a static app, set the platform type to WEB. For a dynamic server-side rendered (SSR) app, set the platform type to WEB_COMPUTE. For an app requiring Amplify Hosting's original SSR support only, set the platform type to WEB_DYNAMIC.

    If you are deploying an SSG only app with Next.js version 14 or later, you must set the platform type to WEB_COMPUTE and set the artifacts baseDirectory to .next in the application's build settings. For an example of the build specification settings, see Amplify build settings for a Next.js 14 SSG application in the Amplify Hosting User Guide.

  • :compute_role_arn (String) —

    The Amazon Resource Name (ARN) of the IAM role to assign to an SSR app. The SSR Compute role allows the Amplify Hosting compute service to securely access specific Amazon Web Services resources based on the role's permissions. For more information about the SSR Compute role, see Adding an SSR Compute role in the Amplify User Guide.

  • :iam_service_role_arn (String) —

    The Amazon Resource Name (ARN) of the IAM service role for the Amplify app.

  • :oauth_token (String) —

    The OAuth token for a third-party source control system for an Amplify app. The OAuth token is used to create a webhook and a read-only deploy key using SSH cloning. The OAuth token is not stored.

    Use oauthToken for repository providers other than GitHub, such as Bitbucket or CodeCommit. To authorize access to GitHub as your repository provider, use accessToken.

    You must specify either oauthToken or accessToken when you create a new app.

    Existing Amplify apps deployed from a GitHub repository using OAuth continue to work with CI/CD. However, we strongly recommend that you migrate these apps to use the GitHub App. For more information, see Migrating an existing OAuth app to the Amplify GitHub App in the Amplify User Guide .

  • :access_token (String) —

    The personal access token for a GitHub repository for an Amplify app. The personal access token is used to authorize access to a GitHub repository using the Amplify GitHub App. The token is not stored.

    Use accessToken for GitHub repositories only. To authorize access to a repository provider such as Bitbucket or CodeCommit, use oauthToken.

    You must specify either accessToken or oauthToken when you create a new app.

    Existing Amplify apps deployed from a GitHub repository using OAuth continue to work with CI/CD. However, we strongly recommend that you migrate these apps to use the GitHub App. For more information, see Migrating an existing OAuth app to the Amplify GitHub App in the Amplify User Guide .

  • :environment_variables (Hash<String,String>) —

    The environment variables map for an Amplify app.

    For a list of the environment variables that are accessible to Amplify by default, see Amplify Environment variables in the Amplify Hosting User Guide.

  • :enable_branch_auto_build (Boolean) —

    Enables the auto building of branches for an Amplify app.

  • :enable_branch_auto_deletion (Boolean) —

    Automatically disconnects a branch in the Amplify console when you delete a branch from your Git repository.

  • :enable_basic_auth (Boolean) —

    Enables basic authorization for an Amplify app. This will apply to all branches that are part of this app.

  • :basic_auth_credentials (String) —

    The credentials for basic authorization for an Amplify app. You must base64-encode the authorization credentials and provide them in the format user:password.

  • :custom_rules (Array<Types::CustomRule>) —

    The custom rewrite and redirect rules for an Amplify app.

  • :tags (Hash<String,String>) —

    The tag for an Amplify app.

  • :build_spec (String) —

    The build specification (build spec) for an Amplify app.

  • :custom_headers (String) —

    The custom HTTP headers for an Amplify app.

  • :enable_auto_branch_creation (Boolean) —

    Enables automated branch creation for an Amplify app.

  • :auto_branch_creation_patterns (Array<String>) —

    The automated branch creation glob patterns for an Amplify app.

  • :auto_branch_creation_config (Types::AutoBranchCreationConfig) —

    The automated branch creation configuration for an Amplify app.

  • :job_config (Types::JobConfig) —

    Describes the configuration details that apply to the jobs for an Amplify app.

  • :cache_config (Types::CacheConfig) —

    The cache configuration for the Amplify app.

Returns:

See Also:



744
745
746
747
# File 'gems/aws-sdk-amplify/lib/aws-sdk-amplify/client.rb', line 744

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

#create_backend_environment(params = {}) ⇒ Types::CreateBackendEnvironmentResult

Creates a new backend environment for an Amplify app.

This API is available only to Amplify Gen 1 applications where the backend is created using Amplify Studio or the Amplify command line interface (CLI). This API isn’t available to Amplify Gen 2 applications. When you deploy an application with Amplify Gen 2, you provision the app's backend infrastructure using Typescript code.

Examples:

Request syntax with placeholder values


resp = client.create_backend_environment({
  app_id: "AppId", # required
  environment_name: "EnvironmentName", # required
  stack_name: "StackName",
  deployment_artifacts: "DeploymentArtifacts",
})

Response structure


resp.backend_environment.backend_environment_arn #=> String
resp.backend_environment.environment_name #=> String
resp.backend_environment.stack_name #=> String
resp.backend_environment.deployment_artifacts #=> String
resp.backend_environment.create_time #=> Time
resp.backend_environment.update_time #=> Time

Parameters:

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

    ({})

Options Hash (params):

  • :app_id (required, String) —

    The unique ID for an Amplify app.

  • :environment_name (required, String) —

    The name for the backend environment.

  • :stack_name (String) —

    The AWS CloudFormation stack name of a backend environment.

  • :deployment_artifacts (String) —

    The name of deployment artifacts.

Returns:

See Also:



795
796
797
798
# File 'gems/aws-sdk-amplify/lib/aws-sdk-amplify/client.rb', line 795

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

#create_branch(params = {}) ⇒ Types::CreateBranchResult

Creates a new branch for an Amplify app.

Examples:

Request syntax with placeholder values


resp = client.create_branch({
  app_id: "AppId", # required
  branch_name: "BranchName", # required
  description: "Description",
  stage: "PRODUCTION", # accepts PRODUCTION, BETA, DEVELOPMENT, EXPERIMENTAL, PULL_REQUEST
  framework: "Framework",
  enable_notification: false,
  enable_auto_build: false,
  enable_skew_protection: false,
  environment_variables: {
    "EnvKey" => "EnvValue",
  },
  basic_auth_credentials: "BasicAuthCredentials",
  enable_basic_auth: false,
  enable_performance_mode: false,
  tags: {
    "TagKey" => "TagValue",
  },
  build_spec: "BuildSpec",
  ttl: "TTL",
  display_name: "DisplayName",
  enable_pull_request_preview: false,
  pull_request_environment_name: "PullRequestEnvironmentName",
  backend_environment_arn: "BackendEnvironmentArn",
  backend: {
    stack_arn: "StackArn",
  },
  compute_role_arn: "ComputeRoleArn",
})

Response structure


resp.branch.branch_arn #=> String
resp.branch.branch_name #=> String
resp.branch.description #=> String
resp.branch.tags #=> Hash
resp.branch.tags["TagKey"] #=> String
resp.branch.stage #=> String, one of "PRODUCTION", "BETA", "DEVELOPMENT", "EXPERIMENTAL", "PULL_REQUEST"
resp.branch.display_name #=> String
resp.branch.enable_notification #=> Boolean
resp.branch.create_time #=> Time
resp.branch.update_time #=> Time
resp.branch.environment_variables #=> Hash
resp.branch.environment_variables["EnvKey"] #=> String
resp.branch.enable_auto_build #=> Boolean
resp.branch.enable_skew_protection #=> Boolean
resp.branch.custom_domains #=> Array
resp.branch.custom_domains[0] #=> String
resp.branch.framework #=> String
resp.branch.active_job_id #=> String
resp.branch.total_number_of_jobs #=> String
resp.branch.enable_basic_auth #=> Boolean
resp.branch.enable_performance_mode #=> Boolean
resp.branch.thumbnail_url #=> String
resp.branch.basic_auth_credentials #=> String
resp.branch.build_spec #=> String
resp.branch.ttl #=> String
resp.branch.associated_resources #=> Array
resp.branch.associated_resources[0] #=> String
resp.branch.enable_pull_request_preview #=> Boolean
resp.branch.pull_request_environment_name #=> String
resp.branch.destination_branch #=> String
resp.branch.source_branch #=> String
resp.branch.backend_environment_arn #=> String
resp.branch.backend.stack_arn #=> String
resp.branch.compute_role_arn #=> String

Parameters:

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

    ({})

Options Hash (params):

  • :app_id (required, String) —

    The unique ID for an Amplify app.

  • :branch_name (required, String) —

    The name for the branch.

  • :description (String) —

    The description for the branch.

  • :stage (String) —

    Describes the current stage for the branch.

  • :framework (String) —

    The framework for the branch.

  • :enable_notification (Boolean) —

    Enables notifications for the branch.

  • :enable_auto_build (Boolean) —

    Enables auto building for the branch.

  • :enable_skew_protection (Boolean) —

    Specifies whether the skew protection feature is enabled for the branch.

    Deployment skew protection is available to Amplify applications to eliminate version skew issues between client and servers in web applications. When you apply skew protection to a branch, you can ensure that your clients always interact with the correct version of server-side assets, regardless of when a deployment occurs. For more information about skew protection, see Skew protection for Amplify deployments in the Amplify User Guide.

  • :environment_variables (Hash<String,String>) —

    The environment variables for the branch.

  • :basic_auth_credentials (String) —

    The basic authorization credentials for the branch. You must base64-encode the authorization credentials and provide them in the format user:password.

  • :enable_basic_auth (Boolean) —

    Enables basic authorization for the branch.

  • :enable_performance_mode (Boolean) —

    Enables performance mode for the branch.

    Performance mode optimizes for faster hosting performance by keeping content cached at the edge for a longer interval. When performance mode is enabled, hosting configuration or code changes can take up to 10 minutes to roll out.

  • :tags (Hash<String,String>) —

    The tag for the branch.

  • :build_spec (String) —

    The build specification (build spec) for the branch.

  • :ttl (String) —

    The content Time To Live (TTL) for the website in seconds.

  • :display_name (String) —

    The display name for a branch. This is used as the default domain prefix.

  • :enable_pull_request_preview (Boolean) —

    Enables pull request previews for this branch.

  • :pull_request_environment_name (String) —

    The Amplify environment name for the pull request.

  • :backend_environment_arn (String) —

    The Amazon Resource Name (ARN) for a backend environment that is part of a Gen 1 Amplify app.

    This field is available to Amplify Gen 1 apps only where the backend is created using Amplify Studio or the Amplify command line interface (CLI).

  • :backend (Types::Backend) —

    The backend for a Branch of an Amplify app. Use for a backend created from an CloudFormation stack.

    This field is available to Amplify Gen 2 apps only. When you deploy an application with Amplify Gen 2, you provision the app's backend infrastructure using Typescript code.

  • :compute_role_arn (String) —

    The Amazon Resource Name (ARN) of the IAM role to assign to a branch of an SSR app. The SSR Compute role allows the Amplify Hosting compute service to securely access specific Amazon Web Services resources based on the role's permissions. For more information about the SSR Compute role, see Adding an SSR Compute role in the Amplify User Guide.

Returns:

See Also:



982
983
984
985
# File 'gems/aws-sdk-amplify/lib/aws-sdk-amplify/client.rb', line 982

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

#create_deployment(params = {}) ⇒ Types::CreateDeploymentResult

Creates a deployment for a manually deployed Amplify app. Manually deployed apps are not connected to a Git repository.

The maximum duration between the CreateDeployment call and the StartDeployment call cannot exceed 8 hours. If the duration exceeds 8 hours, the StartDeployment call and the associated Job will fail.

Examples:

Request syntax with placeholder values


resp = client.create_deployment({
  app_id: "AppId", # required
  branch_name: "BranchName", # required
  file_map: {
    "FileName" => "MD5Hash",
  },
})

Response structure


resp.job_id #=> String
resp.file_upload_urls #=> Hash
resp.file_upload_urls["FileName"] #=> String
resp.zip_upload_url #=> String

Parameters:

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

    ({})

Options Hash (params):

  • :app_id (required, String) —

    The unique ID for an Amplify app.

  • :branch_name (required, String) —

    The name of the branch to use for the job.

  • :file_map (Hash<String,String>) —

    An optional file map that contains the file name as the key and the file content md5 hash as the value. If this argument is provided, the service will generate a unique upload URL per file. Otherwise, the service will only generate a single upload URL for the zipped files.

Returns:

See Also:



1034
1035
1036
1037
# File 'gems/aws-sdk-amplify/lib/aws-sdk-amplify/client.rb', line 1034

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

#create_domain_association(params = {}) ⇒ Types::CreateDomainAssociationResult

Creates a new domain association for an Amplify app. This action associates a custom domain with the Amplify app

Examples:

Request syntax with placeholder values


resp = client.create_domain_association({
  app_id: "AppId", # required
  domain_name: "DomainName", # required
  enable_auto_sub_domain: false,
  sub_domain_settings: [ # required
    {
      prefix: "DomainPrefix", # required
      branch_name: "BranchName", # required
    },
  ],
  auto_sub_domain_creation_patterns: ["AutoSubDomainCreationPattern"],
  auto_sub_domain_iam_role: "AutoSubDomainIAMRole",
  certificate_settings: {
    type: "AMPLIFY_MANAGED", # required, accepts AMPLIFY_MANAGED, CUSTOM
    custom_certificate_arn: "CertificateArn",
  },
})

Response structure


resp.domain_association.domain_association_arn #=> String
resp.domain_association.domain_name #=> String
resp.domain_association.enable_auto_sub_domain #=> Boolean
resp.domain_association.auto_sub_domain_creation_patterns #=> Array
resp.domain_association.auto_sub_domain_creation_patterns[0] #=> String
resp.domain_association.auto_sub_domain_iam_role #=> String
resp.domain_association.domain_status #=> String, one of "PENDING_VERIFICATION", "IN_PROGRESS", "AVAILABLE", "IMPORTING_CUSTOM_CERTIFICATE", "PENDING_DEPLOYMENT", "AWAITING_APP_CNAME", "FAILED", "CREATING", "REQUESTING_CERTIFICATE", "UPDATING"
resp.domain_association.update_status #=> String, one of "REQUESTING_CERTIFICATE", "PENDING_VERIFICATION", "IMPORTING_CUSTOM_CERTIFICATE", "PENDING_DEPLOYMENT", "AWAITING_APP_CNAME", "UPDATE_COMPLETE", "UPDATE_FAILED"
resp.domain_association.status_reason #=> String
resp.domain_association.certificate_verification_dns_record #=> String
resp.domain_association.sub_domains #=> Array
resp.domain_association.sub_domains[0].sub_domain_setting.prefix #=> String
resp.domain_association.sub_domains[0].sub_domain_setting.branch_name #=> String
resp.domain_association.sub_domains[0].verified #=> Boolean
resp.domain_association.sub_domains[0].dns_record #=> String
resp.domain_association.certificate.type #=> String, one of "AMPLIFY_MANAGED", "CUSTOM"
resp.domain_association.certificate.custom_certificate_arn #=> String
resp.domain_association.certificate.certificate_verification_dns_record #=> String

Parameters:

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

    ({})

Options Hash (params):

  • :app_id (required, String) —

    The unique ID for an Amplify app.

  • :domain_name (required, String) —

    The domain name for the domain association.

  • :enable_auto_sub_domain (Boolean) —

    Enables the automated creation of subdomains for branches.

  • :sub_domain_settings (required, Array<Types::SubDomainSetting>) —

    The setting for the subdomain.

  • :auto_sub_domain_creation_patterns (Array<String>) —

    Sets the branch patterns for automatic subdomain creation.

  • :auto_sub_domain_iam_role (String) —

    The required AWS Identity and Access Management (IAM) service role for the Amazon Resource Name (ARN) for automatically creating subdomains.

  • :certificate_settings (Types::CertificateSettings) —

    The type of SSL/TLS certificate to use for your custom domain. If you don't specify a certificate type, Amplify uses the default certificate that it provisions and manages for you.

Returns:

See Also:



1115
1116
1117
1118
# File 'gems/aws-sdk-amplify/lib/aws-sdk-amplify/client.rb', line 1115

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

#create_webhook(params = {}) ⇒ Types::CreateWebhookResult

Creates a new webhook on an Amplify app.

Examples:

Request syntax with placeholder values


resp = client.create_webhook({
  app_id: "AppId", # required
  branch_name: "BranchName", # required
  description: "Description",
})

Response structure


resp.webhook.webhook_arn #=> String
resp.webhook.webhook_id #=> String
resp.webhook.webhook_url #=> String
resp.webhook.app_id #=> String
resp.webhook.branch_name #=> String
resp.webhook.description #=> String
resp.webhook.create_time #=> Time
resp.webhook.update_time #=> Time

Parameters:

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

    ({})

Options Hash (params):

  • :app_id (required, String) —

    The unique ID for an Amplify app.

  • :branch_name (required, String) —

    The name for a branch that is part of an Amplify app.

  • :description (String) —

    The description for a webhook.

Returns:

See Also:



1158
1159
1160
1161
# File 'gems/aws-sdk-amplify/lib/aws-sdk-amplify/client.rb', line 1158

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

#delete_app(params = {}) ⇒ Types::DeleteAppResult

Deletes an existing Amplify app specified by an app ID.

Examples:

Request syntax with placeholder values


resp = client.delete_app({
  app_id: "AppId", # required
})

Response structure


resp.app.app_id #=> String
resp.app.app_arn #=> String
resp.app.name #=> String
resp.app.tags #=> Hash
resp.app.tags["TagKey"] #=> String
resp.app.description #=> String
resp.app.repository #=> String
resp.app.platform #=> String, one of "WEB", "WEB_DYNAMIC", "WEB_COMPUTE"
resp.app.create_time #=> Time
resp.app.update_time #=> Time
resp.app.compute_role_arn #=> String
resp.app.iam_service_role_arn #=> String
resp.app.environment_variables #=> Hash
resp.app.environment_variables["EnvKey"] #=> String
resp.app.default_domain #=> String
resp.app.enable_branch_auto_build #=> Boolean
resp.app.enable_branch_auto_deletion #=> Boolean
resp.app.enable_basic_auth #=> Boolean
resp.app.basic_auth_credentials #=> String
resp.app.custom_rules #=> Array
resp.app.custom_rules[0].source #=> String
resp.app.custom_rules[0].target #=> String
resp.app.custom_rules[0].status #=> String
resp.app.custom_rules[0].condition #=> String
resp.app.production_branch.last_deploy_time #=> Time
resp.app.production_branch.status #=> String
resp.app.production_branch.thumbnail_url #=> String
resp.app.production_branch.branch_name #=> String
resp.app.build_spec #=> String
resp.app.custom_headers #=> String
resp.app.enable_auto_branch_creation #=> Boolean
resp.app.auto_branch_creation_patterns #=> Array
resp.app.auto_branch_creation_patterns[0] #=> String
resp.app.auto_branch_creation_config.stage #=> String, one of "PRODUCTION", "BETA", "DEVELOPMENT", "EXPERIMENTAL", "PULL_REQUEST"
resp.app.auto_branch_creation_config.framework #=> String
resp.app.auto_branch_creation_config.enable_auto_build #=> Boolean
resp.app.auto_branch_creation_config.environment_variables #=> Hash
resp.app.auto_branch_creation_config.environment_variables["EnvKey"] #=> String
resp.app.auto_branch_creation_config.basic_auth_credentials #=> String
resp.app.auto_branch_creation_config.enable_basic_auth #=> Boolean
resp.app.auto_branch_creation_config.enable_performance_mode #=> Boolean
resp.app.auto_branch_creation_config.build_spec #=> String
resp.app.auto_branch_creation_config.enable_pull_request_preview #=> Boolean
resp.app.auto_branch_creation_config.pull_request_environment_name #=> String
resp.app.repository_clone_method #=> String, one of "SSH", "TOKEN", "SIGV4"
resp.app.cache_config.type #=> String, one of "AMPLIFY_MANAGED", "AMPLIFY_MANAGED_NO_COOKIES"
resp.app.webhook_create_time #=> Time
resp.app.waf_configuration.web_acl_arn #=> String
resp.app.waf_configuration.waf_status #=> String, one of "ASSOCIATING", "ASSOCIATION_FAILED", "ASSOCIATION_SUCCESS", "DISASSOCIATING", "DISASSOCIATION_FAILED"
resp.app.waf_configuration.status_reason #=> String
resp.app.job_config.build_compute_type #=> String, one of "STANDARD_8GB", "LARGE_16GB", "XLARGE_72GB"

Parameters:

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

    ({})

Options Hash (params):

  • :app_id (required, String) —

    The unique ID for an Amplify app.

Returns:

See Also:



1236
1237
1238
1239
# File 'gems/aws-sdk-amplify/lib/aws-sdk-amplify/client.rb', line 1236

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

#delete_backend_environment(params = {}) ⇒ Types::DeleteBackendEnvironmentResult

Deletes a backend environment for an Amplify app.

This API is available only to Amplify Gen 1 applications where the backend is created using Amplify Studio or the Amplify command line interface (CLI). This API isn’t available to Amplify Gen 2 applications. When you deploy an application with Amplify Gen 2, you provision the app's backend infrastructure using Typescript code.

Examples:

Request syntax with placeholder values


resp = client.delete_backend_environment({
  app_id: "AppId", # required
  environment_name: "EnvironmentName", # required
})

Response structure


resp.backend_environment.backend_environment_arn #=> String
resp.backend_environment.environment_name #=> String
resp.backend_environment.stack_name #=> String
resp.backend_environment.deployment_artifacts #=> String
resp.backend_environment.create_time #=> Time
resp.backend_environment.update_time #=> Time

Parameters:

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

    ({})

Options Hash (params):

  • :app_id (required, String) —

    The unique ID of an Amplify app.

  • :environment_name (required, String) —

    The name of a backend environment of an Amplify app.

Returns:

See Also:



1279
1280
1281
1282
# File 'gems/aws-sdk-amplify/lib/aws-sdk-amplify/client.rb', line 1279

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

#delete_branch(params = {}) ⇒ Types::DeleteBranchResult

Deletes a branch for an Amplify app.

Examples:

Request syntax with placeholder values


resp = client.delete_branch({
  app_id: "AppId", # required
  branch_name: "BranchName", # required
})

Response structure


resp.branch.branch_arn #=> String
resp.branch.branch_name #=> String
resp.branch.description #=> String
resp.branch.tags #=> Hash
resp.branch.tags["TagKey"] #=> String
resp.branch.stage #=> String, one of "PRODUCTION", "BETA", "DEVELOPMENT", "EXPERIMENTAL", "PULL_REQUEST"
resp.branch.display_name #=> String
resp.branch.enable_notification #=> Boolean
resp.branch.create_time #=> Time
resp.branch.update_time #=> Time
resp.branch.environment_variables #=> Hash
resp.branch.environment_variables["EnvKey"] #=> String
resp.branch.enable_auto_build #=> Boolean
resp.branch.enable_skew_protection #=> Boolean
resp.branch.custom_domains #=> Array
resp.branch.custom_domains[0] #=> String
resp.branch.framework #=> String
resp.branch.active_job_id #=> String
resp.branch.total_number_of_jobs #=> String
resp.branch.enable_basic_auth #=> Boolean
resp.branch.enable_performance_mode #=> Boolean
resp.branch.thumbnail_url #=> String
resp.branch.basic_auth_credentials #=> String
resp.branch.build_spec #=> String
resp.branch.ttl #=> String
resp.branch.associated_resources #=> Array
resp.branch.associated_resources[0] #=> String
resp.branch.enable_pull_request_preview #=> Boolean
resp.branch.pull_request_environment_name #=> String
resp.branch.destination_branch #=> String
resp.branch.source_branch #=> String
resp.branch.backend_environment_arn #=> String
resp.branch.backend.stack_arn #=> String
resp.branch.compute_role_arn #=> String

Parameters:

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

    ({})

Options Hash (params):

  • :app_id (required, String) —

    The unique ID for an Amplify app.

  • :branch_name (required, String) —

    The name of the branch.

Returns:

See Also:



1344
1345
1346
1347
# File 'gems/aws-sdk-amplify/lib/aws-sdk-amplify/client.rb', line 1344

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

#delete_domain_association(params = {}) ⇒ Types::DeleteDomainAssociationResult

Deletes a domain association for an Amplify app.

Examples:

Request syntax with placeholder values


resp = client.delete_domain_association({
  app_id: "AppId", # required
  domain_name: "DomainName", # required
})

Response structure


resp.domain_association.domain_association_arn #=> String
resp.domain_association.domain_name #=> String
resp.domain_association.enable_auto_sub_domain #=> Boolean
resp.domain_association.auto_sub_domain_creation_patterns #=> Array
resp.domain_association.auto_sub_domain_creation_patterns[0] #=> String
resp.domain_association.auto_sub_domain_iam_role #=> String
resp.domain_association.domain_status #=> String, one of "PENDING_VERIFICATION", "IN_PROGRESS", "AVAILABLE", "IMPORTING_CUSTOM_CERTIFICATE", "PENDING_DEPLOYMENT", "AWAITING_APP_CNAME", "FAILED", "CREATING", "REQUESTING_CERTIFICATE", "UPDATING"
resp.domain_association.update_status #=> String, one of "REQUESTING_CERTIFICATE", "PENDING_VERIFICATION", "IMPORTING_CUSTOM_CERTIFICATE", "PENDING_DEPLOYMENT", "AWAITING_APP_CNAME", "UPDATE_COMPLETE", "UPDATE_FAILED"
resp.domain_association.status_reason #=> String
resp.domain_association.certificate_verification_dns_record #=> String
resp.domain_association.sub_domains #=> Array
resp.domain_association.sub_domains[0].sub_domain_setting.prefix #=> String
resp.domain_association.sub_domains[0].sub_domain_setting.branch_name #=> String
resp.domain_association.sub_domains[0].verified #=> Boolean
resp.domain_association.sub_domains[0].dns_record #=> String
resp.domain_association.certificate.type #=> String, one of "AMPLIFY_MANAGED", "CUSTOM"
resp.domain_association.certificate.custom_certificate_arn #=> String
resp.domain_association.certificate.certificate_verification_dns_record #=> String

Parameters:

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

    ({})

Options Hash (params):

  • :app_id (required, String) —

    The unique id for an Amplify app.

  • :domain_name (required, String) —

    The name of the domain.

Returns:

See Also:



1393
1394
1395
1396
# File 'gems/aws-sdk-amplify/lib/aws-sdk-amplify/client.rb', line 1393

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

#delete_job(params = {}) ⇒ Types::DeleteJobResult

Deletes a job for a branch of an Amplify app.

Examples:

Request syntax with placeholder values


resp = client.delete_job({
  app_id: "AppId", # required
  branch_name: "BranchName", # required
  job_id: "JobId", # required
})

Response structure


resp.job_summary.job_arn #=> String
resp.job_summary.job_id #=> String
resp.job_summary.commit_id #=> String
resp.job_summary.commit_message #=> String
resp.job_summary.commit_time #=> Time
resp.job_summary.start_time #=> Time
resp.job_summary.status #=> String, one of "CREATED", "PENDING", "PROVISIONING", "RUNNING", "FAILED", "SUCCEED", "CANCELLING", "CANCELLED"
resp.job_summary.end_time #=> Time
resp.job_summary.job_type #=> String, one of "RELEASE", "RETRY", "MANUAL", "WEB_HOOK"
resp.job_summary.source_url #=> String
resp.job_summary.source_url_type #=> String, one of "ZIP", "BUCKET_PREFIX"

Parameters:

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

    ({})

Options Hash (params):

  • :app_id (required, String) —

    The unique ID for an Amplify app.

  • :branch_name (required, String) —

    The name of the branch to use for the job.

  • :job_id (required, String) —

    The unique ID for the job.

Returns:

See Also:



1439
1440
1441
1442
# File 'gems/aws-sdk-amplify/lib/aws-sdk-amplify/client.rb', line 1439

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

#delete_webhook(params = {}) ⇒ Types::DeleteWebhookResult

Deletes a webhook.

Examples:

Request syntax with placeholder values


resp = client.delete_webhook({
  webhook_id: "WebhookId", # required
})

Response structure


resp.webhook.webhook_arn #=> String
resp.webhook.webhook_id #=> String
resp.webhook.webhook_url #=> String
resp.webhook.app_id #=> String
resp.webhook.branch_name #=> String
resp.webhook.description #=> String
resp.webhook.create_time #=> Time
resp.webhook.update_time #=> Time

Parameters:

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

    ({})

Options Hash (params):

  • :webhook_id (required, String) —

    The unique ID for a webhook.

Returns:

See Also:



1474
1475
1476
1477
# File 'gems/aws-sdk-amplify/lib/aws-sdk-amplify/client.rb', line 1474

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

#generate_access_logs(params = {}) ⇒ Types::GenerateAccessLogsResult

Returns the website access logs for a specific time range using a presigned URL.

Examples:

Request syntax with placeholder values


resp = client.generate_access_logs({
  start_time: Time.now,
  end_time: Time.now,
  domain_name: "DomainName", # required
  app_id: "AppId", # required
})

Response structure


resp.log_url #=> String

Parameters:

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

    ({})

Options Hash (params):

  • :start_time (Time, DateTime, Date, Integer, String) —

    The time at which the logs should start. The time range specified is inclusive of the start time.

  • :end_time (Time, DateTime, Date, Integer, String) —

    The time at which the logs should end. The time range specified is inclusive of the end time.

  • :domain_name (required, String) —

    The name of the domain.

  • :app_id (required, String) —

    The unique ID for an Amplify app.

Returns:

See Also:



1517
1518
1519
1520
# File 'gems/aws-sdk-amplify/lib/aws-sdk-amplify/client.rb', line 1517

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

#get_app(params = {}) ⇒ Types::GetAppResult

Returns an existing Amplify app specified by an app ID.

Examples:

Request syntax with placeholder values


resp = client.get_app({
  app_id: "AppId", # required
})

Response structure


resp.app.app_id #=> String
resp.app.app_arn #=> String
resp.app.name #=> String
resp.app.tags #=> Hash
resp.app.tags["TagKey"] #=> String
resp.app.description #=> String
resp.app.repository #=> String
resp.app.platform #=> String, one of "WEB", "WEB_DYNAMIC", "WEB_COMPUTE"
resp.app.create_time #=> Time
resp.app.update_time #=> Time
resp.app.compute_role_arn #=> String
resp.app.iam_service_role_arn #=> String
resp.app.environment_variables #=> Hash
resp.app.environment_variables["EnvKey"] #=> String
resp.app.default_domain #=> String
resp.app.enable_branch_auto_build #=> Boolean
resp.app.enable_branch_auto_deletion #=> Boolean
resp.app.enable_basic_auth #=> Boolean
resp.app.basic_auth_credentials #=> String
resp.app.custom_rules #=> Array
resp.app.custom_rules[0].source #=> String
resp.app.custom_rules[0].target #=> String
resp.app.custom_rules[0].status #=> String
resp.app.custom_rules[0].condition #=> String
resp.app.production_branch.last_deploy_time #=> Time
resp.app.production_branch.status #=> String
resp.app.production_branch.thumbnail_url #=> String
resp.app.production_branch.branch_name #=> String
resp.app.build_spec #=> String
resp.app.custom_headers #=> String
resp.app.enable_auto_branch_creation #=> Boolean
resp.app.auto_branch_creation_patterns #=> Array
resp.app.auto_branch_creation_patterns[0] #=> String
resp.app.auto_branch_creation_config.stage #=> String, one of "PRODUCTION", "BETA", "DEVELOPMENT", "EXPERIMENTAL", "PULL_REQUEST"
resp.app.auto_branch_creation_config.framework #=> String
resp.app.auto_branch_creation_config.enable_auto_build #=> Boolean
resp.app.auto_branch_creation_config.environment_variables #=> Hash
resp.app.auto_branch_creation_config.environment_variables["EnvKey"] #=> String
resp.app.auto_branch_creation_config.basic_auth_credentials #=> String
resp.app.auto_branch_creation_config.enable_basic_auth #=> Boolean
resp.app.auto_branch_creation_config.enable_performance_mode #=> Boolean
resp.app.auto_branch_creation_config.build_spec #=> String
resp.app.auto_branch_creation_config.enable_pull_request_preview #=> Boolean
resp.app.auto_branch_creation_config.pull_request_environment_name #=> String
resp.app.repository_clone_method #=> String, one of "SSH", "TOKEN", "SIGV4"
resp.app.cache_config.type #=> String, one of "AMPLIFY_MANAGED", "AMPLIFY_MANAGED_NO_COOKIES"
resp.app.webhook_create_time #=> Time
resp.app.waf_configuration.web_acl_arn #=> String
resp.app.waf_configuration.waf_status #=> String, one of "ASSOCIATING", "ASSOCIATION_FAILED", "ASSOCIATION_SUCCESS", "DISASSOCIATING", "DISASSOCIATION_FAILED"
resp.app.waf_configuration.status_reason #=> String
resp.app.job_config.build_compute_type #=> String, one of "STANDARD_8GB", "LARGE_16GB", "XLARGE_72GB"

Parameters:

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

    ({})

Options Hash (params):

  • :app_id (required, String) —

    The unique ID for an Amplify app.

Returns:

See Also:



1595
1596
1597
1598
# File 'gems/aws-sdk-amplify/lib/aws-sdk-amplify/client.rb', line 1595

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

#get_artifact_url(params = {}) ⇒ Types::GetArtifactUrlResult

Returns the artifact info that corresponds to an artifact id.

Examples:

Request syntax with placeholder values


resp = client.get_artifact_url({
  artifact_id: "ArtifactId", # required
})

Response structure


resp.artifact_id #=> String
resp.artifact_url #=> String

Parameters:

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

    ({})

Options Hash (params):

  • :artifact_id (required, String) —

    The unique ID for an artifact.

Returns:

See Also:



1625
1626
1627
1628
# File 'gems/aws-sdk-amplify/lib/aws-sdk-amplify/client.rb', line 1625

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

#get_backend_environment(params = {}) ⇒ Types::GetBackendEnvironmentResult

Returns a backend environment for an Amplify app.

This API is available only to Amplify Gen 1 applications where the backend is created using Amplify Studio or the Amplify command line interface (CLI). This API isn’t available to Amplify Gen 2 applications. When you deploy an application with Amplify Gen 2, you provision the app's backend infrastructure using Typescript code.

Examples:

Request syntax with placeholder values


resp = client.get_backend_environment({
  app_id: "AppId", # required
  environment_name: "EnvironmentName", # required
})

Response structure


resp.backend_environment.backend_environment_arn #=> String
resp.backend_environment.environment_name #=> String
resp.backend_environment.stack_name #=> String
resp.backend_environment.deployment_artifacts #=> String
resp.backend_environment.create_time #=> Time
resp.backend_environment.update_time #=> Time

Parameters:

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

    ({})

Options Hash (params):

  • :app_id (required, String) —

    The unique id for an Amplify app.

  • :environment_name (required, String) —

    The name for the backend environment.

Returns:

See Also:



1668
1669
1670
1671
# File 'gems/aws-sdk-amplify/lib/aws-sdk-amplify/client.rb', line 1668

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

#get_branch(params = {}) ⇒ Types::GetBranchResult

Returns a branch for an Amplify app.

Examples:

Request syntax with placeholder values


resp = client.get_branch({
  app_id: "AppId", # required
  branch_name: "BranchName", # required
})

Response structure


resp.branch.branch_arn #=> String
resp.branch.branch_name #=> String
resp.branch.description #=> String
resp.branch.tags #=> Hash
resp.branch.tags["TagKey"] #=> String
resp.branch.stage #=> String, one of "PRODUCTION", "BETA", "DEVELOPMENT", "EXPERIMENTAL", "PULL_REQUEST"
resp.branch.display_name #=> String
resp.branch.enable_notification #=> Boolean
resp.branch.create_time #=> Time
resp.branch.update_time #=> Time
resp.branch.environment_variables #=> Hash
resp.branch.environment_variables["EnvKey"] #=> String
resp.branch.enable_auto_build #=> Boolean
resp.branch.enable_skew_protection #=> Boolean
resp.branch.custom_domains #=> Array
resp.branch.custom_domains[0] #=> String
resp.branch.framework #=> String
resp.branch.active_job_id #=> String
resp.branch.total_number_of_jobs #=> String
resp.branch.enable_basic_auth #=> Boolean
resp.branch.enable_performance_mode #=> Boolean
resp.branch.thumbnail_url #=> String
resp.branch.basic_auth_credentials #=> String
resp.branch.build_spec #=> String
resp.branch.ttl #=> String
resp.branch.associated_resources #=> Array
resp.branch.associated_resources[0] #=> String
resp.branch.enable_pull_request_preview #=> Boolean
resp.branch.pull_request_environment_name #=> String
resp.branch.destination_branch #=> String
resp.branch.source_branch #=> String
resp.branch.backend_environment_arn #=> String
resp.branch.backend.stack_arn #=> String
resp.branch.compute_role_arn #=> String

Parameters:

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

    ({})

Options Hash (params):

  • :app_id (required, String) —

    The unique ID for an Amplify app.

  • :branch_name (required, String) —

    The name of the branch.

Returns:

See Also:



1733
1734
1735
1736
# File 'gems/aws-sdk-amplify/lib/aws-sdk-amplify/client.rb', line 1733

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

#get_domain_association(params = {}) ⇒ Types::GetDomainAssociationResult

Returns the domain information for an Amplify app.

Examples:

Request syntax with placeholder values


resp = client.get_domain_association({
  app_id: "AppId", # required
  domain_name: "DomainName", # required
})

Response structure


resp.domain_association.domain_association_arn #=> String
resp.domain_association.domain_name #=> String
resp.domain_association.enable_auto_sub_domain #=> Boolean
resp.domain_association.auto_sub_domain_creation_patterns #=> Array
resp.domain_association.auto_sub_domain_creation_patterns[0] #=> String
resp.domain_association.auto_sub_domain_iam_role #=> String
resp.domain_association.domain_status #=> String, one of "PENDING_VERIFICATION", "IN_PROGRESS", "AVAILABLE", "IMPORTING_CUSTOM_CERTIFICATE", "PENDING_DEPLOYMENT", "AWAITING_APP_CNAME", "FAILED", "CREATING", "REQUESTING_CERTIFICATE", "UPDATING"
resp.domain_association.update_status #=> String, one of "REQUESTING_CERTIFICATE", "PENDING_VERIFICATION", "IMPORTING_CUSTOM_CERTIFICATE", "PENDING_DEPLOYMENT", "AWAITING_APP_CNAME", "UPDATE_COMPLETE", "UPDATE_FAILED"
resp.domain_association.status_reason #=> String
resp.domain_association.certificate_verification_dns_record #=> String
resp.domain_association.sub_domains #=> Array
resp.domain_association.sub_domains[0].sub_domain_setting.prefix #=> String
resp.domain_association.sub_domains[0].sub_domain_setting.branch_name #=> String
resp.domain_association.sub_domains[0].verified #=> Boolean
resp.domain_association.sub_domains[0].dns_record #=> String
resp.domain_association.certificate.type #=> String, one of "AMPLIFY_MANAGED", "CUSTOM"
resp.domain_association.certificate.custom_certificate_arn #=> String
resp.domain_association.certificate.certificate_verification_dns_record #=> String

Parameters:

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

    ({})

Options Hash (params):

  • :app_id (required, String) —

    The unique id for an Amplify app.

  • :domain_name (required, String) —

    The name of the domain.

Returns:

See Also:



1782
1783
1784
1785
# File 'gems/aws-sdk-amplify/lib/aws-sdk-amplify/client.rb', line 1782

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

#get_job(params = {}) ⇒ Types::GetJobResult

Returns a job for a branch of an Amplify app.

Examples:

Request syntax with placeholder values


resp = client.get_job({
  app_id: "AppId", # required
  branch_name: "BranchName", # required
  job_id: "JobId", # required
})

Response structure


resp.job.summary.job_arn #=> String
resp.job.summary.job_id #=> String
resp.job.summary.commit_id #=> String
resp.job.summary.commit_message #=> String
resp.job.summary.commit_time #=> Time
resp.job.summary.start_time #=> Time
resp.job.summary.status #=> String, one of "CREATED", "PENDING", "PROVISIONING", "RUNNING", "FAILED", "SUCCEED", "CANCELLING", "CANCELLED"
resp.job.summary.end_time #=> Time
resp.job.summary.job_type #=> String, one of "RELEASE", "RETRY", "MANUAL", "WEB_HOOK"
resp.job.summary.source_url #=> String
resp.job.summary.source_url_type #=> String, one of "ZIP", "BUCKET_PREFIX"
resp.job.steps #=> Array
resp.job.steps[0].step_name #=> String
resp.job.steps[0].start_time #=> Time
resp.job.steps[0].status #=> String, one of "CREATED", "PENDING", "PROVISIONING", "RUNNING", "FAILED", "SUCCEED", "CANCELLING", "CANCELLED"
resp.job.steps[0].end_time #=> Time
resp.job.steps[0].log_url #=> String
resp.job.steps[0].artifacts_url #=> String
resp.job.steps[0].test_artifacts_url #=> String
resp.job.steps[0].test_config_url #=> String
resp.job.steps[0].screenshots #=> Hash
resp.job.steps[0].screenshots["ThumbnailName"] #=> String
resp.job.steps[0].status_reason #=> String
resp.job.steps[0].context #=> String

Parameters:

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

    ({})

Options Hash (params):

  • :app_id (required, String) —

    The unique ID for an Amplify app.

  • :branch_name (required, String) —

    The name of the branch to use for the job.

  • :job_id (required, String) —

    The unique ID for the job.

Returns:

See Also:



1841
1842
1843
1844
# File 'gems/aws-sdk-amplify/lib/aws-sdk-amplify/client.rb', line 1841

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

#get_webhook(params = {}) ⇒ Types::GetWebhookResult

Returns the webhook information that corresponds to a specified webhook ID.

Examples:

Request syntax with placeholder values


resp = client.get_webhook({
  webhook_id: "WebhookId", # required
})

Response structure


resp.webhook.webhook_arn #=> String
resp.webhook.webhook_id #=> String
resp.webhook.webhook_url #=> String
resp.webhook.app_id #=> String
resp.webhook.branch_name #=> String
resp.webhook.description #=> String
resp.webhook.create_time #=> Time
resp.webhook.update_time #=> Time

Parameters:

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

    ({})

Options Hash (params):

  • :webhook_id (required, String) —

    The unique ID for a webhook.

Returns:

See Also:



1877
1878
1879
1880
# File 'gems/aws-sdk-amplify/lib/aws-sdk-amplify/client.rb', line 1877

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

#list_apps(params = {}) ⇒ Types::ListAppsResult

Returns a list of the existing Amplify apps.

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_apps({
  next_token: "NextToken",
  max_results: 1,
})

Response structure


resp.apps #=> Array
resp.apps[0].app_id #=> String
resp.apps[0].app_arn #=> String
resp.apps[0].name #=> String
resp.apps[0].tags #=> Hash
resp.apps[0].tags["TagKey"] #=> String
resp.apps[0].description #=> String
resp.apps[0].repository #=> String
resp.apps[0].platform #=> String, one of "WEB", "WEB_DYNAMIC", "WEB_COMPUTE"
resp.apps[0].create_time #=> Time
resp.apps[0].update_time #=> Time
resp.apps[0].compute_role_arn #=> String
resp.apps[0].iam_service_role_arn #=> String
resp.apps[0].environment_variables #=> Hash
resp.apps[0].environment_variables["EnvKey"] #=> String
resp.apps[0].default_domain #=> String
resp.apps[0].enable_branch_auto_build #=> Boolean
resp.apps[0].enable_branch_auto_deletion #=> Boolean
resp.apps[0].enable_basic_auth #=> Boolean
resp.apps[0].basic_auth_credentials #=> String
resp.apps[0].custom_rules #=> Array
resp.apps[0].custom_rules[0].source #=> String
resp.apps[0].custom_rules[0].target #=> String
resp.apps[0].custom_rules[0].status #=> String
resp.apps[0].custom_rules[0].condition #=> String
resp.apps[0].production_branch.last_deploy_time #=> Time
resp.apps[0].production_branch.status #=> String
resp.apps[0].production_branch.thumbnail_url #=> String
resp.apps[0].production_branch.branch_name #=> String
resp.apps[0].build_spec #=> String
resp.apps[0].custom_headers #=> String
resp.apps[0].enable_auto_branch_creation #=> Boolean
resp.apps[0].auto_branch_creation_patterns #=> Array
resp.apps[0].auto_branch_creation_patterns[0] #=> String
resp.apps[0].auto_branch_creation_config.stage #=> String, one of "PRODUCTION", "BETA", "DEVELOPMENT", "EXPERIMENTAL", "PULL_REQUEST"
resp.apps[0].auto_branch_creation_config.framework #=> String
resp.apps[0].auto_branch_creation_config.enable_auto_build #=> Boolean
resp.apps[0].auto_branch_creation_config.environment_variables #=> Hash
resp.apps[0].auto_branch_creation_config.environment_variables["EnvKey"] #=> String
resp.apps[0].auto_branch_creation_config.basic_auth_credentials #=> String
resp.apps[0].auto_branch_creation_config.enable_basic_auth #=> Boolean
resp.apps[0].auto_branch_creation_config.enable_performance_mode #=> Boolean
resp.apps[0].auto_branch_creation_config.build_spec #=> String
resp.apps[0].auto_branch_creation_config.enable_pull_request_preview #=> Boolean
resp.apps[0].auto_branch_creation_config.pull_request_environment_name #=> String
resp.apps[0].repository_clone_method #=> String, one of "SSH", "TOKEN", "SIGV4"
resp.apps[0].cache_config.type #=> String, one of "AMPLIFY_MANAGED", "AMPLIFY_MANAGED_NO_COOKIES"
resp.apps[0].webhook_create_time #=> Time
resp.apps[0].waf_configuration.web_acl_arn #=> String
resp.apps[0].waf_configuration.waf_status #=> String, one of "ASSOCIATING", "ASSOCIATION_FAILED", "ASSOCIATION_SUCCESS", "DISASSOCIATING", "DISASSOCIATION_FAILED"
resp.apps[0].waf_configuration.status_reason #=> String
resp.apps[0].job_config.build_compute_type #=> String, one of "STANDARD_8GB", "LARGE_16GB", "XLARGE_72GB"
resp.next_token #=> String

Parameters:

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

    ({})

Options Hash (params):

  • :next_token (String) —

    A pagination token. If non-null, the pagination token is returned in a result. Pass its value in another request to retrieve more entries.

  • :max_results (Integer) —

    The maximum number of records to list in a single response.

Returns:

See Also:



1965
1966
1967
1968
# File 'gems/aws-sdk-amplify/lib/aws-sdk-amplify/client.rb', line 1965

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

#list_artifacts(params = {}) ⇒ Types::ListArtifactsResult

Returns a list of end-to-end testing artifacts for a specified app, branch, and job.

To return the build artifacts, use the GetJob API.

For more information about Amplify testing support, see Setting up end-to-end Cypress tests for your Amplify application in the Amplify Hosting User Guide.

Examples:

Request syntax with placeholder values


resp = client.list_artifacts({
  app_id: "AppId", # required
  branch_name: "BranchName", # required
  job_id: "JobId", # required
  next_token: "NextToken",
  max_results: 1,
})

Response structure


resp.artifacts #=> Array
resp.artifacts[0].artifact_file_name #=> String
resp.artifacts[0].artifact_id #=> String
resp.next_token #=> String

Parameters:

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

    ({})

Options Hash (params):

  • :app_id (required, String) —

    The unique ID for an Amplify app.

  • :branch_name (required, String) —

    The name of a branch that is part of an Amplify app.

  • :job_id (required, String) —

    The unique ID for a job.

  • :next_token (String) —

    A pagination token. Set to null to start listing artifacts from start. If a non-null pagination token is returned in a result, pass its value in here to list more artifacts.

  • :max_results (Integer) —

    The maximum number of records to list in a single response.

Returns:

See Also:



2027
2028
2029
2030
# File 'gems/aws-sdk-amplify/lib/aws-sdk-amplify/client.rb', line 2027

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

#list_backend_environments(params = {}) ⇒ Types::ListBackendEnvironmentsResult

Lists the backend environments for an Amplify app.

This API is available only to Amplify Gen 1 applications where the backend is created using Amplify Studio or the Amplify command line interface (CLI). This API isn’t available to Amplify Gen 2 applications. When you deploy an application with Amplify Gen 2, you provision the app's backend infrastructure using Typescript code.

Examples:

Request syntax with placeholder values


resp = client.list_backend_environments({
  app_id: "AppId", # required
  environment_name: "EnvironmentName",
  next_token: "NextToken",
  max_results: 1,
})

Response structure


resp.backend_environments #=> Array
resp.backend_environments[0].backend_environment_arn #=> String
resp.backend_environments[0].environment_name #=> String
resp.backend_environments[0].stack_name #=> String
resp.backend_environments[0].deployment_artifacts #=> String
resp.backend_environments[0].create_time #=> Time
resp.backend_environments[0].update_time #=> Time
resp.next_token #=> String

Parameters:

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

    ({})

Options Hash (params):

  • :app_id (required, String) —

    The unique ID for an Amplify app.

  • :environment_name (String) —

    The name of the backend environment

  • :next_token (String) —

    A pagination token. Set to null to start listing backend environments from the start. If a non-null pagination token is returned in a result, pass its value in here to list more backend environments.

  • :max_results (Integer) —

    The maximum number of records to list in a single response.

Returns:

See Also:



2083
2084
2085
2086
# File 'gems/aws-sdk-amplify/lib/aws-sdk-amplify/client.rb', line 2083

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

#list_branches(params = {}) ⇒ Types::ListBranchesResult

Lists the branches of an Amplify app.

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_branches({
  app_id: "AppId", # required
  next_token: "NextToken",
  max_results: 1,
})

Response structure


resp.branches #=> Array
resp.branches[0].branch_arn #=> String
resp.branches[0].branch_name #=> String
resp.branches[0].description #=> String
resp.branches[0].tags #=> Hash
resp.branches[0].tags["TagKey"] #=> String
resp.branches[0].stage #=> String, one of "PRODUCTION", "BETA", "DEVELOPMENT", "EXPERIMENTAL", "PULL_REQUEST"
resp.branches[0].display_name #=> String
resp.branches[0].enable_notification #=> Boolean
resp.branches[0].create_time #=> Time
resp.branches[0].update_time #=> Time
resp.branches[0].environment_variables #=> Hash
resp.branches[0].environment_variables["EnvKey"] #=> String
resp.branches[0].enable_auto_build #=> Boolean
resp.branches[0].enable_skew_protection #=> Boolean
resp.branches[0].custom_domains #=> Array
resp.branches[0].custom_domains[0] #=> String
resp.branches[0].framework #=> String
resp.branches[0].active_job_id #=> String
resp.branches[0].total_number_of_jobs #=> String
resp.branches[0].enable_basic_auth #=> Boolean
resp.branches[0].enable_performance_mode #=> Boolean
resp.branches[0].thumbnail_url #=> String
resp.branches[0].basic_auth_credentials #=> String
resp.branches[0].build_spec #=> String
resp.branches[0].ttl #=> String
resp.branches[0].associated_resources #=> Array
resp.branches[0].associated_resources[0] #=> String
resp.branches[0].enable_pull_request_preview #=> Boolean
resp.branches[0].pull_request_environment_name #=> String
resp.branches[0].destination_branch #=> String
resp.branches[0].source_branch #=> String
resp.branches[0].backend_environment_arn #=> String
resp.branches[0].backend.stack_arn #=> String
resp.branches[0].compute_role_arn #=> String
resp.next_token #=> String

Parameters:

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

    ({})

Options Hash (params):

  • :app_id (required, String) —

    The unique ID for an Amplify app.

  • :next_token (String) —

    A pagination token. Set to null to start listing branches from the start. If a non-null pagination token is returned in a result, pass its value in here to list more branches.

  • :max_results (Integer) —

    The maximum number of records to list in a single response.

Returns:

See Also:



2159
2160
2161
2162
# File 'gems/aws-sdk-amplify/lib/aws-sdk-amplify/client.rb', line 2159

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

#list_domain_associations(params = {}) ⇒ Types::ListDomainAssociationsResult

Returns the domain associations for an Amplify app.

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_domain_associations({
  app_id: "AppId", # required
  next_token: "NextToken",
  max_results: 1,
})

Response structure


resp.domain_associations #=> Array
resp.domain_associations[0].domain_association_arn #=> String
resp.domain_associations[0].domain_name #=> String
resp.domain_associations[0].enable_auto_sub_domain #=> Boolean
resp.domain_associations[0].auto_sub_domain_creation_patterns #=> Array
resp.domain_associations[0].auto_sub_domain_creation_patterns[0] #=> String
resp.domain_associations[0].auto_sub_domain_iam_role #=> String
resp.domain_associations[0].domain_status #=> String, one of "PENDING_VERIFICATION", "IN_PROGRESS", "AVAILABLE", "IMPORTING_CUSTOM_CERTIFICATE", "PENDING_DEPLOYMENT", "AWAITING_APP_CNAME", "FAILED", "CREATING", "REQUESTING_CERTIFICATE", "UPDATING"
resp.domain_associations[0].update_status #=> String, one of "REQUESTING_CERTIFICATE", "PENDING_VERIFICATION", "IMPORTING_CUSTOM_CERTIFICATE", "PENDING_DEPLOYMENT", "AWAITING_APP_CNAME", "UPDATE_COMPLETE", "UPDATE_FAILED"
resp.domain_associations[0].status_reason #=> String
resp.domain_associations[0].certificate_verification_dns_record #=> String
resp.domain_associations[0].sub_domains #=> Array
resp.domain_associations[0].sub_domains[0].sub_domain_setting.prefix #=> String
resp.domain_associations[0].sub_domains[0].sub_domain_setting.branch_name #=> String
resp.domain_associations[0].sub_domains[0].verified #=> Boolean
resp.domain_associations[0].sub_domains[0].dns_record #=> String
resp.domain_associations[0].certificate.type #=> String, one of "AMPLIFY_MANAGED", "CUSTOM"
resp.domain_associations[0].certificate.custom_certificate_arn #=> String
resp.domain_associations[0].certificate.certificate_verification_dns_record #=> String
resp.next_token #=> String

Parameters:

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

    ({})

Options Hash (params):

  • :app_id (required, String) —

    The unique ID for an Amplify app.

  • :next_token (String) —

    A pagination token. Set to null to start listing apps from the start. If non-null, a pagination token is returned in a result. Pass its value in here to list more projects.

  • :max_results (Integer) —

    The maximum number of records to list in a single response.

Returns:

See Also:



2219
2220
2221
2222
# File 'gems/aws-sdk-amplify/lib/aws-sdk-amplify/client.rb', line 2219

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

#list_jobs(params = {}) ⇒ Types::ListJobsResult

Lists the jobs for a branch of an Amplify app.

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_jobs({
  app_id: "AppId", # required
  branch_name: "BranchName", # required
  next_token: "NextToken",
  max_results: 1,
})

Response structure


resp.job_summaries #=> Array
resp.job_summaries[0].job_arn #=> String
resp.job_summaries[0].job_id #=> String
resp.job_summaries[0].commit_id #=> String
resp.job_summaries[0].commit_message #=> String
resp.job_summaries[0].commit_time #=> Time
resp.job_summaries[0].start_time #=> Time
resp.job_summaries[0].status #=> String, one of "CREATED", "PENDING", "PROVISIONING", "RUNNING", "FAILED", "SUCCEED", "CANCELLING", "CANCELLED"
resp.job_summaries[0].end_time #=> Time
resp.job_summaries[0].job_type #=> String, one of "RELEASE", "RETRY", "MANUAL", "WEB_HOOK"
resp.job_summaries[0].source_url #=> String
resp.job_summaries[0].source_url_type #=> String, one of "ZIP", "BUCKET_PREFIX"
resp.next_token #=> String

Parameters:

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

    ({})

Options Hash (params):

  • :app_id (required, String) —

    The unique ID for an Amplify app.

  • :branch_name (required, String) —

    The name of the branch to use for the request.

  • :next_token (String) —

    A pagination token. Set to null to start listing steps from the start. If a non-null pagination token is returned in a result, pass its value in here to list more steps.

  • :max_results (Integer) —

    The maximum number of records to list in a single response.

Returns:

See Also:



2276
2277
2278
2279
# File 'gems/aws-sdk-amplify/lib/aws-sdk-amplify/client.rb', line 2276

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

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

Returns a list of tags for a specified Amazon Resource Name (ARN).

Examples:

Request syntax with placeholder values


resp = client.list_tags_for_resource({
  resource_arn: "ResourceArn", # required
})

Response structure


resp.tags #=> Hash
resp.tags["TagKey"] #=> String

Parameters:

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

    ({})

Options Hash (params):

  • :resource_arn (required, String) —

    The Amazon Resource Name (ARN) to use to list tags.

Returns:

See Also:



2305
2306
2307
2308
# File 'gems/aws-sdk-amplify/lib/aws-sdk-amplify/client.rb', line 2305

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

#list_webhooks(params = {}) ⇒ Types::ListWebhooksResult

Returns a list of webhooks for an Amplify app.

Examples:

Request syntax with placeholder values


resp = client.list_webhooks({
  app_id: "AppId", # required
  next_token: "NextToken",
  max_results: 1,
})

Response structure


resp.webhooks #=> Array
resp.webhooks[0].webhook_arn #=> String
resp.webhooks[0].webhook_id #=> String
resp.webhooks[0].webhook_url #=> String
resp.webhooks[0].app_id #=> String
resp.webhooks[0].branch_name #=> String
resp.webhooks[0].description #=> String
resp.webhooks[0].create_time #=> Time
resp.webhooks[0].update_time #=> Time
resp.next_token #=> String

Parameters:

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

    ({})

Options Hash (params):

  • :app_id (required, String) —

    The unique ID for an Amplify app.

  • :next_token (String) —

    A pagination token. Set to null to start listing webhooks from the start. If non-null,the pagination token is returned in a result. Pass its value in here to list more webhooks.

  • :max_results (Integer) —

    The maximum number of records to list in a single response.

Returns:

See Also:



2353
2354
2355
2356
# File 'gems/aws-sdk-amplify/lib/aws-sdk-amplify/client.rb', line 2353

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

#start_deployment(params = {}) ⇒ Types::StartDeploymentResult

Starts a deployment for a manually deployed app. Manually deployed apps are not connected to a Git repository.

The maximum duration between the CreateDeployment call and the StartDeployment call cannot exceed 8 hours. If the duration exceeds 8 hours, the StartDeployment call and the associated Job will fail.

Examples:

Request syntax with placeholder values


resp = client.start_deployment({
  app_id: "AppId", # required
  branch_name: "BranchName", # required
  job_id: "JobId",
  source_url: "SourceUrl",
  source_url_type: "ZIP", # accepts ZIP, BUCKET_PREFIX
})

Response structure


resp.job_summary.job_arn #=> String
resp.job_summary.job_id #=> String
resp.job_summary.commit_id #=> String
resp.job_summary.commit_message #=> String
resp.job_summary.commit_time #=> Time
resp.job_summary.start_time #=> Time
resp.job_summary.status #=> String, one of "CREATED", "PENDING", "PROVISIONING", "RUNNING", "FAILED", "SUCCEED", "CANCELLING", "CANCELLED"
resp.job_summary.end_time #=> Time
resp.job_summary.job_type #=> String, one of "RELEASE", "RETRY", "MANUAL", "WEB_HOOK"
resp.job_summary.source_url #=> String
resp.job_summary.source_url_type #=> String, one of "ZIP", "BUCKET_PREFIX"

Parameters:

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

    ({})

Options Hash (params):

  • :app_id (required, String) —

    The unique ID for an Amplify app.

  • :branch_name (required, String) —

    The name of the branch to use for the deployment job.

  • :job_id (String) —

    The job ID for this deployment that is generated by the CreateDeployment request.

  • :source_url (String) —

    The source URL for the deployment that is used when calling StartDeployment without CreateDeployment. The source URL can be either an HTTP GET URL that is publicly accessible and downloads a single .zip file, or an Amazon S3 bucket and prefix.

  • :source_url_type (String) —

    The type of source specified by the sourceURL. If the value is ZIP, the source is a .zip file. If the value is BUCKET_PREFIX, the source is an Amazon S3 bucket and prefix. If no value is specified, the default is ZIP.

Returns:

See Also:



2420
2421
2422
2423
# File 'gems/aws-sdk-amplify/lib/aws-sdk-amplify/client.rb', line 2420

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

#start_job(params = {}) ⇒ Types::StartJobResult

Starts a new job for a branch of an Amplify app.

Examples:

Request syntax with placeholder values


resp = client.start_job({
  app_id: "AppId", # required
  branch_name: "BranchName", # required
  job_id: "JobId",
  job_type: "RELEASE", # required, accepts RELEASE, RETRY, MANUAL, WEB_HOOK
  job_reason: "JobReason",
  commit_id: "CommitId",
  commit_message: "CommitMessage",
  commit_time: Time.now,
})

Response structure


resp.job_summary.job_arn #=> String
resp.job_summary.job_id #=> String
resp.job_summary.commit_id #=> String
resp.job_summary.commit_message #=> String
resp.job_summary.commit_time #=> Time
resp.job_summary.start_time #=> Time
resp.job_summary.status #=> String, one of "CREATED", "PENDING", "PROVISIONING", "RUNNING", "FAILED", "SUCCEED", "CANCELLING", "CANCELLED"
resp.job_summary.end_time #=> Time
resp.job_summary.job_type #=> String, one of "RELEASE", "RETRY", "MANUAL", "WEB_HOOK"
resp.job_summary.source_url #=> String
resp.job_summary.source_url_type #=> String, one of "ZIP", "BUCKET_PREFIX"

Parameters:

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

    ({})

Options Hash (params):

  • :app_id (required, String) —

    The unique ID for an Amplify app.

  • :branch_name (required, String) —

    The name of the branch to use for the job.

  • :job_id (String) —

    The unique ID for an existing job. This is required if the value of jobType is RETRY.

  • :job_type (required, String) —

    Describes the type for the job. The job type RELEASE starts a new job with the latest change from the specified branch. This value is available only for apps that are connected to a repository.

    The job type RETRY retries an existing job. If the job type value is RETRY, the jobId is also required.

  • :job_reason (String) —

    A descriptive reason for starting the job.

  • :commit_id (String) —

    The commit ID from a third-party repository provider for the job.

  • :commit_message (String) —

    The commit message from a third-party repository provider for the job.

  • :commit_time (Time, DateTime, Date, Integer, String) —

    The commit date and time for the job.

Returns:

See Also:



2492
2493
2494
2495
# File 'gems/aws-sdk-amplify/lib/aws-sdk-amplify/client.rb', line 2492

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

#stop_job(params = {}) ⇒ Types::StopJobResult

Stops a job that is in progress for a branch of an Amplify app.

Examples:

Request syntax with placeholder values


resp = client.stop_job({
  app_id: "AppId", # required
  branch_name: "BranchName", # required
  job_id: "JobId", # required
})

Response structure


resp.job_summary.job_arn #=> String
resp.job_summary.job_id #=> String
resp.job_summary.commit_id #=> String
resp.job_summary.commit_message #=> String
resp.job_summary.commit_time #=> Time
resp.job_summary.start_time #=> Time
resp.job_summary.status #=> String, one of "CREATED", "PENDING", "PROVISIONING", "RUNNING", "FAILED", "SUCCEED", "CANCELLING", "CANCELLED"
resp.job_summary.end_time #=> Time
resp.job_summary.job_type #=> String, one of "RELEASE", "RETRY", "MANUAL", "WEB_HOOK"
resp.job_summary.source_url #=> String
resp.job_summary.source_url_type #=> String, one of "ZIP", "BUCKET_PREFIX"

Parameters:

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

    ({})

Options Hash (params):

  • :app_id (required, String) —

    The unique ID for an Amplify app.

  • :branch_name (required, String) —

    The name of the branch to use for the stop job request.

  • :job_id (required, String) —

    The unique id for the job.

Returns:

See Also:



2538
2539
2540
2541
# File 'gems/aws-sdk-amplify/lib/aws-sdk-amplify/client.rb', line 2538

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

#tag_resource(params = {}) ⇒ Struct

Tags the resource with a tag key and value.

Examples:

Request syntax with placeholder values


resp = client.tag_resource({
  resource_arn: "ResourceArn", # required
  tags: { # required
    "TagKey" => "TagValue",
  },
})

Parameters:

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

    ({})

Options Hash (params):

  • :resource_arn (required, String) —

    The Amazon Resource Name (ARN) to use to tag a resource.

  • :tags (required, Hash<String,String>) —

    The tags used to tag the resource.

Returns:

  • (Struct) —

    Returns an empty response.

See Also:



2566
2567
2568
2569
# File 'gems/aws-sdk-amplify/lib/aws-sdk-amplify/client.rb', line 2566

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

#untag_resource(params = {}) ⇒ Struct

Untags a resource with a specified Amazon Resource Name (ARN).

Examples:

Request syntax with placeholder values


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

Parameters:

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

    ({})

Options Hash (params):

  • :resource_arn (required, String) —

    The Amazon Resource Name (ARN) to use to untag a resource.

  • :tag_keys (required, Array<String>) —

    The tag keys to use to untag a resource.

Returns:

  • (Struct) —

    Returns an empty response.

See Also:



2592
2593
2594
2595
# File 'gems/aws-sdk-amplify/lib/aws-sdk-amplify/client.rb', line 2592

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

#update_app(params = {}) ⇒ Types::UpdateAppResult

Updates an existing Amplify app.

Examples:

Request syntax with placeholder values


resp = client.update_app({
  app_id: "AppId", # required
  name: "Name",
  description: "Description",
  platform: "WEB", # accepts WEB, WEB_DYNAMIC, WEB_COMPUTE
  compute_role_arn: "ComputeRoleArn",
  iam_service_role_arn: "ServiceRoleArn",
  environment_variables: {
    "EnvKey" => "EnvValue",
  },
  enable_branch_auto_build: false,
  enable_branch_auto_deletion: false,
  enable_basic_auth: false,
  basic_auth_credentials: "BasicAuthCredentials",
  custom_rules: [
    {
      source: "Source", # required
      target: "Target", # required
      status: "Status",
      condition: "Condition",
    },
  ],
  build_spec: "BuildSpec",
  custom_headers: "CustomHeaders",
  enable_auto_branch_creation: false,
  auto_branch_creation_patterns: ["AutoBranchCreationPattern"],
  auto_branch_creation_config: {
    stage: "PRODUCTION", # accepts PRODUCTION, BETA, DEVELOPMENT, EXPERIMENTAL, PULL_REQUEST
    framework: "Framework",
    enable_auto_build: false,
    environment_variables: {
      "EnvKey" => "EnvValue",
    },
    basic_auth_credentials: "BasicAuthCredentials",
    enable_basic_auth: false,
    enable_performance_mode: false,
    build_spec: "BuildSpec",
    enable_pull_request_preview: false,
    pull_request_environment_name: "PullRequestEnvironmentName",
  },
  repository: "Repository",
  oauth_token: "OauthToken",
  access_token: "AccessToken",
  job_config: {
    build_compute_type: "STANDARD_8GB", # required, accepts STANDARD_8GB, LARGE_16GB, XLARGE_72GB
  },
  cache_config: {
    type: "AMPLIFY_MANAGED", # required, accepts AMPLIFY_MANAGED, AMPLIFY_MANAGED_NO_COOKIES
  },
})

Response structure


resp.app.app_id #=> String
resp.app.app_arn #=> String
resp.app.name #=> String
resp.app.tags #=> Hash
resp.app.tags["TagKey"] #=> String
resp.app.description #=> String
resp.app.repository #=> String
resp.app.platform #=> String, one of "WEB", "WEB_DYNAMIC", "WEB_COMPUTE"
resp.app.create_time #=> Time
resp.app.update_time #=> Time
resp.app.compute_role_arn #=> String
resp.app.iam_service_role_arn #=> String
resp.app.environment_variables #=> Hash
resp.app.environment_variables["EnvKey"] #=> String
resp.app.default_domain #=> String
resp.app.enable_branch_auto_build #=> Boolean
resp.app.enable_branch_auto_deletion #=> Boolean
resp.app.enable_basic_auth #=> Boolean
resp.app.basic_auth_credentials #=> String
resp.app.custom_rules #=> Array
resp.app.custom_rules[0].source #=> String
resp.app.custom_rules[0].target #=> String
resp.app.custom_rules[0].status #=> String
resp.app.custom_rules[0].condition #=> String
resp.app.production_branch.last_deploy_time #=> Time
resp.app.production_branch.status #=> String
resp.app.production_branch.thumbnail_url #=> String
resp.app.production_branch.branch_name #=> String
resp.app.build_spec #=> String
resp.app.custom_headers #=> String
resp.app.enable_auto_branch_creation #=> Boolean
resp.app.auto_branch_creation_patterns #=> Array
resp.app.auto_branch_creation_patterns[0] #=> String
resp.app.auto_branch_creation_config.stage #=> String, one of "PRODUCTION", "BETA", "DEVELOPMENT", "EXPERIMENTAL", "PULL_REQUEST"
resp.app.auto_branch_creation_config.framework #=> String
resp.app.auto_branch_creation_config.enable_auto_build #=> Boolean
resp.app.auto_branch_creation_config.environment_variables #=> Hash
resp.app.auto_branch_creation_config.environment_variables["EnvKey"] #=> String
resp.app.auto_branch_creation_config.basic_auth_credentials #=> String
resp.app.auto_branch_creation_config.enable_basic_auth #=> Boolean
resp.app.auto_branch_creation_config.enable_performance_mode #=> Boolean
resp.app.auto_branch_creation_config.build_spec #=> String
resp.app.auto_branch_creation_config.enable_pull_request_preview #=> Boolean
resp.app.auto_branch_creation_config.pull_request_environment_name #=> String
resp.app.repository_clone_method #=> String, one of "SSH", "TOKEN", "SIGV4"
resp.app.cache_config.type #=> String, one of "AMPLIFY_MANAGED", "AMPLIFY_MANAGED_NO_COOKIES"
resp.app.webhook_create_time #=> Time
resp.app.waf_configuration.web_acl_arn #=> String
resp.app.waf_configuration.waf_status #=> String, one of "ASSOCIATING", "ASSOCIATION_FAILED", "ASSOCIATION_SUCCESS", "DISASSOCIATING", "DISASSOCIATION_FAILED"
resp.app.waf_configuration.status_reason #=> String
resp.app.job_config.build_compute_type #=> String, one of "STANDARD_8GB", "LARGE_16GB", "XLARGE_72GB"

Parameters:

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

    ({})

Options Hash (params):

  • :app_id (required, String) —

    The unique ID for an Amplify app.

  • :name (String) —

    The name for an Amplify app.

  • :description (String) —

    The description for an Amplify app.

  • :platform (String) —

    The platform for the Amplify app. For a static app, set the platform type to WEB. For a dynamic server-side rendered (SSR) app, set the platform type to WEB_COMPUTE. For an app requiring Amplify Hosting's original SSR support only, set the platform type to WEB_DYNAMIC.

    If you are deploying an SSG only app with Next.js version 14 or later, you must set the platform type to WEB_COMPUTE.

  • :compute_role_arn (String) —

    The Amazon Resource Name (ARN) of the IAM role to assign to an SSR app. The SSR Compute role allows the Amplify Hosting compute service to securely access specific Amazon Web Services resources based on the role's permissions. For more information about the SSR Compute role, see Adding an SSR Compute role in the Amplify User Guide.

  • :iam_service_role_arn (String) —

    The Amazon Resource Name (ARN) of the IAM service role for the Amplify app.

  • :environment_variables (Hash<String,String>) —

    The environment variables for an Amplify app.

  • :enable_branch_auto_build (Boolean) —

    Enables branch auto-building for an Amplify app.

  • :enable_branch_auto_deletion (Boolean) —

    Automatically disconnects a branch in the Amplify console when you delete a branch from your Git repository.

  • :enable_basic_auth (Boolean) —

    Enables basic authorization for an Amplify app.

  • :basic_auth_credentials (String) —

    The basic authorization credentials for an Amplify app. You must base64-encode the authorization credentials and provide them in the format user:password.

  • :custom_rules (Array<Types::CustomRule>) —

    The custom redirect and rewrite rules for an Amplify app.

  • :build_spec (String) —

    The build specification (build spec) for an Amplify app.

  • :custom_headers (String) —

    The custom HTTP headers for an Amplify app.

  • :enable_auto_branch_creation (Boolean) —

    Enables automated branch creation for an Amplify app.

  • :auto_branch_creation_patterns (Array<String>) —

    Describes the automated branch creation glob patterns for an Amplify app.

  • :auto_branch_creation_config (Types::AutoBranchCreationConfig) —

    The automated branch creation configuration for an Amplify app.

  • :repository (String) —

    The name of the Git repository for an Amplify app.

  • :oauth_token (String) —

    The OAuth token for a third-party source control system for an Amplify app. The OAuth token is used to create a webhook and a read-only deploy key using SSH cloning. The OAuth token is not stored.

    Use oauthToken for repository providers other than GitHub, such as Bitbucket or CodeCommit.

    To authorize access to GitHub as your repository provider, use accessToken.

    You must specify either oauthToken or accessToken when you update an app.

    Existing Amplify apps deployed from a GitHub repository using OAuth continue to work with CI/CD. However, we strongly recommend that you migrate these apps to use the GitHub App. For more information, see Migrating an existing OAuth app to the Amplify GitHub App in the Amplify User Guide .

  • :access_token (String) —

    The personal access token for a GitHub repository for an Amplify app. The personal access token is used to authorize access to a GitHub repository using the Amplify GitHub App. The token is not stored.

    Use accessToken for GitHub repositories only. To authorize access to a repository provider such as Bitbucket or CodeCommit, use oauthToken.

    You must specify either accessToken or oauthToken when you update an app.

    Existing Amplify apps deployed from a GitHub repository using OAuth continue to work with CI/CD. However, we strongly recommend that you migrate these apps to use the GitHub App. For more information, see Migrating an existing OAuth app to the Amplify GitHub App in the Amplify User Guide .

  • :job_config (Types::JobConfig) —

    Describes the configuration details that apply to the jobs for an Amplify app.

  • :cache_config (Types::CacheConfig) —

    The cache configuration for the Amplify app.

Returns:

See Also:



2841
2842
2843
2844
# File 'gems/aws-sdk-amplify/lib/aws-sdk-amplify/client.rb', line 2841

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

#update_branch(params = {}) ⇒ Types::UpdateBranchResult

Updates a branch for an Amplify app.

Examples:

Request syntax with placeholder values


resp = client.update_branch({
  app_id: "AppId", # required
  branch_name: "BranchName", # required
  description: "Description",
  framework: "Framework",
  stage: "PRODUCTION", # accepts PRODUCTION, BETA, DEVELOPMENT, EXPERIMENTAL, PULL_REQUEST
  enable_notification: false,
  enable_auto_build: false,
  enable_skew_protection: false,
  environment_variables: {
    "EnvKey" => "EnvValue",
  },
  basic_auth_credentials: "BasicAuthCredentials",
  enable_basic_auth: false,
  enable_performance_mode: false,
  build_spec: "BuildSpec",
  ttl: "TTL",
  display_name: "DisplayName",
  enable_pull_request_preview: false,
  pull_request_environment_name: "PullRequestEnvironmentName",
  backend_environment_arn: "BackendEnvironmentArn",
  backend: {
    stack_arn: "StackArn",
  },
  compute_role_arn: "ComputeRoleArn",
})

Response structure


resp.branch.branch_arn #=> String
resp.branch.branch_name #=> String
resp.branch.description #=> String
resp.branch.tags #=> Hash
resp.branch.tags["TagKey"] #=> String
resp.branch.stage #=> String, one of "PRODUCTION", "BETA", "DEVELOPMENT", "EXPERIMENTAL", "PULL_REQUEST"
resp.branch.display_name #=> String
resp.branch.enable_notification #=> Boolean
resp.branch.create_time #=> Time
resp.branch.update_time #=> Time
resp.branch.environment_variables #=> Hash
resp.branch.environment_variables["EnvKey"] #=> String
resp.branch.enable_auto_build #=> Boolean
resp.branch.enable_skew_protection #=> Boolean
resp.branch.custom_domains #=> Array
resp.branch.custom_domains[0] #=> String
resp.branch.framework #=> String
resp.branch.active_job_id #=> String
resp.branch.total_number_of_jobs #=> String
resp.branch.enable_basic_auth #=> Boolean
resp.branch.enable_performance_mode #=> Boolean
resp.branch.thumbnail_url #=> String
resp.branch.basic_auth_credentials #=> String
resp.branch.build_spec #=> String
resp.branch.ttl #=> String
resp.branch.associated_resources #=> Array
resp.branch.associated_resources[0] #=> String
resp.branch.enable_pull_request_preview #=> Boolean
resp.branch.pull_request_environment_name #=> String
resp.branch.destination_branch #=> String
resp.branch.source_branch #=> String
resp.branch.backend_environment_arn #=> String
resp.branch.backend.stack_arn #=> String
resp.branch.compute_role_arn #=> String

Parameters:

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

    ({})

Options Hash (params):

  • :app_id (required, String) —

    The unique ID for an Amplify app.

  • :branch_name (required, String) —

    The name of the branch.

  • :description (String) —

    The description for the branch.

  • :framework (String) —

    The framework for the branch.

  • :stage (String) —

    Describes the current stage for the branch.

  • :enable_notification (Boolean) —

    Enables notifications for the branch.

  • :enable_auto_build (Boolean) —

    Enables auto building for the branch.

  • :enable_skew_protection (Boolean) —

    Specifies whether the skew protection feature is enabled for the branch.

    Deployment skew protection is available to Amplify applications to eliminate version skew issues between client and servers in web applications. When you apply skew protection to a branch, you can ensure that your clients always interact with the correct version of server-side assets, regardless of when a deployment occurs. For more information about skew protection, see Skew protection for Amplify deployments in the Amplify User Guide.

  • :environment_variables (Hash<String,String>) —

    The environment variables for the branch.

  • :basic_auth_credentials (String) —

    The basic authorization credentials for the branch. You must base64-encode the authorization credentials and provide them in the format user:password.

  • :enable_basic_auth (Boolean) —

    Enables basic authorization for the branch.

  • :enable_performance_mode (Boolean) —

    Enables performance mode for the branch.

    Performance mode optimizes for faster hosting performance by keeping content cached at the edge for a longer interval. When performance mode is enabled, hosting configuration or code changes can take up to 10 minutes to roll out.

  • :build_spec (String) —

    The build specification (build spec) for the branch.

  • :ttl (String) —

    The content Time to Live (TTL) for the website in seconds.

  • :display_name (String) —

    The display name for a branch. This is used as the default domain prefix.

  • :enable_pull_request_preview (Boolean) —

    Enables pull request previews for this branch.

  • :pull_request_environment_name (String) —

    The Amplify environment name for the pull request.

  • :backend_environment_arn (String) —

    The Amazon Resource Name (ARN) for a backend environment that is part of a Gen 1 Amplify app.

    This field is available to Amplify Gen 1 apps only where the backend is created using Amplify Studio or the Amplify command line interface (CLI).

  • :backend (Types::Backend) —

    The backend for a Branch of an Amplify app. Use for a backend created from an CloudFormation stack.

    This field is available to Amplify Gen 2 apps only. When you deploy an application with Amplify Gen 2, you provision the app's backend infrastructure using Typescript code.

  • :compute_role_arn (String) —

    The Amazon Resource Name (ARN) of the IAM role to assign to a branch of an SSR app. The SSR Compute role allows the Amplify Hosting compute service to securely access specific Amazon Web Services resources based on the role's permissions. For more information about the SSR Compute role, see Adding an SSR Compute role in the Amplify User Guide.

Returns:

See Also:



3022
3023
3024
3025
# File 'gems/aws-sdk-amplify/lib/aws-sdk-amplify/client.rb', line 3022

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

#update_domain_association(params = {}) ⇒ Types::UpdateDomainAssociationResult

Creates a new domain association for an Amplify app.

Examples:

Request syntax with placeholder values


resp = client.update_domain_association({
  app_id: "AppId", # required
  domain_name: "DomainName", # required
  enable_auto_sub_domain: false,
  sub_domain_settings: [
    {
      prefix: "DomainPrefix", # required
      branch_name: "BranchName", # required
    },
  ],
  auto_sub_domain_creation_patterns: ["AutoSubDomainCreationPattern"],
  auto_sub_domain_iam_role: "AutoSubDomainIAMRole",
  certificate_settings: {
    type: "AMPLIFY_MANAGED", # required, accepts AMPLIFY_MANAGED, CUSTOM
    custom_certificate_arn: "CertificateArn",
  },
})

Response structure


resp.domain_association.domain_association_arn #=> String
resp.domain_association.domain_name #=> String
resp.domain_association.enable_auto_sub_domain #=> Boolean
resp.domain_association.auto_sub_domain_creation_patterns #=> Array
resp.domain_association.auto_sub_domain_creation_patterns[0] #=> String
resp.domain_association.auto_sub_domain_iam_role #=> String
resp.domain_association.domain_status #=> String, one of "PENDING_VERIFICATION", "IN_PROGRESS", "AVAILABLE", "IMPORTING_CUSTOM_CERTIFICATE", "PENDING_DEPLOYMENT", "AWAITING_APP_CNAME", "FAILED", "CREATING", "REQUESTING_CERTIFICATE", "UPDATING"
resp.domain_association.update_status #=> String, one of "REQUESTING_CERTIFICATE", "PENDING_VERIFICATION", "IMPORTING_CUSTOM_CERTIFICATE", "PENDING_DEPLOYMENT", "AWAITING_APP_CNAME", "UPDATE_COMPLETE", "UPDATE_FAILED"
resp.domain_association.status_reason #=> String
resp.domain_association.certificate_verification_dns_record #=> String
resp.domain_association.sub_domains #=> Array
resp.domain_association.sub_domains[0].sub_domain_setting.prefix #=> String
resp.domain_association.sub_domains[0].sub_domain_setting.branch_name #=> String
resp.domain_association.sub_domains[0].verified #=> Boolean
resp.domain_association.sub_domains[0].dns_record #=> String
resp.domain_association.certificate.type #=> String, one of "AMPLIFY_MANAGED", "CUSTOM"
resp.domain_association.certificate.custom_certificate_arn #=> String
resp.domain_association.certificate.certificate_verification_dns_record #=> String

Parameters:

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

    ({})

Options Hash (params):

  • :app_id (required, String) —

    The unique ID for an Amplify app.

  • :domain_name (required, String) —

    The name of the domain.

  • :enable_auto_sub_domain (Boolean) —

    Enables the automated creation of subdomains for branches.

  • :sub_domain_settings (Array<Types::SubDomainSetting>) —

    Describes the settings for the subdomain.

  • :auto_sub_domain_creation_patterns (Array<String>) —

    Sets the branch patterns for automatic subdomain creation.

  • :auto_sub_domain_iam_role (String) —

    The required AWS Identity and Access Management (IAM) service role for the Amazon Resource Name (ARN) for automatically creating subdomains.

  • :certificate_settings (Types::CertificateSettings) —

    The type of SSL/TLS certificate to use for your custom domain.

Returns:

See Also:



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

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

#update_webhook(params = {}) ⇒ Types::UpdateWebhookResult

Updates a webhook.

Examples:

Request syntax with placeholder values


resp = client.update_webhook({
  webhook_id: "WebhookId", # required
  branch_name: "BranchName",
  description: "Description",
})

Response structure


resp.webhook.webhook_arn #=> String
resp.webhook.webhook_id #=> String
resp.webhook.webhook_url #=> String
resp.webhook.app_id #=> String
resp.webhook.branch_name #=> String
resp.webhook.description #=> String
resp.webhook.create_time #=> Time
resp.webhook.update_time #=> Time

Parameters:

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

    ({})

Options Hash (params):

  • :webhook_id (required, String) —

    The unique ID for a webhook.

  • :branch_name (String) —

    The name for a branch that is part of an Amplify app.

  • :description (String) —

    The description for a webhook.

Returns:

See Also:



3143
3144
3145
3146
# File 'gems/aws-sdk-amplify/lib/aws-sdk-amplify/client.rb', line 3143

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