CloudFront Origin Access Identity API

The Origin Access Identity API from CloudFront — 3 operation(s) for origin access identity.

Operations 6

POST /2020-05-31/origin-access-identity/cloudfront Create Cloud Front Origin Access Identity #
GET /2020-05-31/origin-access-identity/cloudfront List Cloud Front Origin Access Identities #
DELETE /2020-05-31/origin-access-identity/cloudfront/{Id} Delete Cloud Front Origin Access Identity #
GET /2020-05-31/origin-access-identity/cloudfront/{Id} Get Cloud Front Origin Access Identity #
GET /2020-05-31/origin-access-identity/cloudfront/{Id}/config Get Cloud Front Origin Access Identity Config #
PUT /2020-05-31/origin-access-identity/cloudfront/{Id}/config Update Cloud Front Origin Access Identity #

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/cloudfront:cloudfront-origin-access-identity-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

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

cloudfront-origin-access-identity-api-openapi.yml Raw ↑
openapi: 3.1.0
info:
  title: Amazon CloudFront Origin Access Identity API
  version: '2020-05-31'
  description: Generated from AWS's published Smithy model for Amazon CloudFront. 6 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://cloudfront.{region}.amazonaws.com
  variables:
    region:
      default: us-east-1
security:
- sigv4: []
paths:
  /2020-05-31/origin-access-identity/cloudfront:
    post:
      operationId: CreateCloudFrontOriginAccessIdentity
      summary: Create Cloud Front Origin Access Identity
      description: Creates a new origin access identity. If you're using Amazon S3 for your origin, you can use an origin
        access identity to require users to access your content using a CloudFront URL instead of the Amazon S3 URL. For more
        information about how to use origin access identities, see Serving Private Content through CloudFront in the Amazon
        CloudFront Developer Guide.
      responses:
        '200':
          description: Success
          content:
            text/xml:
              schema:
                $ref: '#/components/schemas/CreateCloudFrontOriginAccessIdentityResult'
        '409':
          description: CloudFrontOriginAccessIdentityAlreadyExists
          content:
            text/xml:
              schema:
                $ref: '#/components/schemas/CloudFrontOriginAccessIdentityAlreadyExists'
        '400':
          description: InconsistentQuantities; InvalidArgument; MissingBody; TooManyCloudFrontOriginAccessIdentities
          content:
            text/xml:
              schema:
                $ref: '#/components/schemas/InconsistentQuantities'
      requestBody:
        content:
          application/xml:
            schema:
              $ref: '#/components/schemas/CreateCloudFrontOriginAccessIdentityRequest'
      tags:
      - Origin Access Identity
    get:
      operationId: ListCloudFrontOriginAccessIdentities
      summary: List Cloud Front Origin Access Identities
      description: Lists origin access identities.
      responses:
        '200':
          description: Success
          content:
            text/xml:
              schema:
                $ref: '#/components/schemas/ListCloudFrontOriginAccessIdentitiesResult'
        '400':
          description: InvalidArgument
          content:
            text/xml:
              schema:
                $ref: '#/components/schemas/InvalidArgument'
      requestBody:
        content:
          application/xml:
            schema:
              $ref: '#/components/schemas/ListCloudFrontOriginAccessIdentitiesRequest'
      tags:
      - Origin Access Identity
  /2020-05-31/origin-access-identity/cloudfront/{Id}:
    delete:
      operationId: DeleteCloudFrontOriginAccessIdentity
      summary: Delete Cloud Front Origin Access Identity
      description: Delete an origin access identity.
      responses:
        '200':
          description: Success
          content:
            text/xml:
              schema:
                type: string
        '403':
          description: AccessDenied
          content:
            text/xml:
              schema:
                $ref: '#/components/schemas/AccessDenied'
        '409':
          description: CloudFrontOriginAccessIdentityInUse
          content:
            text/xml:
              schema:
                $ref: '#/components/schemas/CloudFrontOriginAccessIdentityInUse'
        '400':
          description: InvalidIfMatchVersion
          content:
            text/xml:
              schema:
                $ref: '#/components/schemas/InvalidIfMatchVersion'
        '404':
          description: NoSuchCloudFrontOriginAccessIdentity
          content:
            text/xml:
              schema:
                $ref: '#/components/schemas/NoSuchCloudFrontOriginAccessIdentity'
        '412':
          description: PreconditionFailed
          content:
            text/xml:
              schema:
                $ref: '#/components/schemas/PreconditionFailed'
      requestBody:
        content:
          application/xml:
            schema:
              $ref: '#/components/schemas/DeleteCloudFrontOriginAccessIdentityRequest'
      tags:
      - Origin Access Identity
    get:
      operationId: GetCloudFrontOriginAccessIdentity
      summary: Get Cloud Front Origin Access Identity
      description: Get the information about an origin access identity.
      responses:
        '200':
          description: Success
          content:
            text/xml:
              schema:
                $ref: '#/components/schemas/GetCloudFrontOriginAccessIdentityResult'
        '403':
          description: AccessDenied
          content:
            text/xml:
              schema:
                $ref: '#/components/schemas/AccessDenied'
        '404':
          description: NoSuchCloudFrontOriginAccessIdentity
          content:
            text/xml:
              schema:
                $ref: '#/components/schemas/NoSuchCloudFrontOriginAccessIdentity'
      requestBody:
        content:
          application/xml:
            schema:
              $ref: '#/components/schemas/GetCloudFrontOriginAccessIdentityRequest'
      tags:
      - Origin Access Identity
  /2020-05-31/origin-access-identity/cloudfront/{Id}/config:
    get:
      operationId: GetCloudFrontOriginAccessIdentityConfig
      summary: Get Cloud Front Origin Access Identity Config
      description: Get the configuration information about an origin access identity.
      responses:
        '200':
          description: Success
          content:
            text/xml:
              schema:
                $ref: '#/components/schemas/GetCloudFrontOriginAccessIdentityConfigResult'
        '403':
          description: AccessDenied
          content:
            text/xml:
              schema:
                $ref: '#/components/schemas/AccessDenied'
        '404':
          description: NoSuchCloudFrontOriginAccessIdentity
          content:
            text/xml:
              schema:
                $ref: '#/components/schemas/NoSuchCloudFrontOriginAccessIdentity'
      requestBody:
        content:
          application/xml:
            schema:
              $ref: '#/components/schemas/GetCloudFrontOriginAccessIdentityConfigRequest'
      tags:
      - Origin Access Identity
    put:
      operationId: UpdateCloudFrontOriginAccessIdentity
      summary: Update Cloud Front Origin Access Identity
      description: Update an origin access identity.
      responses:
        '200':
          description: Success
          content:
            text/xml:
              schema:
                $ref: '#/components/schemas/UpdateCloudFrontOriginAccessIdentityResult'
        '403':
          description: AccessDenied
          content:
            text/xml:
              schema:
                $ref: '#/components/schemas/AccessDenied'
        '400':
          description: IllegalUpdate; InconsistentQuantities; InvalidArgument; InvalidIfMatchVersion; MissingBody
          content:
            text/xml:
              schema:
                $ref: '#/components/schemas/IllegalUpdate'
        '404':
          description: NoSuchCloudFrontOriginAccessIdentity
          content:
            text/xml:
              schema:
                $ref: '#/components/schemas/NoSuchCloudFrontOriginAccessIdentity'
        '412':
          description: PreconditionFailed
          content:
            text/xml:
              schema:
                $ref: '#/components/schemas/PreconditionFailed'
      requestBody:
        content:
          application/xml:
            schema:
              $ref: '#/components/schemas/UpdateCloudFrontOriginAccessIdentityRequest'
      tags:
      - Origin Access Identity
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: cloudfront
  schemas:
    AccessDenied:
      type: object
      properties:
        Message:
          type: string
    CloudFrontOriginAccessIdentity:
      type: object
      properties:
        Id:
          type: string
          description: The ID for the origin access identity, for example, E74FTE3AJFJ256A.
        S3CanonicalUserId:
          type: string
          description: The Amazon S3 canonical user ID for the origin access identity, used when giving the origin access
            identity read permission to an object in Amazon S3.
        CloudFrontOriginAccessIdentityConfig:
          $ref: '#/components/schemas/CloudFrontOriginAccessIdentityConfig'
      required:
      - Id
      - S3CanonicalUserId
    CloudFrontOriginAccessIdentityAlreadyExists:
      type: object
      properties:
        Message:
          type: string
    CloudFrontOriginAccessIdentityConfig:
      type: object
      properties:
        CallerReference:
          type: string
          description: A unique value (for example, a date-time stamp) that ensures that the request can't be replayed. If
            the value of CallerReference is new (regardless of the content of the CloudFrontOriginAccessIdentityConfig object),
            a new origin access identity is created. If the CallerReference is a value already sent in a previous identity
            request, and the content of the CloudFrontOriginAccessIdentityConfig is identical to the original request (ignoring
            white space), the response includes the same information returned to the original request. If the CallerReference
            is a value you already sent in a previous r
        Comment:
          type: string
          description: A comment to describe the origin access identity. The comment cannot be longer than 128 characters.
      required:
      - CallerReference
      - Comment
    CloudFrontOriginAccessIdentityInUse:
      type: object
      properties:
        Message:
          type: string
    CloudFrontOriginAccessIdentityList:
      type: object
      properties:
        Marker:
          type: string
          description: Use this when paginating results to indicate where to begin in your list of origin access identities.
            The results include identities in the list that occur after the marker. To get the next page of results, set the
            Marker to the value of the NextMarker from the current page's response (which is also the ID of the last identity
            on that page).
        NextMarker:
          type: string
          description: If IsTruncated is true, this element is present and contains the value you can use for the Marker request
            parameter to continue listing your origin access identities where they left off.
        MaxItems:
          type: integer
          description: The maximum number of origin access identities you want in the response body.
        IsTruncated:
          type: boolean
          description: A flag that indicates whether more origin access identities remain to be listed. If your results were
            truncated, you can make a follow-up pagination request using the Marker request parameter to retrieve more items
            in the list.
        Quantity:
          type: integer
          description: The number of CloudFront origin access identities that were created by the current Amazon Web Services
            account.
        Items:
          type: array
          items:
            $ref: '#/components/schemas/CloudFrontOriginAccessIdentitySummary'
          description: A complex type that contains one CloudFrontOriginAccessIdentitySummary element for each origin access
            identity that was created by the current Amazon Web Services account.
      required:
      - Marker
      - MaxItems
      - IsTruncated
      - Quantity
    CloudFrontOriginAccessIdentitySummary:
      type: object
      properties:
        Id:
          type: string
          description: 'The ID for the origin access identity. For example: E74FTE3AJFJ256A.'
        S3CanonicalUserId:
          type: string
          description: The Amazon S3 canonical user ID for the origin access identity, which you use when giving the origin
            access identity read permission to an object in Amazon S3.
        Comment:
          type: string
          description: The comment for this origin access identity, as originally specified when created.
      required:
      - Id
      - S3CanonicalUserId
      - Comment
    CreateCloudFrontOriginAccessIdentityRequest:
      type: object
      properties:
        CloudFrontOriginAccessIdentityConfig:
          $ref: '#/components/schemas/CloudFrontOriginAccessIdentityConfig'
      required:
      - CloudFrontOriginAccessIdentityConfig
    CreateCloudFrontOriginAccessIdentityResult:
      type: object
      properties:
        CloudFrontOriginAccessIdentity:
          $ref: '#/components/schemas/CloudFrontOriginAccessIdentity'
        Location:
          type: string
          description: The fully qualified URI of the new origin access identity just created.
        ETag:
          type: string
          description: The current version of the origin access identity created.
    DeleteCloudFrontOriginAccessIdentityRequest:
      type: object
      properties:
        Id:
          type: string
          description: The origin access identity's ID.
        IfMatch:
          type: string
          description: 'The value of the ETag header you received from a previous GET or PUT request. For example: E2QWRUHAPOMQZL.'
      required:
      - Id
    GetCloudFrontOriginAccessIdentityConfigRequest:
      type: object
      properties:
        Id:
          type: string
          description: The identity's ID.
      required:
      - Id
    GetCloudFrontOriginAccessIdentityConfigResult:
      type: object
      properties:
        CloudFrontOriginAccessIdentityConfig:
          $ref: '#/components/schemas/CloudFrontOriginAccessIdentityConfig'
        ETag:
          type: string
          description: 'The current version of the configuration. For example: E2QWRUHAPOMQZL.'
    GetCloudFrontOriginAccessIdentityRequest:
      type: object
      properties:
        Id:
          type: string
          description: The identity's ID.
      required:
      - Id
    GetCloudFrontOriginAccessIdentityResult:
      type: object
      properties:
        CloudFrontOriginAccessIdentity:
          $ref: '#/components/schemas/CloudFrontOriginAccessIdentity'
        ETag:
          type: string
          description: 'The current version of the origin access identity''s information. For example: E2QWRUHAPOMQZL.'
    IllegalUpdate:
      type: object
      properties:
        Message:
          type: string
    InconsistentQuantities:
      type: object
      properties:
        Message:
          type: string
    InvalidArgument:
      type: object
      properties:
        Message:
          type: string
    InvalidIfMatchVersion:
      type: object
      properties:
        Message:
          type: string
    ListCloudFrontOriginAccessIdentitiesRequest:
      type: object
      properties:
        Marker:
          type: string
          description: Use this when paginating results to indicate where to begin in your list of origin access identities.
            The results include identities in the list that occur after the marker. To get the next page of results, set the
            Marker to the value of the NextMarker from the current page's response (which is also the ID of the last identity
            on that page).
        MaxItems:
          type: integer
          description: The maximum number of origin access identities you want in the response body.
    ListCloudFrontOriginAccessIdentitiesResult:
      type: object
      properties:
        CloudFrontOriginAccessIdentityList:
          $ref: '#/components/schemas/CloudFrontOriginAccessIdentityList'
    NoSuchCloudFrontOriginAccessIdentity:
      type: object
      properties:
        Message:
          type: string
    PreconditionFailed:
      type: object
      properties:
        Message:
          type: string
    UpdateCloudFrontOriginAccessIdentityRequest:
      type: object
      properties:
        CloudFrontOriginAccessIdentityConfig:
          $ref: '#/components/schemas/CloudFrontOriginAccessIdentityConfig'
        Id:
          type: string
          description: The identity's id.
        IfMatch:
          type: string
          description: 'The value of the ETag header that you received when retrieving the identity''s configuration. For
            example: E2QWRUHAPOMQZL.'
      required:
      - CloudFrontOriginAccessIdentityConfig
      - Id
    UpdateCloudFrontOriginAccessIdentityResult:
      type: object
      properties:
        CloudFrontOriginAccessIdentity:
          $ref: '#/components/schemas/CloudFrontOriginAccessIdentity'
        ETag:
          type: string
          description: 'The current version of the configuration. For example: E2QWRUHAPOMQZL.'
x-provenance:
  method: harvested
  publisher: Amazon Web Services
  source: https://raw.githubusercontent.com/aws/api-models-aws/582e55931c45b944739742a2c1620b6026dd2d13/models/cloudfront/service/2020-05-31/cloudfront-2020-05-31.json
  note: converted by smithy-to-openapi.py from AWS's Smithy model (roadmap#1001)