1. Packages
  2. Oracle Cloud Infrastructure
  3. API Docs
  4. ApiGateway
  5. Deployment
Oracle Cloud Infrastructure v1.16.1 published on Wednesday, Nov 22, 2023 by Pulumi

oci.ApiGateway.Deployment

Explore with Pulumi AI

oci logo
Oracle Cloud Infrastructure v1.16.1 published on Wednesday, Nov 22, 2023 by Pulumi

    This resource provides the Deployment resource in Oracle Cloud Infrastructure API Gateway service.

    Creates a new deployment.

    Example Usage

    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    using Oci = Pulumi.Oci;
    
    return await Deployment.RunAsync(() => 
    {
        var testDeployment = new Oci.ApiGateway.Deployment("testDeployment", new()
        {
            CompartmentId = @var.Compartment_id,
            GatewayId = oci_apigateway_gateway.Test_gateway.Id,
            PathPrefix = @var.Deployment_path_prefix,
            Specification = new Oci.ApiGateway.Inputs.DeploymentSpecificationArgs
            {
                LoggingPolicies = new Oci.ApiGateway.Inputs.DeploymentSpecificationLoggingPoliciesArgs
                {
                    AccessLog = new Oci.ApiGateway.Inputs.DeploymentSpecificationLoggingPoliciesAccessLogArgs
                    {
                        IsEnabled = @var.Deployment_specification_logging_policies_access_log_is_enabled,
                    },
                    ExecutionLog = new Oci.ApiGateway.Inputs.DeploymentSpecificationLoggingPoliciesExecutionLogArgs
                    {
                        IsEnabled = @var.Deployment_specification_logging_policies_execution_log_is_enabled,
                        LogLevel = @var.Deployment_specification_logging_policies_execution_log_log_level,
                    },
                },
                RequestPolicies = new Oci.ApiGateway.Inputs.DeploymentSpecificationRequestPoliciesArgs
                {
                    Authentication = new Oci.ApiGateway.Inputs.DeploymentSpecificationRequestPoliciesAuthenticationArgs
                    {
                        Type = @var.Deployment_specification_request_policies_authentication_type,
                        Audiences = @var.Deployment_specification_request_policies_authentication_audiences,
                        CacheKeys = @var.Deployment_specification_request_policies_authentication_cache_key,
                        FunctionId = oci_functions_function.Test_function.Id,
                        IsAnonymousAccessAllowed = @var.Deployment_specification_request_policies_authentication_is_anonymous_access_allowed,
                        Issuers = @var.Deployment_specification_request_policies_authentication_issuers,
                        MaxClockSkewInSeconds = @var.Deployment_specification_request_policies_authentication_max_clock_skew_in_seconds,
                        Parameters = @var.Deployment_specification_request_policies_authentication_parameters,
                        PublicKeys = new Oci.ApiGateway.Inputs.DeploymentSpecificationRequestPoliciesAuthenticationPublicKeysArgs
                        {
                            Type = @var.Deployment_specification_request_policies_authentication_public_keys_type,
                            IsSslVerifyDisabled = @var.Deployment_specification_request_policies_authentication_public_keys_is_ssl_verify_disabled,
                            Keys = new[]
                            {
                                new Oci.ApiGateway.Inputs.DeploymentSpecificationRequestPoliciesAuthenticationPublicKeysKeyArgs
                                {
                                    Format = @var.Deployment_specification_request_policies_authentication_public_keys_keys_format,
                                    Alg = @var.Deployment_specification_request_policies_authentication_public_keys_keys_alg,
                                    E = @var.Deployment_specification_request_policies_authentication_public_keys_keys_e,
                                    Key = @var.Deployment_specification_request_policies_authentication_public_keys_keys_key,
                                    KeyOps = @var.Deployment_specification_request_policies_authentication_public_keys_keys_key_ops,
                                    Kid = @var.Deployment_specification_request_policies_authentication_public_keys_keys_kid,
                                    Kty = @var.Deployment_specification_request_policies_authentication_public_keys_keys_kty,
                                    N = @var.Deployment_specification_request_policies_authentication_public_keys_keys_n,
                                    Use = @var.Deployment_specification_request_policies_authentication_public_keys_keys_use,
                                },
                            },
                            MaxCacheDurationInHours = @var.Deployment_specification_request_policies_authentication_public_keys_max_cache_duration_in_hours,
                            Uri = @var.Deployment_specification_request_policies_authentication_public_keys_uri,
                        },
                        TokenAuthScheme = @var.Deployment_specification_request_policies_authentication_token_auth_scheme,
                        TokenHeader = @var.Deployment_specification_request_policies_authentication_token_header,
                        TokenQueryParam = @var.Deployment_specification_request_policies_authentication_token_query_param,
                        ValidationFailurePolicy = new Oci.ApiGateway.Inputs.DeploymentSpecificationRequestPoliciesAuthenticationValidationFailurePolicyArgs
                        {
                            Type = @var.Deployment_specification_request_policies_authentication_validation_failure_policy_type,
                            ClientDetails = new Oci.ApiGateway.Inputs.DeploymentSpecificationRequestPoliciesAuthenticationValidationFailurePolicyClientDetailsArgs
                            {
                                Type = @var.Deployment_specification_request_policies_authentication_validation_failure_policy_client_details_type,
                                ClientId = oci_apigateway_client.Test_client.Id,
                                ClientSecretId = oci_vault_secret.Test_secret.Id,
                                ClientSecretVersionNumber = @var.Deployment_specification_request_policies_authentication_validation_failure_policy_client_details_client_secret_version_number,
                            },
                            FallbackRedirectPath = @var.Deployment_specification_request_policies_authentication_validation_failure_policy_fallback_redirect_path,
                            LogoutPath = @var.Deployment_specification_request_policies_authentication_validation_failure_policy_logout_path,
                            MaxExpiryDurationInHours = @var.Deployment_specification_request_policies_authentication_validation_failure_policy_max_expiry_duration_in_hours,
                            ResponseCode = @var.Deployment_specification_request_policies_authentication_validation_failure_policy_response_code,
                            ResponseHeaderTransformations = new Oci.ApiGateway.Inputs.DeploymentSpecificationRequestPoliciesAuthenticationValidationFailurePolicyResponseHeaderTransformationsArgs
                            {
                                FilterHeaders = new Oci.ApiGateway.Inputs.DeploymentSpecificationRequestPoliciesAuthenticationValidationFailurePolicyResponseHeaderTransformationsFilterHeadersArgs
                                {
                                    Items = new[]
                                    {
                                        new Oci.ApiGateway.Inputs.DeploymentSpecificationRequestPoliciesAuthenticationValidationFailurePolicyResponseHeaderTransformationsFilterHeadersItemArgs
                                        {
                                            Name = @var.Deployment_specification_request_policies_authentication_validation_failure_policy_response_header_transformations_filter_headers_items_name,
                                        },
                                    },
                                    Type = @var.Deployment_specification_request_policies_authentication_validation_failure_policy_response_header_transformations_filter_headers_type,
                                },
                                RenameHeaders = new Oci.ApiGateway.Inputs.DeploymentSpecificationRequestPoliciesAuthenticationValidationFailurePolicyResponseHeaderTransformationsRenameHeadersArgs
                                {
                                    Items = new[]
                                    {
                                        new Oci.ApiGateway.Inputs.DeploymentSpecificationRequestPoliciesAuthenticationValidationFailurePolicyResponseHeaderTransformationsRenameHeadersItemArgs
                                        {
                                            From = @var.Deployment_specification_request_policies_authentication_validation_failure_policy_response_header_transformations_rename_headers_items_from,
                                            To = @var.Deployment_specification_request_policies_authentication_validation_failure_policy_response_header_transformations_rename_headers_items_to,
                                        },
                                    },
                                },
                                SetHeaders = new Oci.ApiGateway.Inputs.DeploymentSpecificationRequestPoliciesAuthenticationValidationFailurePolicyResponseHeaderTransformationsSetHeadersArgs
                                {
                                    Items = new[]
                                    {
                                        new Oci.ApiGateway.Inputs.DeploymentSpecificationRequestPoliciesAuthenticationValidationFailurePolicyResponseHeaderTransformationsSetHeadersItemArgs
                                        {
                                            IfExists = @var.Deployment_specification_request_policies_authentication_validation_failure_policy_response_header_transformations_set_headers_items_if_exists,
                                            Name = @var.Deployment_specification_request_policies_authentication_validation_failure_policy_response_header_transformations_set_headers_items_name,
                                            Values = @var.Deployment_specification_request_policies_authentication_validation_failure_policy_response_header_transformations_set_headers_items_values,
                                        },
                                    },
                                },
                            },
                            ResponseMessage = @var.Deployment_specification_request_policies_authentication_validation_failure_policy_response_message,
                            ResponseType = @var.Deployment_specification_request_policies_authentication_validation_failure_policy_response_type,
                            Scopes = @var.Deployment_specification_request_policies_authentication_validation_failure_policy_scopes,
                            SourceUriDetails = new Oci.ApiGateway.Inputs.DeploymentSpecificationRequestPoliciesAuthenticationValidationFailurePolicySourceUriDetailsArgs
                            {
                                Type = @var.Deployment_specification_request_policies_authentication_validation_failure_policy_source_uri_details_type,
                                Uri = @var.Deployment_specification_request_policies_authentication_validation_failure_policy_source_uri_details_uri,
                            },
                            UseCookiesForIntermediateSteps = @var.Deployment_specification_request_policies_authentication_validation_failure_policy_use_cookies_for_intermediate_steps,
                            UseCookiesForSession = @var.Deployment_specification_request_policies_authentication_validation_failure_policy_use_cookies_for_session,
                            UsePkce = @var.Deployment_specification_request_policies_authentication_validation_failure_policy_use_pkce,
                        },
                        ValidationPolicy = new Oci.ApiGateway.Inputs.DeploymentSpecificationRequestPoliciesAuthenticationValidationPolicyArgs
                        {
                            Type = @var.Deployment_specification_request_policies_authentication_validation_policy_type,
                            AdditionalValidationPolicy = new Oci.ApiGateway.Inputs.DeploymentSpecificationRequestPoliciesAuthenticationValidationPolicyAdditionalValidationPolicyArgs
                            {
                                Audiences = @var.Deployment_specification_request_policies_authentication_validation_policy_additional_validation_policy_audiences,
                                Issuers = @var.Deployment_specification_request_policies_authentication_validation_policy_additional_validation_policy_issuers,
                                VerifyClaims = new[]
                                {
                                    new Oci.ApiGateway.Inputs.DeploymentSpecificationRequestPoliciesAuthenticationValidationPolicyAdditionalValidationPolicyVerifyClaimArgs
                                    {
                                        IsRequired = @var.Deployment_specification_request_policies_authentication_validation_policy_additional_validation_policy_verify_claims_is_required,
                                        Key = @var.Deployment_specification_request_policies_authentication_validation_policy_additional_validation_policy_verify_claims_key,
                                        Values = @var.Deployment_specification_request_policies_authentication_validation_policy_additional_validation_policy_verify_claims_values,
                                    },
                                },
                            },
                            ClientDetails = new Oci.ApiGateway.Inputs.DeploymentSpecificationRequestPoliciesAuthenticationValidationPolicyClientDetailsArgs
                            {
                                Type = @var.Deployment_specification_request_policies_authentication_validation_policy_client_details_type,
                                ClientId = oci_apigateway_client.Test_client.Id,
                                ClientSecretId = oci_vault_secret.Test_secret.Id,
                                ClientSecretVersionNumber = @var.Deployment_specification_request_policies_authentication_validation_policy_client_details_client_secret_version_number,
                            },
                            IsSslVerifyDisabled = @var.Deployment_specification_request_policies_authentication_validation_policy_is_ssl_verify_disabled,
                            Keys = new[]
                            {
                                new Oci.ApiGateway.Inputs.DeploymentSpecificationRequestPoliciesAuthenticationValidationPolicyKeyArgs
                                {
                                    Format = @var.Deployment_specification_request_policies_authentication_validation_policy_keys_format,
                                    Alg = @var.Deployment_specification_request_policies_authentication_validation_policy_keys_alg,
                                    E = @var.Deployment_specification_request_policies_authentication_validation_policy_keys_e,
                                    Key = @var.Deployment_specification_request_policies_authentication_validation_policy_keys_key,
                                    KeyOps = @var.Deployment_specification_request_policies_authentication_validation_policy_keys_key_ops,
                                    Kid = @var.Deployment_specification_request_policies_authentication_validation_policy_keys_kid,
                                    Kty = @var.Deployment_specification_request_policies_authentication_validation_policy_keys_kty,
                                    N = @var.Deployment_specification_request_policies_authentication_validation_policy_keys_n,
                                    Use = @var.Deployment_specification_request_policies_authentication_validation_policy_keys_use,
                                },
                            },
                            MaxCacheDurationInHours = @var.Deployment_specification_request_policies_authentication_validation_policy_max_cache_duration_in_hours,
                            SourceUriDetails = new Oci.ApiGateway.Inputs.DeploymentSpecificationRequestPoliciesAuthenticationValidationPolicySourceUriDetailsArgs
                            {
                                Type = @var.Deployment_specification_request_policies_authentication_validation_policy_source_uri_details_type,
                                Uri = @var.Deployment_specification_request_policies_authentication_validation_policy_source_uri_details_uri,
                            },
                            Uri = @var.Deployment_specification_request_policies_authentication_validation_policy_uri,
                        },
                        VerifyClaims = new[]
                        {
                            new Oci.ApiGateway.Inputs.DeploymentSpecificationRequestPoliciesAuthenticationVerifyClaimArgs
                            {
                                IsRequired = @var.Deployment_specification_request_policies_authentication_verify_claims_is_required,
                                Key = @var.Deployment_specification_request_policies_authentication_verify_claims_key,
                                Values = @var.Deployment_specification_request_policies_authentication_verify_claims_values,
                            },
                        },
                    },
                    Cors = new Oci.ApiGateway.Inputs.DeploymentSpecificationRequestPoliciesCorsArgs
                    {
                        AllowedOrigins = @var.Deployment_specification_request_policies_cors_allowed_origins,
                        AllowedHeaders = @var.Deployment_specification_request_policies_cors_allowed_headers,
                        AllowedMethods = @var.Deployment_specification_request_policies_cors_allowed_methods,
                        ExposedHeaders = @var.Deployment_specification_request_policies_cors_exposed_headers,
                        IsAllowCredentialsEnabled = @var.Deployment_specification_request_policies_cors_is_allow_credentials_enabled,
                        MaxAgeInSeconds = @var.Deployment_specification_request_policies_cors_max_age_in_seconds,
                    },
                    DynamicAuthentication = new Oci.ApiGateway.Inputs.DeploymentSpecificationRequestPoliciesDynamicAuthenticationArgs
                    {
                        AuthenticationServers = new[]
                        {
                            new Oci.ApiGateway.Inputs.DeploymentSpecificationRequestPoliciesDynamicAuthenticationAuthenticationServerArgs
                            {
                                AuthenticationServerDetail = new Oci.ApiGateway.Inputs.DeploymentSpecificationRequestPoliciesDynamicAuthenticationAuthenticationServerAuthenticationServerDetailArgs
                                {
                                    Type = @var.Deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_type,
                                    Audiences = @var.Deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_audiences,
                                    FunctionId = oci_functions_function.Test_function.Id,
                                    IsAnonymousAccessAllowed = @var.Deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_is_anonymous_access_allowed,
                                    Issuers = @var.Deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_issuers,
                                    MaxClockSkewInSeconds = @var.Deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_max_clock_skew_in_seconds,
                                    PublicKeys = new Oci.ApiGateway.Inputs.DeploymentSpecificationRequestPoliciesDynamicAuthenticationAuthenticationServerAuthenticationServerDetailPublicKeysArgs
                                    {
                                        Type = @var.Deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_public_keys_type,
                                        IsSslVerifyDisabled = @var.Deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_public_keys_is_ssl_verify_disabled,
                                        Keys = new[]
                                        {
                                            new Oci.ApiGateway.Inputs.DeploymentSpecificationRequestPoliciesDynamicAuthenticationAuthenticationServerAuthenticationServerDetailPublicKeysKeyArgs
                                            {
                                                Format = @var.Deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_public_keys_keys_format,
                                                Alg = @var.Deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_public_keys_keys_alg,
                                                E = @var.Deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_public_keys_keys_e,
                                                Key = @var.Deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_public_keys_keys_key,
                                                KeyOps = @var.Deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_public_keys_keys_key_ops,
                                                Kid = @var.Deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_public_keys_keys_kid,
                                                Kty = @var.Deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_public_keys_keys_kty,
                                                N = @var.Deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_public_keys_keys_n,
                                                Use = @var.Deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_public_keys_keys_use,
                                            },
                                        },
                                        MaxCacheDurationInHours = @var.Deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_public_keys_max_cache_duration_in_hours,
                                        Uri = @var.Deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_public_keys_uri,
                                    },
                                    TokenAuthScheme = @var.Deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_token_auth_scheme,
                                    TokenHeader = @var.Deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_token_header,
                                    TokenQueryParam = @var.Deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_token_query_param,
                                    ValidationFailurePolicy = new Oci.ApiGateway.Inputs.DeploymentSpecificationRequestPoliciesDynamicAuthenticationAuthenticationServerAuthenticationServerDetailValidationFailurePolicyArgs
                                    {
                                        Type = @var.Deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_validation_failure_policy_type,
                                        ClientDetails = new Oci.ApiGateway.Inputs.DeploymentSpecificationRequestPoliciesDynamicAuthenticationAuthenticationServerAuthenticationServerDetailValidationFailurePolicyClientDetailsArgs
                                        {
                                            Type = @var.Deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_validation_failure_policy_client_details_type,
                                            ClientId = oci_apigateway_client.Test_client.Id,
                                            ClientSecretId = oci_vault_secret.Test_secret.Id,
                                            ClientSecretVersionNumber = @var.Deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_validation_failure_policy_client_details_client_secret_version_number,
                                        },
                                        FallbackRedirectPath = @var.Deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_validation_failure_policy_fallback_redirect_path,
                                        LogoutPath = @var.Deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_validation_failure_policy_logout_path,
                                        MaxExpiryDurationInHours = @var.Deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_validation_failure_policy_max_expiry_duration_in_hours,
                                        ResponseCode = @var.Deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_validation_failure_policy_response_code,
                                        ResponseHeaderTransformations = new Oci.ApiGateway.Inputs.DeploymentSpecificationRequestPoliciesDynamicAuthenticationAuthenticationServerAuthenticationServerDetailValidationFailurePolicyResponseHeaderTransformationsArgs
                                        {
                                            FilterHeaders = new Oci.ApiGateway.Inputs.DeploymentSpecificationRequestPoliciesDynamicAuthenticationAuthenticationServerAuthenticationServerDetailValidationFailurePolicyResponseHeaderTransformationsFilterHeadersArgs
                                            {
                                                Items = new[]
                                                {
                                                    new Oci.ApiGateway.Inputs.DeploymentSpecificationRequestPoliciesDynamicAuthenticationAuthenticationServerAuthenticationServerDetailValidationFailurePolicyResponseHeaderTransformationsFilterHeadersItemArgs
                                                    {
                                                        Name = @var.Deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_validation_failure_policy_response_header_transformations_filter_headers_items_name,
                                                    },
                                                },
                                                Type = @var.Deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_validation_failure_policy_response_header_transformations_filter_headers_type,
                                            },
                                            RenameHeaders = new Oci.ApiGateway.Inputs.DeploymentSpecificationRequestPoliciesDynamicAuthenticationAuthenticationServerAuthenticationServerDetailValidationFailurePolicyResponseHeaderTransformationsRenameHeadersArgs
                                            {
                                                Items = new[]
                                                {
                                                    new Oci.ApiGateway.Inputs.DeploymentSpecificationRequestPoliciesDynamicAuthenticationAuthenticationServerAuthenticationServerDetailValidationFailurePolicyResponseHeaderTransformationsRenameHeadersItemArgs
                                                    {
                                                        From = @var.Deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_validation_failure_policy_response_header_transformations_rename_headers_items_from,
                                                        To = @var.Deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_validation_failure_policy_response_header_transformations_rename_headers_items_to,
                                                    },
                                                },
                                            },
                                            SetHeaders = new Oci.ApiGateway.Inputs.DeploymentSpecificationRequestPoliciesDynamicAuthenticationAuthenticationServerAuthenticationServerDetailValidationFailurePolicyResponseHeaderTransformationsSetHeadersArgs
                                            {
                                                Items = new[]
                                                {
                                                    new Oci.ApiGateway.Inputs.DeploymentSpecificationRequestPoliciesDynamicAuthenticationAuthenticationServerAuthenticationServerDetailValidationFailurePolicyResponseHeaderTransformationsSetHeadersItemArgs
                                                    {
                                                        IfExists = @var.Deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_validation_failure_policy_response_header_transformations_set_headers_items_if_exists,
                                                        Name = @var.Deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_validation_failure_policy_response_header_transformations_set_headers_items_name,
                                                        Values = @var.Deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_validation_failure_policy_response_header_transformations_set_headers_items_values,
                                                    },
                                                },
                                            },
                                        },
                                        ResponseMessage = @var.Deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_validation_failure_policy_response_message,
                                        ResponseType = @var.Deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_validation_failure_policy_response_type,
                                        Scopes = @var.Deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_validation_failure_policy_scopes,
                                        SourceUriDetails = new Oci.ApiGateway.Inputs.DeploymentSpecificationRequestPoliciesDynamicAuthenticationAuthenticationServerAuthenticationServerDetailValidationFailurePolicySourceUriDetailsArgs
                                        {
                                            Type = @var.Deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_validation_failure_policy_source_uri_details_type,
                                            Uri = @var.Deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_validation_failure_policy_source_uri_details_uri,
                                        },
                                        UseCookiesForIntermediateSteps = @var.Deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_validation_failure_policy_use_cookies_for_intermediate_steps,
                                        UseCookiesForSession = @var.Deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_validation_failure_policy_use_cookies_for_session,
                                        UsePkce = @var.Deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_validation_failure_policy_use_pkce,
                                    },
                                    ValidationPolicy = new Oci.ApiGateway.Inputs.DeploymentSpecificationRequestPoliciesDynamicAuthenticationAuthenticationServerAuthenticationServerDetailValidationPolicyArgs
                                    {
                                        Type = @var.Deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_validation_policy_type,
                                        AdditionalValidationPolicy = new Oci.ApiGateway.Inputs.DeploymentSpecificationRequestPoliciesDynamicAuthenticationAuthenticationServerAuthenticationServerDetailValidationPolicyAdditionalValidationPolicyArgs
                                        {
                                            Audiences = @var.Deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_validation_policy_additional_validation_policy_audiences,
                                            Issuers = @var.Deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_validation_policy_additional_validation_policy_issuers,
                                            VerifyClaims = new[]
                                            {
                                                new Oci.ApiGateway.Inputs.DeploymentSpecificationRequestPoliciesDynamicAuthenticationAuthenticationServerAuthenticationServerDetailValidationPolicyAdditionalValidationPolicyVerifyClaimArgs
                                                {
                                                    IsRequired = @var.Deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_validation_policy_additional_validation_policy_verify_claims_is_required,
                                                    Key = @var.Deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_validation_policy_additional_validation_policy_verify_claims_key,
                                                    Values = @var.Deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_validation_policy_additional_validation_policy_verify_claims_values,
                                                },
                                            },
                                        },
                                        ClientDetails = new Oci.ApiGateway.Inputs.DeploymentSpecificationRequestPoliciesDynamicAuthenticationAuthenticationServerAuthenticationServerDetailValidationPolicyClientDetailsArgs
                                        {
                                            Type = @var.Deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_validation_policy_client_details_type,
                                            ClientId = oci_apigateway_client.Test_client.Id,
                                            ClientSecretId = oci_vault_secret.Test_secret.Id,
                                            ClientSecretVersionNumber = @var.Deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_validation_policy_client_details_client_secret_version_number,
                                        },
                                        IsSslVerifyDisabled = @var.Deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_validation_policy_is_ssl_verify_disabled,
                                        Keys = new[]
                                        {
                                            new Oci.ApiGateway.Inputs.DeploymentSpecificationRequestPoliciesDynamicAuthenticationAuthenticationServerAuthenticationServerDetailValidationPolicyKeyArgs
                                            {
                                                Format = @var.Deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_validation_policy_keys_format,
                                                Alg = @var.Deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_validation_policy_keys_alg,
                                                E = @var.Deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_validation_policy_keys_e,
                                                Key = @var.Deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_validation_policy_keys_key,
                                                KeyOps = @var.Deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_validation_policy_keys_key_ops,
                                                Kid = @var.Deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_validation_policy_keys_kid,
                                                Kty = @var.Deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_validation_policy_keys_kty,
                                                N = @var.Deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_validation_policy_keys_n,
                                                Use = @var.Deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_validation_policy_keys_use,
                                            },
                                        },
                                        MaxCacheDurationInHours = @var.Deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_validation_policy_max_cache_duration_in_hours,
                                        SourceUriDetails = new Oci.ApiGateway.Inputs.DeploymentSpecificationRequestPoliciesDynamicAuthenticationAuthenticationServerAuthenticationServerDetailValidationPolicySourceUriDetailsArgs
                                        {
                                            Type = @var.Deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_validation_policy_source_uri_details_type,
                                            Uri = @var.Deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_validation_policy_source_uri_details_uri,
                                        },
                                        Uri = @var.Deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_validation_policy_uri,
                                    },
                                    VerifyClaims = new[]
                                    {
                                        new Oci.ApiGateway.Inputs.DeploymentSpecificationRequestPoliciesDynamicAuthenticationAuthenticationServerAuthenticationServerDetailVerifyClaimArgs
                                        {
                                            IsRequired = @var.Deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_verify_claims_is_required,
                                            Key = @var.Deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_verify_claims_key,
                                            Values = @var.Deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_verify_claims_values,
                                        },
                                    },
                                },
                                Key = new Oci.ApiGateway.Inputs.DeploymentSpecificationRequestPoliciesDynamicAuthenticationAuthenticationServerKeyArgs
                                {
                                    Name = @var.Deployment_specification_request_policies_dynamic_authentication_authentication_servers_key_name,
                                    Expression = @var.Deployment_specification_request_policies_dynamic_authentication_authentication_servers_key_expression,
                                    IsDefault = @var.Deployment_specification_request_policies_dynamic_authentication_authentication_servers_key_is_default,
                                    Type = @var.Deployment_specification_request_policies_dynamic_authentication_authentication_servers_key_type,
                                    Values = @var.Deployment_specification_request_policies_dynamic_authentication_authentication_servers_key_values,
                                },
                            },
                        },
                        SelectionSource = new Oci.ApiGateway.Inputs.DeploymentSpecificationRequestPoliciesDynamicAuthenticationSelectionSourceArgs
                        {
                            Selector = @var.Deployment_specification_request_policies_dynamic_authentication_selection_source_selector,
                            Type = @var.Deployment_specification_request_policies_dynamic_authentication_selection_source_type,
                        },
                    },
                    MutualTls = new Oci.ApiGateway.Inputs.DeploymentSpecificationRequestPoliciesMutualTlsArgs
                    {
                        AllowedSans = @var.Deployment_specification_request_policies_mutual_tls_allowed_sans,
                        IsVerifiedCertificateRequired = @var.Deployment_specification_request_policies_mutual_tls_is_verified_certificate_required,
                    },
                    RateLimiting = new Oci.ApiGateway.Inputs.DeploymentSpecificationRequestPoliciesRateLimitingArgs
                    {
                        RateInRequestsPerSecond = @var.Deployment_specification_request_policies_rate_limiting_rate_in_requests_per_second,
                        RateKey = @var.Deployment_specification_request_policies_rate_limiting_rate_key,
                    },
                    UsagePlans = new Oci.ApiGateway.Inputs.DeploymentSpecificationRequestPoliciesUsagePlansArgs
                    {
                        TokenLocations = @var.Deployment_specification_request_policies_usage_plans_token_locations,
                    },
                },
                Routes = new[]
                {
                    new Oci.ApiGateway.Inputs.DeploymentSpecificationRouteArgs
                    {
                        Backend = new Oci.ApiGateway.Inputs.DeploymentSpecificationRouteBackendArgs
                        {
                            Type = @var.Deployment_specification_routes_backend_type,
                            AllowedPostLogoutUris = @var.Deployment_specification_routes_backend_allowed_post_logout_uris,
                            Body = @var.Deployment_specification_routes_backend_body,
                            ConnectTimeoutInSeconds = @var.Deployment_specification_routes_backend_connect_timeout_in_seconds,
                            FunctionId = oci_functions_function.Test_function.Id,
                            Headers = new[]
                            {
                                new Oci.ApiGateway.Inputs.DeploymentSpecificationRouteBackendHeaderArgs
                                {
                                    Name = @var.Deployment_specification_routes_backend_headers_name,
                                    Value = @var.Deployment_specification_routes_backend_headers_value,
                                },
                            },
                            IsSslVerifyDisabled = @var.Deployment_specification_routes_backend_is_ssl_verify_disabled,
                            PostLogoutState = @var.Deployment_specification_routes_backend_post_logout_state,
                            ReadTimeoutInSeconds = @var.Deployment_specification_routes_backend_read_timeout_in_seconds,
                            RoutingBackends = new[]
                            {
                                new Oci.ApiGateway.Inputs.DeploymentSpecificationRouteBackendRoutingBackendArgs
                                {
                                    Backend = new Oci.ApiGateway.Inputs.DeploymentSpecificationRouteBackendRoutingBackendBackendArgs
                                    {
                                        Type = @var.Deployment_specification_routes_backend_routing_backends_backend_type,
                                        Body = @var.Deployment_specification_routes_backend_routing_backends_backend_body,
                                        ConnectTimeoutInSeconds = @var.Deployment_specification_routes_backend_routing_backends_backend_connect_timeout_in_seconds,
                                        FunctionId = oci_functions_function.Test_function.Id,
                                        Headers = new[]
                                        {
                                            new Oci.ApiGateway.Inputs.DeploymentSpecificationRouteBackendRoutingBackendBackendHeaderArgs
                                            {
                                                Name = @var.Deployment_specification_routes_backend_routing_backends_backend_headers_name,
                                                Value = @var.Deployment_specification_routes_backend_routing_backends_backend_headers_value,
                                            },
                                        },
                                        IsSslVerifyDisabled = @var.Deployment_specification_routes_backend_routing_backends_backend_is_ssl_verify_disabled,
                                        ReadTimeoutInSeconds = @var.Deployment_specification_routes_backend_routing_backends_backend_read_timeout_in_seconds,
                                        SendTimeoutInSeconds = @var.Deployment_specification_routes_backend_routing_backends_backend_send_timeout_in_seconds,
                                        Status = @var.Deployment_specification_routes_backend_routing_backends_backend_status,
                                        Url = @var.Deployment_specification_routes_backend_routing_backends_backend_url,
                                    },
                                    Key = new Oci.ApiGateway.Inputs.DeploymentSpecificationRouteBackendRoutingBackendKeyArgs
                                    {
                                        Name = @var.Deployment_specification_routes_backend_routing_backends_key_name,
                                        Type = @var.Deployment_specification_request_policies_dynamic_authentication_authentication_servers_key_type,
                                        Expression = @var.Deployment_specification_request_policies_dynamic_authentication_authentication_servers_key_expression,
                                        IsDefault = @var.Deployment_specification_request_policies_dynamic_authentication_authentication_servers_key_is_default,
                                        Values = @var.Deployment_specification_request_policies_dynamic_authentication_authentication_servers_key_values,
                                    },
                                },
                            },
                            SelectionSource = new Oci.ApiGateway.Inputs.DeploymentSpecificationRouteBackendSelectionSourceArgs
                            {
                                Selector = @var.Deployment_specification_routes_backend_selection_source_selector,
                                Type = @var.Deployment_specification_routes_backend_selection_source_type,
                            },
                            SendTimeoutInSeconds = @var.Deployment_specification_routes_backend_send_timeout_in_seconds,
                            Status = @var.Deployment_specification_routes_backend_status,
                            Url = @var.Deployment_specification_routes_backend_url,
                        },
                        Path = @var.Deployment_specification_routes_path,
                        LoggingPolicies = new Oci.ApiGateway.Inputs.DeploymentSpecificationRouteLoggingPoliciesArgs
                        {
                            AccessLog = new Oci.ApiGateway.Inputs.DeploymentSpecificationRouteLoggingPoliciesAccessLogArgs
                            {
                                IsEnabled = @var.Deployment_specification_routes_logging_policies_access_log_is_enabled,
                            },
                            ExecutionLog = new Oci.ApiGateway.Inputs.DeploymentSpecificationRouteLoggingPoliciesExecutionLogArgs
                            {
                                IsEnabled = @var.Deployment_specification_routes_logging_policies_execution_log_is_enabled,
                                LogLevel = @var.Deployment_specification_routes_logging_policies_execution_log_log_level,
                            },
                        },
                        Methods = @var.Deployment_specification_routes_methods,
                        RequestPolicies = new Oci.ApiGateway.Inputs.DeploymentSpecificationRouteRequestPoliciesArgs
                        {
                            Authorization = new Oci.ApiGateway.Inputs.DeploymentSpecificationRouteRequestPoliciesAuthorizationArgs
                            {
                                AllowedScopes = @var.Deployment_specification_routes_request_policies_authorization_allowed_scope,
                                Type = @var.Deployment_specification_routes_request_policies_authorization_type,
                            },
                            BodyValidation = new Oci.ApiGateway.Inputs.DeploymentSpecificationRouteRequestPoliciesBodyValidationArgs
                            {
                                Contents = new[]
                                {
                                    new Oci.ApiGateway.Inputs.DeploymentSpecificationRouteRequestPoliciesBodyValidationContentArgs
                                    {
                                        MediaType = @var.Deployment_specification_routes_request_policies_body_validation_content_media_type,
                                        ValidationType = @var.Deployment_specification_routes_request_policies_body_validation_content_validation_type,
                                    },
                                },
                                Required = @var.Deployment_specification_routes_request_policies_body_validation_required,
                                ValidationMode = @var.Deployment_specification_routes_request_policies_body_validation_validation_mode,
                            },
                            Cors = new Oci.ApiGateway.Inputs.DeploymentSpecificationRouteRequestPoliciesCorsArgs
                            {
                                AllowedOrigins = @var.Deployment_specification_routes_request_policies_cors_allowed_origins,
                                AllowedHeaders = @var.Deployment_specification_routes_request_policies_cors_allowed_headers,
                                AllowedMethods = @var.Deployment_specification_routes_request_policies_cors_allowed_methods,
                                ExposedHeaders = @var.Deployment_specification_routes_request_policies_cors_exposed_headers,
                                IsAllowCredentialsEnabled = @var.Deployment_specification_routes_request_policies_cors_is_allow_credentials_enabled,
                                MaxAgeInSeconds = @var.Deployment_specification_routes_request_policies_cors_max_age_in_seconds,
                            },
                            HeaderTransformations = new Oci.ApiGateway.Inputs.DeploymentSpecificationRouteRequestPoliciesHeaderTransformationsArgs
                            {
                                FilterHeaders = new Oci.ApiGateway.Inputs.DeploymentSpecificationRouteRequestPoliciesHeaderTransformationsFilterHeadersArgs
                                {
                                    Items = new[]
                                    {
                                        new Oci.ApiGateway.Inputs.DeploymentSpecificationRouteRequestPoliciesHeaderTransformationsFilterHeadersItemArgs
                                        {
                                            Name = @var.Deployment_specification_routes_request_policies_header_transformations_filter_headers_items_name,
                                        },
                                    },
                                    Type = @var.Deployment_specification_routes_request_policies_header_transformations_filter_headers_type,
                                },
                                RenameHeaders = new Oci.ApiGateway.Inputs.DeploymentSpecificationRouteRequestPoliciesHeaderTransformationsRenameHeadersArgs
                                {
                                    Items = new[]
                                    {
                                        new Oci.ApiGateway.Inputs.DeploymentSpecificationRouteRequestPoliciesHeaderTransformationsRenameHeadersItemArgs
                                        {
                                            From = @var.Deployment_specification_routes_request_policies_header_transformations_rename_headers_items_from,
                                            To = @var.Deployment_specification_routes_request_policies_header_transformations_rename_headers_items_to,
                                        },
                                    },
                                },
                                SetHeaders = new Oci.ApiGateway.Inputs.DeploymentSpecificationRouteRequestPoliciesHeaderTransformationsSetHeadersArgs
                                {
                                    Items = new[]
                                    {
                                        new Oci.ApiGateway.Inputs.DeploymentSpecificationRouteRequestPoliciesHeaderTransformationsSetHeadersItemArgs
                                        {
                                            Name = @var.Deployment_specification_routes_request_policies_header_transformations_set_headers_items_name,
                                            Values = @var.Deployment_specification_routes_request_policies_header_transformations_set_headers_items_values,
                                            IfExists = @var.Deployment_specification_routes_request_policies_header_transformations_set_headers_items_if_exists,
                                        },
                                    },
                                },
                            },
                            HeaderValidations = new Oci.ApiGateway.Inputs.DeploymentSpecificationRouteRequestPoliciesHeaderValidationsArgs
                            {
                                Headers = new[]
                                {
                                    new Oci.ApiGateway.Inputs.DeploymentSpecificationRouteRequestPoliciesHeaderValidationsHeaderArgs
                                    {
                                        Name = @var.Deployment_specification_routes_request_policies_header_validations_headers_name,
                                        Required = @var.Deployment_specification_routes_request_policies_header_validations_headers_required,
                                    },
                                },
                                ValidationMode = @var.Deployment_specification_routes_request_policies_header_validations_validation_mode,
                            },
                            QueryParameterTransformations = new Oci.ApiGateway.Inputs.DeploymentSpecificationRouteRequestPoliciesQueryParameterTransformationsArgs
                            {
                                FilterQueryParameters = new Oci.ApiGateway.Inputs.DeploymentSpecificationRouteRequestPoliciesQueryParameterTransformationsFilterQueryParametersArgs
                                {
                                    Items = new[]
                                    {
                                        new Oci.ApiGateway.Inputs.DeploymentSpecificationRouteRequestPoliciesQueryParameterTransformationsFilterQueryParametersItemArgs
                                        {
                                            Name = @var.Deployment_specification_routes_request_policies_query_parameter_transformations_filter_query_parameters_items_name,
                                        },
                                    },
                                    Type = @var.Deployment_specification_routes_request_policies_query_parameter_transformations_filter_query_parameters_type,
                                },
                                RenameQueryParameters = new Oci.ApiGateway.Inputs.DeploymentSpecificationRouteRequestPoliciesQueryParameterTransformationsRenameQueryParametersArgs
                                {
                                    Items = new[]
                                    {
                                        new Oci.ApiGateway.Inputs.DeploymentSpecificationRouteRequestPoliciesQueryParameterTransformationsRenameQueryParametersItemArgs
                                        {
                                            From = @var.Deployment_specification_routes_request_policies_query_parameter_transformations_rename_query_parameters_items_from,
                                            To = @var.Deployment_specification_routes_request_policies_query_parameter_transformations_rename_query_parameters_items_to,
                                        },
                                    },
                                },
                                SetQueryParameters = new Oci.ApiGateway.Inputs.DeploymentSpecificationRouteRequestPoliciesQueryParameterTransformationsSetQueryParametersArgs
                                {
                                    Items = new[]
                                    {
                                        new Oci.ApiGateway.Inputs.DeploymentSpecificationRouteRequestPoliciesQueryParameterTransformationsSetQueryParametersItemArgs
                                        {
                                            Name = @var.Deployment_specification_routes_request_policies_query_parameter_transformations_set_query_parameters_items_name,
                                            Values = @var.Deployment_specification_routes_request_policies_query_parameter_transformations_set_query_parameters_items_values,
                                            IfExists = @var.Deployment_specification_routes_request_policies_query_parameter_transformations_set_query_parameters_items_if_exists,
                                        },
                                    },
                                },
                            },
                            QueryParameterValidations = new Oci.ApiGateway.Inputs.DeploymentSpecificationRouteRequestPoliciesQueryParameterValidationsArgs
                            {
                                Parameters = new[]
                                {
                                    new Oci.ApiGateway.Inputs.DeploymentSpecificationRouteRequestPoliciesQueryParameterValidationsParameterArgs
                                    {
                                        Name = @var.Deployment_specification_routes_request_policies_query_parameter_validations_parameters_name,
                                        Required = @var.Deployment_specification_routes_request_policies_query_parameter_validations_parameters_required,
                                    },
                                },
                                ValidationMode = @var.Deployment_specification_routes_request_policies_query_parameter_validations_validation_mode,
                            },
                            ResponseCacheLookup = new Oci.ApiGateway.Inputs.DeploymentSpecificationRouteRequestPoliciesResponseCacheLookupArgs
                            {
                                Type = @var.Deployment_specification_routes_request_policies_response_cache_lookup_type,
                                CacheKeyAdditions = @var.Deployment_specification_routes_request_policies_response_cache_lookup_cache_key_additions,
                                IsEnabled = @var.Deployment_specification_routes_request_policies_response_cache_lookup_is_enabled,
                                IsPrivateCachingEnabled = @var.Deployment_specification_routes_request_policies_response_cache_lookup_is_private_caching_enabled,
                            },
                        },
                        ResponsePolicies = new Oci.ApiGateway.Inputs.DeploymentSpecificationRouteResponsePoliciesArgs
                        {
                            HeaderTransformations = new Oci.ApiGateway.Inputs.DeploymentSpecificationRouteResponsePoliciesHeaderTransformationsArgs
                            {
                                FilterHeaders = new Oci.ApiGateway.Inputs.DeploymentSpecificationRouteResponsePoliciesHeaderTransformationsFilterHeadersArgs
                                {
                                    Items = new[]
                                    {
                                        new Oci.ApiGateway.Inputs.DeploymentSpecificationRouteResponsePoliciesHeaderTransformationsFilterHeadersItemArgs
                                        {
                                            Name = @var.Deployment_specification_routes_response_policies_header_transformations_filter_headers_items_name,
                                        },
                                    },
                                    Type = @var.Deployment_specification_routes_response_policies_header_transformations_filter_headers_type,
                                },
                                RenameHeaders = new Oci.ApiGateway.Inputs.DeploymentSpecificationRouteResponsePoliciesHeaderTransformationsRenameHeadersArgs
                                {
                                    Items = new[]
                                    {
                                        new Oci.ApiGateway.Inputs.DeploymentSpecificationRouteResponsePoliciesHeaderTransformationsRenameHeadersItemArgs
                                        {
                                            From = @var.Deployment_specification_routes_response_policies_header_transformations_rename_headers_items_from,
                                            To = @var.Deployment_specification_routes_response_policies_header_transformations_rename_headers_items_to,
                                        },
                                    },
                                },
                                SetHeaders = new Oci.ApiGateway.Inputs.DeploymentSpecificationRouteResponsePoliciesHeaderTransformationsSetHeadersArgs
                                {
                                    Items = new[]
                                    {
                                        new Oci.ApiGateway.Inputs.DeploymentSpecificationRouteResponsePoliciesHeaderTransformationsSetHeadersItemArgs
                                        {
                                            Name = @var.Deployment_specification_routes_response_policies_header_transformations_set_headers_items_name,
                                            Values = @var.Deployment_specification_routes_response_policies_header_transformations_set_headers_items_values,
                                            IfExists = @var.Deployment_specification_routes_response_policies_header_transformations_set_headers_items_if_exists,
                                        },
                                    },
                                },
                            },
                            ResponseCacheStore = new Oci.ApiGateway.Inputs.DeploymentSpecificationRouteResponsePoliciesResponseCacheStoreArgs
                            {
                                TimeToLiveInSeconds = @var.Deployment_specification_routes_response_policies_response_cache_store_time_to_live_in_seconds,
                                Type = @var.Deployment_specification_routes_response_policies_response_cache_store_type,
                            },
                        },
                    },
                },
            },
            DefinedTags = 
            {
                { "Operations.CostCenter", "42" },
            },
            DisplayName = @var.Deployment_display_name,
            FreeformTags = 
            {
                { "Department", "Finance" },
            },
        });
    
    });
    
    package main
    
    import (
    	"github.com/pulumi/pulumi-oci/sdk/go/oci/ApiGateway"
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		_, err := ApiGateway.NewDeployment(ctx, "testDeployment", &ApiGateway.DeploymentArgs{
    			CompartmentId: pulumi.Any(_var.Compartment_id),
    			GatewayId:     pulumi.Any(oci_apigateway_gateway.Test_gateway.Id),
    			PathPrefix:    pulumi.Any(_var.Deployment_path_prefix),
    			Specification: &apigateway.DeploymentSpecificationArgs{
    				LoggingPolicies: &apigateway.DeploymentSpecificationLoggingPoliciesArgs{
    					AccessLog: &apigateway.DeploymentSpecificationLoggingPoliciesAccessLogArgs{
    						IsEnabled: pulumi.Any(_var.Deployment_specification_logging_policies_access_log_is_enabled),
    					},
    					ExecutionLog: &apigateway.DeploymentSpecificationLoggingPoliciesExecutionLogArgs{
    						IsEnabled: pulumi.Any(_var.Deployment_specification_logging_policies_execution_log_is_enabled),
    						LogLevel:  pulumi.Any(_var.Deployment_specification_logging_policies_execution_log_log_level),
    					},
    				},
    				RequestPolicies: &apigateway.DeploymentSpecificationRequestPoliciesArgs{
    					Authentication: &apigateway.DeploymentSpecificationRequestPoliciesAuthenticationArgs{
    						Type:                     pulumi.Any(_var.Deployment_specification_request_policies_authentication_type),
    						Audiences:                pulumi.Any(_var.Deployment_specification_request_policies_authentication_audiences),
    						CacheKeys:                pulumi.Any(_var.Deployment_specification_request_policies_authentication_cache_key),
    						FunctionId:               pulumi.Any(oci_functions_function.Test_function.Id),
    						IsAnonymousAccessAllowed: pulumi.Any(_var.Deployment_specification_request_policies_authentication_is_anonymous_access_allowed),
    						Issuers:                  pulumi.Any(_var.Deployment_specification_request_policies_authentication_issuers),
    						MaxClockSkewInSeconds:    pulumi.Any(_var.Deployment_specification_request_policies_authentication_max_clock_skew_in_seconds),
    						Parameters:               pulumi.Any(_var.Deployment_specification_request_policies_authentication_parameters),
    						PublicKeys: &apigateway.DeploymentSpecificationRequestPoliciesAuthenticationPublicKeysArgs{
    							Type:                pulumi.Any(_var.Deployment_specification_request_policies_authentication_public_keys_type),
    							IsSslVerifyDisabled: pulumi.Any(_var.Deployment_specification_request_policies_authentication_public_keys_is_ssl_verify_disabled),
    							Keys: apigateway.DeploymentSpecificationRequestPoliciesAuthenticationPublicKeysKeyArray{
    								&apigateway.DeploymentSpecificationRequestPoliciesAuthenticationPublicKeysKeyArgs{
    									Format: pulumi.Any(_var.Deployment_specification_request_policies_authentication_public_keys_keys_format),
    									Alg:    pulumi.Any(_var.Deployment_specification_request_policies_authentication_public_keys_keys_alg),
    									E:      pulumi.Any(_var.Deployment_specification_request_policies_authentication_public_keys_keys_e),
    									Key:    pulumi.Any(_var.Deployment_specification_request_policies_authentication_public_keys_keys_key),
    									KeyOps: pulumi.Any(_var.Deployment_specification_request_policies_authentication_public_keys_keys_key_ops),
    									Kid:    pulumi.Any(_var.Deployment_specification_request_policies_authentication_public_keys_keys_kid),
    									Kty:    pulumi.Any(_var.Deployment_specification_request_policies_authentication_public_keys_keys_kty),
    									N:      pulumi.Any(_var.Deployment_specification_request_policies_authentication_public_keys_keys_n),
    									Use:    pulumi.Any(_var.Deployment_specification_request_policies_authentication_public_keys_keys_use),
    								},
    							},
    							MaxCacheDurationInHours: pulumi.Any(_var.Deployment_specification_request_policies_authentication_public_keys_max_cache_duration_in_hours),
    							Uri:                     pulumi.Any(_var.Deployment_specification_request_policies_authentication_public_keys_uri),
    						},
    						TokenAuthScheme: pulumi.Any(_var.Deployment_specification_request_policies_authentication_token_auth_scheme),
    						TokenHeader:     pulumi.Any(_var.Deployment_specification_request_policies_authentication_token_header),
    						TokenQueryParam: pulumi.Any(_var.Deployment_specification_request_policies_authentication_token_query_param),
    						ValidationFailurePolicy: &apigateway.DeploymentSpecificationRequestPoliciesAuthenticationValidationFailurePolicyArgs{
    							Type: pulumi.Any(_var.Deployment_specification_request_policies_authentication_validation_failure_policy_type),
    							ClientDetails: &apigateway.DeploymentSpecificationRequestPoliciesAuthenticationValidationFailurePolicyClientDetailsArgs{
    								Type:                      pulumi.Any(_var.Deployment_specification_request_policies_authentication_validation_failure_policy_client_details_type),
    								ClientId:                  pulumi.Any(oci_apigateway_client.Test_client.Id),
    								ClientSecretId:            pulumi.Any(oci_vault_secret.Test_secret.Id),
    								ClientSecretVersionNumber: pulumi.Any(_var.Deployment_specification_request_policies_authentication_validation_failure_policy_client_details_client_secret_version_number),
    							},
    							FallbackRedirectPath:     pulumi.Any(_var.Deployment_specification_request_policies_authentication_validation_failure_policy_fallback_redirect_path),
    							LogoutPath:               pulumi.Any(_var.Deployment_specification_request_policies_authentication_validation_failure_policy_logout_path),
    							MaxExpiryDurationInHours: pulumi.Any(_var.Deployment_specification_request_policies_authentication_validation_failure_policy_max_expiry_duration_in_hours),
    							ResponseCode:             pulumi.Any(_var.Deployment_specification_request_policies_authentication_validation_failure_policy_response_code),
    							ResponseHeaderTransformations: &apigateway.DeploymentSpecificationRequestPoliciesAuthenticationValidationFailurePolicyResponseHeaderTransformationsArgs{
    								FilterHeaders: &apigateway.DeploymentSpecificationRequestPoliciesAuthenticationValidationFailurePolicyResponseHeaderTransformationsFilterHeadersArgs{
    									Items: apigateway.DeploymentSpecificationRequestPoliciesAuthenticationValidationFailurePolicyResponseHeaderTransformationsFilterHeadersItemArray{
    										&apigateway.DeploymentSpecificationRequestPoliciesAuthenticationValidationFailurePolicyResponseHeaderTransformationsFilterHeadersItemArgs{
    											Name: pulumi.Any(_var.Deployment_specification_request_policies_authentication_validation_failure_policy_response_header_transformations_filter_headers_items_name),
    										},
    									},
    									Type: pulumi.Any(_var.Deployment_specification_request_policies_authentication_validation_failure_policy_response_header_transformations_filter_headers_type),
    								},
    								RenameHeaders: &apigateway.DeploymentSpecificationRequestPoliciesAuthenticationValidationFailurePolicyResponseHeaderTransformationsRenameHeadersArgs{
    									Items: apigateway.DeploymentSpecificationRequestPoliciesAuthenticationValidationFailurePolicyResponseHeaderTransformationsRenameHeadersItemArray{
    										&apigateway.DeploymentSpecificationRequestPoliciesAuthenticationValidationFailurePolicyResponseHeaderTransformationsRenameHeadersItemArgs{
    											From: pulumi.Any(_var.Deployment_specification_request_policies_authentication_validation_failure_policy_response_header_transformations_rename_headers_items_from),
    											To:   pulumi.Any(_var.Deployment_specification_request_policies_authentication_validation_failure_policy_response_header_transformations_rename_headers_items_to),
    										},
    									},
    								},
    								SetHeaders: &apigateway.DeploymentSpecificationRequestPoliciesAuthenticationValidationFailurePolicyResponseHeaderTransformationsSetHeadersArgs{
    									Items: apigateway.DeploymentSpecificationRequestPoliciesAuthenticationValidationFailurePolicyResponseHeaderTransformationsSetHeadersItemArray{
    										&apigateway.DeploymentSpecificationRequestPoliciesAuthenticationValidationFailurePolicyResponseHeaderTransformationsSetHeadersItemArgs{
    											IfExists: pulumi.Any(_var.Deployment_specification_request_policies_authentication_validation_failure_policy_response_header_transformations_set_headers_items_if_exists),
    											Name:     pulumi.Any(_var.Deployment_specification_request_policies_authentication_validation_failure_policy_response_header_transformations_set_headers_items_name),
    											Values:   pulumi.Any(_var.Deployment_specification_request_policies_authentication_validation_failure_policy_response_header_transformations_set_headers_items_values),
    										},
    									},
    								},
    							},
    							ResponseMessage: pulumi.Any(_var.Deployment_specification_request_policies_authentication_validation_failure_policy_response_message),
    							ResponseType:    pulumi.Any(_var.Deployment_specification_request_policies_authentication_validation_failure_policy_response_type),
    							Scopes:          pulumi.Any(_var.Deployment_specification_request_policies_authentication_validation_failure_policy_scopes),
    							SourceUriDetails: &apigateway.DeploymentSpecificationRequestPoliciesAuthenticationValidationFailurePolicySourceUriDetailsArgs{
    								Type: pulumi.Any(_var.Deployment_specification_request_policies_authentication_validation_failure_policy_source_uri_details_type),
    								Uri:  pulumi.Any(_var.Deployment_specification_request_policies_authentication_validation_failure_policy_source_uri_details_uri),
    							},
    							UseCookiesForIntermediateSteps: pulumi.Any(_var.Deployment_specification_request_policies_authentication_validation_failure_policy_use_cookies_for_intermediate_steps),
    							UseCookiesForSession:           pulumi.Any(_var.Deployment_specification_request_policies_authentication_validation_failure_policy_use_cookies_for_session),
    							UsePkce:                        pulumi.Any(_var.Deployment_specification_request_policies_authentication_validation_failure_policy_use_pkce),
    						},
    						ValidationPolicy: &apigateway.DeploymentSpecificationRequestPoliciesAuthenticationValidationPolicyArgs{
    							Type: pulumi.Any(_var.Deployment_specification_request_policies_authentication_validation_policy_type),
    							AdditionalValidationPolicy: &apigateway.DeploymentSpecificationRequestPoliciesAuthenticationValidationPolicyAdditionalValidationPolicyArgs{
    								Audiences: pulumi.Any(_var.Deployment_specification_request_policies_authentication_validation_policy_additional_validation_policy_audiences),
    								Issuers:   pulumi.Any(_var.Deployment_specification_request_policies_authentication_validation_policy_additional_validation_policy_issuers),
    								VerifyClaims: apigateway.DeploymentSpecificationRequestPoliciesAuthenticationValidationPolicyAdditionalValidationPolicyVerifyClaimArray{
    									&apigateway.DeploymentSpecificationRequestPoliciesAuthenticationValidationPolicyAdditionalValidationPolicyVerifyClaimArgs{
    										IsRequired: pulumi.Any(_var.Deployment_specification_request_policies_authentication_validation_policy_additional_validation_policy_verify_claims_is_required),
    										Key:        pulumi.Any(_var.Deployment_specification_request_policies_authentication_validation_policy_additional_validation_policy_verify_claims_key),
    										Values:     pulumi.Any(_var.Deployment_specification_request_policies_authentication_validation_policy_additional_validation_policy_verify_claims_values),
    									},
    								},
    							},
    							ClientDetails: &apigateway.DeploymentSpecificationRequestPoliciesAuthenticationValidationPolicyClientDetailsArgs{
    								Type:                      pulumi.Any(_var.Deployment_specification_request_policies_authentication_validation_policy_client_details_type),
    								ClientId:                  pulumi.Any(oci_apigateway_client.Test_client.Id),
    								ClientSecretId:            pulumi.Any(oci_vault_secret.Test_secret.Id),
    								ClientSecretVersionNumber: pulumi.Any(_var.Deployment_specification_request_policies_authentication_validation_policy_client_details_client_secret_version_number),
    							},
    							IsSslVerifyDisabled: pulumi.Any(_var.Deployment_specification_request_policies_authentication_validation_policy_is_ssl_verify_disabled),
    							Keys: apigateway.DeploymentSpecificationRequestPoliciesAuthenticationValidationPolicyKeyArray{
    								&apigateway.DeploymentSpecificationRequestPoliciesAuthenticationValidationPolicyKeyArgs{
    									Format: pulumi.Any(_var.Deployment_specification_request_policies_authentication_validation_policy_keys_format),
    									Alg:    pulumi.Any(_var.Deployment_specification_request_policies_authentication_validation_policy_keys_alg),
    									E:      pulumi.Any(_var.Deployment_specification_request_policies_authentication_validation_policy_keys_e),
    									Key:    pulumi.Any(_var.Deployment_specification_request_policies_authentication_validation_policy_keys_key),
    									KeyOps: pulumi.Any(_var.Deployment_specification_request_policies_authentication_validation_policy_keys_key_ops),
    									Kid:    pulumi.Any(_var.Deployment_specification_request_policies_authentication_validation_policy_keys_kid),
    									Kty:    pulumi.Any(_var.Deployment_specification_request_policies_authentication_validation_policy_keys_kty),
    									N:      pulumi.Any(_var.Deployment_specification_request_policies_authentication_validation_policy_keys_n),
    									Use:    pulumi.Any(_var.Deployment_specification_request_policies_authentication_validation_policy_keys_use),
    								},
    							},
    							MaxCacheDurationInHours: pulumi.Any(_var.Deployment_specification_request_policies_authentication_validation_policy_max_cache_duration_in_hours),
    							SourceUriDetails: &apigateway.DeploymentSpecificationRequestPoliciesAuthenticationValidationPolicySourceUriDetailsArgs{
    								Type: pulumi.Any(_var.Deployment_specification_request_policies_authentication_validation_policy_source_uri_details_type),
    								Uri:  pulumi.Any(_var.Deployment_specification_request_policies_authentication_validation_policy_source_uri_details_uri),
    							},
    							Uri: pulumi.Any(_var.Deployment_specification_request_policies_authentication_validation_policy_uri),
    						},
    						VerifyClaims: apigateway.DeploymentSpecificationRequestPoliciesAuthenticationVerifyClaimArray{
    							&apigateway.DeploymentSpecificationRequestPoliciesAuthenticationVerifyClaimArgs{
    								IsRequired: pulumi.Any(_var.Deployment_specification_request_policies_authentication_verify_claims_is_required),
    								Key:        pulumi.Any(_var.Deployment_specification_request_policies_authentication_verify_claims_key),
    								Values:     pulumi.Any(_var.Deployment_specification_request_policies_authentication_verify_claims_values),
    							},
    						},
    					},
    					Cors: &apigateway.DeploymentSpecificationRequestPoliciesCorsArgs{
    						AllowedOrigins:            pulumi.Any(_var.Deployment_specification_request_policies_cors_allowed_origins),
    						AllowedHeaders:            pulumi.Any(_var.Deployment_specification_request_policies_cors_allowed_headers),
    						AllowedMethods:            pulumi.Any(_var.Deployment_specification_request_policies_cors_allowed_methods),
    						ExposedHeaders:            pulumi.Any(_var.Deployment_specification_request_policies_cors_exposed_headers),
    						IsAllowCredentialsEnabled: pulumi.Any(_var.Deployment_specification_request_policies_cors_is_allow_credentials_enabled),
    						MaxAgeInSeconds:           pulumi.Any(_var.Deployment_specification_request_policies_cors_max_age_in_seconds),
    					},
    					DynamicAuthentication: &apigateway.DeploymentSpecificationRequestPoliciesDynamicAuthenticationArgs{
    						AuthenticationServers: apigateway.DeploymentSpecificationRequestPoliciesDynamicAuthenticationAuthenticationServerArray{
    							&apigateway.DeploymentSpecificationRequestPoliciesDynamicAuthenticationAuthenticationServerArgs{
    								AuthenticationServerDetail: &apigateway.DeploymentSpecificationRequestPoliciesDynamicAuthenticationAuthenticationServerAuthenticationServerDetailArgs{
    									Type:                     pulumi.Any(_var.Deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_type),
    									Audiences:                pulumi.Any(_var.Deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_audiences),
    									FunctionId:               pulumi.Any(oci_functions_function.Test_function.Id),
    									IsAnonymousAccessAllowed: pulumi.Any(_var.Deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_is_anonymous_access_allowed),
    									Issuers:                  pulumi.Any(_var.Deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_issuers),
    									MaxClockSkewInSeconds:    pulumi.Any(_var.Deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_max_clock_skew_in_seconds),
    									PublicKeys: &apigateway.DeploymentSpecificationRequestPoliciesDynamicAuthenticationAuthenticationServerAuthenticationServerDetailPublicKeysArgs{
    										Type:                pulumi.Any(_var.Deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_public_keys_type),
    										IsSslVerifyDisabled: pulumi.Any(_var.Deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_public_keys_is_ssl_verify_disabled),
    										Keys: apigateway.DeploymentSpecificationRequestPoliciesDynamicAuthenticationAuthenticationServerAuthenticationServerDetailPublicKeysKeyArray{
    											&apigateway.DeploymentSpecificationRequestPoliciesDynamicAuthenticationAuthenticationServerAuthenticationServerDetailPublicKeysKeyArgs{
    												Format: pulumi.Any(_var.Deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_public_keys_keys_format),
    												Alg:    pulumi.Any(_var.Deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_public_keys_keys_alg),
    												E:      pulumi.Any(_var.Deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_public_keys_keys_e),
    												Key:    pulumi.Any(_var.Deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_public_keys_keys_key),
    												KeyOps: pulumi.Any(_var.Deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_public_keys_keys_key_ops),
    												Kid:    pulumi.Any(_var.Deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_public_keys_keys_kid),
    												Kty:    pulumi.Any(_var.Deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_public_keys_keys_kty),
    												N:      pulumi.Any(_var.Deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_public_keys_keys_n),
    												Use:    pulumi.Any(_var.Deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_public_keys_keys_use),
    											},
    										},
    										MaxCacheDurationInHours: pulumi.Any(_var.Deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_public_keys_max_cache_duration_in_hours),
    										Uri:                     pulumi.Any(_var.Deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_public_keys_uri),
    									},
    									TokenAuthScheme: pulumi.Any(_var.Deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_token_auth_scheme),
    									TokenHeader:     pulumi.Any(_var.Deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_token_header),
    									TokenQueryParam: pulumi.Any(_var.Deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_token_query_param),
    									ValidationFailurePolicy: &apigateway.DeploymentSpecificationRequestPoliciesDynamicAuthenticationAuthenticationServerAuthenticationServerDetailValidationFailurePolicyArgs{
    										Type: pulumi.Any(_var.Deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_validation_failure_policy_type),
    										ClientDetails: &apigateway.DeploymentSpecificationRequestPoliciesDynamicAuthenticationAuthenticationServerAuthenticationServerDetailValidationFailurePolicyClientDetailsArgs{
    											Type:                      pulumi.Any(_var.Deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_validation_failure_policy_client_details_type),
    											ClientId:                  pulumi.Any(oci_apigateway_client.Test_client.Id),
    											ClientSecretId:            pulumi.Any(oci_vault_secret.Test_secret.Id),
    											ClientSecretVersionNumber: pulumi.Any(_var.Deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_validation_failure_policy_client_details_client_secret_version_number),
    										},
    										FallbackRedirectPath:     pulumi.Any(_var.Deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_validation_failure_policy_fallback_redirect_path),
    										LogoutPath:               pulumi.Any(_var.Deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_validation_failure_policy_logout_path),
    										MaxExpiryDurationInHours: pulumi.Any(_var.Deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_validation_failure_policy_max_expiry_duration_in_hours),
    										ResponseCode:             pulumi.Any(_var.Deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_validation_failure_policy_response_code),
    										ResponseHeaderTransformations: &apigateway.DeploymentSpecificationRequestPoliciesDynamicAuthenticationAuthenticationServerAuthenticationServerDetailValidationFailurePolicyResponseHeaderTransformationsArgs{
    											FilterHeaders: &apigateway.DeploymentSpecificationRequestPoliciesDynamicAuthenticationAuthenticationServerAuthenticationServerDetailValidationFailurePolicyResponseHeaderTransformationsFilterHeadersArgs{
    												Items: apigateway.DeploymentSpecificationRequestPoliciesDynamicAuthenticationAuthenticationServerAuthenticationServerDetailValidationFailurePolicyResponseHeaderTransformationsFilterHeadersItemArray{
    													&apigateway.DeploymentSpecificationRequestPoliciesDynamicAuthenticationAuthenticationServerAuthenticationServerDetailValidationFailurePolicyResponseHeaderTransformationsFilterHeadersItemArgs{
    														Name: pulumi.Any(_var.Deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_validation_failure_policy_response_header_transformations_filter_headers_items_name),
    													},
    												},
    												Type: pulumi.Any(_var.Deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_validation_failure_policy_response_header_transformations_filter_headers_type),
    											},
    											RenameHeaders: &apigateway.DeploymentSpecificationRequestPoliciesDynamicAuthenticationAuthenticationServerAuthenticationServerDetailValidationFailurePolicyResponseHeaderTransformationsRenameHeadersArgs{
    												Items: apigateway.DeploymentSpecificationRequestPoliciesDynamicAuthenticationAuthenticationServerAuthenticationServerDetailValidationFailurePolicyResponseHeaderTransformationsRenameHeadersItemArray{
    													&apigateway.DeploymentSpecificationRequestPoliciesDynamicAuthenticationAuthenticationServerAuthenticationServerDetailValidationFailurePolicyResponseHeaderTransformationsRenameHeadersItemArgs{
    														From: pulumi.Any(_var.Deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_validation_failure_policy_response_header_transformations_rename_headers_items_from),
    														To:   pulumi.Any(_var.Deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_validation_failure_policy_response_header_transformations_rename_headers_items_to),
    													},
    												},
    											},
    											SetHeaders: &apigateway.DeploymentSpecificationRequestPoliciesDynamicAuthenticationAuthenticationServerAuthenticationServerDetailValidationFailurePolicyResponseHeaderTransformationsSetHeadersArgs{
    												Items: apigateway.DeploymentSpecificationRequestPoliciesDynamicAuthenticationAuthenticationServerAuthenticationServerDetailValidationFailurePolicyResponseHeaderTransformationsSetHeadersItemArray{
    													&apigateway.DeploymentSpecificationRequestPoliciesDynamicAuthenticationAuthenticationServerAuthenticationServerDetailValidationFailurePolicyResponseHeaderTransformationsSetHeadersItemArgs{
    														IfExists: pulumi.Any(_var.Deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_validation_failure_policy_response_header_transformations_set_headers_items_if_exists),
    														Name:     pulumi.Any(_var.Deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_validation_failure_policy_response_header_transformations_set_headers_items_name),
    														Values:   pulumi.Any(_var.Deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_validation_failure_policy_response_header_transformations_set_headers_items_values),
    													},
    												},
    											},
    										},
    										ResponseMessage: pulumi.Any(_var.Deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_validation_failure_policy_response_message),
    										ResponseType:    pulumi.Any(_var.Deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_validation_failure_policy_response_type),
    										Scopes:          pulumi.Any(_var.Deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_validation_failure_policy_scopes),
    										SourceUriDetails: &apigateway.DeploymentSpecificationRequestPoliciesDynamicAuthenticationAuthenticationServerAuthenticationServerDetailValidationFailurePolicySourceUriDetailsArgs{
    											Type: pulumi.Any(_var.Deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_validation_failure_policy_source_uri_details_type),
    											Uri:  pulumi.Any(_var.Deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_validation_failure_policy_source_uri_details_uri),
    										},
    										UseCookiesForIntermediateSteps: pulumi.Any(_var.Deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_validation_failure_policy_use_cookies_for_intermediate_steps),
    										UseCookiesForSession:           pulumi.Any(_var.Deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_validation_failure_policy_use_cookies_for_session),
    										UsePkce:                        pulumi.Any(_var.Deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_validation_failure_policy_use_pkce),
    									},
    									ValidationPolicy: &apigateway.DeploymentSpecificationRequestPoliciesDynamicAuthenticationAuthenticationServerAuthenticationServerDetailValidationPolicyArgs{
    										Type: pulumi.Any(_var.Deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_validation_policy_type),
    										AdditionalValidationPolicy: &apigateway.DeploymentSpecificationRequestPoliciesDynamicAuthenticationAuthenticationServerAuthenticationServerDetailValidationPolicyAdditionalValidationPolicyArgs{
    											Audiences: pulumi.Any(_var.Deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_validation_policy_additional_validation_policy_audiences),
    											Issuers:   pulumi.Any(_var.Deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_validation_policy_additional_validation_policy_issuers),
    											VerifyClaims: apigateway.DeploymentSpecificationRequestPoliciesDynamicAuthenticationAuthenticationServerAuthenticationServerDetailValidationPolicyAdditionalValidationPolicyVerifyClaimArray{
    												&apigateway.DeploymentSpecificationRequestPoliciesDynamicAuthenticationAuthenticationServerAuthenticationServerDetailValidationPolicyAdditionalValidationPolicyVerifyClaimArgs{
    													IsRequired: pulumi.Any(_var.Deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_validation_policy_additional_validation_policy_verify_claims_is_required),
    													Key:        pulumi.Any(_var.Deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_validation_policy_additional_validation_policy_verify_claims_key),
    													Values:     pulumi.Any(_var.Deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_validation_policy_additional_validation_policy_verify_claims_values),
    												},
    											},
    										},
    										ClientDetails: &apigateway.DeploymentSpecificationRequestPoliciesDynamicAuthenticationAuthenticationServerAuthenticationServerDetailValidationPolicyClientDetailsArgs{
    											Type:                      pulumi.Any(_var.Deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_validation_policy_client_details_type),
    											ClientId:                  pulumi.Any(oci_apigateway_client.Test_client.Id),
    											ClientSecretId:            pulumi.Any(oci_vault_secret.Test_secret.Id),
    											ClientSecretVersionNumber: pulumi.Any(_var.Deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_validation_policy_client_details_client_secret_version_number),
    										},
    										IsSslVerifyDisabled: pulumi.Any(_var.Deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_validation_policy_is_ssl_verify_disabled),
    										Keys: apigateway.DeploymentSpecificationRequestPoliciesDynamicAuthenticationAuthenticationServerAuthenticationServerDetailValidationPolicyKeyArray{
    											&apigateway.DeploymentSpecificationRequestPoliciesDynamicAuthenticationAuthenticationServerAuthenticationServerDetailValidationPolicyKeyArgs{
    												Format: pulumi.Any(_var.Deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_validation_policy_keys_format),
    												Alg:    pulumi.Any(_var.Deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_validation_policy_keys_alg),
    												E:      pulumi.Any(_var.Deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_validation_policy_keys_e),
    												Key:    pulumi.Any(_var.Deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_validation_policy_keys_key),
    												KeyOps: pulumi.Any(_var.Deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_validation_policy_keys_key_ops),
    												Kid:    pulumi.Any(_var.Deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_validation_policy_keys_kid),
    												Kty:    pulumi.Any(_var.Deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_validation_policy_keys_kty),
    												N:      pulumi.Any(_var.Deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_validation_policy_keys_n),
    												Use:    pulumi.Any(_var.Deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_validation_policy_keys_use),
    											},
    										},
    										MaxCacheDurationInHours: pulumi.Any(_var.Deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_validation_policy_max_cache_duration_in_hours),
    										SourceUriDetails: &apigateway.DeploymentSpecificationRequestPoliciesDynamicAuthenticationAuthenticationServerAuthenticationServerDetailValidationPolicySourceUriDetailsArgs{
    											Type: pulumi.Any(_var.Deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_validation_policy_source_uri_details_type),
    											Uri:  pulumi.Any(_var.Deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_validation_policy_source_uri_details_uri),
    										},
    										Uri: pulumi.Any(_var.Deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_validation_policy_uri),
    									},
    									VerifyClaims: apigateway.DeploymentSpecificationRequestPoliciesDynamicAuthenticationAuthenticationServerAuthenticationServerDetailVerifyClaimArray{
    										&apigateway.DeploymentSpecificationRequestPoliciesDynamicAuthenticationAuthenticationServerAuthenticationServerDetailVerifyClaimArgs{
    											IsRequired: pulumi.Any(_var.Deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_verify_claims_is_required),
    											Key:        pulumi.Any(_var.Deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_verify_claims_key),
    											Values:     pulumi.Any(_var.Deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_verify_claims_values),
    										},
    									},
    								},
    								Key: &apigateway.DeploymentSpecificationRequestPoliciesDynamicAuthenticationAuthenticationServerKeyArgs{
    									Name:       pulumi.Any(_var.Deployment_specification_request_policies_dynamic_authentication_authentication_servers_key_name),
    									Expression: pulumi.Any(_var.Deployment_specification_request_policies_dynamic_authentication_authentication_servers_key_expression),
    									IsDefault:  pulumi.Any(_var.Deployment_specification_request_policies_dynamic_authentication_authentication_servers_key_is_default),
    									Type:       pulumi.Any(_var.Deployment_specification_request_policies_dynamic_authentication_authentication_servers_key_type),
    									Values:     pulumi.Any(_var.Deployment_specification_request_policies_dynamic_authentication_authentication_servers_key_values),
    								},
    							},
    						},
    						SelectionSource: &apigateway.DeploymentSpecificationRequestPoliciesDynamicAuthenticationSelectionSourceArgs{
    							Selector: pulumi.Any(_var.Deployment_specification_request_policies_dynamic_authentication_selection_source_selector),
    							Type:     pulumi.Any(_var.Deployment_specification_request_policies_dynamic_authentication_selection_source_type),
    						},
    					},
    					MutualTls: &apigateway.DeploymentSpecificationRequestPoliciesMutualTlsArgs{
    						AllowedSans:                   pulumi.Any(_var.Deployment_specification_request_policies_mutual_tls_allowed_sans),
    						IsVerifiedCertificateRequired: pulumi.Any(_var.Deployment_specification_request_policies_mutual_tls_is_verified_certificate_required),
    					},
    					RateLimiting: &apigateway.DeploymentSpecificationRequestPoliciesRateLimitingArgs{
    						RateInRequestsPerSecond: pulumi.Any(_var.Deployment_specification_request_policies_rate_limiting_rate_in_requests_per_second),
    						RateKey:                 pulumi.Any(_var.Deployment_specification_request_policies_rate_limiting_rate_key),
    					},
    					UsagePlans: &apigateway.DeploymentSpecificationRequestPoliciesUsagePlansArgs{
    						TokenLocations: pulumi.Any(_var.Deployment_specification_request_policies_usage_plans_token_locations),
    					},
    				},
    				Routes: apigateway.DeploymentSpecificationRouteArray{
    					&apigateway.DeploymentSpecificationRouteArgs{
    						Backend: &apigateway.DeploymentSpecificationRouteBackendArgs{
    							Type:                    pulumi.Any(_var.Deployment_specification_routes_backend_type),
    							AllowedPostLogoutUris:   pulumi.Any(_var.Deployment_specification_routes_backend_allowed_post_logout_uris),
    							Body:                    pulumi.Any(_var.Deployment_specification_routes_backend_body),
    							ConnectTimeoutInSeconds: pulumi.Any(_var.Deployment_specification_routes_backend_connect_timeout_in_seconds),
    							FunctionId:              pulumi.Any(oci_functions_function.Test_function.Id),
    							Headers: apigateway.DeploymentSpecificationRouteBackendHeaderArray{
    								&apigateway.DeploymentSpecificationRouteBackendHeaderArgs{
    									Name:  pulumi.Any(_var.Deployment_specification_routes_backend_headers_name),
    									Value: pulumi.Any(_var.Deployment_specification_routes_backend_headers_value),
    								},
    							},
    							IsSslVerifyDisabled:  pulumi.Any(_var.Deployment_specification_routes_backend_is_ssl_verify_disabled),
    							PostLogoutState:      pulumi.Any(_var.Deployment_specification_routes_backend_post_logout_state),
    							ReadTimeoutInSeconds: pulumi.Any(_var.Deployment_specification_routes_backend_read_timeout_in_seconds),
    							RoutingBackends: apigateway.DeploymentSpecificationRouteBackendRoutingBackendArray{
    								&apigateway.DeploymentSpecificationRouteBackendRoutingBackendArgs{
    									Backend: &apigateway.DeploymentSpecificationRouteBackendRoutingBackendBackendArgs{
    										Type:                    pulumi.Any(_var.Deployment_specification_routes_backend_routing_backends_backend_type),
    										Body:                    pulumi.Any(_var.Deployment_specification_routes_backend_routing_backends_backend_body),
    										ConnectTimeoutInSeconds: pulumi.Any(_var.Deployment_specification_routes_backend_routing_backends_backend_connect_timeout_in_seconds),
    										FunctionId:              pulumi.Any(oci_functions_function.Test_function.Id),
    										Headers: apigateway.DeploymentSpecificationRouteBackendRoutingBackendBackendHeaderArray{
    											&apigateway.DeploymentSpecificationRouteBackendRoutingBackendBackendHeaderArgs{
    												Name:  pulumi.Any(_var.Deployment_specification_routes_backend_routing_backends_backend_headers_name),
    												Value: pulumi.Any(_var.Deployment_specification_routes_backend_routing_backends_backend_headers_value),
    											},
    										},
    										IsSslVerifyDisabled:  pulumi.Any(_var.Deployment_specification_routes_backend_routing_backends_backend_is_ssl_verify_disabled),
    										ReadTimeoutInSeconds: pulumi.Any(_var.Deployment_specification_routes_backend_routing_backends_backend_read_timeout_in_seconds),
    										SendTimeoutInSeconds: pulumi.Any(_var.Deployment_specification_routes_backend_routing_backends_backend_send_timeout_in_seconds),
    										Status:               pulumi.Any(_var.Deployment_specification_routes_backend_routing_backends_backend_status),
    										Url:                  pulumi.Any(_var.Deployment_specification_routes_backend_routing_backends_backend_url),
    									},
    									Key: &apigateway.DeploymentSpecificationRouteBackendRoutingBackendKeyArgs{
    										Name:       pulumi.Any(_var.Deployment_specification_routes_backend_routing_backends_key_name),
    										Type:       pulumi.Any(_var.Deployment_specification_request_policies_dynamic_authentication_authentication_servers_key_type),
    										Expression: pulumi.Any(_var.Deployment_specification_request_policies_dynamic_authentication_authentication_servers_key_expression),
    										IsDefault:  pulumi.Any(_var.Deployment_specification_request_policies_dynamic_authentication_authentication_servers_key_is_default),
    										Values:     pulumi.Any(_var.Deployment_specification_request_policies_dynamic_authentication_authentication_servers_key_values),
    									},
    								},
    							},
    							SelectionSource: &apigateway.DeploymentSpecificationRouteBackendSelectionSourceArgs{
    								Selector: pulumi.Any(_var.Deployment_specification_routes_backend_selection_source_selector),
    								Type:     pulumi.Any(_var.Deployment_specification_routes_backend_selection_source_type),
    							},
    							SendTimeoutInSeconds: pulumi.Any(_var.Deployment_specification_routes_backend_send_timeout_in_seconds),
    							Status:               pulumi.Any(_var.Deployment_specification_routes_backend_status),
    							Url:                  pulumi.Any(_var.Deployment_specification_routes_backend_url),
    						},
    						Path: pulumi.Any(_var.Deployment_specification_routes_path),
    						LoggingPolicies: &apigateway.DeploymentSpecificationRouteLoggingPoliciesArgs{
    							AccessLog: &apigateway.DeploymentSpecificationRouteLoggingPoliciesAccessLogArgs{
    								IsEnabled: pulumi.Any(_var.Deployment_specification_routes_logging_policies_access_log_is_enabled),
    							},
    							ExecutionLog: &apigateway.DeploymentSpecificationRouteLoggingPoliciesExecutionLogArgs{
    								IsEnabled: pulumi.Any(_var.Deployment_specification_routes_logging_policies_execution_log_is_enabled),
    								LogLevel:  pulumi.Any(_var.Deployment_specification_routes_logging_policies_execution_log_log_level),
    							},
    						},
    						Methods: pulumi.Any(_var.Deployment_specification_routes_methods),
    						RequestPolicies: &apigateway.DeploymentSpecificationRouteRequestPoliciesArgs{
    							Authorization: &apigateway.DeploymentSpecificationRouteRequestPoliciesAuthorizationArgs{
    								AllowedScopes: pulumi.Any(_var.Deployment_specification_routes_request_policies_authorization_allowed_scope),
    								Type:          pulumi.Any(_var.Deployment_specification_routes_request_policies_authorization_type),
    							},
    							BodyValidation: &apigateway.DeploymentSpecificationRouteRequestPoliciesBodyValidationArgs{
    								Contents: apigateway.DeploymentSpecificationRouteRequestPoliciesBodyValidationContentArray{
    									&apigateway.DeploymentSpecificationRouteRequestPoliciesBodyValidationContentArgs{
    										MediaType:      pulumi.Any(_var.Deployment_specification_routes_request_policies_body_validation_content_media_type),
    										ValidationType: pulumi.Any(_var.Deployment_specification_routes_request_policies_body_validation_content_validation_type),
    									},
    								},
    								Required:       pulumi.Any(_var.Deployment_specification_routes_request_policies_body_validation_required),
    								ValidationMode: pulumi.Any(_var.Deployment_specification_routes_request_policies_body_validation_validation_mode),
    							},
    							Cors: &apigateway.DeploymentSpecificationRouteRequestPoliciesCorsArgs{
    								AllowedOrigins:            pulumi.Any(_var.Deployment_specification_routes_request_policies_cors_allowed_origins),
    								AllowedHeaders:            pulumi.Any(_var.Deployment_specification_routes_request_policies_cors_allowed_headers),
    								AllowedMethods:            pulumi.Any(_var.Deployment_specification_routes_request_policies_cors_allowed_methods),
    								ExposedHeaders:            pulumi.Any(_var.Deployment_specification_routes_request_policies_cors_exposed_headers),
    								IsAllowCredentialsEnabled: pulumi.Any(_var.Deployment_specification_routes_request_policies_cors_is_allow_credentials_enabled),
    								MaxAgeInSeconds:           pulumi.Any(_var.Deployment_specification_routes_request_policies_cors_max_age_in_seconds),
    							},
    							HeaderTransformations: &apigateway.DeploymentSpecificationRouteRequestPoliciesHeaderTransformationsArgs{
    								FilterHeaders: &apigateway.DeploymentSpecificationRouteRequestPoliciesHeaderTransformationsFilterHeadersArgs{
    									Items: apigateway.DeploymentSpecificationRouteRequestPoliciesHeaderTransformationsFilterHeadersItemArray{
    										&apigateway.DeploymentSpecificationRouteRequestPoliciesHeaderTransformationsFilterHeadersItemArgs{
    											Name: pulumi.Any(_var.Deployment_specification_routes_request_policies_header_transformations_filter_headers_items_name),
    										},
    									},
    									Type: pulumi.Any(_var.Deployment_specification_routes_request_policies_header_transformations_filter_headers_type),
    								},
    								RenameHeaders: &apigateway.DeploymentSpecificationRouteRequestPoliciesHeaderTransformationsRenameHeadersArgs{
    									Items: apigateway.DeploymentSpecificationRouteRequestPoliciesHeaderTransformationsRenameHeadersItemArray{
    										&apigateway.DeploymentSpecificationRouteRequestPoliciesHeaderTransformationsRenameHeadersItemArgs{
    											From: pulumi.Any(_var.Deployment_specification_routes_request_policies_header_transformations_rename_headers_items_from),
    											To:   pulumi.Any(_var.Deployment_specification_routes_request_policies_header_transformations_rename_headers_items_to),
    										},
    									},
    								},
    								SetHeaders: &apigateway.DeploymentSpecificationRouteRequestPoliciesHeaderTransformationsSetHeadersArgs{
    									Items: apigateway.DeploymentSpecificationRouteRequestPoliciesHeaderTransformationsSetHeadersItemArray{
    										&apigateway.DeploymentSpecificationRouteRequestPoliciesHeaderTransformationsSetHeadersItemArgs{
    											Name:     pulumi.Any(_var.Deployment_specification_routes_request_policies_header_transformations_set_headers_items_name),
    											Values:   pulumi.Any(_var.Deployment_specification_routes_request_policies_header_transformations_set_headers_items_values),
    											IfExists: pulumi.Any(_var.Deployment_specification_routes_request_policies_header_transformations_set_headers_items_if_exists),
    										},
    									},
    								},
    							},
    							HeaderValidations: &apigateway.DeploymentSpecificationRouteRequestPoliciesHeaderValidationsArgs{
    								Headers: apigateway.DeploymentSpecificationRouteRequestPoliciesHeaderValidationsHeaderArray{
    									&apigateway.DeploymentSpecificationRouteRequestPoliciesHeaderValidationsHeaderArgs{
    										Name:     pulumi.Any(_var.Deployment_specification_routes_request_policies_header_validations_headers_name),
    										Required: pulumi.Any(_var.Deployment_specification_routes_request_policies_header_validations_headers_required),
    									},
    								},
    								ValidationMode: pulumi.Any(_var.Deployment_specification_routes_request_policies_header_validations_validation_mode),
    							},
    							QueryParameterTransformations: &apigateway.DeploymentSpecificationRouteRequestPoliciesQueryParameterTransformationsArgs{
    								FilterQueryParameters: &apigateway.DeploymentSpecificationRouteRequestPoliciesQueryParameterTransformationsFilterQueryParametersArgs{
    									Items: apigateway.DeploymentSpecificationRouteRequestPoliciesQueryParameterTransformationsFilterQueryParametersItemArray{
    										&apigateway.DeploymentSpecificationRouteRequestPoliciesQueryParameterTransformationsFilterQueryParametersItemArgs{
    											Name: pulumi.Any(_var.Deployment_specification_routes_request_policies_query_parameter_transformations_filter_query_parameters_items_name),
    										},
    									},
    									Type: pulumi.Any(_var.Deployment_specification_routes_request_policies_query_parameter_transformations_filter_query_parameters_type),
    								},
    								RenameQueryParameters: &apigateway.DeploymentSpecificationRouteRequestPoliciesQueryParameterTransformationsRenameQueryParametersArgs{
    									Items: apigateway.DeploymentSpecificationRouteRequestPoliciesQueryParameterTransformationsRenameQueryParametersItemArray{
    										&apigateway.DeploymentSpecificationRouteRequestPoliciesQueryParameterTransformationsRenameQueryParametersItemArgs{
    											From: pulumi.Any(_var.Deployment_specification_routes_request_policies_query_parameter_transformations_rename_query_parameters_items_from),
    											To:   pulumi.Any(_var.Deployment_specification_routes_request_policies_query_parameter_transformations_rename_query_parameters_items_to),
    										},
    									},
    								},
    								SetQueryParameters: &apigateway.DeploymentSpecificationRouteRequestPoliciesQueryParameterTransformationsSetQueryParametersArgs{
    									Items: apigateway.DeploymentSpecificationRouteRequestPoliciesQueryParameterTransformationsSetQueryParametersItemArray{
    										&apigateway.DeploymentSpecificationRouteRequestPoliciesQueryParameterTransformationsSetQueryParametersItemArgs{
    											Name:     pulumi.Any(_var.Deployment_specification_routes_request_policies_query_parameter_transformations_set_query_parameters_items_name),
    											Values:   pulumi.Any(_var.Deployment_specification_routes_request_policies_query_parameter_transformations_set_query_parameters_items_values),
    											IfExists: pulumi.Any(_var.Deployment_specification_routes_request_policies_query_parameter_transformations_set_query_parameters_items_if_exists),
    										},
    									},
    								},
    							},
    							QueryParameterValidations: &apigateway.DeploymentSpecificationRouteRequestPoliciesQueryParameterValidationsArgs{
    								Parameters: apigateway.DeploymentSpecificationRouteRequestPoliciesQueryParameterValidationsParameterArray{
    									&apigateway.DeploymentSpecificationRouteRequestPoliciesQueryParameterValidationsParameterArgs{
    										Name:     pulumi.Any(_var.Deployment_specification_routes_request_policies_query_parameter_validations_parameters_name),
    										Required: pulumi.Any(_var.Deployment_specification_routes_request_policies_query_parameter_validations_parameters_required),
    									},
    								},
    								ValidationMode: pulumi.Any(_var.Deployment_specification_routes_request_policies_query_parameter_validations_validation_mode),
    							},
    							ResponseCacheLookup: &apigateway.DeploymentSpecificationRouteRequestPoliciesResponseCacheLookupArgs{
    								Type:                    pulumi.Any(_var.Deployment_specification_routes_request_policies_response_cache_lookup_type),
    								CacheKeyAdditions:       pulumi.Any(_var.Deployment_specification_routes_request_policies_response_cache_lookup_cache_key_additions),
    								IsEnabled:               pulumi.Any(_var.Deployment_specification_routes_request_policies_response_cache_lookup_is_enabled),
    								IsPrivateCachingEnabled: pulumi.Any(_var.Deployment_specification_routes_request_policies_response_cache_lookup_is_private_caching_enabled),
    							},
    						},
    						ResponsePolicies: &apigateway.DeploymentSpecificationRouteResponsePoliciesArgs{
    							HeaderTransformations: &apigateway.DeploymentSpecificationRouteResponsePoliciesHeaderTransformationsArgs{
    								FilterHeaders: &apigateway.DeploymentSpecificationRouteResponsePoliciesHeaderTransformationsFilterHeadersArgs{
    									Items: apigateway.DeploymentSpecificationRouteResponsePoliciesHeaderTransformationsFilterHeadersItemArray{
    										&apigateway.DeploymentSpecificationRouteResponsePoliciesHeaderTransformationsFilterHeadersItemArgs{
    											Name: pulumi.Any(_var.Deployment_specification_routes_response_policies_header_transformations_filter_headers_items_name),
    										},
    									},
    									Type: pulumi.Any(_var.Deployment_specification_routes_response_policies_header_transformations_filter_headers_type),
    								},
    								RenameHeaders: &apigateway.DeploymentSpecificationRouteResponsePoliciesHeaderTransformationsRenameHeadersArgs{
    									Items: apigateway.DeploymentSpecificationRouteResponsePoliciesHeaderTransformationsRenameHeadersItemArray{
    										&apigateway.DeploymentSpecificationRouteResponsePoliciesHeaderTransformationsRenameHeadersItemArgs{
    											From: pulumi.Any(_var.Deployment_specification_routes_response_policies_header_transformations_rename_headers_items_from),
    											To:   pulumi.Any(_var.Deployment_specification_routes_response_policies_header_transformations_rename_headers_items_to),
    										},
    									},
    								},
    								SetHeaders: &apigateway.DeploymentSpecificationRouteResponsePoliciesHeaderTransformationsSetHeadersArgs{
    									Items: apigateway.DeploymentSpecificationRouteResponsePoliciesHeaderTransformationsSetHeadersItemArray{
    										&apigateway.DeploymentSpecificationRouteResponsePoliciesHeaderTransformationsSetHeadersItemArgs{
    											Name:     pulumi.Any(_var.Deployment_specification_routes_response_policies_header_transformations_set_headers_items_name),
    											Values:   pulumi.Any(_var.Deployment_specification_routes_response_policies_header_transformations_set_headers_items_values),
    											IfExists: pulumi.Any(_var.Deployment_specification_routes_response_policies_header_transformations_set_headers_items_if_exists),
    										},
    									},
    								},
    							},
    							ResponseCacheStore: &apigateway.DeploymentSpecificationRouteResponsePoliciesResponseCacheStoreArgs{
    								TimeToLiveInSeconds: pulumi.Any(_var.Deployment_specification_routes_response_policies_response_cache_store_time_to_live_in_seconds),
    								Type:                pulumi.Any(_var.Deployment_specification_routes_response_policies_response_cache_store_type),
    							},
    						},
    					},
    				},
    			},
    			DefinedTags: pulumi.Map{
    				"Operations.CostCenter": pulumi.Any("42"),
    			},
    			DisplayName: pulumi.Any(_var.Deployment_display_name),
    			FreeformTags: pulumi.Map{
    				"Department": pulumi.Any("Finance"),
    			},
    		})
    		if err != nil {
    			return err
    		}
    		return nil
    	})
    }
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import com.pulumi.oci.ApiGateway.Deployment;
    import com.pulumi.oci.ApiGateway.DeploymentArgs;
    import com.pulumi.oci.ApiGateway.inputs.DeploymentSpecificationArgs;
    import com.pulumi.oci.ApiGateway.inputs.DeploymentSpecificationLoggingPoliciesArgs;
    import com.pulumi.oci.ApiGateway.inputs.DeploymentSpecificationLoggingPoliciesAccessLogArgs;
    import com.pulumi.oci.ApiGateway.inputs.DeploymentSpecificationLoggingPoliciesExecutionLogArgs;
    import com.pulumi.oci.ApiGateway.inputs.DeploymentSpecificationRequestPoliciesArgs;
    import com.pulumi.oci.ApiGateway.inputs.DeploymentSpecificationRequestPoliciesAuthenticationArgs;
    import com.pulumi.oci.ApiGateway.inputs.DeploymentSpecificationRequestPoliciesAuthenticationPublicKeysArgs;
    import com.pulumi.oci.ApiGateway.inputs.DeploymentSpecificationRequestPoliciesAuthenticationValidationFailurePolicyArgs;
    import com.pulumi.oci.ApiGateway.inputs.DeploymentSpecificationRequestPoliciesAuthenticationValidationFailurePolicyClientDetailsArgs;
    import com.pulumi.oci.ApiGateway.inputs.DeploymentSpecificationRequestPoliciesAuthenticationValidationFailurePolicyResponseHeaderTransformationsArgs;
    import com.pulumi.oci.ApiGateway.inputs.DeploymentSpecificationRequestPoliciesAuthenticationValidationFailurePolicyResponseHeaderTransformationsFilterHeadersArgs;
    import com.pulumi.oci.ApiGateway.inputs.DeploymentSpecificationRequestPoliciesAuthenticationValidationFailurePolicyResponseHeaderTransformationsRenameHeadersArgs;
    import com.pulumi.oci.ApiGateway.inputs.DeploymentSpecificationRequestPoliciesAuthenticationValidationFailurePolicyResponseHeaderTransformationsSetHeadersArgs;
    import com.pulumi.oci.ApiGateway.inputs.DeploymentSpecificationRequestPoliciesAuthenticationValidationFailurePolicySourceUriDetailsArgs;
    import com.pulumi.oci.ApiGateway.inputs.DeploymentSpecificationRequestPoliciesAuthenticationValidationPolicyArgs;
    import com.pulumi.oci.ApiGateway.inputs.DeploymentSpecificationRequestPoliciesAuthenticationValidationPolicyAdditionalValidationPolicyArgs;
    import com.pulumi.oci.ApiGateway.inputs.DeploymentSpecificationRequestPoliciesAuthenticationValidationPolicyClientDetailsArgs;
    import com.pulumi.oci.ApiGateway.inputs.DeploymentSpecificationRequestPoliciesAuthenticationValidationPolicySourceUriDetailsArgs;
    import com.pulumi.oci.ApiGateway.inputs.DeploymentSpecificationRequestPoliciesCorsArgs;
    import com.pulumi.oci.ApiGateway.inputs.DeploymentSpecificationRequestPoliciesDynamicAuthenticationArgs;
    import com.pulumi.oci.ApiGateway.inputs.DeploymentSpecificationRequestPoliciesDynamicAuthenticationSelectionSourceArgs;
    import com.pulumi.oci.ApiGateway.inputs.DeploymentSpecificationRequestPoliciesMutualTlsArgs;
    import com.pulumi.oci.ApiGateway.inputs.DeploymentSpecificationRequestPoliciesRateLimitingArgs;
    import com.pulumi.oci.ApiGateway.inputs.DeploymentSpecificationRequestPoliciesUsagePlansArgs;
    import java.util.List;
    import java.util.ArrayList;
    import java.util.Map;
    import java.io.File;
    import java.nio.file.Files;
    import java.nio.file.Paths;
    
    public class App {
        public static void main(String[] args) {
            Pulumi.run(App::stack);
        }
    
        public static void stack(Context ctx) {
            var testDeployment = new Deployment("testDeployment", DeploymentArgs.builder()        
                .compartmentId(var_.compartment_id())
                .gatewayId(oci_apigateway_gateway.test_gateway().id())
                .pathPrefix(var_.deployment_path_prefix())
                .specification(DeploymentSpecificationArgs.builder()
                    .loggingPolicies(DeploymentSpecificationLoggingPoliciesArgs.builder()
                        .accessLog(DeploymentSpecificationLoggingPoliciesAccessLogArgs.builder()
                            .isEnabled(var_.deployment_specification_logging_policies_access_log_is_enabled())
                            .build())
                        .executionLog(DeploymentSpecificationLoggingPoliciesExecutionLogArgs.builder()
                            .isEnabled(var_.deployment_specification_logging_policies_execution_log_is_enabled())
                            .logLevel(var_.deployment_specification_logging_policies_execution_log_log_level())
                            .build())
                        .build())
                    .requestPolicies(DeploymentSpecificationRequestPoliciesArgs.builder()
                        .authentication(DeploymentSpecificationRequestPoliciesAuthenticationArgs.builder()
                            .type(var_.deployment_specification_request_policies_authentication_type())
                            .audiences(var_.deployment_specification_request_policies_authentication_audiences())
                            .cacheKeys(var_.deployment_specification_request_policies_authentication_cache_key())
                            .functionId(oci_functions_function.test_function().id())
                            .isAnonymousAccessAllowed(var_.deployment_specification_request_policies_authentication_is_anonymous_access_allowed())
                            .issuers(var_.deployment_specification_request_policies_authentication_issuers())
                            .maxClockSkewInSeconds(var_.deployment_specification_request_policies_authentication_max_clock_skew_in_seconds())
                            .parameters(var_.deployment_specification_request_policies_authentication_parameters())
                            .publicKeys(DeploymentSpecificationRequestPoliciesAuthenticationPublicKeysArgs.builder()
                                .type(var_.deployment_specification_request_policies_authentication_public_keys_type())
                                .isSslVerifyDisabled(var_.deployment_specification_request_policies_authentication_public_keys_is_ssl_verify_disabled())
                                .keys(DeploymentSpecificationRequestPoliciesAuthenticationPublicKeysKeyArgs.builder()
                                    .format(var_.deployment_specification_request_policies_authentication_public_keys_keys_format())
                                    .alg(var_.deployment_specification_request_policies_authentication_public_keys_keys_alg())
                                    .e(var_.deployment_specification_request_policies_authentication_public_keys_keys_e())
                                    .key(var_.deployment_specification_request_policies_authentication_public_keys_keys_key())
                                    .keyOps(var_.deployment_specification_request_policies_authentication_public_keys_keys_key_ops())
                                    .kid(var_.deployment_specification_request_policies_authentication_public_keys_keys_kid())
                                    .kty(var_.deployment_specification_request_policies_authentication_public_keys_keys_kty())
                                    .n(var_.deployment_specification_request_policies_authentication_public_keys_keys_n())
                                    .use(var_.deployment_specification_request_policies_authentication_public_keys_keys_use())
                                    .build())
                                .maxCacheDurationInHours(var_.deployment_specification_request_policies_authentication_public_keys_max_cache_duration_in_hours())
                                .uri(var_.deployment_specification_request_policies_authentication_public_keys_uri())
                                .build())
                            .tokenAuthScheme(var_.deployment_specification_request_policies_authentication_token_auth_scheme())
                            .tokenHeader(var_.deployment_specification_request_policies_authentication_token_header())
                            .tokenQueryParam(var_.deployment_specification_request_policies_authentication_token_query_param())
                            .validationFailurePolicy(DeploymentSpecificationRequestPoliciesAuthenticationValidationFailurePolicyArgs.builder()
                                .type(var_.deployment_specification_request_policies_authentication_validation_failure_policy_type())
                                .clientDetails(DeploymentSpecificationRequestPoliciesAuthenticationValidationFailurePolicyClientDetailsArgs.builder()
                                    .type(var_.deployment_specification_request_policies_authentication_validation_failure_policy_client_details_type())
                                    .clientId(oci_apigateway_client.test_client().id())
                                    .clientSecretId(oci_vault_secret.test_secret().id())
                                    .clientSecretVersionNumber(var_.deployment_specification_request_policies_authentication_validation_failure_policy_client_details_client_secret_version_number())
                                    .build())
                                .fallbackRedirectPath(var_.deployment_specification_request_policies_authentication_validation_failure_policy_fallback_redirect_path())
                                .logoutPath(var_.deployment_specification_request_policies_authentication_validation_failure_policy_logout_path())
                                .maxExpiryDurationInHours(var_.deployment_specification_request_policies_authentication_validation_failure_policy_max_expiry_duration_in_hours())
                                .responseCode(var_.deployment_specification_request_policies_authentication_validation_failure_policy_response_code())
                                .responseHeaderTransformations(DeploymentSpecificationRequestPoliciesAuthenticationValidationFailurePolicyResponseHeaderTransformationsArgs.builder()
                                    .filterHeaders(DeploymentSpecificationRequestPoliciesAuthenticationValidationFailurePolicyResponseHeaderTransformationsFilterHeadersArgs.builder()
                                        .items(DeploymentSpecificationRequestPoliciesAuthenticationValidationFailurePolicyResponseHeaderTransformationsFilterHeadersItemArgs.builder()
                                            .name(var_.deployment_specification_request_policies_authentication_validation_failure_policy_response_header_transformations_filter_headers_items_name())
                                            .build())
                                        .type(var_.deployment_specification_request_policies_authentication_validation_failure_policy_response_header_transformations_filter_headers_type())
                                        .build())
                                    .renameHeaders(DeploymentSpecificationRequestPoliciesAuthenticationValidationFailurePolicyResponseHeaderTransformationsRenameHeadersArgs.builder()
                                        .items(DeploymentSpecificationRequestPoliciesAuthenticationValidationFailurePolicyResponseHeaderTransformationsRenameHeadersItemArgs.builder()
                                            .from(var_.deployment_specification_request_policies_authentication_validation_failure_policy_response_header_transformations_rename_headers_items_from())
                                            .to(var_.deployment_specification_request_policies_authentication_validation_failure_policy_response_header_transformations_rename_headers_items_to())
                                            .build())
                                        .build())
                                    .setHeaders(DeploymentSpecificationRequestPoliciesAuthenticationValidationFailurePolicyResponseHeaderTransformationsSetHeadersArgs.builder()
                                        .items(DeploymentSpecificationRequestPoliciesAuthenticationValidationFailurePolicyResponseHeaderTransformationsSetHeadersItemArgs.builder()
                                            .ifExists(var_.deployment_specification_request_policies_authentication_validation_failure_policy_response_header_transformations_set_headers_items_if_exists())
                                            .name(var_.deployment_specification_request_policies_authentication_validation_failure_policy_response_header_transformations_set_headers_items_name())
                                            .values(var_.deployment_specification_request_policies_authentication_validation_failure_policy_response_header_transformations_set_headers_items_values())
                                            .build())
                                        .build())
                                    .build())
                                .responseMessage(var_.deployment_specification_request_policies_authentication_validation_failure_policy_response_message())
                                .responseType(var_.deployment_specification_request_policies_authentication_validation_failure_policy_response_type())
                                .scopes(var_.deployment_specification_request_policies_authentication_validation_failure_policy_scopes())
                                .sourceUriDetails(DeploymentSpecificationRequestPoliciesAuthenticationValidationFailurePolicySourceUriDetailsArgs.builder()
                                    .type(var_.deployment_specification_request_policies_authentication_validation_failure_policy_source_uri_details_type())
                                    .uri(var_.deployment_specification_request_policies_authentication_validation_failure_policy_source_uri_details_uri())
                                    .build())
                                .useCookiesForIntermediateSteps(var_.deployment_specification_request_policies_authentication_validation_failure_policy_use_cookies_for_intermediate_steps())
                                .useCookiesForSession(var_.deployment_specification_request_policies_authentication_validation_failure_policy_use_cookies_for_session())
                                .usePkce(var_.deployment_specification_request_policies_authentication_validation_failure_policy_use_pkce())
                                .build())
                            .validationPolicy(DeploymentSpecificationRequestPoliciesAuthenticationValidationPolicyArgs.builder()
                                .type(var_.deployment_specification_request_policies_authentication_validation_policy_type())
                                .additionalValidationPolicy(DeploymentSpecificationRequestPoliciesAuthenticationValidationPolicyAdditionalValidationPolicyArgs.builder()
                                    .audiences(var_.deployment_specification_request_policies_authentication_validation_policy_additional_validation_policy_audiences())
                                    .issuers(var_.deployment_specification_request_policies_authentication_validation_policy_additional_validation_policy_issuers())
                                    .verifyClaims(DeploymentSpecificationRequestPoliciesAuthenticationValidationPolicyAdditionalValidationPolicyVerifyClaimArgs.builder()
                                        .isRequired(var_.deployment_specification_request_policies_authentication_validation_policy_additional_validation_policy_verify_claims_is_required())
                                        .key(var_.deployment_specification_request_policies_authentication_validation_policy_additional_validation_policy_verify_claims_key())
                                        .values(var_.deployment_specification_request_policies_authentication_validation_policy_additional_validation_policy_verify_claims_values())
                                        .build())
                                    .build())
                                .clientDetails(DeploymentSpecificationRequestPoliciesAuthenticationValidationPolicyClientDetailsArgs.builder()
                                    .type(var_.deployment_specification_request_policies_authentication_validation_policy_client_details_type())
                                    .clientId(oci_apigateway_client.test_client().id())
                                    .clientSecretId(oci_vault_secret.test_secret().id())
                                    .clientSecretVersionNumber(var_.deployment_specification_request_policies_authentication_validation_policy_client_details_client_secret_version_number())
                                    .build())
                                .isSslVerifyDisabled(var_.deployment_specification_request_policies_authentication_validation_policy_is_ssl_verify_disabled())
                                .keys(DeploymentSpecificationRequestPoliciesAuthenticationValidationPolicyKeyArgs.builder()
                                    .format(var_.deployment_specification_request_policies_authentication_validation_policy_keys_format())
                                    .alg(var_.deployment_specification_request_policies_authentication_validation_policy_keys_alg())
                                    .e(var_.deployment_specification_request_policies_authentication_validation_policy_keys_e())
                                    .key(var_.deployment_specification_request_policies_authentication_validation_policy_keys_key())
                                    .keyOps(var_.deployment_specification_request_policies_authentication_validation_policy_keys_key_ops())
                                    .kid(var_.deployment_specification_request_policies_authentication_validation_policy_keys_kid())
                                    .kty(var_.deployment_specification_request_policies_authentication_validation_policy_keys_kty())
                                    .n(var_.deployment_specification_request_policies_authentication_validation_policy_keys_n())
                                    .use(var_.deployment_specification_request_policies_authentication_validation_policy_keys_use())
                                    .build())
                                .maxCacheDurationInHours(var_.deployment_specification_request_policies_authentication_validation_policy_max_cache_duration_in_hours())
                                .sourceUriDetails(DeploymentSpecificationRequestPoliciesAuthenticationValidationPolicySourceUriDetailsArgs.builder()
                                    .type(var_.deployment_specification_request_policies_authentication_validation_policy_source_uri_details_type())
                                    .uri(var_.deployment_specification_request_policies_authentication_validation_policy_source_uri_details_uri())
                                    .build())
                                .uri(var_.deployment_specification_request_policies_authentication_validation_policy_uri())
                                .build())
                            .verifyClaims(DeploymentSpecificationRequestPoliciesAuthenticationVerifyClaimArgs.builder()
                                .isRequired(var_.deployment_specification_request_policies_authentication_verify_claims_is_required())
                                .key(var_.deployment_specification_request_policies_authentication_verify_claims_key())
                                .values(var_.deployment_specification_request_policies_authentication_verify_claims_values())
                                .build())
                            .build())
                        .cors(DeploymentSpecificationRequestPoliciesCorsArgs.builder()
                            .allowedOrigins(var_.deployment_specification_request_policies_cors_allowed_origins())
                            .allowedHeaders(var_.deployment_specification_request_policies_cors_allowed_headers())
                            .allowedMethods(var_.deployment_specification_request_policies_cors_allowed_methods())
                            .exposedHeaders(var_.deployment_specification_request_policies_cors_exposed_headers())
                            .isAllowCredentialsEnabled(var_.deployment_specification_request_policies_cors_is_allow_credentials_enabled())
                            .maxAgeInSeconds(var_.deployment_specification_request_policies_cors_max_age_in_seconds())
                            .build())
                        .dynamicAuthentication(DeploymentSpecificationRequestPoliciesDynamicAuthenticationArgs.builder()
                            .authenticationServers(DeploymentSpecificationRequestPoliciesDynamicAuthenticationAuthenticationServerArgs.builder()
                                .authenticationServerDetail(DeploymentSpecificationRequestPoliciesDynamicAuthenticationAuthenticationServerAuthenticationServerDetailArgs.builder()
                                    .type(var_.deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_type())
                                    .audiences(var_.deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_audiences())
                                    .functionId(oci_functions_function.test_function().id())
                                    .isAnonymousAccessAllowed(var_.deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_is_anonymous_access_allowed())
                                    .issuers(var_.deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_issuers())
                                    .maxClockSkewInSeconds(var_.deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_max_clock_skew_in_seconds())
                                    .publicKeys(DeploymentSpecificationRequestPoliciesDynamicAuthenticationAuthenticationServerAuthenticationServerDetailPublicKeysArgs.builder()
                                        .type(var_.deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_public_keys_type())
                                        .isSslVerifyDisabled(var_.deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_public_keys_is_ssl_verify_disabled())
                                        .keys(DeploymentSpecificationRequestPoliciesDynamicAuthenticationAuthenticationServerAuthenticationServerDetailPublicKeysKeyArgs.builder()
                                            .format(var_.deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_public_keys_keys_format())
                                            .alg(var_.deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_public_keys_keys_alg())
                                            .e(var_.deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_public_keys_keys_e())
                                            .key(var_.deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_public_keys_keys_key())
                                            .keyOps(var_.deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_public_keys_keys_key_ops())
                                            .kid(var_.deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_public_keys_keys_kid())
                                            .kty(var_.deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_public_keys_keys_kty())
                                            .n(var_.deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_public_keys_keys_n())
                                            .use(var_.deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_public_keys_keys_use())
                                            .build())
                                        .maxCacheDurationInHours(var_.deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_public_keys_max_cache_duration_in_hours())
                                        .uri(var_.deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_public_keys_uri())
                                        .build())
                                    .tokenAuthScheme(var_.deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_token_auth_scheme())
                                    .tokenHeader(var_.deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_token_header())
                                    .tokenQueryParam(var_.deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_token_query_param())
                                    .validationFailurePolicy(DeploymentSpecificationRequestPoliciesDynamicAuthenticationAuthenticationServerAuthenticationServerDetailValidationFailurePolicyArgs.builder()
                                        .type(var_.deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_validation_failure_policy_type())
                                        .clientDetails(DeploymentSpecificationRequestPoliciesDynamicAuthenticationAuthenticationServerAuthenticationServerDetailValidationFailurePolicyClientDetailsArgs.builder()
                                            .type(var_.deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_validation_failure_policy_client_details_type())
                                            .clientId(oci_apigateway_client.test_client().id())
                                            .clientSecretId(oci_vault_secret.test_secret().id())
                                            .clientSecretVersionNumber(var_.deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_validation_failure_policy_client_details_client_secret_version_number())
                                            .build())
                                        .fallbackRedirectPath(var_.deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_validation_failure_policy_fallback_redirect_path())
                                        .logoutPath(var_.deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_validation_failure_policy_logout_path())
                                        .maxExpiryDurationInHours(var_.deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_validation_failure_policy_max_expiry_duration_in_hours())
                                        .responseCode(var_.deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_validation_failure_policy_response_code())
                                        .responseHeaderTransformations(DeploymentSpecificationRequestPoliciesDynamicAuthenticationAuthenticationServerAuthenticationServerDetailValidationFailurePolicyResponseHeaderTransformationsArgs.builder()
                                            .filterHeaders(DeploymentSpecificationRequestPoliciesDynamicAuthenticationAuthenticationServerAuthenticationServerDetailValidationFailurePolicyResponseHeaderTransformationsFilterHeadersArgs.builder()
                                                .items(DeploymentSpecificationRequestPoliciesDynamicAuthenticationAuthenticationServerAuthenticationServerDetailValidationFailurePolicyResponseHeaderTransformationsFilterHeadersItemArgs.builder()
                                                    .name(var_.deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_validation_failure_policy_response_header_transformations_filter_headers_items_name())
                                                    .build())
                                                .type(var_.deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_validation_failure_policy_response_header_transformations_filter_headers_type())
                                                .build())
                                            .renameHeaders(DeploymentSpecificationRequestPoliciesDynamicAuthenticationAuthenticationServerAuthenticationServerDetailValidationFailurePolicyResponseHeaderTransformationsRenameHeadersArgs.builder()
                                                .items(DeploymentSpecificationRequestPoliciesDynamicAuthenticationAuthenticationServerAuthenticationServerDetailValidationFailurePolicyResponseHeaderTransformationsRenameHeadersItemArgs.builder()
                                                    .from(var_.deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_validation_failure_policy_response_header_transformations_rename_headers_items_from())
                                                    .to(var_.deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_validation_failure_policy_response_header_transformations_rename_headers_items_to())
                                                    .build())
                                                .build())
                                            .setHeaders(DeploymentSpecificationRequestPoliciesDynamicAuthenticationAuthenticationServerAuthenticationServerDetailValidationFailurePolicyResponseHeaderTransformationsSetHeadersArgs.builder()
                                                .items(DeploymentSpecificationRequestPoliciesDynamicAuthenticationAuthenticationServerAuthenticationServerDetailValidationFailurePolicyResponseHeaderTransformationsSetHeadersItemArgs.builder()
                                                    .ifExists(var_.deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_validation_failure_policy_response_header_transformations_set_headers_items_if_exists())
                                                    .name(var_.deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_validation_failure_policy_response_header_transformations_set_headers_items_name())
                                                    .values(var_.deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_validation_failure_policy_response_header_transformations_set_headers_items_values())
                                                    .build())
                                                .build())
                                            .build())
                                        .responseMessage(var_.deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_validation_failure_policy_response_message())
                                        .responseType(var_.deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_validation_failure_policy_response_type())
                                        .scopes(var_.deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_validation_failure_policy_scopes())
                                        .sourceUriDetails(DeploymentSpecificationRequestPoliciesDynamicAuthenticationAuthenticationServerAuthenticationServerDetailValidationFailurePolicySourceUriDetailsArgs.builder()
                                            .type(var_.deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_validation_failure_policy_source_uri_details_type())
                                            .uri(var_.deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_validation_failure_policy_source_uri_details_uri())
                                            .build())
                                        .useCookiesForIntermediateSteps(var_.deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_validation_failure_policy_use_cookies_for_intermediate_steps())
                                        .useCookiesForSession(var_.deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_validation_failure_policy_use_cookies_for_session())
                                        .usePkce(var_.deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_validation_failure_policy_use_pkce())
                                        .build())
                                    .validationPolicy(DeploymentSpecificationRequestPoliciesDynamicAuthenticationAuthenticationServerAuthenticationServerDetailValidationPolicyArgs.builder()
                                        .type(var_.deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_validation_policy_type())
                                        .additionalValidationPolicy(DeploymentSpecificationRequestPoliciesDynamicAuthenticationAuthenticationServerAuthenticationServerDetailValidationPolicyAdditionalValidationPolicyArgs.builder()
                                            .audiences(var_.deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_validation_policy_additional_validation_policy_audiences())
                                            .issuers(var_.deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_validation_policy_additional_validation_policy_issuers())
                                            .verifyClaims(DeploymentSpecificationRequestPoliciesDynamicAuthenticationAuthenticationServerAuthenticationServerDetailValidationPolicyAdditionalValidationPolicyVerifyClaimArgs.builder()
                                                .isRequired(var_.deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_validation_policy_additional_validation_policy_verify_claims_is_required())
                                                .key(var_.deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_validation_policy_additional_validation_policy_verify_claims_key())
                                                .values(var_.deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_validation_policy_additional_validation_policy_verify_claims_values())
                                                .build())
                                            .build())
                                        .clientDetails(DeploymentSpecificationRequestPoliciesDynamicAuthenticationAuthenticationServerAuthenticationServerDetailValidationPolicyClientDetailsArgs.builder()
                                            .type(var_.deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_validation_policy_client_details_type())
                                            .clientId(oci_apigateway_client.test_client().id())
                                            .clientSecretId(oci_vault_secret.test_secret().id())
                                            .clientSecretVersionNumber(var_.deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_validation_policy_client_details_client_secret_version_number())
                                            .build())
                                        .isSslVerifyDisabled(var_.deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_validation_policy_is_ssl_verify_disabled())
                                        .keys(DeploymentSpecificationRequestPoliciesDynamicAuthenticationAuthenticationServerAuthenticationServerDetailValidationPolicyKeyArgs.builder()
                                            .format(var_.deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_validation_policy_keys_format())
                                            .alg(var_.deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_validation_policy_keys_alg())
                                            .e(var_.deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_validation_policy_keys_e())
                                            .key(var_.deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_validation_policy_keys_key())
                                            .keyOps(var_.deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_validation_policy_keys_key_ops())
                                            .kid(var_.deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_validation_policy_keys_kid())
                                            .kty(var_.deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_validation_policy_keys_kty())
                                            .n(var_.deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_validation_policy_keys_n())
                                            .use(var_.deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_validation_policy_keys_use())
                                            .build())
                                        .maxCacheDurationInHours(var_.deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_validation_policy_max_cache_duration_in_hours())
                                        .sourceUriDetails(DeploymentSpecificationRequestPoliciesDynamicAuthenticationAuthenticationServerAuthenticationServerDetailValidationPolicySourceUriDetailsArgs.builder()
                                            .type(var_.deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_validation_policy_source_uri_details_type())
                                            .uri(var_.deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_validation_policy_source_uri_details_uri())
                                            .build())
                                        .uri(var_.deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_validation_policy_uri())
                                        .build())
                                    .verifyClaims(DeploymentSpecificationRequestPoliciesDynamicAuthenticationAuthenticationServerAuthenticationServerDetailVerifyClaimArgs.builder()
                                        .isRequired(var_.deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_verify_claims_is_required())
                                        .key(var_.deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_verify_claims_key())
                                        .values(var_.deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_verify_claims_values())
                                        .build())
                                    .build())
                                .key(DeploymentSpecificationRequestPoliciesDynamicAuthenticationAuthenticationServerKeyArgs.builder()
                                    .name(var_.deployment_specification_request_policies_dynamic_authentication_authentication_servers_key_name())
                                    .expression(var_.deployment_specification_request_policies_dynamic_authentication_authentication_servers_key_expression())
                                    .isDefault(var_.deployment_specification_request_policies_dynamic_authentication_authentication_servers_key_is_default())
                                    .type(var_.deployment_specification_request_policies_dynamic_authentication_authentication_servers_key_type())
                                    .values(var_.deployment_specification_request_policies_dynamic_authentication_authentication_servers_key_values())
                                    .build())
                                .build())
                            .selectionSource(DeploymentSpecificationRequestPoliciesDynamicAuthenticationSelectionSourceArgs.builder()
                                .selector(var_.deployment_specification_request_policies_dynamic_authentication_selection_source_selector())
                                .type(var_.deployment_specification_request_policies_dynamic_authentication_selection_source_type())
                                .build())
                            .build())
                        .mutualTls(DeploymentSpecificationRequestPoliciesMutualTlsArgs.builder()
                            .allowedSans(var_.deployment_specification_request_policies_mutual_tls_allowed_sans())
                            .isVerifiedCertificateRequired(var_.deployment_specification_request_policies_mutual_tls_is_verified_certificate_required())
                            .build())
                        .rateLimiting(DeploymentSpecificationRequestPoliciesRateLimitingArgs.builder()
                            .rateInRequestsPerSecond(var_.deployment_specification_request_policies_rate_limiting_rate_in_requests_per_second())
                            .rateKey(var_.deployment_specification_request_policies_rate_limiting_rate_key())
                            .build())
                        .usagePlans(DeploymentSpecificationRequestPoliciesUsagePlansArgs.builder()
                            .tokenLocations(var_.deployment_specification_request_policies_usage_plans_token_locations())
                            .build())
                        .build())
                    .routes(DeploymentSpecificationRouteArgs.builder()
                        .backend(DeploymentSpecificationRouteBackendArgs.builder()
                            .type(var_.deployment_specification_routes_backend_type())
                            .allowedPostLogoutUris(var_.deployment_specification_routes_backend_allowed_post_logout_uris())
                            .body(var_.deployment_specification_routes_backend_body())
                            .connectTimeoutInSeconds(var_.deployment_specification_routes_backend_connect_timeout_in_seconds())
                            .functionId(oci_functions_function.test_function().id())
                            .headers(DeploymentSpecificationRouteBackendHeaderArgs.builder()
                                .name(var_.deployment_specification_routes_backend_headers_name())
                                .value(var_.deployment_specification_routes_backend_headers_value())
                                .build())
                            .isSslVerifyDisabled(var_.deployment_specification_routes_backend_is_ssl_verify_disabled())
                            .postLogoutState(var_.deployment_specification_routes_backend_post_logout_state())
                            .readTimeoutInSeconds(var_.deployment_specification_routes_backend_read_timeout_in_seconds())
                            .routingBackends(DeploymentSpecificationRouteBackendRoutingBackendArgs.builder()
                                .backend(DeploymentSpecificationRouteBackendRoutingBackendBackendArgs.builder()
                                    .type(var_.deployment_specification_routes_backend_routing_backends_backend_type())
                                    .body(var_.deployment_specification_routes_backend_routing_backends_backend_body())
                                    .connectTimeoutInSeconds(var_.deployment_specification_routes_backend_routing_backends_backend_connect_timeout_in_seconds())
                                    .functionId(oci_functions_function.test_function().id())
                                    .headers(DeploymentSpecificationRouteBackendRoutingBackendBackendHeaderArgs.builder()
                                        .name(var_.deployment_specification_routes_backend_routing_backends_backend_headers_name())
                                        .value(var_.deployment_specification_routes_backend_routing_backends_backend_headers_value())
                                        .build())
                                    .isSslVerifyDisabled(var_.deployment_specification_routes_backend_routing_backends_backend_is_ssl_verify_disabled())
                                    .readTimeoutInSeconds(var_.deployment_specification_routes_backend_routing_backends_backend_read_timeout_in_seconds())
                                    .sendTimeoutInSeconds(var_.deployment_specification_routes_backend_routing_backends_backend_send_timeout_in_seconds())
                                    .status(var_.deployment_specification_routes_backend_routing_backends_backend_status())
                                    .url(var_.deployment_specification_routes_backend_routing_backends_backend_url())
                                    .build())
                                .key(DeploymentSpecificationRouteBackendRoutingBackendKeyArgs.builder()
                                    .name(var_.deployment_specification_routes_backend_routing_backends_key_name())
                                    .type(var_.deployment_specification_request_policies_dynamic_authentication_authentication_servers_key_type())
                                    .expression(var_.deployment_specification_request_policies_dynamic_authentication_authentication_servers_key_expression())
                                    .isDefault(var_.deployment_specification_request_policies_dynamic_authentication_authentication_servers_key_is_default())
                                    .values(var_.deployment_specification_request_policies_dynamic_authentication_authentication_servers_key_values())
                                    .build())
                                .build())
                            .selectionSource(DeploymentSpecificationRouteBackendSelectionSourceArgs.builder()
                                .selector(var_.deployment_specification_routes_backend_selection_source_selector())
                                .type(var_.deployment_specification_routes_backend_selection_source_type())
                                .build())
                            .sendTimeoutInSeconds(var_.deployment_specification_routes_backend_send_timeout_in_seconds())
                            .status(var_.deployment_specification_routes_backend_status())
                            .url(var_.deployment_specification_routes_backend_url())
                            .build())
                        .path(var_.deployment_specification_routes_path())
                        .loggingPolicies(DeploymentSpecificationRouteLoggingPoliciesArgs.builder()
                            .accessLog(DeploymentSpecificationRouteLoggingPoliciesAccessLogArgs.builder()
                                .isEnabled(var_.deployment_specification_routes_logging_policies_access_log_is_enabled())
                                .build())
                            .executionLog(DeploymentSpecificationRouteLoggingPoliciesExecutionLogArgs.builder()
                                .isEnabled(var_.deployment_specification_routes_logging_policies_execution_log_is_enabled())
                                .logLevel(var_.deployment_specification_routes_logging_policies_execution_log_log_level())
                                .build())
                            .build())
                        .methods(var_.deployment_specification_routes_methods())
                        .requestPolicies(DeploymentSpecificationRouteRequestPoliciesArgs.builder()
                            .authorization(DeploymentSpecificationRouteRequestPoliciesAuthorizationArgs.builder()
                                .allowedScopes(var_.deployment_specification_routes_request_policies_authorization_allowed_scope())
                                .type(var_.deployment_specification_routes_request_policies_authorization_type())
                                .build())
                            .bodyValidation(DeploymentSpecificationRouteRequestPoliciesBodyValidationArgs.builder()
                                .contents(DeploymentSpecificationRouteRequestPoliciesBodyValidationContentArgs.builder()
                                    .mediaType(var_.deployment_specification_routes_request_policies_body_validation_content_media_type())
                                    .validationType(var_.deployment_specification_routes_request_policies_body_validation_content_validation_type())
                                    .build())
                                .required(var_.deployment_specification_routes_request_policies_body_validation_required())
                                .validationMode(var_.deployment_specification_routes_request_policies_body_validation_validation_mode())
                                .build())
                            .cors(DeploymentSpecificationRouteRequestPoliciesCorsArgs.builder()
                                .allowedOrigins(var_.deployment_specification_routes_request_policies_cors_allowed_origins())
                                .allowedHeaders(var_.deployment_specification_routes_request_policies_cors_allowed_headers())
                                .allowedMethods(var_.deployment_specification_routes_request_policies_cors_allowed_methods())
                                .exposedHeaders(var_.deployment_specification_routes_request_policies_cors_exposed_headers())
                                .isAllowCredentialsEnabled(var_.deployment_specification_routes_request_policies_cors_is_allow_credentials_enabled())
                                .maxAgeInSeconds(var_.deployment_specification_routes_request_policies_cors_max_age_in_seconds())
                                .build())
                            .headerTransformations(DeploymentSpecificationRouteRequestPoliciesHeaderTransformationsArgs.builder()
                                .filterHeaders(DeploymentSpecificationRouteRequestPoliciesHeaderTransformationsFilterHeadersArgs.builder()
                                    .items(DeploymentSpecificationRouteRequestPoliciesHeaderTransformationsFilterHeadersItemArgs.builder()
                                        .name(var_.deployment_specification_routes_request_policies_header_transformations_filter_headers_items_name())
                                        .build())
                                    .type(var_.deployment_specification_routes_request_policies_header_transformations_filter_headers_type())
                                    .build())
                                .renameHeaders(DeploymentSpecificationRouteRequestPoliciesHeaderTransformationsRenameHeadersArgs.builder()
                                    .items(DeploymentSpecificationRouteRequestPoliciesHeaderTransformationsRenameHeadersItemArgs.builder()
                                        .from(var_.deployment_specification_routes_request_policies_header_transformations_rename_headers_items_from())
                                        .to(var_.deployment_specification_routes_request_policies_header_transformations_rename_headers_items_to())
                                        .build())
                                    .build())
                                .setHeaders(DeploymentSpecificationRouteRequestPoliciesHeaderTransformationsSetHeadersArgs.builder()
                                    .items(DeploymentSpecificationRouteRequestPoliciesHeaderTransformationsSetHeadersItemArgs.builder()
                                        .name(var_.deployment_specification_routes_request_policies_header_transformations_set_headers_items_name())
                                        .values(var_.deployment_specification_routes_request_policies_header_transformations_set_headers_items_values())
                                        .ifExists(var_.deployment_specification_routes_request_policies_header_transformations_set_headers_items_if_exists())
                                        .build())
                                    .build())
                                .build())
                            .headerValidations(DeploymentSpecificationRouteRequestPoliciesHeaderValidationsArgs.builder()
                                .headers(DeploymentSpecificationRouteRequestPoliciesHeaderValidationsHeaderArgs.builder()
                                    .name(var_.deployment_specification_routes_request_policies_header_validations_headers_name())
                                    .required(var_.deployment_specification_routes_request_policies_header_validations_headers_required())
                                    .build())
                                .validationMode(var_.deployment_specification_routes_request_policies_header_validations_validation_mode())
                                .build())
                            .queryParameterTransformations(DeploymentSpecificationRouteRequestPoliciesQueryParameterTransformationsArgs.builder()
                                .filterQueryParameters(DeploymentSpecificationRouteRequestPoliciesQueryParameterTransformationsFilterQueryParametersArgs.builder()
                                    .items(DeploymentSpecificationRouteRequestPoliciesQueryParameterTransformationsFilterQueryParametersItemArgs.builder()
                                        .name(var_.deployment_specification_routes_request_policies_query_parameter_transformations_filter_query_parameters_items_name())
                                        .build())
                                    .type(var_.deployment_specification_routes_request_policies_query_parameter_transformations_filter_query_parameters_type())
                                    .build())
                                .renameQueryParameters(DeploymentSpecificationRouteRequestPoliciesQueryParameterTransformationsRenameQueryParametersArgs.builder()
                                    .items(DeploymentSpecificationRouteRequestPoliciesQueryParameterTransformationsRenameQueryParametersItemArgs.builder()
                                        .from(var_.deployment_specification_routes_request_policies_query_parameter_transformations_rename_query_parameters_items_from())
                                        .to(var_.deployment_specification_routes_request_policies_query_parameter_transformations_rename_query_parameters_items_to())
                                        .build())
                                    .build())
                                .setQueryParameters(DeploymentSpecificationRouteRequestPoliciesQueryParameterTransformationsSetQueryParametersArgs.builder()
                                    .items(DeploymentSpecificationRouteRequestPoliciesQueryParameterTransformationsSetQueryParametersItemArgs.builder()
                                        .name(var_.deployment_specification_routes_request_policies_query_parameter_transformations_set_query_parameters_items_name())
                                        .values(var_.deployment_specification_routes_request_policies_query_parameter_transformations_set_query_parameters_items_values())
                                        .ifExists(var_.deployment_specification_routes_request_policies_query_parameter_transformations_set_query_parameters_items_if_exists())
                                        .build())
                                    .build())
                                .build())
                            .queryParameterValidations(DeploymentSpecificationRouteRequestPoliciesQueryParameterValidationsArgs.builder()
                                .parameters(DeploymentSpecificationRouteRequestPoliciesQueryParameterValidationsParameterArgs.builder()
                                    .name(var_.deployment_specification_routes_request_policies_query_parameter_validations_parameters_name())
                                    .required(var_.deployment_specification_routes_request_policies_query_parameter_validations_parameters_required())
                                    .build())
                                .validationMode(var_.deployment_specification_routes_request_policies_query_parameter_validations_validation_mode())
                                .build())
                            .responseCacheLookup(DeploymentSpecificationRouteRequestPoliciesResponseCacheLookupArgs.builder()
                                .type(var_.deployment_specification_routes_request_policies_response_cache_lookup_type())
                                .cacheKeyAdditions(var_.deployment_specification_routes_request_policies_response_cache_lookup_cache_key_additions())
                                .isEnabled(var_.deployment_specification_routes_request_policies_response_cache_lookup_is_enabled())
                                .isPrivateCachingEnabled(var_.deployment_specification_routes_request_policies_response_cache_lookup_is_private_caching_enabled())
                                .build())
                            .build())
                        .responsePolicies(DeploymentSpecificationRouteResponsePoliciesArgs.builder()
                            .headerTransformations(DeploymentSpecificationRouteResponsePoliciesHeaderTransformationsArgs.builder()
                                .filterHeaders(DeploymentSpecificationRouteResponsePoliciesHeaderTransformationsFilterHeadersArgs.builder()
                                    .items(DeploymentSpecificationRouteResponsePoliciesHeaderTransformationsFilterHeadersItemArgs.builder()
                                        .name(var_.deployment_specification_routes_response_policies_header_transformations_filter_headers_items_name())
                                        .build())
                                    .type(var_.deployment_specification_routes_response_policies_header_transformations_filter_headers_type())
                                    .build())
                                .renameHeaders(DeploymentSpecificationRouteResponsePoliciesHeaderTransformationsRenameHeadersArgs.builder()
                                    .items(DeploymentSpecificationRouteResponsePoliciesHeaderTransformationsRenameHeadersItemArgs.builder()
                                        .from(var_.deployment_specification_routes_response_policies_header_transformations_rename_headers_items_from())
                                        .to(var_.deployment_specification_routes_response_policies_header_transformations_rename_headers_items_to())
                                        .build())
                                    .build())
                                .setHeaders(DeploymentSpecificationRouteResponsePoliciesHeaderTransformationsSetHeadersArgs.builder()
                                    .items(DeploymentSpecificationRouteResponsePoliciesHeaderTransformationsSetHeadersItemArgs.builder()
                                        .name(var_.deployment_specification_routes_response_policies_header_transformations_set_headers_items_name())
                                        .values(var_.deployment_specification_routes_response_policies_header_transformations_set_headers_items_values())
                                        .ifExists(var_.deployment_specification_routes_response_policies_header_transformations_set_headers_items_if_exists())
                                        .build())
                                    .build())
                                .build())
                            .responseCacheStore(DeploymentSpecificationRouteResponsePoliciesResponseCacheStoreArgs.builder()
                                .timeToLiveInSeconds(var_.deployment_specification_routes_response_policies_response_cache_store_time_to_live_in_seconds())
                                .type(var_.deployment_specification_routes_response_policies_response_cache_store_type())
                                .build())
                            .build())
                        .build())
                    .build())
                .definedTags(Map.of("Operations.CostCenter", "42"))
                .displayName(var_.deployment_display_name())
                .freeformTags(Map.of("Department", "Finance"))
                .build());
    
        }
    }
    
    import pulumi
    import pulumi_oci as oci
    
    test_deployment = oci.api_gateway.Deployment("testDeployment",
        compartment_id=var["compartment_id"],
        gateway_id=oci_apigateway_gateway["test_gateway"]["id"],
        path_prefix=var["deployment_path_prefix"],
        specification=oci.api_gateway.DeploymentSpecificationArgs(
            logging_policies=oci.api_gateway.DeploymentSpecificationLoggingPoliciesArgs(
                access_log=oci.api_gateway.DeploymentSpecificationLoggingPoliciesAccessLogArgs(
                    is_enabled=var["deployment_specification_logging_policies_access_log_is_enabled"],
                ),
                execution_log=oci.api_gateway.DeploymentSpecificationLoggingPoliciesExecutionLogArgs(
                    is_enabled=var["deployment_specification_logging_policies_execution_log_is_enabled"],
                    log_level=var["deployment_specification_logging_policies_execution_log_log_level"],
                ),
            ),
            request_policies=oci.api_gateway.DeploymentSpecificationRequestPoliciesArgs(
                authentication=oci.api_gateway.DeploymentSpecificationRequestPoliciesAuthenticationArgs(
                    type=var["deployment_specification_request_policies_authentication_type"],
                    audiences=var["deployment_specification_request_policies_authentication_audiences"],
                    cache_keys=var["deployment_specification_request_policies_authentication_cache_key"],
                    function_id=oci_functions_function["test_function"]["id"],
                    is_anonymous_access_allowed=var["deployment_specification_request_policies_authentication_is_anonymous_access_allowed"],
                    issuers=var["deployment_specification_request_policies_authentication_issuers"],
                    max_clock_skew_in_seconds=var["deployment_specification_request_policies_authentication_max_clock_skew_in_seconds"],
                    parameters=var["deployment_specification_request_policies_authentication_parameters"],
                    public_keys=oci.api_gateway.DeploymentSpecificationRequestPoliciesAuthenticationPublicKeysArgs(
                        type=var["deployment_specification_request_policies_authentication_public_keys_type"],
                        is_ssl_verify_disabled=var["deployment_specification_request_policies_authentication_public_keys_is_ssl_verify_disabled"],
                        keys=[oci.api_gateway.DeploymentSpecificationRequestPoliciesAuthenticationPublicKeysKeyArgs(
                            format=var["deployment_specification_request_policies_authentication_public_keys_keys_format"],
                            alg=var["deployment_specification_request_policies_authentication_public_keys_keys_alg"],
                            e=var["deployment_specification_request_policies_authentication_public_keys_keys_e"],
                            key=var["deployment_specification_request_policies_authentication_public_keys_keys_key"],
                            key_ops=var["deployment_specification_request_policies_authentication_public_keys_keys_key_ops"],
                            kid=var["deployment_specification_request_policies_authentication_public_keys_keys_kid"],
                            kty=var["deployment_specification_request_policies_authentication_public_keys_keys_kty"],
                            n=var["deployment_specification_request_policies_authentication_public_keys_keys_n"],
                            use=var["deployment_specification_request_policies_authentication_public_keys_keys_use"],
                        )],
                        max_cache_duration_in_hours=var["deployment_specification_request_policies_authentication_public_keys_max_cache_duration_in_hours"],
                        uri=var["deployment_specification_request_policies_authentication_public_keys_uri"],
                    ),
                    token_auth_scheme=var["deployment_specification_request_policies_authentication_token_auth_scheme"],
                    token_header=var["deployment_specification_request_policies_authentication_token_header"],
                    token_query_param=var["deployment_specification_request_policies_authentication_token_query_param"],
                    validation_failure_policy=oci.api_gateway.DeploymentSpecificationRequestPoliciesAuthenticationValidationFailurePolicyArgs(
                        type=var["deployment_specification_request_policies_authentication_validation_failure_policy_type"],
                        client_details=oci.api_gateway.DeploymentSpecificationRequestPoliciesAuthenticationValidationFailurePolicyClientDetailsArgs(
                            type=var["deployment_specification_request_policies_authentication_validation_failure_policy_client_details_type"],
                            client_id=oci_apigateway_client["test_client"]["id"],
                            client_secret_id=oci_vault_secret["test_secret"]["id"],
                            client_secret_version_number=var["deployment_specification_request_policies_authentication_validation_failure_policy_client_details_client_secret_version_number"],
                        ),
                        fallback_redirect_path=var["deployment_specification_request_policies_authentication_validation_failure_policy_fallback_redirect_path"],
                        logout_path=var["deployment_specification_request_policies_authentication_validation_failure_policy_logout_path"],
                        max_expiry_duration_in_hours=var["deployment_specification_request_policies_authentication_validation_failure_policy_max_expiry_duration_in_hours"],
                        response_code=var["deployment_specification_request_policies_authentication_validation_failure_policy_response_code"],
                        response_header_transformations=oci.api_gateway.DeploymentSpecificationRequestPoliciesAuthenticationValidationFailurePolicyResponseHeaderTransformationsArgs(
                            filter_headers=oci.api_gateway.DeploymentSpecificationRequestPoliciesAuthenticationValidationFailurePolicyResponseHeaderTransformationsFilterHeadersArgs(
                                items=[oci.api_gateway.DeploymentSpecificationRequestPoliciesAuthenticationValidationFailurePolicyResponseHeaderTransformationsFilterHeadersItemArgs(
                                    name=var["deployment_specification_request_policies_authentication_validation_failure_policy_response_header_transformations_filter_headers_items_name"],
                                )],
                                type=var["deployment_specification_request_policies_authentication_validation_failure_policy_response_header_transformations_filter_headers_type"],
                            ),
                            rename_headers=oci.api_gateway.DeploymentSpecificationRequestPoliciesAuthenticationValidationFailurePolicyResponseHeaderTransformationsRenameHeadersArgs(
                                items=[oci.api_gateway.DeploymentSpecificationRequestPoliciesAuthenticationValidationFailurePolicyResponseHeaderTransformationsRenameHeadersItemArgs(
                                    from_=var["deployment_specification_request_policies_authentication_validation_failure_policy_response_header_transformations_rename_headers_items_from"],
                                    to=var["deployment_specification_request_policies_authentication_validation_failure_policy_response_header_transformations_rename_headers_items_to"],
                                )],
                            ),
                            set_headers=oci.api_gateway.DeploymentSpecificationRequestPoliciesAuthenticationValidationFailurePolicyResponseHeaderTransformationsSetHeadersArgs(
                                items=[oci.api_gateway.DeploymentSpecificationRequestPoliciesAuthenticationValidationFailurePolicyResponseHeaderTransformationsSetHeadersItemArgs(
                                    if_exists=var["deployment_specification_request_policies_authentication_validation_failure_policy_response_header_transformations_set_headers_items_if_exists"],
                                    name=var["deployment_specification_request_policies_authentication_validation_failure_policy_response_header_transformations_set_headers_items_name"],
                                    values=var["deployment_specification_request_policies_authentication_validation_failure_policy_response_header_transformations_set_headers_items_values"],
                                )],
                            ),
                        ),
                        response_message=var["deployment_specification_request_policies_authentication_validation_failure_policy_response_message"],
                        response_type=var["deployment_specification_request_policies_authentication_validation_failure_policy_response_type"],
                        scopes=var["deployment_specification_request_policies_authentication_validation_failure_policy_scopes"],
                        source_uri_details=oci.api_gateway.DeploymentSpecificationRequestPoliciesAuthenticationValidationFailurePolicySourceUriDetailsArgs(
                            type=var["deployment_specification_request_policies_authentication_validation_failure_policy_source_uri_details_type"],
                            uri=var["deployment_specification_request_policies_authentication_validation_failure_policy_source_uri_details_uri"],
                        ),
                        use_cookies_for_intermediate_steps=var["deployment_specification_request_policies_authentication_validation_failure_policy_use_cookies_for_intermediate_steps"],
                        use_cookies_for_session=var["deployment_specification_request_policies_authentication_validation_failure_policy_use_cookies_for_session"],
                        use_pkce=var["deployment_specification_request_policies_authentication_validation_failure_policy_use_pkce"],
                    ),
                    validation_policy=oci.api_gateway.DeploymentSpecificationRequestPoliciesAuthenticationValidationPolicyArgs(
                        type=var["deployment_specification_request_policies_authentication_validation_policy_type"],
                        additional_validation_policy=oci.api_gateway.DeploymentSpecificationRequestPoliciesAuthenticationValidationPolicyAdditionalValidationPolicyArgs(
                            audiences=var["deployment_specification_request_policies_authentication_validation_policy_additional_validation_policy_audiences"],
                            issuers=var["deployment_specification_request_policies_authentication_validation_policy_additional_validation_policy_issuers"],
                            verify_claims=[oci.api_gateway.DeploymentSpecificationRequestPoliciesAuthenticationValidationPolicyAdditionalValidationPolicyVerifyClaimArgs(
                                is_required=var["deployment_specification_request_policies_authentication_validation_policy_additional_validation_policy_verify_claims_is_required"],
                                key=var["deployment_specification_request_policies_authentication_validation_policy_additional_validation_policy_verify_claims_key"],
                                values=var["deployment_specification_request_policies_authentication_validation_policy_additional_validation_policy_verify_claims_values"],
                            )],
                        ),
                        client_details=oci.api_gateway.DeploymentSpecificationRequestPoliciesAuthenticationValidationPolicyClientDetailsArgs(
                            type=var["deployment_specification_request_policies_authentication_validation_policy_client_details_type"],
                            client_id=oci_apigateway_client["test_client"]["id"],
                            client_secret_id=oci_vault_secret["test_secret"]["id"],
                            client_secret_version_number=var["deployment_specification_request_policies_authentication_validation_policy_client_details_client_secret_version_number"],
                        ),
                        is_ssl_verify_disabled=var["deployment_specification_request_policies_authentication_validation_policy_is_ssl_verify_disabled"],
                        keys=[oci.api_gateway.DeploymentSpecificationRequestPoliciesAuthenticationValidationPolicyKeyArgs(
                            format=var["deployment_specification_request_policies_authentication_validation_policy_keys_format"],
                            alg=var["deployment_specification_request_policies_authentication_validation_policy_keys_alg"],
                            e=var["deployment_specification_request_policies_authentication_validation_policy_keys_e"],
                            key=var["deployment_specification_request_policies_authentication_validation_policy_keys_key"],
                            key_ops=var["deployment_specification_request_policies_authentication_validation_policy_keys_key_ops"],
                            kid=var["deployment_specification_request_policies_authentication_validation_policy_keys_kid"],
                            kty=var["deployment_specification_request_policies_authentication_validation_policy_keys_kty"],
                            n=var["deployment_specification_request_policies_authentication_validation_policy_keys_n"],
                            use=var["deployment_specification_request_policies_authentication_validation_policy_keys_use"],
                        )],
                        max_cache_duration_in_hours=var["deployment_specification_request_policies_authentication_validation_policy_max_cache_duration_in_hours"],
                        source_uri_details=oci.api_gateway.DeploymentSpecificationRequestPoliciesAuthenticationValidationPolicySourceUriDetailsArgs(
                            type=var["deployment_specification_request_policies_authentication_validation_policy_source_uri_details_type"],
                            uri=var["deployment_specification_request_policies_authentication_validation_policy_source_uri_details_uri"],
                        ),
                        uri=var["deployment_specification_request_policies_authentication_validation_policy_uri"],
                    ),
                    verify_claims=[oci.api_gateway.DeploymentSpecificationRequestPoliciesAuthenticationVerifyClaimArgs(
                        is_required=var["deployment_specification_request_policies_authentication_verify_claims_is_required"],
                        key=var["deployment_specification_request_policies_authentication_verify_claims_key"],
                        values=var["deployment_specification_request_policies_authentication_verify_claims_values"],
                    )],
                ),
                cors=oci.api_gateway.DeploymentSpecificationRequestPoliciesCorsArgs(
                    allowed_origins=var["deployment_specification_request_policies_cors_allowed_origins"],
                    allowed_headers=var["deployment_specification_request_policies_cors_allowed_headers"],
                    allowed_methods=var["deployment_specification_request_policies_cors_allowed_methods"],
                    exposed_headers=var["deployment_specification_request_policies_cors_exposed_headers"],
                    is_allow_credentials_enabled=var["deployment_specification_request_policies_cors_is_allow_credentials_enabled"],
                    max_age_in_seconds=var["deployment_specification_request_policies_cors_max_age_in_seconds"],
                ),
                dynamic_authentication=oci.api_gateway.DeploymentSpecificationRequestPoliciesDynamicAuthenticationArgs(
                    authentication_servers=[oci.api_gateway.DeploymentSpecificationRequestPoliciesDynamicAuthenticationAuthenticationServerArgs(
                        authentication_server_detail=oci.api_gateway.DeploymentSpecificationRequestPoliciesDynamicAuthenticationAuthenticationServerAuthenticationServerDetailArgs(
                            type=var["deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_type"],
                            audiences=var["deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_audiences"],
                            function_id=oci_functions_function["test_function"]["id"],
                            is_anonymous_access_allowed=var["deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_is_anonymous_access_allowed"],
                            issuers=var["deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_issuers"],
                            max_clock_skew_in_seconds=var["deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_max_clock_skew_in_seconds"],
                            public_keys=oci.api_gateway.DeploymentSpecificationRequestPoliciesDynamicAuthenticationAuthenticationServerAuthenticationServerDetailPublicKeysArgs(
                                type=var["deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_public_keys_type"],
                                is_ssl_verify_disabled=var["deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_public_keys_is_ssl_verify_disabled"],
                                keys=[oci.api_gateway.DeploymentSpecificationRequestPoliciesDynamicAuthenticationAuthenticationServerAuthenticationServerDetailPublicKeysKeyArgs(
                                    format=var["deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_public_keys_keys_format"],
                                    alg=var["deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_public_keys_keys_alg"],
                                    e=var["deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_public_keys_keys_e"],
                                    key=var["deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_public_keys_keys_key"],
                                    key_ops=var["deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_public_keys_keys_key_ops"],
                                    kid=var["deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_public_keys_keys_kid"],
                                    kty=var["deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_public_keys_keys_kty"],
                                    n=var["deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_public_keys_keys_n"],
                                    use=var["deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_public_keys_keys_use"],
                                )],
                                max_cache_duration_in_hours=var["deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_public_keys_max_cache_duration_in_hours"],
                                uri=var["deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_public_keys_uri"],
                            ),
                            token_auth_scheme=var["deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_token_auth_scheme"],
                            token_header=var["deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_token_header"],
                            token_query_param=var["deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_token_query_param"],
                            validation_failure_policy=oci.api_gateway.DeploymentSpecificationRequestPoliciesDynamicAuthenticationAuthenticationServerAuthenticationServerDetailValidationFailurePolicyArgs(
                                type=var["deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_validation_failure_policy_type"],
                                client_details=oci.api_gateway.DeploymentSpecificationRequestPoliciesDynamicAuthenticationAuthenticationServerAuthenticationServerDetailValidationFailurePolicyClientDetailsArgs(
                                    type=var["deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_validation_failure_policy_client_details_type"],
                                    client_id=oci_apigateway_client["test_client"]["id"],
                                    client_secret_id=oci_vault_secret["test_secret"]["id"],
                                    client_secret_version_number=var["deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_validation_failure_policy_client_details_client_secret_version_number"],
                                ),
                                fallback_redirect_path=var["deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_validation_failure_policy_fallback_redirect_path"],
                                logout_path=var["deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_validation_failure_policy_logout_path"],
                                max_expiry_duration_in_hours=var["deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_validation_failure_policy_max_expiry_duration_in_hours"],
                                response_code=var["deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_validation_failure_policy_response_code"],
                                response_header_transformations=oci.api_gateway.DeploymentSpecificationRequestPoliciesDynamicAuthenticationAuthenticationServerAuthenticationServerDetailValidationFailurePolicyResponseHeaderTransformationsArgs(
                                    filter_headers=oci.api_gateway.DeploymentSpecificationRequestPoliciesDynamicAuthenticationAuthenticationServerAuthenticationServerDetailValidationFailurePolicyResponseHeaderTransformationsFilterHeadersArgs(
                                        items=[oci.api_gateway.DeploymentSpecificationRequestPoliciesDynamicAuthenticationAuthenticationServerAuthenticationServerDetailValidationFailurePolicyResponseHeaderTransformationsFilterHeadersItemArgs(
                                            name=var["deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_validation_failure_policy_response_header_transformations_filter_headers_items_name"],
                                        )],
                                        type=var["deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_validation_failure_policy_response_header_transformations_filter_headers_type"],
                                    ),
                                    rename_headers=oci.api_gateway.DeploymentSpecificationRequestPoliciesDynamicAuthenticationAuthenticationServerAuthenticationServerDetailValidationFailurePolicyResponseHeaderTransformationsRenameHeadersArgs(
                                        items=[oci.api_gateway.DeploymentSpecificationRequestPoliciesDynamicAuthenticationAuthenticationServerAuthenticationServerDetailValidationFailurePolicyResponseHeaderTransformationsRenameHeadersItemArgs(
                                            from_=var["deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_validation_failure_policy_response_header_transformations_rename_headers_items_from"],
                                            to=var["deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_validation_failure_policy_response_header_transformations_rename_headers_items_to"],
                                        )],
                                    ),
                                    set_headers=oci.api_gateway.DeploymentSpecificationRequestPoliciesDynamicAuthenticationAuthenticationServerAuthenticationServerDetailValidationFailurePolicyResponseHeaderTransformationsSetHeadersArgs(
                                        items=[oci.api_gateway.DeploymentSpecificationRequestPoliciesDynamicAuthenticationAuthenticationServerAuthenticationServerDetailValidationFailurePolicyResponseHeaderTransformationsSetHeadersItemArgs(
                                            if_exists=var["deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_validation_failure_policy_response_header_transformations_set_headers_items_if_exists"],
                                            name=var["deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_validation_failure_policy_response_header_transformations_set_headers_items_name"],
                                            values=var["deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_validation_failure_policy_response_header_transformations_set_headers_items_values"],
                                        )],
                                    ),
                                ),
                                response_message=var["deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_validation_failure_policy_response_message"],
                                response_type=var["deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_validation_failure_policy_response_type"],
                                scopes=var["deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_validation_failure_policy_scopes"],
                                source_uri_details=oci.api_gateway.DeploymentSpecificationRequestPoliciesDynamicAuthenticationAuthenticationServerAuthenticationServerDetailValidationFailurePolicySourceUriDetailsArgs(
                                    type=var["deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_validation_failure_policy_source_uri_details_type"],
                                    uri=var["deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_validation_failure_policy_source_uri_details_uri"],
                                ),
                                use_cookies_for_intermediate_steps=var["deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_validation_failure_policy_use_cookies_for_intermediate_steps"],
                                use_cookies_for_session=var["deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_validation_failure_policy_use_cookies_for_session"],
                                use_pkce=var["deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_validation_failure_policy_use_pkce"],
                            ),
                            validation_policy=oci.api_gateway.DeploymentSpecificationRequestPoliciesDynamicAuthenticationAuthenticationServerAuthenticationServerDetailValidationPolicyArgs(
                                type=var["deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_validation_policy_type"],
                                additional_validation_policy=oci.api_gateway.DeploymentSpecificationRequestPoliciesDynamicAuthenticationAuthenticationServerAuthenticationServerDetailValidationPolicyAdditionalValidationPolicyArgs(
                                    audiences=var["deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_validation_policy_additional_validation_policy_audiences"],
                                    issuers=var["deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_validation_policy_additional_validation_policy_issuers"],
                                    verify_claims=[oci.api_gateway.DeploymentSpecificationRequestPoliciesDynamicAuthenticationAuthenticationServerAuthenticationServerDetailValidationPolicyAdditionalValidationPolicyVerifyClaimArgs(
                                        is_required=var["deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_validation_policy_additional_validation_policy_verify_claims_is_required"],
                                        key=var["deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_validation_policy_additional_validation_policy_verify_claims_key"],
                                        values=var["deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_validation_policy_additional_validation_policy_verify_claims_values"],
                                    )],
                                ),
                                client_details=oci.api_gateway.DeploymentSpecificationRequestPoliciesDynamicAuthenticationAuthenticationServerAuthenticationServerDetailValidationPolicyClientDetailsArgs(
                                    type=var["deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_validation_policy_client_details_type"],
                                    client_id=oci_apigateway_client["test_client"]["id"],
                                    client_secret_id=oci_vault_secret["test_secret"]["id"],
                                    client_secret_version_number=var["deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_validation_policy_client_details_client_secret_version_number"],
                                ),
                                is_ssl_verify_disabled=var["deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_validation_policy_is_ssl_verify_disabled"],
                                keys=[oci.api_gateway.DeploymentSpecificationRequestPoliciesDynamicAuthenticationAuthenticationServerAuthenticationServerDetailValidationPolicyKeyArgs(
                                    format=var["deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_validation_policy_keys_format"],
                                    alg=var["deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_validation_policy_keys_alg"],
                                    e=var["deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_validation_policy_keys_e"],
                                    key=var["deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_validation_policy_keys_key"],
                                    key_ops=var["deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_validation_policy_keys_key_ops"],
                                    kid=var["deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_validation_policy_keys_kid"],
                                    kty=var["deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_validation_policy_keys_kty"],
                                    n=var["deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_validation_policy_keys_n"],
                                    use=var["deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_validation_policy_keys_use"],
                                )],
                                max_cache_duration_in_hours=var["deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_validation_policy_max_cache_duration_in_hours"],
                                source_uri_details=oci.api_gateway.DeploymentSpecificationRequestPoliciesDynamicAuthenticationAuthenticationServerAuthenticationServerDetailValidationPolicySourceUriDetailsArgs(
                                    type=var["deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_validation_policy_source_uri_details_type"],
                                    uri=var["deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_validation_policy_source_uri_details_uri"],
                                ),
                                uri=var["deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_validation_policy_uri"],
                            ),
                            verify_claims=[oci.api_gateway.DeploymentSpecificationRequestPoliciesDynamicAuthenticationAuthenticationServerAuthenticationServerDetailVerifyClaimArgs(
                                is_required=var["deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_verify_claims_is_required"],
                                key=var["deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_verify_claims_key"],
                                values=var["deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_verify_claims_values"],
                            )],
                        ),
                        key=oci.api_gateway.DeploymentSpecificationRequestPoliciesDynamicAuthenticationAuthenticationServerKeyArgs(
                            name=var["deployment_specification_request_policies_dynamic_authentication_authentication_servers_key_name"],
                            expression=var["deployment_specification_request_policies_dynamic_authentication_authentication_servers_key_expression"],
                            is_default=var["deployment_specification_request_policies_dynamic_authentication_authentication_servers_key_is_default"],
                            type=var["deployment_specification_request_policies_dynamic_authentication_authentication_servers_key_type"],
                            values=var["deployment_specification_request_policies_dynamic_authentication_authentication_servers_key_values"],
                        ),
                    )],
                    selection_source=oci.api_gateway.DeploymentSpecificationRequestPoliciesDynamicAuthenticationSelectionSourceArgs(
                        selector=var["deployment_specification_request_policies_dynamic_authentication_selection_source_selector"],
                        type=var["deployment_specification_request_policies_dynamic_authentication_selection_source_type"],
                    ),
                ),
                mutual_tls=oci.api_gateway.DeploymentSpecificationRequestPoliciesMutualTlsArgs(
                    allowed_sans=var["deployment_specification_request_policies_mutual_tls_allowed_sans"],
                    is_verified_certificate_required=var["deployment_specification_request_policies_mutual_tls_is_verified_certificate_required"],
                ),
                rate_limiting=oci.api_gateway.DeploymentSpecificationRequestPoliciesRateLimitingArgs(
                    rate_in_requests_per_second=var["deployment_specification_request_policies_rate_limiting_rate_in_requests_per_second"],
                    rate_key=var["deployment_specification_request_policies_rate_limiting_rate_key"],
                ),
                usage_plans=oci.api_gateway.DeploymentSpecificationRequestPoliciesUsagePlansArgs(
                    token_locations=var["deployment_specification_request_policies_usage_plans_token_locations"],
                ),
            ),
            routes=[oci.api_gateway.DeploymentSpecificationRouteArgs(
                backend=oci.api_gateway.DeploymentSpecificationRouteBackendArgs(
                    type=var["deployment_specification_routes_backend_type"],
                    allowed_post_logout_uris=var["deployment_specification_routes_backend_allowed_post_logout_uris"],
                    body=var["deployment_specification_routes_backend_body"],
                    connect_timeout_in_seconds=var["deployment_specification_routes_backend_connect_timeout_in_seconds"],
                    function_id=oci_functions_function["test_function"]["id"],
                    headers=[oci.api_gateway.DeploymentSpecificationRouteBackendHeaderArgs(
                        name=var["deployment_specification_routes_backend_headers_name"],
                        value=var["deployment_specification_routes_backend_headers_value"],
                    )],
                    is_ssl_verify_disabled=var["deployment_specification_routes_backend_is_ssl_verify_disabled"],
                    post_logout_state=var["deployment_specification_routes_backend_post_logout_state"],
                    read_timeout_in_seconds=var["deployment_specification_routes_backend_read_timeout_in_seconds"],
                    routing_backends=[oci.api_gateway.DeploymentSpecificationRouteBackendRoutingBackendArgs(
                        backend=oci.api_gateway.DeploymentSpecificationRouteBackendRoutingBackendBackendArgs(
                            type=var["deployment_specification_routes_backend_routing_backends_backend_type"],
                            body=var["deployment_specification_routes_backend_routing_backends_backend_body"],
                            connect_timeout_in_seconds=var["deployment_specification_routes_backend_routing_backends_backend_connect_timeout_in_seconds"],
                            function_id=oci_functions_function["test_function"]["id"],
                            headers=[oci.api_gateway.DeploymentSpecificationRouteBackendRoutingBackendBackendHeaderArgs(
                                name=var["deployment_specification_routes_backend_routing_backends_backend_headers_name"],
                                value=var["deployment_specification_routes_backend_routing_backends_backend_headers_value"],
                            )],
                            is_ssl_verify_disabled=var["deployment_specification_routes_backend_routing_backends_backend_is_ssl_verify_disabled"],
                            read_timeout_in_seconds=var["deployment_specification_routes_backend_routing_backends_backend_read_timeout_in_seconds"],
                            send_timeout_in_seconds=var["deployment_specification_routes_backend_routing_backends_backend_send_timeout_in_seconds"],
                            status=var["deployment_specification_routes_backend_routing_backends_backend_status"],
                            url=var["deployment_specification_routes_backend_routing_backends_backend_url"],
                        ),
                        key=oci.api_gateway.DeploymentSpecificationRouteBackendRoutingBackendKeyArgs(
                            name=var["deployment_specification_routes_backend_routing_backends_key_name"],
                            type=var["deployment_specification_request_policies_dynamic_authentication_authentication_servers_key_type"],
                            expression=var["deployment_specification_request_policies_dynamic_authentication_authentication_servers_key_expression"],
                            is_default=var["deployment_specification_request_policies_dynamic_authentication_authentication_servers_key_is_default"],
                            values=var["deployment_specification_request_policies_dynamic_authentication_authentication_servers_key_values"],
                        ),
                    )],
                    selection_source=oci.api_gateway.DeploymentSpecificationRouteBackendSelectionSourceArgs(
                        selector=var["deployment_specification_routes_backend_selection_source_selector"],
                        type=var["deployment_specification_routes_backend_selection_source_type"],
                    ),
                    send_timeout_in_seconds=var["deployment_specification_routes_backend_send_timeout_in_seconds"],
                    status=var["deployment_specification_routes_backend_status"],
                    url=var["deployment_specification_routes_backend_url"],
                ),
                path=var["deployment_specification_routes_path"],
                logging_policies=oci.api_gateway.DeploymentSpecificationRouteLoggingPoliciesArgs(
                    access_log=oci.api_gateway.DeploymentSpecificationRouteLoggingPoliciesAccessLogArgs(
                        is_enabled=var["deployment_specification_routes_logging_policies_access_log_is_enabled"],
                    ),
                    execution_log=oci.api_gateway.DeploymentSpecificationRouteLoggingPoliciesExecutionLogArgs(
                        is_enabled=var["deployment_specification_routes_logging_policies_execution_log_is_enabled"],
                        log_level=var["deployment_specification_routes_logging_policies_execution_log_log_level"],
                    ),
                ),
                methods=var["deployment_specification_routes_methods"],
                request_policies=oci.api_gateway.DeploymentSpecificationRouteRequestPoliciesArgs(
                    authorization=oci.api_gateway.DeploymentSpecificationRouteRequestPoliciesAuthorizationArgs(
                        allowed_scopes=var["deployment_specification_routes_request_policies_authorization_allowed_scope"],
                        type=var["deployment_specification_routes_request_policies_authorization_type"],
                    ),
                    body_validation=oci.api_gateway.DeploymentSpecificationRouteRequestPoliciesBodyValidationArgs(
                        contents=[oci.api_gateway.DeploymentSpecificationRouteRequestPoliciesBodyValidationContentArgs(
                            media_type=var["deployment_specification_routes_request_policies_body_validation_content_media_type"],
                            validation_type=var["deployment_specification_routes_request_policies_body_validation_content_validation_type"],
                        )],
                        required=var["deployment_specification_routes_request_policies_body_validation_required"],
                        validation_mode=var["deployment_specification_routes_request_policies_body_validation_validation_mode"],
                    ),
                    cors=oci.api_gateway.DeploymentSpecificationRouteRequestPoliciesCorsArgs(
                        allowed_origins=var["deployment_specification_routes_request_policies_cors_allowed_origins"],
                        allowed_headers=var["deployment_specification_routes_request_policies_cors_allowed_headers"],
                        allowed_methods=var["deployment_specification_routes_request_policies_cors_allowed_methods"],
                        exposed_headers=var["deployment_specification_routes_request_policies_cors_exposed_headers"],
                        is_allow_credentials_enabled=var["deployment_specification_routes_request_policies_cors_is_allow_credentials_enabled"],
                        max_age_in_seconds=var["deployment_specification_routes_request_policies_cors_max_age_in_seconds"],
                    ),
                    header_transformations=oci.api_gateway.DeploymentSpecificationRouteRequestPoliciesHeaderTransformationsArgs(
                        filter_headers=oci.api_gateway.DeploymentSpecificationRouteRequestPoliciesHeaderTransformationsFilterHeadersArgs(
                            items=[oci.api_gateway.DeploymentSpecificationRouteRequestPoliciesHeaderTransformationsFilterHeadersItemArgs(
                                name=var["deployment_specification_routes_request_policies_header_transformations_filter_headers_items_name"],
                            )],
                            type=var["deployment_specification_routes_request_policies_header_transformations_filter_headers_type"],
                        ),
                        rename_headers=oci.api_gateway.DeploymentSpecificationRouteRequestPoliciesHeaderTransformationsRenameHeadersArgs(
                            items=[oci.api_gateway.DeploymentSpecificationRouteRequestPoliciesHeaderTransformationsRenameHeadersItemArgs(
                                from_=var["deployment_specification_routes_request_policies_header_transformations_rename_headers_items_from"],
                                to=var["deployment_specification_routes_request_policies_header_transformations_rename_headers_items_to"],
                            )],
                        ),
                        set_headers=oci.api_gateway.DeploymentSpecificationRouteRequestPoliciesHeaderTransformationsSetHeadersArgs(
                            items=[oci.api_gateway.DeploymentSpecificationRouteRequestPoliciesHeaderTransformationsSetHeadersItemArgs(
                                name=var["deployment_specification_routes_request_policies_header_transformations_set_headers_items_name"],
                                values=var["deployment_specification_routes_request_policies_header_transformations_set_headers_items_values"],
                                if_exists=var["deployment_specification_routes_request_policies_header_transformations_set_headers_items_if_exists"],
                            )],
                        ),
                    ),
                    header_validations=oci.api_gateway.DeploymentSpecificationRouteRequestPoliciesHeaderValidationsArgs(
                        headers=[oci.api_gateway.DeploymentSpecificationRouteRequestPoliciesHeaderValidationsHeaderArgs(
                            name=var["deployment_specification_routes_request_policies_header_validations_headers_name"],
                            required=var["deployment_specification_routes_request_policies_header_validations_headers_required"],
                        )],
                        validation_mode=var["deployment_specification_routes_request_policies_header_validations_validation_mode"],
                    ),
                    query_parameter_transformations=oci.api_gateway.DeploymentSpecificationRouteRequestPoliciesQueryParameterTransformationsArgs(
                        filter_query_parameters=oci.api_gateway.DeploymentSpecificationRouteRequestPoliciesQueryParameterTransformationsFilterQueryParametersArgs(
                            items=[oci.api_gateway.DeploymentSpecificationRouteRequestPoliciesQueryParameterTransformationsFilterQueryParametersItemArgs(
                                name=var["deployment_specification_routes_request_policies_query_parameter_transformations_filter_query_parameters_items_name"],
                            )],
                            type=var["deployment_specification_routes_request_policies_query_parameter_transformations_filter_query_parameters_type"],
                        ),
                        rename_query_parameters=oci.api_gateway.DeploymentSpecificationRouteRequestPoliciesQueryParameterTransformationsRenameQueryParametersArgs(
                            items=[oci.api_gateway.DeploymentSpecificationRouteRequestPoliciesQueryParameterTransformationsRenameQueryParametersItemArgs(
                                from_=var["deployment_specification_routes_request_policies_query_parameter_transformations_rename_query_parameters_items_from"],
                                to=var["deployment_specification_routes_request_policies_query_parameter_transformations_rename_query_parameters_items_to"],
                            )],
                        ),
                        set_query_parameters=oci.api_gateway.DeploymentSpecificationRouteRequestPoliciesQueryParameterTransformationsSetQueryParametersArgs(
                            items=[oci.api_gateway.DeploymentSpecificationRouteRequestPoliciesQueryParameterTransformationsSetQueryParametersItemArgs(
                                name=var["deployment_specification_routes_request_policies_query_parameter_transformations_set_query_parameters_items_name"],
                                values=var["deployment_specification_routes_request_policies_query_parameter_transformations_set_query_parameters_items_values"],
                                if_exists=var["deployment_specification_routes_request_policies_query_parameter_transformations_set_query_parameters_items_if_exists"],
                            )],
                        ),
                    ),
                    query_parameter_validations=oci.api_gateway.DeploymentSpecificationRouteRequestPoliciesQueryParameterValidationsArgs(
                        parameters=[oci.api_gateway.DeploymentSpecificationRouteRequestPoliciesQueryParameterValidationsParameterArgs(
                            name=var["deployment_specification_routes_request_policies_query_parameter_validations_parameters_name"],
                            required=var["deployment_specification_routes_request_policies_query_parameter_validations_parameters_required"],
                        )],
                        validation_mode=var["deployment_specification_routes_request_policies_query_parameter_validations_validation_mode"],
                    ),
                    response_cache_lookup=oci.api_gateway.DeploymentSpecificationRouteRequestPoliciesResponseCacheLookupArgs(
                        type=var["deployment_specification_routes_request_policies_response_cache_lookup_type"],
                        cache_key_additions=var["deployment_specification_routes_request_policies_response_cache_lookup_cache_key_additions"],
                        is_enabled=var["deployment_specification_routes_request_policies_response_cache_lookup_is_enabled"],
                        is_private_caching_enabled=var["deployment_specification_routes_request_policies_response_cache_lookup_is_private_caching_enabled"],
                    ),
                ),
                response_policies=oci.api_gateway.DeploymentSpecificationRouteResponsePoliciesArgs(
                    header_transformations=oci.api_gateway.DeploymentSpecificationRouteResponsePoliciesHeaderTransformationsArgs(
                        filter_headers=oci.api_gateway.DeploymentSpecificationRouteResponsePoliciesHeaderTransformationsFilterHeadersArgs(
                            items=[oci.api_gateway.DeploymentSpecificationRouteResponsePoliciesHeaderTransformationsFilterHeadersItemArgs(
                                name=var["deployment_specification_routes_response_policies_header_transformations_filter_headers_items_name"],
                            )],
                            type=var["deployment_specification_routes_response_policies_header_transformations_filter_headers_type"],
                        ),
                        rename_headers=oci.api_gateway.DeploymentSpecificationRouteResponsePoliciesHeaderTransformationsRenameHeadersArgs(
                            items=[oci.api_gateway.DeploymentSpecificationRouteResponsePoliciesHeaderTransformationsRenameHeadersItemArgs(
                                from_=var["deployment_specification_routes_response_policies_header_transformations_rename_headers_items_from"],
                                to=var["deployment_specification_routes_response_policies_header_transformations_rename_headers_items_to"],
                            )],
                        ),
                        set_headers=oci.api_gateway.DeploymentSpecificationRouteResponsePoliciesHeaderTransformationsSetHeadersArgs(
                            items=[oci.api_gateway.DeploymentSpecificationRouteResponsePoliciesHeaderTransformationsSetHeadersItemArgs(
                                name=var["deployment_specification_routes_response_policies_header_transformations_set_headers_items_name"],
                                values=var["deployment_specification_routes_response_policies_header_transformations_set_headers_items_values"],
                                if_exists=var["deployment_specification_routes_response_policies_header_transformations_set_headers_items_if_exists"],
                            )],
                        ),
                    ),
                    response_cache_store=oci.api_gateway.DeploymentSpecificationRouteResponsePoliciesResponseCacheStoreArgs(
                        time_to_live_in_seconds=var["deployment_specification_routes_response_policies_response_cache_store_time_to_live_in_seconds"],
                        type=var["deployment_specification_routes_response_policies_response_cache_store_type"],
                    ),
                ),
            )],
        ),
        defined_tags={
            "Operations.CostCenter": "42",
        },
        display_name=var["deployment_display_name"],
        freeform_tags={
            "Department": "Finance",
        })
    
    import * as pulumi from "@pulumi/pulumi";
    import * as oci from "@pulumi/oci";
    
    const testDeployment = new oci.apigateway.Deployment("testDeployment", {
        compartmentId: _var.compartment_id,
        gatewayId: oci_apigateway_gateway.test_gateway.id,
        pathPrefix: _var.deployment_path_prefix,
        specification: {
            loggingPolicies: {
                accessLog: {
                    isEnabled: _var.deployment_specification_logging_policies_access_log_is_enabled,
                },
                executionLog: {
                    isEnabled: _var.deployment_specification_logging_policies_execution_log_is_enabled,
                    logLevel: _var.deployment_specification_logging_policies_execution_log_log_level,
                },
            },
            requestPolicies: {
                authentication: {
                    type: _var.deployment_specification_request_policies_authentication_type,
                    audiences: _var.deployment_specification_request_policies_authentication_audiences,
                    cacheKeys: _var.deployment_specification_request_policies_authentication_cache_key,
                    functionId: oci_functions_function.test_function.id,
                    isAnonymousAccessAllowed: _var.deployment_specification_request_policies_authentication_is_anonymous_access_allowed,
                    issuers: _var.deployment_specification_request_policies_authentication_issuers,
                    maxClockSkewInSeconds: _var.deployment_specification_request_policies_authentication_max_clock_skew_in_seconds,
                    parameters: _var.deployment_specification_request_policies_authentication_parameters,
                    publicKeys: {
                        type: _var.deployment_specification_request_policies_authentication_public_keys_type,
                        isSslVerifyDisabled: _var.deployment_specification_request_policies_authentication_public_keys_is_ssl_verify_disabled,
                        keys: [{
                            format: _var.deployment_specification_request_policies_authentication_public_keys_keys_format,
                            alg: _var.deployment_specification_request_policies_authentication_public_keys_keys_alg,
                            e: _var.deployment_specification_request_policies_authentication_public_keys_keys_e,
                            key: _var.deployment_specification_request_policies_authentication_public_keys_keys_key,
                            keyOps: _var.deployment_specification_request_policies_authentication_public_keys_keys_key_ops,
                            kid: _var.deployment_specification_request_policies_authentication_public_keys_keys_kid,
                            kty: _var.deployment_specification_request_policies_authentication_public_keys_keys_kty,
                            n: _var.deployment_specification_request_policies_authentication_public_keys_keys_n,
                            use: _var.deployment_specification_request_policies_authentication_public_keys_keys_use,
                        }],
                        maxCacheDurationInHours: _var.deployment_specification_request_policies_authentication_public_keys_max_cache_duration_in_hours,
                        uri: _var.deployment_specification_request_policies_authentication_public_keys_uri,
                    },
                    tokenAuthScheme: _var.deployment_specification_request_policies_authentication_token_auth_scheme,
                    tokenHeader: _var.deployment_specification_request_policies_authentication_token_header,
                    tokenQueryParam: _var.deployment_specification_request_policies_authentication_token_query_param,
                    validationFailurePolicy: {
                        type: _var.deployment_specification_request_policies_authentication_validation_failure_policy_type,
                        clientDetails: {
                            type: _var.deployment_specification_request_policies_authentication_validation_failure_policy_client_details_type,
                            clientId: oci_apigateway_client.test_client.id,
                            clientSecretId: oci_vault_secret.test_secret.id,
                            clientSecretVersionNumber: _var.deployment_specification_request_policies_authentication_validation_failure_policy_client_details_client_secret_version_number,
                        },
                        fallbackRedirectPath: _var.deployment_specification_request_policies_authentication_validation_failure_policy_fallback_redirect_path,
                        logoutPath: _var.deployment_specification_request_policies_authentication_validation_failure_policy_logout_path,
                        maxExpiryDurationInHours: _var.deployment_specification_request_policies_authentication_validation_failure_policy_max_expiry_duration_in_hours,
                        responseCode: _var.deployment_specification_request_policies_authentication_validation_failure_policy_response_code,
                        responseHeaderTransformations: {
                            filterHeaders: {
                                items: [{
                                    name: _var.deployment_specification_request_policies_authentication_validation_failure_policy_response_header_transformations_filter_headers_items_name,
                                }],
                                type: _var.deployment_specification_request_policies_authentication_validation_failure_policy_response_header_transformations_filter_headers_type,
                            },
                            renameHeaders: {
                                items: [{
                                    from: _var.deployment_specification_request_policies_authentication_validation_failure_policy_response_header_transformations_rename_headers_items_from,
                                    to: _var.deployment_specification_request_policies_authentication_validation_failure_policy_response_header_transformations_rename_headers_items_to,
                                }],
                            },
                            setHeaders: {
                                items: [{
                                    ifExists: _var.deployment_specification_request_policies_authentication_validation_failure_policy_response_header_transformations_set_headers_items_if_exists,
                                    name: _var.deployment_specification_request_policies_authentication_validation_failure_policy_response_header_transformations_set_headers_items_name,
                                    values: _var.deployment_specification_request_policies_authentication_validation_failure_policy_response_header_transformations_set_headers_items_values,
                                }],
                            },
                        },
                        responseMessage: _var.deployment_specification_request_policies_authentication_validation_failure_policy_response_message,
                        responseType: _var.deployment_specification_request_policies_authentication_validation_failure_policy_response_type,
                        scopes: _var.deployment_specification_request_policies_authentication_validation_failure_policy_scopes,
                        sourceUriDetails: {
                            type: _var.deployment_specification_request_policies_authentication_validation_failure_policy_source_uri_details_type,
                            uri: _var.deployment_specification_request_policies_authentication_validation_failure_policy_source_uri_details_uri,
                        },
                        useCookiesForIntermediateSteps: _var.deployment_specification_request_policies_authentication_validation_failure_policy_use_cookies_for_intermediate_steps,
                        useCookiesForSession: _var.deployment_specification_request_policies_authentication_validation_failure_policy_use_cookies_for_session,
                        usePkce: _var.deployment_specification_request_policies_authentication_validation_failure_policy_use_pkce,
                    },
                    validationPolicy: {
                        type: _var.deployment_specification_request_policies_authentication_validation_policy_type,
                        additionalValidationPolicy: {
                            audiences: _var.deployment_specification_request_policies_authentication_validation_policy_additional_validation_policy_audiences,
                            issuers: _var.deployment_specification_request_policies_authentication_validation_policy_additional_validation_policy_issuers,
                            verifyClaims: [{
                                isRequired: _var.deployment_specification_request_policies_authentication_validation_policy_additional_validation_policy_verify_claims_is_required,
                                key: _var.deployment_specification_request_policies_authentication_validation_policy_additional_validation_policy_verify_claims_key,
                                values: _var.deployment_specification_request_policies_authentication_validation_policy_additional_validation_policy_verify_claims_values,
                            }],
                        },
                        clientDetails: {
                            type: _var.deployment_specification_request_policies_authentication_validation_policy_client_details_type,
                            clientId: oci_apigateway_client.test_client.id,
                            clientSecretId: oci_vault_secret.test_secret.id,
                            clientSecretVersionNumber: _var.deployment_specification_request_policies_authentication_validation_policy_client_details_client_secret_version_number,
                        },
                        isSslVerifyDisabled: _var.deployment_specification_request_policies_authentication_validation_policy_is_ssl_verify_disabled,
                        keys: [{
                            format: _var.deployment_specification_request_policies_authentication_validation_policy_keys_format,
                            alg: _var.deployment_specification_request_policies_authentication_validation_policy_keys_alg,
                            e: _var.deployment_specification_request_policies_authentication_validation_policy_keys_e,
                            key: _var.deployment_specification_request_policies_authentication_validation_policy_keys_key,
                            keyOps: _var.deployment_specification_request_policies_authentication_validation_policy_keys_key_ops,
                            kid: _var.deployment_specification_request_policies_authentication_validation_policy_keys_kid,
                            kty: _var.deployment_specification_request_policies_authentication_validation_policy_keys_kty,
                            n: _var.deployment_specification_request_policies_authentication_validation_policy_keys_n,
                            use: _var.deployment_specification_request_policies_authentication_validation_policy_keys_use,
                        }],
                        maxCacheDurationInHours: _var.deployment_specification_request_policies_authentication_validation_policy_max_cache_duration_in_hours,
                        sourceUriDetails: {
                            type: _var.deployment_specification_request_policies_authentication_validation_policy_source_uri_details_type,
                            uri: _var.deployment_specification_request_policies_authentication_validation_policy_source_uri_details_uri,
                        },
                        uri: _var.deployment_specification_request_policies_authentication_validation_policy_uri,
                    },
                    verifyClaims: [{
                        isRequired: _var.deployment_specification_request_policies_authentication_verify_claims_is_required,
                        key: _var.deployment_specification_request_policies_authentication_verify_claims_key,
                        values: _var.deployment_specification_request_policies_authentication_verify_claims_values,
                    }],
                },
                cors: {
                    allowedOrigins: _var.deployment_specification_request_policies_cors_allowed_origins,
                    allowedHeaders: _var.deployment_specification_request_policies_cors_allowed_headers,
                    allowedMethods: _var.deployment_specification_request_policies_cors_allowed_methods,
                    exposedHeaders: _var.deployment_specification_request_policies_cors_exposed_headers,
                    isAllowCredentialsEnabled: _var.deployment_specification_request_policies_cors_is_allow_credentials_enabled,
                    maxAgeInSeconds: _var.deployment_specification_request_policies_cors_max_age_in_seconds,
                },
                dynamicAuthentication: {
                    authenticationServers: [{
                        authenticationServerDetail: {
                            type: _var.deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_type,
                            audiences: _var.deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_audiences,
                            functionId: oci_functions_function.test_function.id,
                            isAnonymousAccessAllowed: _var.deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_is_anonymous_access_allowed,
                            issuers: _var.deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_issuers,
                            maxClockSkewInSeconds: _var.deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_max_clock_skew_in_seconds,
                            publicKeys: {
                                type: _var.deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_public_keys_type,
                                isSslVerifyDisabled: _var.deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_public_keys_is_ssl_verify_disabled,
                                keys: [{
                                    format: _var.deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_public_keys_keys_format,
                                    alg: _var.deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_public_keys_keys_alg,
                                    e: _var.deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_public_keys_keys_e,
                                    key: _var.deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_public_keys_keys_key,
                                    keyOps: _var.deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_public_keys_keys_key_ops,
                                    kid: _var.deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_public_keys_keys_kid,
                                    kty: _var.deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_public_keys_keys_kty,
                                    n: _var.deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_public_keys_keys_n,
                                    use: _var.deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_public_keys_keys_use,
                                }],
                                maxCacheDurationInHours: _var.deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_public_keys_max_cache_duration_in_hours,
                                uri: _var.deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_public_keys_uri,
                            },
                            tokenAuthScheme: _var.deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_token_auth_scheme,
                            tokenHeader: _var.deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_token_header,
                            tokenQueryParam: _var.deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_token_query_param,
                            validationFailurePolicy: {
                                type: _var.deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_validation_failure_policy_type,
                                clientDetails: {
                                    type: _var.deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_validation_failure_policy_client_details_type,
                                    clientId: oci_apigateway_client.test_client.id,
                                    clientSecretId: oci_vault_secret.test_secret.id,
                                    clientSecretVersionNumber: _var.deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_validation_failure_policy_client_details_client_secret_version_number,
                                },
                                fallbackRedirectPath: _var.deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_validation_failure_policy_fallback_redirect_path,
                                logoutPath: _var.deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_validation_failure_policy_logout_path,
                                maxExpiryDurationInHours: _var.deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_validation_failure_policy_max_expiry_duration_in_hours,
                                responseCode: _var.deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_validation_failure_policy_response_code,
                                responseHeaderTransformations: {
                                    filterHeaders: {
                                        items: [{
                                            name: _var.deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_validation_failure_policy_response_header_transformations_filter_headers_items_name,
                                        }],
                                        type: _var.deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_validation_failure_policy_response_header_transformations_filter_headers_type,
                                    },
                                    renameHeaders: {
                                        items: [{
                                            from: _var.deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_validation_failure_policy_response_header_transformations_rename_headers_items_from,
                                            to: _var.deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_validation_failure_policy_response_header_transformations_rename_headers_items_to,
                                        }],
                                    },
                                    setHeaders: {
                                        items: [{
                                            ifExists: _var.deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_validation_failure_policy_response_header_transformations_set_headers_items_if_exists,
                                            name: _var.deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_validation_failure_policy_response_header_transformations_set_headers_items_name,
                                            values: _var.deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_validation_failure_policy_response_header_transformations_set_headers_items_values,
                                        }],
                                    },
                                },
                                responseMessage: _var.deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_validation_failure_policy_response_message,
                                responseType: _var.deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_validation_failure_policy_response_type,
                                scopes: _var.deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_validation_failure_policy_scopes,
                                sourceUriDetails: {
                                    type: _var.deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_validation_failure_policy_source_uri_details_type,
                                    uri: _var.deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_validation_failure_policy_source_uri_details_uri,
                                },
                                useCookiesForIntermediateSteps: _var.deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_validation_failure_policy_use_cookies_for_intermediate_steps,
                                useCookiesForSession: _var.deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_validation_failure_policy_use_cookies_for_session,
                                usePkce: _var.deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_validation_failure_policy_use_pkce,
                            },
                            validationPolicy: {
                                type: _var.deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_validation_policy_type,
                                additionalValidationPolicy: {
                                    audiences: _var.deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_validation_policy_additional_validation_policy_audiences,
                                    issuers: _var.deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_validation_policy_additional_validation_policy_issuers,
                                    verifyClaims: [{
                                        isRequired: _var.deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_validation_policy_additional_validation_policy_verify_claims_is_required,
                                        key: _var.deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_validation_policy_additional_validation_policy_verify_claims_key,
                                        values: _var.deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_validation_policy_additional_validation_policy_verify_claims_values,
                                    }],
                                },
                                clientDetails: {
                                    type: _var.deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_validation_policy_client_details_type,
                                    clientId: oci_apigateway_client.test_client.id,
                                    clientSecretId: oci_vault_secret.test_secret.id,
                                    clientSecretVersionNumber: _var.deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_validation_policy_client_details_client_secret_version_number,
                                },
                                isSslVerifyDisabled: _var.deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_validation_policy_is_ssl_verify_disabled,
                                keys: [{
                                    format: _var.deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_validation_policy_keys_format,
                                    alg: _var.deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_validation_policy_keys_alg,
                                    e: _var.deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_validation_policy_keys_e,
                                    key: _var.deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_validation_policy_keys_key,
                                    keyOps: _var.deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_validation_policy_keys_key_ops,
                                    kid: _var.deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_validation_policy_keys_kid,
                                    kty: _var.deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_validation_policy_keys_kty,
                                    n: _var.deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_validation_policy_keys_n,
                                    use: _var.deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_validation_policy_keys_use,
                                }],
                                maxCacheDurationInHours: _var.deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_validation_policy_max_cache_duration_in_hours,
                                sourceUriDetails: {
                                    type: _var.deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_validation_policy_source_uri_details_type,
                                    uri: _var.deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_validation_policy_source_uri_details_uri,
                                },
                                uri: _var.deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_validation_policy_uri,
                            },
                            verifyClaims: [{
                                isRequired: _var.deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_verify_claims_is_required,
                                key: _var.deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_verify_claims_key,
                                values: _var.deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_verify_claims_values,
                            }],
                        },
                        key: {
                            name: _var.deployment_specification_request_policies_dynamic_authentication_authentication_servers_key_name,
                            expression: _var.deployment_specification_request_policies_dynamic_authentication_authentication_servers_key_expression,
                            isDefault: _var.deployment_specification_request_policies_dynamic_authentication_authentication_servers_key_is_default,
                            type: _var.deployment_specification_request_policies_dynamic_authentication_authentication_servers_key_type,
                            values: _var.deployment_specification_request_policies_dynamic_authentication_authentication_servers_key_values,
                        },
                    }],
                    selectionSource: {
                        selector: _var.deployment_specification_request_policies_dynamic_authentication_selection_source_selector,
                        type: _var.deployment_specification_request_policies_dynamic_authentication_selection_source_type,
                    },
                },
                mutualTls: {
                    allowedSans: _var.deployment_specification_request_policies_mutual_tls_allowed_sans,
                    isVerifiedCertificateRequired: _var.deployment_specification_request_policies_mutual_tls_is_verified_certificate_required,
                },
                rateLimiting: {
                    rateInRequestsPerSecond: _var.deployment_specification_request_policies_rate_limiting_rate_in_requests_per_second,
                    rateKey: _var.deployment_specification_request_policies_rate_limiting_rate_key,
                },
                usagePlans: {
                    tokenLocations: _var.deployment_specification_request_policies_usage_plans_token_locations,
                },
            },
            routes: [{
                backend: {
                    type: _var.deployment_specification_routes_backend_type,
                    allowedPostLogoutUris: _var.deployment_specification_routes_backend_allowed_post_logout_uris,
                    body: _var.deployment_specification_routes_backend_body,
                    connectTimeoutInSeconds: _var.deployment_specification_routes_backend_connect_timeout_in_seconds,
                    functionId: oci_functions_function.test_function.id,
                    headers: [{
                        name: _var.deployment_specification_routes_backend_headers_name,
                        value: _var.deployment_specification_routes_backend_headers_value,
                    }],
                    isSslVerifyDisabled: _var.deployment_specification_routes_backend_is_ssl_verify_disabled,
                    postLogoutState: _var.deployment_specification_routes_backend_post_logout_state,
                    readTimeoutInSeconds: _var.deployment_specification_routes_backend_read_timeout_in_seconds,
                    routingBackends: [{
                        backend: {
                            type: _var.deployment_specification_routes_backend_routing_backends_backend_type,
                            body: _var.deployment_specification_routes_backend_routing_backends_backend_body,
                            connectTimeoutInSeconds: _var.deployment_specification_routes_backend_routing_backends_backend_connect_timeout_in_seconds,
                            functionId: oci_functions_function.test_function.id,
                            headers: [{
                                name: _var.deployment_specification_routes_backend_routing_backends_backend_headers_name,
                                value: _var.deployment_specification_routes_backend_routing_backends_backend_headers_value,
                            }],
                            isSslVerifyDisabled: _var.deployment_specification_routes_backend_routing_backends_backend_is_ssl_verify_disabled,
                            readTimeoutInSeconds: _var.deployment_specification_routes_backend_routing_backends_backend_read_timeout_in_seconds,
                            sendTimeoutInSeconds: _var.deployment_specification_routes_backend_routing_backends_backend_send_timeout_in_seconds,
                            status: _var.deployment_specification_routes_backend_routing_backends_backend_status,
                            url: _var.deployment_specification_routes_backend_routing_backends_backend_url,
                        },
                        key: {
                            name: _var.deployment_specification_routes_backend_routing_backends_key_name,
                            type: _var.deployment_specification_request_policies_dynamic_authentication_authentication_servers_key_type,
                            expression: _var.deployment_specification_request_policies_dynamic_authentication_authentication_servers_key_expression,
                            isDefault: _var.deployment_specification_request_policies_dynamic_authentication_authentication_servers_key_is_default,
                            values: _var.deployment_specification_request_policies_dynamic_authentication_authentication_servers_key_values,
                        },
                    }],
                    selectionSource: {
                        selector: _var.deployment_specification_routes_backend_selection_source_selector,
                        type: _var.deployment_specification_routes_backend_selection_source_type,
                    },
                    sendTimeoutInSeconds: _var.deployment_specification_routes_backend_send_timeout_in_seconds,
                    status: _var.deployment_specification_routes_backend_status,
                    url: _var.deployment_specification_routes_backend_url,
                },
                path: _var.deployment_specification_routes_path,
                loggingPolicies: {
                    accessLog: {
                        isEnabled: _var.deployment_specification_routes_logging_policies_access_log_is_enabled,
                    },
                    executionLog: {
                        isEnabled: _var.deployment_specification_routes_logging_policies_execution_log_is_enabled,
                        logLevel: _var.deployment_specification_routes_logging_policies_execution_log_log_level,
                    },
                },
                methods: _var.deployment_specification_routes_methods,
                requestPolicies: {
                    authorization: {
                        allowedScopes: _var.deployment_specification_routes_request_policies_authorization_allowed_scope,
                        type: _var.deployment_specification_routes_request_policies_authorization_type,
                    },
                    bodyValidation: {
                        contents: [{
                            mediaType: _var.deployment_specification_routes_request_policies_body_validation_content_media_type,
                            validationType: _var.deployment_specification_routes_request_policies_body_validation_content_validation_type,
                        }],
                        required: _var.deployment_specification_routes_request_policies_body_validation_required,
                        validationMode: _var.deployment_specification_routes_request_policies_body_validation_validation_mode,
                    },
                    cors: {
                        allowedOrigins: _var.deployment_specification_routes_request_policies_cors_allowed_origins,
                        allowedHeaders: _var.deployment_specification_routes_request_policies_cors_allowed_headers,
                        allowedMethods: _var.deployment_specification_routes_request_policies_cors_allowed_methods,
                        exposedHeaders: _var.deployment_specification_routes_request_policies_cors_exposed_headers,
                        isAllowCredentialsEnabled: _var.deployment_specification_routes_request_policies_cors_is_allow_credentials_enabled,
                        maxAgeInSeconds: _var.deployment_specification_routes_request_policies_cors_max_age_in_seconds,
                    },
                    headerTransformations: {
                        filterHeaders: {
                            items: [{
                                name: _var.deployment_specification_routes_request_policies_header_transformations_filter_headers_items_name,
                            }],
                            type: _var.deployment_specification_routes_request_policies_header_transformations_filter_headers_type,
                        },
                        renameHeaders: {
                            items: [{
                                from: _var.deployment_specification_routes_request_policies_header_transformations_rename_headers_items_from,
                                to: _var.deployment_specification_routes_request_policies_header_transformations_rename_headers_items_to,
                            }],
                        },
                        setHeaders: {
                            items: [{
                                name: _var.deployment_specification_routes_request_policies_header_transformations_set_headers_items_name,
                                values: _var.deployment_specification_routes_request_policies_header_transformations_set_headers_items_values,
                                ifExists: _var.deployment_specification_routes_request_policies_header_transformations_set_headers_items_if_exists,
                            }],
                        },
                    },
                    headerValidations: {
                        headers: [{
                            name: _var.deployment_specification_routes_request_policies_header_validations_headers_name,
                            required: _var.deployment_specification_routes_request_policies_header_validations_headers_required,
                        }],
                        validationMode: _var.deployment_specification_routes_request_policies_header_validations_validation_mode,
                    },
                    queryParameterTransformations: {
                        filterQueryParameters: {
                            items: [{
                                name: _var.deployment_specification_routes_request_policies_query_parameter_transformations_filter_query_parameters_items_name,
                            }],
                            type: _var.deployment_specification_routes_request_policies_query_parameter_transformations_filter_query_parameters_type,
                        },
                        renameQueryParameters: {
                            items: [{
                                from: _var.deployment_specification_routes_request_policies_query_parameter_transformations_rename_query_parameters_items_from,
                                to: _var.deployment_specification_routes_request_policies_query_parameter_transformations_rename_query_parameters_items_to,
                            }],
                        },
                        setQueryParameters: {
                            items: [{
                                name: _var.deployment_specification_routes_request_policies_query_parameter_transformations_set_query_parameters_items_name,
                                values: _var.deployment_specification_routes_request_policies_query_parameter_transformations_set_query_parameters_items_values,
                                ifExists: _var.deployment_specification_routes_request_policies_query_parameter_transformations_set_query_parameters_items_if_exists,
                            }],
                        },
                    },
                    queryParameterValidations: {
                        parameters: [{
                            name: _var.deployment_specification_routes_request_policies_query_parameter_validations_parameters_name,
                            required: _var.deployment_specification_routes_request_policies_query_parameter_validations_parameters_required,
                        }],
                        validationMode: _var.deployment_specification_routes_request_policies_query_parameter_validations_validation_mode,
                    },
                    responseCacheLookup: {
                        type: _var.deployment_specification_routes_request_policies_response_cache_lookup_type,
                        cacheKeyAdditions: _var.deployment_specification_routes_request_policies_response_cache_lookup_cache_key_additions,
                        isEnabled: _var.deployment_specification_routes_request_policies_response_cache_lookup_is_enabled,
                        isPrivateCachingEnabled: _var.deployment_specification_routes_request_policies_response_cache_lookup_is_private_caching_enabled,
                    },
                },
                responsePolicies: {
                    headerTransformations: {
                        filterHeaders: {
                            items: [{
                                name: _var.deployment_specification_routes_response_policies_header_transformations_filter_headers_items_name,
                            }],
                            type: _var.deployment_specification_routes_response_policies_header_transformations_filter_headers_type,
                        },
                        renameHeaders: {
                            items: [{
                                from: _var.deployment_specification_routes_response_policies_header_transformations_rename_headers_items_from,
                                to: _var.deployment_specification_routes_response_policies_header_transformations_rename_headers_items_to,
                            }],
                        },
                        setHeaders: {
                            items: [{
                                name: _var.deployment_specification_routes_response_policies_header_transformations_set_headers_items_name,
                                values: _var.deployment_specification_routes_response_policies_header_transformations_set_headers_items_values,
                                ifExists: _var.deployment_specification_routes_response_policies_header_transformations_set_headers_items_if_exists,
                            }],
                        },
                    },
                    responseCacheStore: {
                        timeToLiveInSeconds: _var.deployment_specification_routes_response_policies_response_cache_store_time_to_live_in_seconds,
                        type: _var.deployment_specification_routes_response_policies_response_cache_store_type,
                    },
                },
            }],
        },
        definedTags: {
            "Operations.CostCenter": "42",
        },
        displayName: _var.deployment_display_name,
        freeformTags: {
            Department: "Finance",
        },
    });
    
    resources:
      testDeployment:
        type: oci:ApiGateway:Deployment
        properties:
          #Required
          compartmentId: ${var.compartment_id}
          gatewayId: ${oci_apigateway_gateway.test_gateway.id}
          pathPrefix: ${var.deployment_path_prefix}
          specification:
            loggingPolicies:
              accessLog:
                isEnabled: ${var.deployment_specification_logging_policies_access_log_is_enabled}
              executionLog:
                isEnabled: ${var.deployment_specification_logging_policies_execution_log_is_enabled}
                logLevel: ${var.deployment_specification_logging_policies_execution_log_log_level}
            requestPolicies:
              authentication:
                type: ${var.deployment_specification_request_policies_authentication_type}
                audiences: ${var.deployment_specification_request_policies_authentication_audiences}
                cacheKeys: ${var.deployment_specification_request_policies_authentication_cache_key}
                functionId: ${oci_functions_function.test_function.id}
                isAnonymousAccessAllowed: ${var.deployment_specification_request_policies_authentication_is_anonymous_access_allowed}
                issuers: ${var.deployment_specification_request_policies_authentication_issuers}
                maxClockSkewInSeconds: ${var.deployment_specification_request_policies_authentication_max_clock_skew_in_seconds}
                parameters: ${var.deployment_specification_request_policies_authentication_parameters}
                publicKeys:
                  type: ${var.deployment_specification_request_policies_authentication_public_keys_type}
                  isSslVerifyDisabled: ${var.deployment_specification_request_policies_authentication_public_keys_is_ssl_verify_disabled}
                  keys:
                    - format: ${var.deployment_specification_request_policies_authentication_public_keys_keys_format}
                      alg: ${var.deployment_specification_request_policies_authentication_public_keys_keys_alg}
                      e: ${var.deployment_specification_request_policies_authentication_public_keys_keys_e}
                      key: ${var.deployment_specification_request_policies_authentication_public_keys_keys_key}
                      keyOps: ${var.deployment_specification_request_policies_authentication_public_keys_keys_key_ops}
                      kid: ${var.deployment_specification_request_policies_authentication_public_keys_keys_kid}
                      kty: ${var.deployment_specification_request_policies_authentication_public_keys_keys_kty}
                      n: ${var.deployment_specification_request_policies_authentication_public_keys_keys_n}
                      use: ${var.deployment_specification_request_policies_authentication_public_keys_keys_use}
                  maxCacheDurationInHours: ${var.deployment_specification_request_policies_authentication_public_keys_max_cache_duration_in_hours}
                  uri: ${var.deployment_specification_request_policies_authentication_public_keys_uri}
                tokenAuthScheme: ${var.deployment_specification_request_policies_authentication_token_auth_scheme}
                tokenHeader: ${var.deployment_specification_request_policies_authentication_token_header}
                tokenQueryParam: ${var.deployment_specification_request_policies_authentication_token_query_param}
                validationFailurePolicy:
                  type: ${var.deployment_specification_request_policies_authentication_validation_failure_policy_type}
                  clientDetails:
                    type: ${var.deployment_specification_request_policies_authentication_validation_failure_policy_client_details_type}
                    clientId: ${oci_apigateway_client.test_client.id}
                    clientSecretId: ${oci_vault_secret.test_secret.id}
                    clientSecretVersionNumber: ${var.deployment_specification_request_policies_authentication_validation_failure_policy_client_details_client_secret_version_number}
                  fallbackRedirectPath: ${var.deployment_specification_request_policies_authentication_validation_failure_policy_fallback_redirect_path}
                  logoutPath: ${var.deployment_specification_request_policies_authentication_validation_failure_policy_logout_path}
                  maxExpiryDurationInHours: ${var.deployment_specification_request_policies_authentication_validation_failure_policy_max_expiry_duration_in_hours}
                  responseCode: ${var.deployment_specification_request_policies_authentication_validation_failure_policy_response_code}
                  responseHeaderTransformations:
                    filterHeaders:
                      items:
                        - name: ${var.deployment_specification_request_policies_authentication_validation_failure_policy_response_header_transformations_filter_headers_items_name}
                      type: ${var.deployment_specification_request_policies_authentication_validation_failure_policy_response_header_transformations_filter_headers_type}
                    renameHeaders:
                      items:
                        - from: ${var.deployment_specification_request_policies_authentication_validation_failure_policy_response_header_transformations_rename_headers_items_from}
                          to: ${var.deployment_specification_request_policies_authentication_validation_failure_policy_response_header_transformations_rename_headers_items_to}
                    setHeaders:
                      items:
                        - ifExists: ${var.deployment_specification_request_policies_authentication_validation_failure_policy_response_header_transformations_set_headers_items_if_exists}
                          name: ${var.deployment_specification_request_policies_authentication_validation_failure_policy_response_header_transformations_set_headers_items_name}
                          values: ${var.deployment_specification_request_policies_authentication_validation_failure_policy_response_header_transformations_set_headers_items_values}
                  responseMessage: ${var.deployment_specification_request_policies_authentication_validation_failure_policy_response_message}
                  responseType: ${var.deployment_specification_request_policies_authentication_validation_failure_policy_response_type}
                  scopes: ${var.deployment_specification_request_policies_authentication_validation_failure_policy_scopes}
                  sourceUriDetails:
                    type: ${var.deployment_specification_request_policies_authentication_validation_failure_policy_source_uri_details_type}
                    uri: ${var.deployment_specification_request_policies_authentication_validation_failure_policy_source_uri_details_uri}
                  useCookiesForIntermediateSteps: ${var.deployment_specification_request_policies_authentication_validation_failure_policy_use_cookies_for_intermediate_steps}
                  useCookiesForSession: ${var.deployment_specification_request_policies_authentication_validation_failure_policy_use_cookies_for_session}
                  usePkce: ${var.deployment_specification_request_policies_authentication_validation_failure_policy_use_pkce}
                validationPolicy:
                  type: ${var.deployment_specification_request_policies_authentication_validation_policy_type}
                  additionalValidationPolicy:
                    audiences: ${var.deployment_specification_request_policies_authentication_validation_policy_additional_validation_policy_audiences}
                    issuers: ${var.deployment_specification_request_policies_authentication_validation_policy_additional_validation_policy_issuers}
                    verifyClaims:
                      - isRequired: ${var.deployment_specification_request_policies_authentication_validation_policy_additional_validation_policy_verify_claims_is_required}
                        key: ${var.deployment_specification_request_policies_authentication_validation_policy_additional_validation_policy_verify_claims_key}
                        values: ${var.deployment_specification_request_policies_authentication_validation_policy_additional_validation_policy_verify_claims_values}
                  clientDetails:
                    type: ${var.deployment_specification_request_policies_authentication_validation_policy_client_details_type}
                    clientId: ${oci_apigateway_client.test_client.id}
                    clientSecretId: ${oci_vault_secret.test_secret.id}
                    clientSecretVersionNumber: ${var.deployment_specification_request_policies_authentication_validation_policy_client_details_client_secret_version_number}
                  isSslVerifyDisabled: ${var.deployment_specification_request_policies_authentication_validation_policy_is_ssl_verify_disabled}
                  keys:
                    - format: ${var.deployment_specification_request_policies_authentication_validation_policy_keys_format}
                      alg: ${var.deployment_specification_request_policies_authentication_validation_policy_keys_alg}
                      e: ${var.deployment_specification_request_policies_authentication_validation_policy_keys_e}
                      key: ${var.deployment_specification_request_policies_authentication_validation_policy_keys_key}
                      keyOps: ${var.deployment_specification_request_policies_authentication_validation_policy_keys_key_ops}
                      kid: ${var.deployment_specification_request_policies_authentication_validation_policy_keys_kid}
                      kty: ${var.deployment_specification_request_policies_authentication_validation_policy_keys_kty}
                      n: ${var.deployment_specification_request_policies_authentication_validation_policy_keys_n}
                      use: ${var.deployment_specification_request_policies_authentication_validation_policy_keys_use}
                  maxCacheDurationInHours: ${var.deployment_specification_request_policies_authentication_validation_policy_max_cache_duration_in_hours}
                  sourceUriDetails:
                    type: ${var.deployment_specification_request_policies_authentication_validation_policy_source_uri_details_type}
                    uri: ${var.deployment_specification_request_policies_authentication_validation_policy_source_uri_details_uri}
                  uri: ${var.deployment_specification_request_policies_authentication_validation_policy_uri}
                verifyClaims:
                  - isRequired: ${var.deployment_specification_request_policies_authentication_verify_claims_is_required}
                    key: ${var.deployment_specification_request_policies_authentication_verify_claims_key}
                    values: ${var.deployment_specification_request_policies_authentication_verify_claims_values}
              cors:
                allowedOrigins: ${var.deployment_specification_request_policies_cors_allowed_origins}
                allowedHeaders: ${var.deployment_specification_request_policies_cors_allowed_headers}
                allowedMethods: ${var.deployment_specification_request_policies_cors_allowed_methods}
                exposedHeaders: ${var.deployment_specification_request_policies_cors_exposed_headers}
                isAllowCredentialsEnabled: ${var.deployment_specification_request_policies_cors_is_allow_credentials_enabled}
                maxAgeInSeconds: ${var.deployment_specification_request_policies_cors_max_age_in_seconds}
              dynamicAuthentication:
                authenticationServers:
                  - authenticationServerDetail:
                      type: ${var.deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_type}
                      audiences: ${var.deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_audiences}
                      functionId: ${oci_functions_function.test_function.id}
                      isAnonymousAccessAllowed: ${var.deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_is_anonymous_access_allowed}
                      issuers: ${var.deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_issuers}
                      maxClockSkewInSeconds: ${var.deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_max_clock_skew_in_seconds}
                      publicKeys:
                        type: ${var.deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_public_keys_type}
                        isSslVerifyDisabled: ${var.deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_public_keys_is_ssl_verify_disabled}
                        keys:
                          - format: ${var.deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_public_keys_keys_format}
                            alg: ${var.deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_public_keys_keys_alg}
                            e: ${var.deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_public_keys_keys_e}
                            key: ${var.deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_public_keys_keys_key}
                            keyOps: ${var.deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_public_keys_keys_key_ops}
                            kid: ${var.deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_public_keys_keys_kid}
                            kty: ${var.deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_public_keys_keys_kty}
                            n: ${var.deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_public_keys_keys_n}
                            use: ${var.deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_public_keys_keys_use}
                        maxCacheDurationInHours: ${var.deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_public_keys_max_cache_duration_in_hours}
                        uri: ${var.deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_public_keys_uri}
                      tokenAuthScheme: ${var.deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_token_auth_scheme}
                      tokenHeader: ${var.deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_token_header}
                      tokenQueryParam: ${var.deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_token_query_param}
                      validationFailurePolicy:
                        type: ${var.deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_validation_failure_policy_type}
                        clientDetails:
                          type: ${var.deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_validation_failure_policy_client_details_type}
                          clientId: ${oci_apigateway_client.test_client.id}
                          clientSecretId: ${oci_vault_secret.test_secret.id}
                          clientSecretVersionNumber: ${var.deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_validation_failure_policy_client_details_client_secret_version_number}
                        fallbackRedirectPath: ${var.deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_validation_failure_policy_fallback_redirect_path}
                        logoutPath: ${var.deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_validation_failure_policy_logout_path}
                        maxExpiryDurationInHours: ${var.deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_validation_failure_policy_max_expiry_duration_in_hours}
                        responseCode: ${var.deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_validation_failure_policy_response_code}
                        responseHeaderTransformations:
                          filterHeaders:
                            items:
                              - name: ${var.deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_validation_failure_policy_response_header_transformations_filter_headers_items_name}
                            type: ${var.deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_validation_failure_policy_response_header_transformations_filter_headers_type}
                          renameHeaders:
                            items:
                              - from: ${var.deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_validation_failure_policy_response_header_transformations_rename_headers_items_from}
                                to: ${var.deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_validation_failure_policy_response_header_transformations_rename_headers_items_to}
                          setHeaders:
                            items:
                              - ifExists: ${var.deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_validation_failure_policy_response_header_transformations_set_headers_items_if_exists}
                                name: ${var.deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_validation_failure_policy_response_header_transformations_set_headers_items_name}
                                values: ${var.deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_validation_failure_policy_response_header_transformations_set_headers_items_values}
                        responseMessage: ${var.deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_validation_failure_policy_response_message}
                        responseType: ${var.deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_validation_failure_policy_response_type}
                        scopes: ${var.deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_validation_failure_policy_scopes}
                        sourceUriDetails:
                          type: ${var.deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_validation_failure_policy_source_uri_details_type}
                          uri: ${var.deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_validation_failure_policy_source_uri_details_uri}
                        useCookiesForIntermediateSteps: ${var.deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_validation_failure_policy_use_cookies_for_intermediate_steps}
                        useCookiesForSession: ${var.deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_validation_failure_policy_use_cookies_for_session}
                        usePkce: ${var.deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_validation_failure_policy_use_pkce}
                      validationPolicy:
                        type: ${var.deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_validation_policy_type}
                        additionalValidationPolicy:
                          audiences: ${var.deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_validation_policy_additional_validation_policy_audiences}
                          issuers: ${var.deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_validation_policy_additional_validation_policy_issuers}
                          verifyClaims:
                            - isRequired: ${var.deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_validation_policy_additional_validation_policy_verify_claims_is_required}
                              key: ${var.deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_validation_policy_additional_validation_policy_verify_claims_key}
                              values: ${var.deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_validation_policy_additional_validation_policy_verify_claims_values}
                        clientDetails:
                          type: ${var.deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_validation_policy_client_details_type}
                          clientId: ${oci_apigateway_client.test_client.id}
                          clientSecretId: ${oci_vault_secret.test_secret.id}
                          clientSecretVersionNumber: ${var.deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_validation_policy_client_details_client_secret_version_number}
                        isSslVerifyDisabled: ${var.deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_validation_policy_is_ssl_verify_disabled}
                        keys:
                          - format: ${var.deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_validation_policy_keys_format}
                            alg: ${var.deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_validation_policy_keys_alg}
                            e: ${var.deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_validation_policy_keys_e}
                            key: ${var.deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_validation_policy_keys_key}
                            keyOps: ${var.deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_validation_policy_keys_key_ops}
                            kid: ${var.deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_validation_policy_keys_kid}
                            kty: ${var.deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_validation_policy_keys_kty}
                            n: ${var.deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_validation_policy_keys_n}
                            use: ${var.deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_validation_policy_keys_use}
                        maxCacheDurationInHours: ${var.deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_validation_policy_max_cache_duration_in_hours}
                        sourceUriDetails:
                          type: ${var.deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_validation_policy_source_uri_details_type}
                          uri: ${var.deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_validation_policy_source_uri_details_uri}
                        uri: ${var.deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_validation_policy_uri}
                      verifyClaims:
                        - isRequired: ${var.deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_verify_claims_is_required}
                          key: ${var.deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_verify_claims_key}
                          values: ${var.deployment_specification_request_policies_dynamic_authentication_authentication_servers_authentication_server_detail_verify_claims_values}
                    key:
                      name: ${var.deployment_specification_request_policies_dynamic_authentication_authentication_servers_key_name}
                      expression: ${var.deployment_specification_request_policies_dynamic_authentication_authentication_servers_key_expression}
                      isDefault: ${var.deployment_specification_request_policies_dynamic_authentication_authentication_servers_key_is_default}
                      type: ${var.deployment_specification_request_policies_dynamic_authentication_authentication_servers_key_type}
                      values: ${var.deployment_specification_request_policies_dynamic_authentication_authentication_servers_key_values}
                selectionSource:
                  selector: ${var.deployment_specification_request_policies_dynamic_authentication_selection_source_selector}
                  type: ${var.deployment_specification_request_policies_dynamic_authentication_selection_source_type}
              mutualTls:
                allowedSans: ${var.deployment_specification_request_policies_mutual_tls_allowed_sans}
                isVerifiedCertificateRequired: ${var.deployment_specification_request_policies_mutual_tls_is_verified_certificate_required}
              rateLimiting:
                rateInRequestsPerSecond: ${var.deployment_specification_request_policies_rate_limiting_rate_in_requests_per_second}
                rateKey: ${var.deployment_specification_request_policies_rate_limiting_rate_key}
              usagePlans:
                tokenLocations: ${var.deployment_specification_request_policies_usage_plans_token_locations}
            routes:
              - backend:
                  type: ${var.deployment_specification_routes_backend_type}
                  allowedPostLogoutUris: ${var.deployment_specification_routes_backend_allowed_post_logout_uris}
                  body: ${var.deployment_specification_routes_backend_body}
                  connectTimeoutInSeconds: ${var.deployment_specification_routes_backend_connect_timeout_in_seconds}
                  functionId: ${oci_functions_function.test_function.id}
                  headers:
                    - name: ${var.deployment_specification_routes_backend_headers_name}
                      value: ${var.deployment_specification_routes_backend_headers_value}
                  isSslVerifyDisabled: ${var.deployment_specification_routes_backend_is_ssl_verify_disabled}
                  postLogoutState: ${var.deployment_specification_routes_backend_post_logout_state}
                  readTimeoutInSeconds: ${var.deployment_specification_routes_backend_read_timeout_in_seconds}
                  routingBackends:
                    - backend:
                        type: ${var.deployment_specification_routes_backend_routing_backends_backend_type}
                        body: ${var.deployment_specification_routes_backend_routing_backends_backend_body}
                        connectTimeoutInSeconds: ${var.deployment_specification_routes_backend_routing_backends_backend_connect_timeout_in_seconds}
                        functionId: ${oci_functions_function.test_function.id}
                        headers:
                          - name: ${var.deployment_specification_routes_backend_routing_backends_backend_headers_name}
                            value: ${var.deployment_specification_routes_backend_routing_backends_backend_headers_value}
                        isSslVerifyDisabled: ${var.deployment_specification_routes_backend_routing_backends_backend_is_ssl_verify_disabled}
                        readTimeoutInSeconds: ${var.deployment_specification_routes_backend_routing_backends_backend_read_timeout_in_seconds}
                        sendTimeoutInSeconds: ${var.deployment_specification_routes_backend_routing_backends_backend_send_timeout_in_seconds}
                        status: ${var.deployment_specification_routes_backend_routing_backends_backend_status}
                        url: ${var.deployment_specification_routes_backend_routing_backends_backend_url}
                      key:
                        name: ${var.deployment_specification_routes_backend_routing_backends_key_name}
                        type: ${var.deployment_specification_request_policies_dynamic_authentication_authentication_servers_key_type}
                        expression: ${var.deployment_specification_request_policies_dynamic_authentication_authentication_servers_key_expression}
                        isDefault: ${var.deployment_specification_request_policies_dynamic_authentication_authentication_servers_key_is_default}
                        values: ${var.deployment_specification_request_policies_dynamic_authentication_authentication_servers_key_values}
                  selectionSource:
                    selector: ${var.deployment_specification_routes_backend_selection_source_selector}
                    type: ${var.deployment_specification_routes_backend_selection_source_type}
                  sendTimeoutInSeconds: ${var.deployment_specification_routes_backend_send_timeout_in_seconds}
                  status: ${var.deployment_specification_routes_backend_status}
                  url: ${var.deployment_specification_routes_backend_url}
                path: ${var.deployment_specification_routes_path}
                loggingPolicies:
                  accessLog:
                    isEnabled: ${var.deployment_specification_routes_logging_policies_access_log_is_enabled}
                  executionLog:
                    isEnabled: ${var.deployment_specification_routes_logging_policies_execution_log_is_enabled}
                    logLevel: ${var.deployment_specification_routes_logging_policies_execution_log_log_level}
                methods: ${var.deployment_specification_routes_methods}
                requestPolicies:
                  authorization:
                    allowedScopes: ${var.deployment_specification_routes_request_policies_authorization_allowed_scope}
                    type: ${var.deployment_specification_routes_request_policies_authorization_type}
                  bodyValidation:
                    contents:
                      - mediaType: ${var.deployment_specification_routes_request_policies_body_validation_content_media_type}
                        validationType: ${var.deployment_specification_routes_request_policies_body_validation_content_validation_type}
                    required: ${var.deployment_specification_routes_request_policies_body_validation_required}
                    validationMode: ${var.deployment_specification_routes_request_policies_body_validation_validation_mode}
                  cors:
                    allowedOrigins: ${var.deployment_specification_routes_request_policies_cors_allowed_origins}
                    allowedHeaders: ${var.deployment_specification_routes_request_policies_cors_allowed_headers}
                    allowedMethods: ${var.deployment_specification_routes_request_policies_cors_allowed_methods}
                    exposedHeaders: ${var.deployment_specification_routes_request_policies_cors_exposed_headers}
                    isAllowCredentialsEnabled: ${var.deployment_specification_routes_request_policies_cors_is_allow_credentials_enabled}
                    maxAgeInSeconds: ${var.deployment_specification_routes_request_policies_cors_max_age_in_seconds}
                  headerTransformations:
                    filterHeaders:
                      items:
                        - name: ${var.deployment_specification_routes_request_policies_header_transformations_filter_headers_items_name}
                      type: ${var.deployment_specification_routes_request_policies_header_transformations_filter_headers_type}
                    renameHeaders:
                      items:
                        - from: ${var.deployment_specification_routes_request_policies_header_transformations_rename_headers_items_from}
                          to: ${var.deployment_specification_routes_request_policies_header_transformations_rename_headers_items_to}
                    setHeaders:
                      items:
                        - name: ${var.deployment_specification_routes_request_policies_header_transformations_set_headers_items_name}
                          values: ${var.deployment_specification_routes_request_policies_header_transformations_set_headers_items_values}
                          ifExists: ${var.deployment_specification_routes_request_policies_header_transformations_set_headers_items_if_exists}
                  headerValidations:
                    headers:
                      - name: ${var.deployment_specification_routes_request_policies_header_validations_headers_name}
                        required: ${var.deployment_specification_routes_request_policies_header_validations_headers_required}
                    validationMode: ${var.deployment_specification_routes_request_policies_header_validations_validation_mode}
                  queryParameterTransformations:
                    filterQueryParameters:
                      items:
                        - name: ${var.deployment_specification_routes_request_policies_query_parameter_transformations_filter_query_parameters_items_name}
                      type: ${var.deployment_specification_routes_request_policies_query_parameter_transformations_filter_query_parameters_type}
                    renameQueryParameters:
                      items:
                        - from: ${var.deployment_specification_routes_request_policies_query_parameter_transformations_rename_query_parameters_items_from}
                          to: ${var.deployment_specification_routes_request_policies_query_parameter_transformations_rename_query_parameters_items_to}
                    setQueryParameters:
                      items:
                        - name: ${var.deployment_specification_routes_request_policies_query_parameter_transformations_set_query_parameters_items_name}
                          values: ${var.deployment_specification_routes_request_policies_query_parameter_transformations_set_query_parameters_items_values}
                          ifExists: ${var.deployment_specification_routes_request_policies_query_parameter_transformations_set_query_parameters_items_if_exists}
                  queryParameterValidations:
                    parameters:
                      - name: ${var.deployment_specification_routes_request_policies_query_parameter_validations_parameters_name}
                        required: ${var.deployment_specification_routes_request_policies_query_parameter_validations_parameters_required}
                    validationMode: ${var.deployment_specification_routes_request_policies_query_parameter_validations_validation_mode}
                  responseCacheLookup:
                    type: ${var.deployment_specification_routes_request_policies_response_cache_lookup_type}
                    cacheKeyAdditions: ${var.deployment_specification_routes_request_policies_response_cache_lookup_cache_key_additions}
                    isEnabled: ${var.deployment_specification_routes_request_policies_response_cache_lookup_is_enabled}
                    isPrivateCachingEnabled: ${var.deployment_specification_routes_request_policies_response_cache_lookup_is_private_caching_enabled}
                responsePolicies:
                  headerTransformations:
                    filterHeaders:
                      items:
                        - name: ${var.deployment_specification_routes_response_policies_header_transformations_filter_headers_items_name}
                      type: ${var.deployment_specification_routes_response_policies_header_transformations_filter_headers_type}
                    renameHeaders:
                      items:
                        - from: ${var.deployment_specification_routes_response_policies_header_transformations_rename_headers_items_from}
                          to: ${var.deployment_specification_routes_response_policies_header_transformations_rename_headers_items_to}
                    setHeaders:
                      items:
                        - name: ${var.deployment_specification_routes_response_policies_header_transformations_set_headers_items_name}
                          values: ${var.deployment_specification_routes_response_policies_header_transformations_set_headers_items_values}
                          ifExists: ${var.deployment_specification_routes_response_policies_header_transformations_set_headers_items_if_exists}
                  responseCacheStore:
                    timeToLiveInSeconds: ${var.deployment_specification_routes_response_policies_response_cache_store_time_to_live_in_seconds}
                    type: ${var.deployment_specification_routes_response_policies_response_cache_store_type}
          #Optional
          definedTags:
            Operations.CostCenter: '42'
          displayName: ${var.deployment_display_name}
          freeformTags:
            Department: Finance
    

    Create Deployment Resource

    new Deployment(name: string, args: DeploymentArgs, opts?: CustomResourceOptions);
    @overload
    def Deployment(resource_name: str,
                   opts: Optional[ResourceOptions] = None,
                   compartment_id: Optional[str] = None,
                   defined_tags: Optional[Mapping[str, Any]] = None,
                   display_name: Optional[str] = None,
                   freeform_tags: Optional[Mapping[str, Any]] = None,
                   gateway_id: Optional[str] = None,
                   path_prefix: Optional[str] = None,
                   specification: Optional[_apigateway.DeploymentSpecificationArgs] = None)
    @overload
    def Deployment(resource_name: str,
                   args: DeploymentArgs,
                   opts: Optional[ResourceOptions] = None)
    func NewDeployment(ctx *Context, name string, args DeploymentArgs, opts ...ResourceOption) (*Deployment, error)
    public Deployment(string name, DeploymentArgs args, CustomResourceOptions? opts = null)
    public Deployment(String name, DeploymentArgs args)
    public Deployment(String name, DeploymentArgs args, CustomResourceOptions options)
    
    type: oci:ApiGateway:Deployment
    properties: # The arguments to resource properties.
    options: # Bag of options to control resource's behavior.
    
    
    name string
    The unique name of the resource.
    args DeploymentArgs
    The arguments to resource properties.
    opts CustomResourceOptions
    Bag of options to control resource's behavior.
    resource_name str
    The unique name of the resource.
    args DeploymentArgs
    The arguments to resource properties.
    opts ResourceOptions
    Bag of options to control resource's behavior.
    ctx Context
    Context object for the current deployment.
    name string
    The unique name of the resource.
    args DeploymentArgs
    The arguments to resource properties.
    opts ResourceOption
    Bag of options to control resource's behavior.
    name string
    The unique name of the resource.
    args DeploymentArgs
    The arguments to resource properties.
    opts CustomResourceOptions
    Bag of options to control resource's behavior.
    name String
    The unique name of the resource.
    args DeploymentArgs
    The arguments to resource properties.
    options CustomResourceOptions
    Bag of options to control resource's behavior.

    Deployment Resource Properties

    To learn more about resource properties and how to use them, see Inputs and Outputs in the Architecture and Concepts docs.

    Inputs

    The Deployment resource accepts the following input properties:

    CompartmentId string

    (Updatable) The OCID of the compartment in which the resource is created.

    GatewayId string

    The OCID of the resource.

    PathPrefix string

    A path on which to deploy all routes contained in the API deployment specification. For more information, see Deploying an API on an API Gateway by Creating an API Deployment.

    Specification DeploymentSpecification

    (Updatable) The logical configuration of the API exposed by a deployment.

    DefinedTags Dictionary<string, object>

    (Updatable) Defined tags for this resource. Each key is predefined and scoped to a namespace. For more information, see Resource Tags. Example: {"Operations.CostCenter": "42"}

    DisplayName string

    (Updatable) A user-friendly name. Does not have to be unique, and it's changeable. Avoid entering confidential information. Example: My new resource

    FreeformTags Dictionary<string, object>

    (Updatable) Free-form tags for this resource. Each tag is a simple key-value pair with no predefined name, type, or namespace. For more information, see Resource Tags. Example: {"Department": "Finance"}

    CompartmentId string

    (Updatable) The OCID of the compartment in which the resource is created.

    GatewayId string

    The OCID of the resource.

    PathPrefix string

    A path on which to deploy all routes contained in the API deployment specification. For more information, see Deploying an API on an API Gateway by Creating an API Deployment.

    Specification DeploymentSpecificationArgs

    (Updatable) The logical configuration of the API exposed by a deployment.

    DefinedTags map[string]interface{}

    (Updatable) Defined tags for this resource. Each key is predefined and scoped to a namespace. For more information, see Resource Tags. Example: {"Operations.CostCenter": "42"}

    DisplayName string

    (Updatable) A user-friendly name. Does not have to be unique, and it's changeable. Avoid entering confidential information. Example: My new resource

    FreeformTags map[string]interface{}

    (Updatable) Free-form tags for this resource. Each tag is a simple key-value pair with no predefined name, type, or namespace. For more information, see Resource Tags. Example: {"Department": "Finance"}

    compartmentId String

    (Updatable) The OCID of the compartment in which the resource is created.

    gatewayId String

    The OCID of the resource.

    pathPrefix String

    A path on which to deploy all routes contained in the API deployment specification. For more information, see Deploying an API on an API Gateway by Creating an API Deployment.

    specification DeploymentSpecification

    (Updatable) The logical configuration of the API exposed by a deployment.

    definedTags Map<String,Object>

    (Updatable) Defined tags for this resource. Each key is predefined and scoped to a namespace. For more information, see Resource Tags. Example: {"Operations.CostCenter": "42"}

    displayName String

    (Updatable) A user-friendly name. Does not have to be unique, and it's changeable. Avoid entering confidential information. Example: My new resource

    freeformTags Map<String,Object>

    (Updatable) Free-form tags for this resource. Each tag is a simple key-value pair with no predefined name, type, or namespace. For more information, see Resource Tags. Example: {"Department": "Finance"}

    compartmentId string

    (Updatable) The OCID of the compartment in which the resource is created.

    gatewayId string

    The OCID of the resource.

    pathPrefix string

    A path on which to deploy all routes contained in the API deployment specification. For more information, see Deploying an API on an API Gateway by Creating an API Deployment.

    specification DeploymentSpecification

    (Updatable) The logical configuration of the API exposed by a deployment.

    definedTags {[key: string]: any}

    (Updatable) Defined tags for this resource. Each key is predefined and scoped to a namespace. For more information, see Resource Tags. Example: {"Operations.CostCenter": "42"}

    displayName string

    (Updatable) A user-friendly name. Does not have to be unique, and it's changeable. Avoid entering confidential information. Example: My new resource

    freeformTags {[key: string]: any}

    (Updatable) Free-form tags for this resource. Each tag is a simple key-value pair with no predefined name, type, or namespace. For more information, see Resource Tags. Example: {"Department": "Finance"}

    compartment_id str

    (Updatable) The OCID of the compartment in which the resource is created.

    gateway_id str

    The OCID of the resource.

    path_prefix str

    A path on which to deploy all routes contained in the API deployment specification. For more information, see Deploying an API on an API Gateway by Creating an API Deployment.

    specification DeploymentSpecificationArgs

    (Updatable) The logical configuration of the API exposed by a deployment.

    defined_tags Mapping[str, Any]

    (Updatable) Defined tags for this resource. Each key is predefined and scoped to a namespace. For more information, see Resource Tags. Example: {"Operations.CostCenter": "42"}

    display_name str

    (Updatable) A user-friendly name. Does not have to be unique, and it's changeable. Avoid entering confidential information. Example: My new resource

    freeform_tags Mapping[str, Any]

    (Updatable) Free-form tags for this resource. Each tag is a simple key-value pair with no predefined name, type, or namespace. For more information, see Resource Tags. Example: {"Department": "Finance"}

    compartmentId String

    (Updatable) The OCID of the compartment in which the resource is created.

    gatewayId String

    The OCID of the resource.

    pathPrefix String

    A path on which to deploy all routes contained in the API deployment specification. For more information, see Deploying an API on an API Gateway by Creating an API Deployment.

    specification Property Map

    (Updatable) The logical configuration of the API exposed by a deployment.

    definedTags Map<Any>

    (Updatable) Defined tags for this resource. Each key is predefined and scoped to a namespace. For more information, see Resource Tags. Example: {"Operations.CostCenter": "42"}

    displayName String

    (Updatable) A user-friendly name. Does not have to be unique, and it's changeable. Avoid entering confidential information. Example: My new resource

    freeformTags Map<Any>

    (Updatable) Free-form tags for this resource. Each tag is a simple key-value pair with no predefined name, type, or namespace. For more information, see Resource Tags. Example: {"Department": "Finance"}

    Outputs

    All input properties are implicitly available as output properties. Additionally, the Deployment resource produces the following output properties:

    Endpoint string

    The endpoint to access this deployment on the gateway.

    Id string

    The provider-assigned unique ID for this managed resource.

    LifecycleDetails string

    A message describing the current state in more detail. For example, can be used to provide actionable information for a resource in a Failed state.

    State string

    The current state of the deployment.

    TimeCreated string

    The time this resource was created. An RFC3339 formatted datetime string.

    TimeUpdated string

    The time this resource was last updated. An RFC3339 formatted datetime string.

    Endpoint string

    The endpoint to access this deployment on the gateway.

    Id string

    The provider-assigned unique ID for this managed resource.

    LifecycleDetails string

    A message describing the current state in more detail. For example, can be used to provide actionable information for a resource in a Failed state.

    State string

    The current state of the deployment.

    TimeCreated string

    The time this resource was created. An RFC3339 formatted datetime string.

    TimeUpdated string

    The time this resource was last updated. An RFC3339 formatted datetime string.

    endpoint String

    The endpoint to access this deployment on the gateway.

    id String

    The provider-assigned unique ID for this managed resource.

    lifecycleDetails String

    A message describing the current state in more detail. For example, can be used to provide actionable information for a resource in a Failed state.

    state String

    The current state of the deployment.

    timeCreated String

    The time this resource was created. An RFC3339 formatted datetime string.

    timeUpdated String

    The time this resource was last updated. An RFC3339 formatted datetime string.

    endpoint string

    The endpoint to access this deployment on the gateway.

    id string

    The provider-assigned unique ID for this managed resource.

    lifecycleDetails string

    A message describing the current state in more detail. For example, can be used to provide actionable information for a resource in a Failed state.

    state string

    The current state of the deployment.

    timeCreated string

    The time this resource was created. An RFC3339 formatted datetime string.

    timeUpdated string

    The time this resource was last updated. An RFC3339 formatted datetime string.

    endpoint str

    The endpoint to access this deployment on the gateway.

    id str

    The provider-assigned unique ID for this managed resource.

    lifecycle_details str

    A message describing the current state in more detail. For example, can be used to provide actionable information for a resource in a Failed state.

    state str

    The current state of the deployment.

    time_created str

    The time this resource was created. An RFC3339 formatted datetime string.

    time_updated str

    The time this resource was last updated. An RFC3339 formatted datetime string.

    endpoint String

    The endpoint to access this deployment on the gateway.

    id String

    The provider-assigned unique ID for this managed resource.

    lifecycleDetails String

    A message describing the current state in more detail. For example, can be used to provide actionable information for a resource in a Failed state.

    state String

    The current state of the deployment.

    timeCreated String

    The time this resource was created. An RFC3339 formatted datetime string.

    timeUpdated String

    The time this resource was last updated. An RFC3339 formatted datetime string.

    Look up Existing Deployment Resource

    Get an existing Deployment resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.

    public static get(name: string, id: Input<ID>, state?: DeploymentState, opts?: CustomResourceOptions): Deployment
    @staticmethod
    def get(resource_name: str,
            id: str,
            opts: Optional[ResourceOptions] = None,
            compartment_id: Optional[str] = None,
            defined_tags: Optional[Mapping[str, Any]] = None,
            display_name: Optional[str] = None,
            endpoint: Optional[str] = None,
            freeform_tags: Optional[Mapping[str, Any]] = None,
            gateway_id: Optional[str] = None,
            lifecycle_details: Optional[str] = None,
            path_prefix: Optional[str] = None,
            specification: Optional[_apigateway.DeploymentSpecificationArgs] = None,
            state: Optional[str] = None,
            time_created: Optional[str] = None,
            time_updated: Optional[str] = None) -> Deployment
    func GetDeployment(ctx *Context, name string, id IDInput, state *DeploymentState, opts ...ResourceOption) (*Deployment, error)
    public static Deployment Get(string name, Input<string> id, DeploymentState? state, CustomResourceOptions? opts = null)
    public static Deployment get(String name, Output<String> id, DeploymentState state, CustomResourceOptions options)
    Resource lookup is not supported in YAML
    name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    state
    Any extra arguments used during the lookup.
    opts
    A bag of options that control this resource's behavior.
    resource_name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    state
    Any extra arguments used during the lookup.
    opts
    A bag of options that control this resource's behavior.
    name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    state
    Any extra arguments used during the lookup.
    opts
    A bag of options that control this resource's behavior.
    name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    state
    Any extra arguments used during the lookup.
    opts
    A bag of options that control this resource's behavior.
    The following state arguments are supported:
    CompartmentId string

    (Updatable) The OCID of the compartment in which the resource is created.

    DefinedTags Dictionary<string, object>

    (Updatable) Defined tags for this resource. Each key is predefined and scoped to a namespace. For more information, see Resource Tags. Example: {"Operations.CostCenter": "42"}

    DisplayName string

    (Updatable) A user-friendly name. Does not have to be unique, and it's changeable. Avoid entering confidential information. Example: My new resource

    Endpoint string

    The endpoint to access this deployment on the gateway.

    FreeformTags Dictionary<string, object>

    (Updatable) Free-form tags for this resource. Each tag is a simple key-value pair with no predefined name, type, or namespace. For more information, see Resource Tags. Example: {"Department": "Finance"}

    GatewayId string

    The OCID of the resource.

    LifecycleDetails string

    A message describing the current state in more detail. For example, can be used to provide actionable information for a resource in a Failed state.

    PathPrefix string

    A path on which to deploy all routes contained in the API deployment specification. For more information, see Deploying an API on an API Gateway by Creating an API Deployment.

    Specification DeploymentSpecification

    (Updatable) The logical configuration of the API exposed by a deployment.

    State string

    The current state of the deployment.

    TimeCreated string

    The time this resource was created. An RFC3339 formatted datetime string.

    TimeUpdated string

    The time this resource was last updated. An RFC3339 formatted datetime string.

    CompartmentId string

    (Updatable) The OCID of the compartment in which the resource is created.

    DefinedTags map[string]interface{}

    (Updatable) Defined tags for this resource. Each key is predefined and scoped to a namespace. For more information, see Resource Tags. Example: {"Operations.CostCenter": "42"}

    DisplayName string

    (Updatable) A user-friendly name. Does not have to be unique, and it's changeable. Avoid entering confidential information. Example: My new resource

    Endpoint string

    The endpoint to access this deployment on the gateway.

    FreeformTags map[string]interface{}

    (Updatable) Free-form tags for this resource. Each tag is a simple key-value pair with no predefined name, type, or namespace. For more information, see Resource Tags. Example: {"Department": "Finance"}

    GatewayId string

    The OCID of the resource.

    LifecycleDetails string

    A message describing the current state in more detail. For example, can be used to provide actionable information for a resource in a Failed state.

    PathPrefix string

    A path on which to deploy all routes contained in the API deployment specification. For more information, see Deploying an API on an API Gateway by Creating an API Deployment.

    Specification DeploymentSpecificationArgs

    (Updatable) The logical configuration of the API exposed by a deployment.

    State string

    The current state of the deployment.

    TimeCreated string

    The time this resource was created. An RFC3339 formatted datetime string.

    TimeUpdated string

    The time this resource was last updated. An RFC3339 formatted datetime string.

    compartmentId String

    (Updatable) The OCID of the compartment in which the resource is created.

    definedTags Map<String,Object>

    (Updatable) Defined tags for this resource. Each key is predefined and scoped to a namespace. For more information, see Resource Tags. Example: {"Operations.CostCenter": "42"}

    displayName String

    (Updatable) A user-friendly name. Does not have to be unique, and it's changeable. Avoid entering confidential information. Example: My new resource

    endpoint String

    The endpoint to access this deployment on the gateway.

    freeformTags Map<String,Object>

    (Updatable) Free-form tags for this resource. Each tag is a simple key-value pair with no predefined name, type, or namespace. For more information, see Resource Tags. Example: {"Department": "Finance"}

    gatewayId String

    The OCID of the resource.

    lifecycleDetails String

    A message describing the current state in more detail. For example, can be used to provide actionable information for a resource in a Failed state.

    pathPrefix String

    A path on which to deploy all routes contained in the API deployment specification. For more information, see Deploying an API on an API Gateway by Creating an API Deployment.

    specification DeploymentSpecification

    (Updatable) The logical configuration of the API exposed by a deployment.

    state String

    The current state of the deployment.

    timeCreated String

    The time this resource was created. An RFC3339 formatted datetime string.

    timeUpdated String

    The time this resource was last updated. An RFC3339 formatted datetime string.

    compartmentId string

    (Updatable) The OCID of the compartment in which the resource is created.

    definedTags {[key: string]: any}

    (Updatable) Defined tags for this resource. Each key is predefined and scoped to a namespace. For more information, see Resource Tags. Example: {"Operations.CostCenter": "42"}

    displayName string

    (Updatable) A user-friendly name. Does not have to be unique, and it's changeable. Avoid entering confidential information. Example: My new resource

    endpoint string

    The endpoint to access this deployment on the gateway.

    freeformTags {[key: string]: any}

    (Updatable) Free-form tags for this resource. Each tag is a simple key-value pair with no predefined name, type, or namespace. For more information, see Resource Tags. Example: {"Department": "Finance"}

    gatewayId string

    The OCID of the resource.

    lifecycleDetails string

    A message describing the current state in more detail. For example, can be used to provide actionable information for a resource in a Failed state.

    pathPrefix string

    A path on which to deploy all routes contained in the API deployment specification. For more information, see Deploying an API on an API Gateway by Creating an API Deployment.

    specification DeploymentSpecification

    (Updatable) The logical configuration of the API exposed by a deployment.

    state string

    The current state of the deployment.

    timeCreated string

    The time this resource was created. An RFC3339 formatted datetime string.

    timeUpdated string

    The time this resource was last updated. An RFC3339 formatted datetime string.

    compartment_id str

    (Updatable) The OCID of the compartment in which the resource is created.

    defined_tags Mapping[str, Any]

    (Updatable) Defined tags for this resource. Each key is predefined and scoped to a namespace. For more information, see Resource Tags. Example: {"Operations.CostCenter": "42"}

    display_name str

    (Updatable) A user-friendly name. Does not have to be unique, and it's changeable. Avoid entering confidential information. Example: My new resource

    endpoint str

    The endpoint to access this deployment on the gateway.

    freeform_tags Mapping[str, Any]

    (Updatable) Free-form tags for this resource. Each tag is a simple key-value pair with no predefined name, type, or namespace. For more information, see Resource Tags. Example: {"Department": "Finance"}

    gateway_id str

    The OCID of the resource.

    lifecycle_details str

    A message describing the current state in more detail. For example, can be used to provide actionable information for a resource in a Failed state.

    path_prefix str

    A path on which to deploy all routes contained in the API deployment specification. For more information, see Deploying an API on an API Gateway by Creating an API Deployment.

    specification DeploymentSpecificationArgs

    (Updatable) The logical configuration of the API exposed by a deployment.

    state str

    The current state of the deployment.

    time_created str

    The time this resource was created. An RFC3339 formatted datetime string.

    time_updated str

    The time this resource was last updated. An RFC3339 formatted datetime string.

    compartmentId String

    (Updatable) The OCID of the compartment in which the resource is created.

    definedTags Map<Any>

    (Updatable) Defined tags for this resource. Each key is predefined and scoped to a namespace. For more information, see Resource Tags. Example: {"Operations.CostCenter": "42"}

    displayName String

    (Updatable) A user-friendly name. Does not have to be unique, and it's changeable. Avoid entering confidential information. Example: My new resource

    endpoint String

    The endpoint to access this deployment on the gateway.

    freeformTags Map<Any>

    (Updatable) Free-form tags for this resource. Each tag is a simple key-value pair with no predefined name, type, or namespace. For more information, see Resource Tags. Example: {"Department": "Finance"}

    gatewayId String

    The OCID of the resource.

    lifecycleDetails String

    A message describing the current state in more detail. For example, can be used to provide actionable information for a resource in a Failed state.

    pathPrefix String

    A path on which to deploy all routes contained in the API deployment specification. For more information, see Deploying an API on an API Gateway by Creating an API Deployment.

    specification Property Map

    (Updatable) The logical configuration of the API exposed by a deployment.

    state String

    The current state of the deployment.

    timeCreated String

    The time this resource was created. An RFC3339 formatted datetime string.

    timeUpdated String

    The time this resource was last updated. An RFC3339 formatted datetime string.

    Supporting Types

    DeploymentSpecification, DeploymentSpecificationArgs

    Routes List<DeploymentSpecificationRoute>

    (Updatable) A list of routes that this API exposes.

    LoggingPolicies DeploymentSpecificationLoggingPolicies

    (Updatable) Policies controlling the pushing of logs to Oracle Cloud Infrastructure Public Logging.

    RequestPolicies DeploymentSpecificationRequestPolicies

    (Updatable) Behavior applied to any requests received by the API on this route.

    Routes []DeploymentSpecificationRoute

    (Updatable) A list of routes that this API exposes.

    LoggingPolicies DeploymentSpecificationLoggingPolicies

    (Updatable) Policies controlling the pushing of logs to Oracle Cloud Infrastructure Public Logging.

    RequestPolicies DeploymentSpecificationRequestPolicies

    (Updatable) Behavior applied to any requests received by the API on this route.

    routes List<DeploymentSpecificationRoute>

    (Updatable) A list of routes that this API exposes.

    loggingPolicies DeploymentSpecificationLoggingPolicies

    (Updatable) Policies controlling the pushing of logs to Oracle Cloud Infrastructure Public Logging.

    requestPolicies DeploymentSpecificationRequestPolicies

    (Updatable) Behavior applied to any requests received by the API on this route.

    routes DeploymentSpecificationRoute[]

    (Updatable) A list of routes that this API exposes.

    loggingPolicies DeploymentSpecificationLoggingPolicies

    (Updatable) Policies controlling the pushing of logs to Oracle Cloud Infrastructure Public Logging.

    requestPolicies DeploymentSpecificationRequestPolicies

    (Updatable) Behavior applied to any requests received by the API on this route.

    routes DeploymentSpecificationRoute]

    (Updatable) A list of routes that this API exposes.

    logging_policies DeploymentSpecificationLoggingPolicies

    (Updatable) Policies controlling the pushing of logs to Oracle Cloud Infrastructure Public Logging.

    request_policies DeploymentSpecificationRequestPolicies

    (Updatable) Behavior applied to any requests received by the API on this route.

    routes List<Property Map>

    (Updatable) A list of routes that this API exposes.

    loggingPolicies Property Map

    (Updatable) Policies controlling the pushing of logs to Oracle Cloud Infrastructure Public Logging.

    requestPolicies Property Map

    (Updatable) Behavior applied to any requests received by the API on this route.

    DeploymentSpecificationLoggingPolicies, DeploymentSpecificationLoggingPoliciesArgs

    AccessLog DeploymentSpecificationLoggingPoliciesAccessLog

    (Updatable) Configures the logging policies for the access logs of an API Deployment.

    ExecutionLog DeploymentSpecificationLoggingPoliciesExecutionLog

    (Updatable) Configures the logging policies for the execution logs of an API Deployment.

    AccessLog DeploymentSpecificationLoggingPoliciesAccessLog

    (Updatable) Configures the logging policies for the access logs of an API Deployment.

    ExecutionLog DeploymentSpecificationLoggingPoliciesExecutionLog

    (Updatable) Configures the logging policies for the execution logs of an API Deployment.

    accessLog DeploymentSpecificationLoggingPoliciesAccessLog

    (Updatable) Configures the logging policies for the access logs of an API Deployment.

    executionLog DeploymentSpecificationLoggingPoliciesExecutionLog

    (Updatable) Configures the logging policies for the execution logs of an API Deployment.

    accessLog DeploymentSpecificationLoggingPoliciesAccessLog

    (Updatable) Configures the logging policies for the access logs of an API Deployment.

    executionLog DeploymentSpecificationLoggingPoliciesExecutionLog

    (Updatable) Configures the logging policies for the execution logs of an API Deployment.

    access_log DeploymentSpecificationLoggingPoliciesAccessLog

    (Updatable) Configures the logging policies for the access logs of an API Deployment.

    execution_log DeploymentSpecificationLoggingPoliciesExecutionLog

    (Updatable) Configures the logging policies for the execution logs of an API Deployment.

    accessLog Property Map

    (Updatable) Configures the logging policies for the access logs of an API Deployment.

    executionLog Property Map

    (Updatable) Configures the logging policies for the execution logs of an API Deployment.

    DeploymentSpecificationLoggingPoliciesAccessLog, DeploymentSpecificationLoggingPoliciesAccessLogArgs

    IsEnabled bool

    (Updatable) Whether this policy is currently enabled.

    IsEnabled bool

    (Updatable) Whether this policy is currently enabled.

    isEnabled Boolean

    (Updatable) Whether this policy is currently enabled.

    isEnabled boolean

    (Updatable) Whether this policy is currently enabled.

    is_enabled bool

    (Updatable) Whether this policy is currently enabled.

    isEnabled Boolean

    (Updatable) Whether this policy is currently enabled.

    DeploymentSpecificationLoggingPoliciesExecutionLog, DeploymentSpecificationLoggingPoliciesExecutionLogArgs

    IsEnabled bool

    (Updatable) Whether this policy is currently enabled.

    LogLevel string

    (Updatable) Specifies the log level used to control logging output of execution logs. Enabling logging at a given level also enables logging at all higher levels.

    IsEnabled bool

    (Updatable) Whether this policy is currently enabled.

    LogLevel string

    (Updatable) Specifies the log level used to control logging output of execution logs. Enabling logging at a given level also enables logging at all higher levels.

    isEnabled Boolean

    (Updatable) Whether this policy is currently enabled.

    logLevel String

    (Updatable) Specifies the log level used to control logging output of execution logs. Enabling logging at a given level also enables logging at all higher levels.

    isEnabled boolean

    (Updatable) Whether this policy is currently enabled.

    logLevel string

    (Updatable) Specifies the log level used to control logging output of execution logs. Enabling logging at a given level also enables logging at all higher levels.

    is_enabled bool

    (Updatable) Whether this policy is currently enabled.

    log_level str

    (Updatable) Specifies the log level used to control logging output of execution logs. Enabling logging at a given level also enables logging at all higher levels.

    isEnabled Boolean

    (Updatable) Whether this policy is currently enabled.

    logLevel String

    (Updatable) Specifies the log level used to control logging output of execution logs. Enabling logging at a given level also enables logging at all higher levels.

    DeploymentSpecificationRequestPolicies, DeploymentSpecificationRequestPoliciesArgs

    Authentication DeploymentSpecificationRequestPoliciesAuthentication

    (Updatable) Information on how to authenticate incoming requests.

    Cors DeploymentSpecificationRequestPoliciesCors

    (Updatable) Enable CORS (Cross-Origin-Resource-Sharing) request handling.

    DynamicAuthentication DeploymentSpecificationRequestPoliciesDynamicAuthentication

    (Updatable) Policy on how to authenticate requests when multiple authentication options are configured for a deployment. For an incoming request, the value of selector specified under selectionSource will be matched against the keys specified for each authentication server. The authentication server whose key matches the value of selector will be used for authentication.

    MutualTls DeploymentSpecificationRequestPoliciesMutualTls

    (Updatable) Properties used to configure client mTLS verification when API Consumer makes connection to the gateway.

    RateLimiting DeploymentSpecificationRequestPoliciesRateLimiting

    (Updatable) Limit the number of requests that should be handled for the specified window using a specfic key.

    UsagePlans DeploymentSpecificationRequestPoliciesUsagePlans

    (Updatable) Usage plan policies for this deployment

    Authentication DeploymentSpecificationRequestPoliciesAuthentication

    (Updatable) Information on how to authenticate incoming requests.

    Cors DeploymentSpecificationRequestPoliciesCors

    (Updatable) Enable CORS (Cross-Origin-Resource-Sharing) request handling.

    DynamicAuthentication DeploymentSpecificationRequestPoliciesDynamicAuthentication

    (Updatable) Policy on how to authenticate requests when multiple authentication options are configured for a deployment. For an incoming request, the value of selector specified under selectionSource will be matched against the keys specified for each authentication server. The authentication server whose key matches the value of selector will be used for authentication.

    MutualTls DeploymentSpecificationRequestPoliciesMutualTls

    (Updatable) Properties used to configure client mTLS verification when API Consumer makes connection to the gateway.

    RateLimiting DeploymentSpecificationRequestPoliciesRateLimiting

    (Updatable) Limit the number of requests that should be handled for the specified window using a specfic key.

    UsagePlans DeploymentSpecificationRequestPoliciesUsagePlans

    (Updatable) Usage plan policies for this deployment

    authentication DeploymentSpecificationRequestPoliciesAuthentication

    (Updatable) Information on how to authenticate incoming requests.

    cors DeploymentSpecificationRequestPoliciesCors

    (Updatable) Enable CORS (Cross-Origin-Resource-Sharing) request handling.

    dynamicAuthentication DeploymentSpecificationRequestPoliciesDynamicAuthentication

    (Updatable) Policy on how to authenticate requests when multiple authentication options are configured for a deployment. For an incoming request, the value of selector specified under selectionSource will be matched against the keys specified for each authentication server. The authentication server whose key matches the value of selector will be used for authentication.

    mutualTls DeploymentSpecificationRequestPoliciesMutualTls

    (Updatable) Properties used to configure client mTLS verification when API Consumer makes connection to the gateway.

    rateLimiting DeploymentSpecificationRequestPoliciesRateLimiting

    (Updatable) Limit the number of requests that should be handled for the specified window using a specfic key.

    usagePlans DeploymentSpecificationRequestPoliciesUsagePlans

    (Updatable) Usage plan policies for this deployment

    authentication DeploymentSpecificationRequestPoliciesAuthentication

    (Updatable) Information on how to authenticate incoming requests.

    cors DeploymentSpecificationRequestPoliciesCors

    (Updatable) Enable CORS (Cross-Origin-Resource-Sharing) request handling.

    dynamicAuthentication DeploymentSpecificationRequestPoliciesDynamicAuthentication

    (Updatable) Policy on how to authenticate requests when multiple authentication options are configured for a deployment. For an incoming request, the value of selector specified under selectionSource will be matched against the keys specified for each authentication server. The authentication server whose key matches the value of selector will be used for authentication.

    mutualTls DeploymentSpecificationRequestPoliciesMutualTls

    (Updatable) Properties used to configure client mTLS verification when API Consumer makes connection to the gateway.

    rateLimiting DeploymentSpecificationRequestPoliciesRateLimiting

    (Updatable) Limit the number of requests that should be handled for the specified window using a specfic key.

    usagePlans DeploymentSpecificationRequestPoliciesUsagePlans

    (Updatable) Usage plan policies for this deployment

    authentication DeploymentSpecificationRequestPoliciesAuthentication

    (Updatable) Information on how to authenticate incoming requests.

    cors DeploymentSpecificationRequestPoliciesCors

    (Updatable) Enable CORS (Cross-Origin-Resource-Sharing) request handling.

    dynamic_authentication DeploymentSpecificationRequestPoliciesDynamicAuthentication

    (Updatable) Policy on how to authenticate requests when multiple authentication options are configured for a deployment. For an incoming request, the value of selector specified under selectionSource will be matched against the keys specified for each authentication server. The authentication server whose key matches the value of selector will be used for authentication.

    mutual_tls DeploymentSpecificationRequestPoliciesMutualTls

    (Updatable) Properties used to configure client mTLS verification when API Consumer makes connection to the gateway.

    rate_limiting DeploymentSpecificationRequestPoliciesRateLimiting

    (Updatable) Limit the number of requests that should be handled for the specified window using a specfic key.

    usage_plans DeploymentSpecificationRequestPoliciesUsagePlans

    (Updatable) Usage plan policies for this deployment

    authentication Property Map

    (Updatable) Information on how to authenticate incoming requests.

    cors Property Map

    (Updatable) Enable CORS (Cross-Origin-Resource-Sharing) request handling.

    dynamicAuthentication Property Map

    (Updatable) Policy on how to authenticate requests when multiple authentication options are configured for a deployment. For an incoming request, the value of selector specified under selectionSource will be matched against the keys specified for each authentication server. The authentication server whose key matches the value of selector will be used for authentication.

    mutualTls Property Map

    (Updatable) Properties used to configure client mTLS verification when API Consumer makes connection to the gateway.

    rateLimiting Property Map

    (Updatable) Limit the number of requests that should be handled for the specified window using a specfic key.

    usagePlans Property Map

    (Updatable) Usage plan policies for this deployment

    DeploymentSpecificationRequestPoliciesAuthentication, DeploymentSpecificationRequestPoliciesAuthenticationArgs

    Type string

    (Updatable) Type of the Response Cache Store Policy.

    ** IMPORTANT ** Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values

    Audiences List<string>

    (Updatable) The list of intended recipients for the token.

    CacheKeys List<string>

    (Updatable) A list of keys from "parameters" attribute value whose values will be added to the cache key.

    FunctionId string

    (Updatable) The OCID of the Oracle Functions function resource.

    IsAnonymousAccessAllowed bool

    (Updatable) Whether an unauthenticated user may access the API. Must be "true" to enable ANONYMOUS route authorization.

    Issuers List<string>

    (Updatable) A list of parties that could have issued the token.

    MaxClockSkewInSeconds double

    (Updatable) The maximum expected time difference between the system clocks of the token issuer and the API Gateway.

    Parameters Dictionary<string, object>

    (Updatable)

    PublicKeys DeploymentSpecificationRequestPoliciesAuthenticationPublicKeys

    (Updatable) A set of Public Keys that will be used to verify the JWT signature.

    TokenAuthScheme string

    (Updatable) The authentication scheme that is to be used when authenticating the token. This must to be provided if "tokenHeader" is specified.

    TokenHeader string

    (Updatable) The name of the header containing the authentication token.

    TokenQueryParam string

    (Updatable) The name of the query parameter containing the authentication token.

    ValidationFailurePolicy DeploymentSpecificationRequestPoliciesAuthenticationValidationFailurePolicy

    (Updatable) Policy for defining behaviour on validation failure.

    ValidationPolicy DeploymentSpecificationRequestPoliciesAuthenticationValidationPolicy

    (Updatable) Authentication Policies for the Token Authentication types.

    VerifyClaims List<DeploymentSpecificationRequestPoliciesAuthenticationVerifyClaim>

    (Updatable) A list of claims which should be validated to consider the token valid.

    Type string

    (Updatable) Type of the Response Cache Store Policy.

    ** IMPORTANT ** Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values

    Audiences []string

    (Updatable) The list of intended recipients for the token.

    CacheKeys []string

    (Updatable) A list of keys from "parameters" attribute value whose values will be added to the cache key.

    FunctionId string

    (Updatable) The OCID of the Oracle Functions function resource.

    IsAnonymousAccessAllowed bool

    (Updatable) Whether an unauthenticated user may access the API. Must be "true" to enable ANONYMOUS route authorization.

    Issuers []string

    (Updatable) A list of parties that could have issued the token.

    MaxClockSkewInSeconds float64

    (Updatable) The maximum expected time difference between the system clocks of the token issuer and the API Gateway.

    Parameters map[string]interface{}

    (Updatable)

    PublicKeys DeploymentSpecificationRequestPoliciesAuthenticationPublicKeys

    (Updatable) A set of Public Keys that will be used to verify the JWT signature.

    TokenAuthScheme string

    (Updatable) The authentication scheme that is to be used when authenticating the token. This must to be provided if "tokenHeader" is specified.

    TokenHeader string

    (Updatable) The name of the header containing the authentication token.

    TokenQueryParam string

    (Updatable) The name of the query parameter containing the authentication token.

    ValidationFailurePolicy DeploymentSpecificationRequestPoliciesAuthenticationValidationFailurePolicy

    (Updatable) Policy for defining behaviour on validation failure.

    ValidationPolicy DeploymentSpecificationRequestPoliciesAuthenticationValidationPolicy

    (Updatable) Authentication Policies for the Token Authentication types.

    VerifyClaims []DeploymentSpecificationRequestPoliciesAuthenticationVerifyClaim

    (Updatable) A list of claims which should be validated to consider the token valid.

    type String

    (Updatable) Type of the Response Cache Store Policy.

    ** IMPORTANT ** Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values

    audiences List<String>

    (Updatable) The list of intended recipients for the token.

    cacheKeys List<String>

    (Updatable) A list of keys from "parameters" attribute value whose values will be added to the cache key.

    functionId String

    (Updatable) The OCID of the Oracle Functions function resource.

    isAnonymousAccessAllowed Boolean

    (Updatable) Whether an unauthenticated user may access the API. Must be "true" to enable ANONYMOUS route authorization.

    issuers List<String>

    (Updatable) A list of parties that could have issued the token.

    maxClockSkewInSeconds Double

    (Updatable) The maximum expected time difference between the system clocks of the token issuer and the API Gateway.

    parameters Map<String,Object>

    (Updatable)

    publicKeys DeploymentSpecificationRequestPoliciesAuthenticationPublicKeys

    (Updatable) A set of Public Keys that will be used to verify the JWT signature.

    tokenAuthScheme String

    (Updatable) The authentication scheme that is to be used when authenticating the token. This must to be provided if "tokenHeader" is specified.

    tokenHeader String

    (Updatable) The name of the header containing the authentication token.

    tokenQueryParam String

    (Updatable) The name of the query parameter containing the authentication token.

    validationFailurePolicy DeploymentSpecificationRequestPoliciesAuthenticationValidationFailurePolicy

    (Updatable) Policy for defining behaviour on validation failure.

    validationPolicy DeploymentSpecificationRequestPoliciesAuthenticationValidationPolicy

    (Updatable) Authentication Policies for the Token Authentication types.

    verifyClaims List<DeploymentSpecificationRequestPoliciesAuthenticationVerifyClaim>

    (Updatable) A list of claims which should be validated to consider the token valid.

    type string

    (Updatable) Type of the Response Cache Store Policy.

    ** IMPORTANT ** Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values

    audiences string[]

    (Updatable) The list of intended recipients for the token.

    cacheKeys string[]

    (Updatable) A list of keys from "parameters" attribute value whose values will be added to the cache key.

    functionId string

    (Updatable) The OCID of the Oracle Functions function resource.

    isAnonymousAccessAllowed boolean

    (Updatable) Whether an unauthenticated user may access the API. Must be "true" to enable ANONYMOUS route authorization.

    issuers string[]

    (Updatable) A list of parties that could have issued the token.

    maxClockSkewInSeconds number

    (Updatable) The maximum expected time difference between the system clocks of the token issuer and the API Gateway.

    parameters {[key: string]: any}

    (Updatable)

    publicKeys DeploymentSpecificationRequestPoliciesAuthenticationPublicKeys

    (Updatable) A set of Public Keys that will be used to verify the JWT signature.

    tokenAuthScheme string

    (Updatable) The authentication scheme that is to be used when authenticating the token. This must to be provided if "tokenHeader" is specified.

    tokenHeader string

    (Updatable) The name of the header containing the authentication token.

    tokenQueryParam string

    (Updatable) The name of the query parameter containing the authentication token.

    validationFailurePolicy DeploymentSpecificationRequestPoliciesAuthenticationValidationFailurePolicy

    (Updatable) Policy for defining behaviour on validation failure.

    validationPolicy DeploymentSpecificationRequestPoliciesAuthenticationValidationPolicy

    (Updatable) Authentication Policies for the Token Authentication types.

    verifyClaims DeploymentSpecificationRequestPoliciesAuthenticationVerifyClaim[]

    (Updatable) A list of claims which should be validated to consider the token valid.

    type str

    (Updatable) Type of the Response Cache Store Policy.

    ** IMPORTANT ** Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values

    audiences Sequence[str]

    (Updatable) The list of intended recipients for the token.

    cache_keys Sequence[str]

    (Updatable) A list of keys from "parameters" attribute value whose values will be added to the cache key.

    function_id str

    (Updatable) The OCID of the Oracle Functions function resource.

    is_anonymous_access_allowed bool

    (Updatable) Whether an unauthenticated user may access the API. Must be "true" to enable ANONYMOUS route authorization.

    issuers Sequence[str]

    (Updatable) A list of parties that could have issued the token.

    max_clock_skew_in_seconds float

    (Updatable) The maximum expected time difference between the system clocks of the token issuer and the API Gateway.

    parameters Mapping[str, Any]

    (Updatable)

    public_keys DeploymentSpecificationRequestPoliciesAuthenticationPublicKeys

    (Updatable) A set of Public Keys that will be used to verify the JWT signature.

    token_auth_scheme str

    (Updatable) The authentication scheme that is to be used when authenticating the token. This must to be provided if "tokenHeader" is specified.

    token_header str

    (Updatable) The name of the header containing the authentication token.

    token_query_param str

    (Updatable) The name of the query parameter containing the authentication token.

    validation_failure_policy DeploymentSpecificationRequestPoliciesAuthenticationValidationFailurePolicy

    (Updatable) Policy for defining behaviour on validation failure.

    validation_policy DeploymentSpecificationRequestPoliciesAuthenticationValidationPolicy

    (Updatable) Authentication Policies for the Token Authentication types.

    verify_claims DeploymentSpecificationRequestPoliciesAuthenticationVerifyClaim]

    (Updatable) A list of claims which should be validated to consider the token valid.

    type String

    (Updatable) Type of the Response Cache Store Policy.

    ** IMPORTANT ** Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values

    audiences List<String>

    (Updatable) The list of intended recipients for the token.

    cacheKeys List<String>

    (Updatable) A list of keys from "parameters" attribute value whose values will be added to the cache key.

    functionId String

    (Updatable) The OCID of the Oracle Functions function resource.

    isAnonymousAccessAllowed Boolean

    (Updatable) Whether an unauthenticated user may access the API. Must be "true" to enable ANONYMOUS route authorization.

    issuers List<String>

    (Updatable) A list of parties that could have issued the token.

    maxClockSkewInSeconds Number

    (Updatable) The maximum expected time difference between the system clocks of the token issuer and the API Gateway.

    parameters Map<Any>

    (Updatable)

    publicKeys Property Map

    (Updatable) A set of Public Keys that will be used to verify the JWT signature.

    tokenAuthScheme String

    (Updatable) The authentication scheme that is to be used when authenticating the token. This must to be provided if "tokenHeader" is specified.

    tokenHeader String

    (Updatable) The name of the header containing the authentication token.

    tokenQueryParam String

    (Updatable) The name of the query parameter containing the authentication token.

    validationFailurePolicy Property Map

    (Updatable) Policy for defining behaviour on validation failure.

    validationPolicy Property Map

    (Updatable) Authentication Policies for the Token Authentication types.

    verifyClaims List<Property Map>

    (Updatable) A list of claims which should be validated to consider the token valid.

    DeploymentSpecificationRequestPoliciesAuthenticationPublicKeys, DeploymentSpecificationRequestPoliciesAuthenticationPublicKeysArgs

    Type string

    (Updatable) Type of the Response Cache Store Policy.

    ** IMPORTANT ** Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values

    IsSslVerifyDisabled bool

    (Updatable) Defines whether or not to uphold SSL verification.

    Keys List<DeploymentSpecificationRequestPoliciesAuthenticationPublicKeysKey>

    (Updatable) The set of static public keys.

    MaxCacheDurationInHours int

    (Updatable) The duration for which the introspect URL response should be cached before it is fetched again.

    Uri string

    (Updatable) The uri from which to retrieve the key. It must be accessible without authentication.

    Type string

    (Updatable) Type of the Response Cache Store Policy.

    ** IMPORTANT ** Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values

    IsSslVerifyDisabled bool

    (Updatable) Defines whether or not to uphold SSL verification.

    Keys []DeploymentSpecificationRequestPoliciesAuthenticationPublicKeysKey

    (Updatable) The set of static public keys.

    MaxCacheDurationInHours int

    (Updatable) The duration for which the introspect URL response should be cached before it is fetched again.

    Uri string

    (Updatable) The uri from which to retrieve the key. It must be accessible without authentication.

    type String

    (Updatable) Type of the Response Cache Store Policy.

    ** IMPORTANT ** Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values

    isSslVerifyDisabled Boolean

    (Updatable) Defines whether or not to uphold SSL verification.

    keys List<DeploymentSpecificationRequestPoliciesAuthenticationPublicKeysKey>

    (Updatable) The set of static public keys.

    maxCacheDurationInHours Integer

    (Updatable) The duration for which the introspect URL response should be cached before it is fetched again.

    uri String

    (Updatable) The uri from which to retrieve the key. It must be accessible without authentication.

    type string

    (Updatable) Type of the Response Cache Store Policy.

    ** IMPORTANT ** Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values

    isSslVerifyDisabled boolean

    (Updatable) Defines whether or not to uphold SSL verification.

    keys DeploymentSpecificationRequestPoliciesAuthenticationPublicKeysKey[]

    (Updatable) The set of static public keys.

    maxCacheDurationInHours number

    (Updatable) The duration for which the introspect URL response should be cached before it is fetched again.

    uri string

    (Updatable) The uri from which to retrieve the key. It must be accessible without authentication.

    type str

    (Updatable) Type of the Response Cache Store Policy.

    ** IMPORTANT ** Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values

    is_ssl_verify_disabled bool

    (Updatable) Defines whether or not to uphold SSL verification.

    keys DeploymentSpecificationRequestPoliciesAuthenticationPublicKeysKey]

    (Updatable) The set of static public keys.

    max_cache_duration_in_hours int

    (Updatable) The duration for which the introspect URL response should be cached before it is fetched again.

    uri str

    (Updatable) The uri from which to retrieve the key. It must be accessible without authentication.

    type String

    (Updatable) Type of the Response Cache Store Policy.

    ** IMPORTANT ** Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values

    isSslVerifyDisabled Boolean

    (Updatable) Defines whether or not to uphold SSL verification.

    keys List<Property Map>

    (Updatable) The set of static public keys.

    maxCacheDurationInHours Number

    (Updatable) The duration for which the introspect URL response should be cached before it is fetched again.

    uri String

    (Updatable) The uri from which to retrieve the key. It must be accessible without authentication.

    DeploymentSpecificationRequestPoliciesAuthenticationPublicKeysKey, DeploymentSpecificationRequestPoliciesAuthenticationPublicKeysKeyArgs

    Format string

    (Updatable) The format of the public key.

    Alg string

    (Updatable) The algorithm intended for use with this key.

    E string

    (Updatable) The base64 url encoded exponent of the RSA public key represented by this key.

    Key string

    (Updatable) Information around the values for selector of an authentication/ routing branch.

    KeyOps List<string>

    (Updatable) The operations for which this key is to be used.

    Kid string

    (Updatable) A unique key ID. This key will be used to verify the signature of a JWT with matching "kid".

    Kty string

    (Updatable) The key type.

    N string

    (Updatable) The base64 url encoded modulus of the RSA public key represented by this key.

    Use string

    (Updatable) The intended use of the public key.

    Format string

    (Updatable) The format of the public key.

    Alg string

    (Updatable) The algorithm intended for use with this key.

    E string

    (Updatable) The base64 url encoded exponent of the RSA public key represented by this key.

    Key string

    (Updatable) Information around the values for selector of an authentication/ routing branch.

    KeyOps []string

    (Updatable) The operations for which this key is to be used.

    Kid string

    (Updatable) A unique key ID. This key will be used to verify the signature of a JWT with matching "kid".

    Kty string

    (Updatable) The key type.

    N string

    (Updatable) The base64 url encoded modulus of the RSA public key represented by this key.

    Use string

    (Updatable) The intended use of the public key.

    format String

    (Updatable) The format of the public key.

    alg String

    (Updatable) The algorithm intended for use with this key.

    e String

    (Updatable) The base64 url encoded exponent of the RSA public key represented by this key.

    key String

    (Updatable) Information around the values for selector of an authentication/ routing branch.

    keyOps List<String>

    (Updatable) The operations for which this key is to be used.

    kid String

    (Updatable) A unique key ID. This key will be used to verify the signature of a JWT with matching "kid".

    kty String

    (Updatable) The key type.

    n String

    (Updatable) The base64 url encoded modulus of the RSA public key represented by this key.

    use String

    (Updatable) The intended use of the public key.

    format string

    (Updatable) The format of the public key.

    alg string

    (Updatable) The algorithm intended for use with this key.

    e string

    (Updatable) The base64 url encoded exponent of the RSA public key represented by this key.

    key string

    (Updatable) Information around the values for selector of an authentication/ routing branch.

    keyOps string[]

    (Updatable) The operations for which this key is to be used.

    kid string

    (Updatable) A unique key ID. This key will be used to verify the signature of a JWT with matching "kid".

    kty string

    (Updatable) The key type.

    n string

    (Updatable) The base64 url encoded modulus of the RSA public key represented by this key.

    use string

    (Updatable) The intended use of the public key.

    format str

    (Updatable) The format of the public key.

    alg str

    (Updatable) The algorithm intended for use with this key.

    e str

    (Updatable) The base64 url encoded exponent of the RSA public key represented by this key.

    key str

    (Updatable) Information around the values for selector of an authentication/ routing branch.

    key_ops Sequence[str]

    (Updatable) The operations for which this key is to be used.

    kid str

    (Updatable) A unique key ID. This key will be used to verify the signature of a JWT with matching "kid".

    kty str

    (Updatable) The key type.

    n str

    (Updatable) The base64 url encoded modulus of the RSA public key represented by this key.

    use str

    (Updatable) The intended use of the public key.

    format String

    (Updatable) The format of the public key.

    alg String

    (Updatable) The algorithm intended for use with this key.

    e String

    (Updatable) The base64 url encoded exponent of the RSA public key represented by this key.

    key String

    (Updatable) Information around the values for selector of an authentication/ routing branch.

    keyOps List<String>

    (Updatable) The operations for which this key is to be used.

    kid String

    (Updatable) A unique key ID. This key will be used to verify the signature of a JWT with matching "kid".

    kty String

    (Updatable) The key type.

    n String

    (Updatable) The base64 url encoded modulus of the RSA public key represented by this key.

    use String

    (Updatable) The intended use of the public key.

    DeploymentSpecificationRequestPoliciesAuthenticationValidationFailurePolicy, DeploymentSpecificationRequestPoliciesAuthenticationValidationFailurePolicyArgs

    Type string

    (Updatable) Type of the Response Cache Store Policy.

    ** IMPORTANT ** Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values

    ClientDetails DeploymentSpecificationRequestPoliciesAuthenticationValidationFailurePolicyClientDetails

    (Updatable) Client App Credential details.

    FallbackRedirectPath string

    (Updatable) The path to be used as fallback after OAuth2.

    LogoutPath string

    (Updatable) The path to be used as logout.

    MaxExpiryDurationInHours int

    (Updatable) The duration for which the OAuth2 success token should be cached before it is fetched again.

    ResponseCode string

    (Updatable) HTTP response code, can include context variables.

    ResponseHeaderTransformations DeploymentSpecificationRequestPoliciesAuthenticationValidationFailurePolicyResponseHeaderTransformations

    (Updatable) A set of transformations to apply to HTTP headers that pass through the gateway.

    ResponseMessage string

    (Updatable) HTTP response message.

    ResponseType string

    (Updatable) Response Type.

    Scopes List<string>

    (Updatable) List of scopes.

    SourceUriDetails DeploymentSpecificationRequestPoliciesAuthenticationValidationFailurePolicySourceUriDetails

    (Updatable) Auth endpoint details.

    UseCookiesForIntermediateSteps bool

    (Updatable) Defines whether or not to use cookies for OAuth2 intermediate steps.

    UseCookiesForSession bool

    (Updatable) Defines whether or not to use cookies for session maintenance.

    UsePkce bool

    (Updatable) Defines whether or not to support PKCE.

    Type string

    (Updatable) Type of the Response Cache Store Policy.

    ** IMPORTANT ** Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values

    ClientDetails DeploymentSpecificationRequestPoliciesAuthenticationValidationFailurePolicyClientDetails

    (Updatable) Client App Credential details.

    FallbackRedirectPath string

    (Updatable) The path to be used as fallback after OAuth2.

    LogoutPath string

    (Updatable) The path to be used as logout.

    MaxExpiryDurationInHours int

    (Updatable) The duration for which the OAuth2 success token should be cached before it is fetched again.

    ResponseCode string

    (Updatable) HTTP response code, can include context variables.

    ResponseHeaderTransformations DeploymentSpecificationRequestPoliciesAuthenticationValidationFailurePolicyResponseHeaderTransformations

    (Updatable) A set of transformations to apply to HTTP headers that pass through the gateway.

    ResponseMessage string

    (Updatable) HTTP response message.

    ResponseType string

    (Updatable) Response Type.

    Scopes []string

    (Updatable) List of scopes.

    SourceUriDetails DeploymentSpecificationRequestPoliciesAuthenticationValidationFailurePolicySourceUriDetails

    (Updatable) Auth endpoint details.

    UseCookiesForIntermediateSteps bool

    (Updatable) Defines whether or not to use cookies for OAuth2 intermediate steps.

    UseCookiesForSession bool

    (Updatable) Defines whether or not to use cookies for session maintenance.

    UsePkce bool

    (Updatable) Defines whether or not to support PKCE.

    type String

    (Updatable) Type of the Response Cache Store Policy.

    ** IMPORTANT ** Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values

    clientDetails DeploymentSpecificationRequestPoliciesAuthenticationValidationFailurePolicyClientDetails

    (Updatable) Client App Credential details.

    fallbackRedirectPath String

    (Updatable) The path to be used as fallback after OAuth2.

    logoutPath String

    (Updatable) The path to be used as logout.

    maxExpiryDurationInHours Integer

    (Updatable) The duration for which the OAuth2 success token should be cached before it is fetched again.

    responseCode String

    (Updatable) HTTP response code, can include context variables.

    responseHeaderTransformations DeploymentSpecificationRequestPoliciesAuthenticationValidationFailurePolicyResponseHeaderTransformations

    (Updatable) A set of transformations to apply to HTTP headers that pass through the gateway.

    responseMessage String

    (Updatable) HTTP response message.

    responseType String

    (Updatable) Response Type.

    scopes List<String>

    (Updatable) List of scopes.

    sourceUriDetails DeploymentSpecificationRequestPoliciesAuthenticationValidationFailurePolicySourceUriDetails

    (Updatable) Auth endpoint details.

    useCookiesForIntermediateSteps Boolean

    (Updatable) Defines whether or not to use cookies for OAuth2 intermediate steps.

    useCookiesForSession Boolean

    (Updatable) Defines whether or not to use cookies for session maintenance.

    usePkce Boolean

    (Updatable) Defines whether or not to support PKCE.

    type string

    (Updatable) Type of the Response Cache Store Policy.

    ** IMPORTANT ** Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values

    clientDetails DeploymentSpecificationRequestPoliciesAuthenticationValidationFailurePolicyClientDetails

    (Updatable) Client App Credential details.

    fallbackRedirectPath string

    (Updatable) The path to be used as fallback after OAuth2.

    logoutPath string

    (Updatable) The path to be used as logout.

    maxExpiryDurationInHours number

    (Updatable) The duration for which the OAuth2 success token should be cached before it is fetched again.

    responseCode string

    (Updatable) HTTP response code, can include context variables.

    responseHeaderTransformations DeploymentSpecificationRequestPoliciesAuthenticationValidationFailurePolicyResponseHeaderTransformations

    (Updatable) A set of transformations to apply to HTTP headers that pass through the gateway.

    responseMessage string

    (Updatable) HTTP response message.

    responseType string

    (Updatable) Response Type.

    scopes string[]

    (Updatable) List of scopes.

    sourceUriDetails DeploymentSpecificationRequestPoliciesAuthenticationValidationFailurePolicySourceUriDetails

    (Updatable) Auth endpoint details.

    useCookiesForIntermediateSteps boolean

    (Updatable) Defines whether or not to use cookies for OAuth2 intermediate steps.

    useCookiesForSession boolean

    (Updatable) Defines whether or not to use cookies for session maintenance.

    usePkce boolean

    (Updatable) Defines whether or not to support PKCE.

    type str

    (Updatable) Type of the Response Cache Store Policy.

    ** IMPORTANT ** Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values

    client_details DeploymentSpecificationRequestPoliciesAuthenticationValidationFailurePolicyClientDetails

    (Updatable) Client App Credential details.

    fallback_redirect_path str

    (Updatable) The path to be used as fallback after OAuth2.

    logout_path str

    (Updatable) The path to be used as logout.

    max_expiry_duration_in_hours int

    (Updatable) The duration for which the OAuth2 success token should be cached before it is fetched again.

    response_code str

    (Updatable) HTTP response code, can include context variables.

    response_header_transformations DeploymentSpecificationRequestPoliciesAuthenticationValidationFailurePolicyResponseHeaderTransformations

    (Updatable) A set of transformations to apply to HTTP headers that pass through the gateway.

    response_message str

    (Updatable) HTTP response message.

    response_type str

    (Updatable) Response Type.

    scopes Sequence[str]

    (Updatable) List of scopes.

    source_uri_details DeploymentSpecificationRequestPoliciesAuthenticationValidationFailurePolicySourceUriDetails

    (Updatable) Auth endpoint details.

    use_cookies_for_intermediate_steps bool

    (Updatable) Defines whether or not to use cookies for OAuth2 intermediate steps.

    use_cookies_for_session bool

    (Updatable) Defines whether or not to use cookies for session maintenance.

    use_pkce bool

    (Updatable) Defines whether or not to support PKCE.

    type String

    (Updatable) Type of the Response Cache Store Policy.

    ** IMPORTANT ** Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values

    clientDetails Property Map

    (Updatable) Client App Credential details.

    fallbackRedirectPath