{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "#/components/schemas/Stage",
  "title": "Stage",
  "type": "object",
  "properties": {
    "deploymentId": {
      "allOf": [
        {
          "$ref": "#/components/schemas/String"
        },
        {
          "description": "The identifier of the Deployment that the stage points to."
        }
      ]
    },
    "clientCertificateId": {
      "allOf": [
        {
          "$ref": "#/components/schemas/String"
        },
        {
          "description": "The identifier of a client certificate for an API stage."
        }
      ]
    },
    "stageName": {
      "allOf": [
        {
          "$ref": "#/components/schemas/String"
        },
        {
          "description": "The name of the stage is the first path segment in the Uniform Resource Identifier (URI) of a call to API Gateway. Stage names can only contain alphanumeric characters, hyphens, and underscores. Maximum length is 128 characters."
        }
      ]
    },
    "description": {
      "allOf": [
        {
          "$ref": "#/components/schemas/String"
        },
        {
          "description": "The stage's description."
        }
      ]
    },
    "cacheClusterEnabled": {
      "allOf": [
        {
          "$ref": "#/components/schemas/Boolean"
        },
        {
          "description": "Specifies whether a cache cluster is enabled for the stage."
        }
      ]
    },
    "cacheClusterSize": {
      "allOf": [
        {
          "$ref": "#/components/schemas/CacheClusterSize"
        },
        {
          "description": "The stage's cache capacity in GB. For more information about choosing a cache size, see <a href=\"https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-caching.html\">Enabling API caching to enhance responsiveness</a>."
        }
      ]
    },
    "cacheClusterStatus": {
      "allOf": [
        {
          "$ref": "#/components/schemas/CacheClusterStatus"
        },
        {
          "description": "The status of the cache cluster for the stage, if enabled."
        }
      ]
    },
    "methodSettings": {
      "allOf": [
        {
          "$ref": "#/components/schemas/MapOfMethodSettings"
        },
        {
          "description": "A map that defines the method settings for a Stage resource. Keys (designated as <code>/{method_setting_key</code> below) are method paths defined as <code>{resource_path}/{http_method}</code> for an individual method override, or <code>/\\*/\\*</code> for overriding all methods in the stage. "
        }
      ]
    },
    "variables": {
      "allOf": [
        {
          "$ref": "#/components/schemas/MapOfStringToString"
        },
        {
          "description": "A map that defines the stage variables for a Stage resource. Variable names can have alphanumeric and underscore characters, and the values must match <code>[A-Za-z0-9-._~:/?#&amp;=,]+</code>."
        }
      ]
    },
    "documentationVersion": {
      "allOf": [
        {
          "$ref": "#/components/schemas/String"
        },
        {
          "description": "The version of the associated API documentation."
        }
      ]
    },
    "accessLogSettings": {
      "allOf": [
        {
          "$ref": "#/components/schemas/AccessLogSettings"
        },
        {
          "description": "Settings for logging access in this stage."
        }
      ]
    },
    "canarySettings": {
      "allOf": [
        {
          "$ref": "#/components/schemas/CanarySettings"
        },
        {
          "description": "Settings for the canary deployment in this stage."
        }
      ]
    },
    "tracingEnabled": {
      "allOf": [
        {
          "$ref": "#/components/schemas/Boolean"
        },
        {
          "description": "Specifies whether active tracing with X-ray is enabled for the Stage."
        }
      ]
    },
    "webAclArn": {
      "allOf": [
        {
          "$ref": "#/components/schemas/String"
        },
        {
          "description": "The ARN of the WebAcl associated with the Stage."
        }
      ]
    },
    "tags": {
      "allOf": [
        {
          "$ref": "#/components/schemas/MapOfStringToString"
        },
        {
          "description": "The collection of tags. Each tag element is associated with a given resource."
        }
      ]
    },
    "createdDate": {
      "allOf": [
        {
          "$ref": "#/components/schemas/Timestamp"
        },
        {
          "description": "The timestamp when the stage was created."
        }
      ]
    },
    "lastUpdatedDate": {
      "allOf": [
        {
          "$ref": "#/components/schemas/Timestamp"
        },
        {
          "description": "The timestamp when the stage last updated."
        }
      ]
    }
  },
  "description": "Represents a unique identifier for a version of a deployed RestApi that is callable by users."
}