Amazon Serverless Application Repository Versions API

Application version management

Operations 2

PUT /applications/{ApplicationId}/versions/{SemanticVersion} Create Application Version #
GET /applications/{ApplicationId}/versions List Application Versions #

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/amazon-serverless-application-repository:amazon-serverless-application-repository-versions-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Calls without X-API-Key need no key. Calls with it need a paid plan — get a key.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

amazon-serverless-application-repository-versions-api-openapi.yml Raw ↑
openapi: 3.1.0
info:
  title: AWSServerlessApplicationRepository Versions API
  version: '2017-09-08'
  description: Generated from AWS's published Smithy model for AWSServerlessApplicationRepository. 2 operation(s).
  contact:
    name: Amazon Web Services
    url: https://aws.amazon.com/contact-us/
  license:
    name: Apache 2.0
    identifier: Apache-2.0
    url: https://github.com/aws/api-models-aws/blob/main/LICENSE
servers:
- url: https://serverlessrepo.{region}.amazonaws.com
  variables:
    region:
      default: us-east-1
security:
- sigv4: []
paths:
  /applications/{ApplicationId}/versions/{SemanticVersion}:
    put:
      operationId: CreateApplicationVersion
      summary: Create Application Version
      description: Creates an application version.
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CreateApplicationVersionResponse'
        '400':
          description: BadRequestException
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/BadRequestException'
        '409':
          description: ConflictException
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConflictException'
        '403':
          description: ForbiddenException
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ForbiddenException'
        '500':
          description: InternalServerErrorException
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/InternalServerErrorException'
        '429':
          description: TooManyRequestsException
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TooManyRequestsException'
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CreateApplicationVersionRequest'
      tags:
      - Versions
  /applications/{ApplicationId}/versions:
    get:
      operationId: ListApplicationVersions
      summary: List Application Versions
      description: Lists versions for the specified application.
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ListApplicationVersionsResponse'
        '400':
          description: BadRequestException
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/BadRequestException'
        '403':
          description: ForbiddenException
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ForbiddenException'
        '500':
          description: InternalServerErrorException
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/InternalServerErrorException'
        '404':
          description: NotFoundException
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/NotFoundException'
        '429':
          description: TooManyRequestsException
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TooManyRequestsException'
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ListApplicationVersionsRequest'
      tags:
      - Versions
components:
  securitySchemes:
    sigv4:
      type: apiKey
      in: header
      name: Authorization
      description: AWS Signature Version 4. The Authorization header carries an AWS4-HMAC-SHA256 signature over the canonical
        request, with X-Amz-Date (and X-Amz-Security-Token for temporary credentials). Not a bearer token.
      x-aws-sigv4:
        signingName: serverlessrepo
  schemas:
    BadRequestException:
      type: object
      properties:
        ErrorCode:
          type: string
          description: '400'
        Message:
          type: string
          description: One of the parameters in the request is invalid.
    ConflictException:
      type: object
      properties:
        ErrorCode:
          type: string
          description: '409'
        Message:
          type: string
          description: The resource already exists.
    CreateApplicationVersionRequest:
      type: object
      properties:
        ApplicationId:
          type: string
          description: The Amazon Resource Name (ARN) of the application.
        SemanticVersion:
          type: string
          description: The semantic version of the new version.
        SourceCodeArchiveUrl:
          type: string
          description: A link to the S3 object that contains the ZIP archive of the source code for this version of your application.Maximum
            size 50 MB
        SourceCodeUrl:
          type: string
          description: A link to a public repository for the source code of your application, for example the URL of a specific
            GitHub commit.
        TemplateBody:
          type: string
          description: The raw packaged AWS SAM template of your application.
        TemplateUrl:
          type: string
          description: A link to the packaged AWS SAM template of your application.
      required:
      - ApplicationId
      - SemanticVersion
    CreateApplicationVersionResponse:
      type: object
      properties:
        ApplicationId:
          type: string
          description: The application Amazon Resource Name (ARN).
        CreationTime:
          type: string
          description: The date and time this resource was created.
        ParameterDefinitions:
          type: array
          items:
            $ref: '#/components/schemas/ParameterDefinition'
          description: An array of parameter types supported by the application.
        RequiredCapabilities:
          type: array
          items:
            type: string
            enum:
            - CAPABILITY_IAM
            - CAPABILITY_NAMED_IAM
            - CAPABILITY_AUTO_EXPAND
            - CAPABILITY_RESOURCE_POLICY
          description: 'A list of values that you must specify before you can deploy certain applications. Some applications
            might include resources that can affect permissions in your AWS account, for example, by creating new AWS Identity
            and Access Management (IAM) users. For those applications, you must explicitly acknowledge their capabilities
            by specifying this parameter.The only valid values are CAPABILITY_IAM, CAPABILITY_NAMED_IAM, CAPABILITY_RESOURCE_POLICY,
            and CAPABILITY_AUTO_EXPAND.The following resources require you to specify CAPABILITY_IAM or CAPABILITY_NAMED_IAM:
            AWS::IAM::Group, AWS::IAM::InstanceProf'
        ResourcesSupported:
          type: boolean
          description: Whether all of the AWS resources contained in this application are supported in the region in which
            it is being retrieved.
        SemanticVersion:
          type: string
          description: 'The semantic version of the application: https://semver.org/'
        SourceCodeArchiveUrl:
          type: string
          description: A link to the S3 object that contains the ZIP archive of the source code for this version of your application.Maximum
            size 50 MB
        SourceCodeUrl:
          type: string
          description: A link to a public repository for the source code of your application, for example the URL of a specific
            GitHub commit.
        TemplateUrl:
          type: string
          description: A link to the packaged AWS SAM template of your application.
    ForbiddenException:
      type: object
      properties:
        ErrorCode:
          type: string
          description: '403'
        Message:
          type: string
          description: The client is not authenticated.
    InternalServerErrorException:
      type: object
      properties:
        ErrorCode:
          type: string
          description: '500'
        Message:
          type: string
          description: The AWS Serverless Application Repository service encountered an internal error.
    ListApplicationVersionsRequest:
      type: object
      properties:
        ApplicationId:
          type: string
          description: The Amazon Resource Name (ARN) of the application.
        MaxItems:
          type: integer
          description: The total number of items to return.
        NextToken:
          type: string
          description: A token to specify where to start paginating.
      required:
      - ApplicationId
    ListApplicationVersionsResponse:
      type: object
      properties:
        NextToken:
          type: string
          description: The token to request the next page of results.
        Versions:
          type: array
          items:
            $ref: '#/components/schemas/VersionSummary'
          description: An array of version summaries for the application.
    NotFoundException:
      type: object
      properties:
        ErrorCode:
          type: string
          description: '404'
        Message:
          type: string
          description: The resource (for example, an access policy statement) specified in the request doesn't exist.
    ParameterDefinition:
      type: object
      properties:
        AllowedPattern:
          type: string
          description: A regular expression that represents the patterns to allow for String types.
        AllowedValues:
          type: array
          items:
            type: string
          description: An array containing the list of values allowed for the parameter.
        ConstraintDescription:
          type: string
          description: 'A string that explains a constraint when the constraint is violated. For example, without a constraint
            description, a parameter that has an allowed pattern of [A-Za-z0-9]+ displays the following error message when
            the user specifies an invalid value: Malformed input-Parameter MyParameter must match pattern [A-Za-z0-9]+ By
            adding a constraint description, such as "must contain only uppercase and lowercase letters and numbers," you
            can display the following customized error message: Malformed input-Parameter MyParameter must contain only uppercase
            and lowercase letters and numbers.'
        DefaultValue:
          type: string
          description: A value of the appropriate type for the template to use if no value is specified when a stack is created.
            If you define constraints for the parameter, you must specify a value that adheres to those constraints.
        Description:
          type: string
          description: A string of up to 4,000 characters that describes the parameter.
        MaxLength:
          type: integer
          description: An integer value that determines the largest number of characters that you want to allow for String
            types.
        MaxValue:
          type: integer
          description: A numeric value that determines the largest numeric value that you want to allow for Number types.
        MinLength:
          type: integer
          description: An integer value that determines the smallest number of characters that you want to allow for String
            types.
        MinValue:
          type: integer
          description: A numeric value that determines the smallest numeric value that you want to allow for Number types.
        Name:
          type: string
          description: The name of the parameter.
        NoEcho:
          type: boolean
          description: Whether to mask the parameter value whenever anyone makes a call that describes the stack. If you set
            the value to true, the parameter value is masked with asterisks (*****).
        ReferencedByResources:
          type: array
          items:
            type: string
          description: A list of AWS SAM resources that use this parameter.
        Type:
          type: string
          description: 'The type of the parameter.Valid values: String | Number | List<Number> | CommaDelimitedList String:
            A literal string.For example, users can specify "MyUserName". Number: An integer or float. AWS CloudFormation
            validates the parameter value as a number. However, when you use the parameter elsewhere in your template (for
            example, by using the Ref intrinsic function), the parameter value becomes a string.For example, users might specify
            "8888". List<Number>: An array of integers or floats that are separated by commas. AWS CloudFormation validates
            the parameter value as numbers. However, whe'
      required:
      - Name
      - ReferencedByResources
    TooManyRequestsException:
      type: object
      properties:
        ErrorCode:
          type: string
          description: '429'
        Message:
          type: string
          description: The client is sending more than the allowed number of requests per unit of time.
    VersionSummary:
      type: object
      properties:
        ApplicationId:
          type: string
          description: The application Amazon Resource Name (ARN).
        CreationTime:
          type: string
          description: The date and time this resource was created.
        SemanticVersion:
          type: string
          description: 'The semantic version of the application: https://semver.org/'
        SourceCodeUrl:
          type: string
          description: A link to a public repository for the source code of your application, for example the URL of a specific
            GitHub commit.
      required:
      - ApplicationId
      - CreationTime
      - SemanticVersion
x-provenance:
  method: harvested
  publisher: Amazon Web Services
  source: https://raw.githubusercontent.com/aws/api-models-aws/582e55931c45b944739742a2c1620b6026dd2d13/models/serverlessapplicationrepository/service/2017-09-08/serverlessapplicationrepository-2017-09-08.json
  note: converted by smithy-to-openapi.py from AWS's Smithy model (roadmap#1001)