CloudFront Vpc Origin API
The Vpc Origin API from CloudFront — 2 operation(s) for vpc origin.
The Vpc Origin API from CloudFront — 2 operation(s) for vpc origin.
Every API here is available over the APIs.io API and to AI agents over MCP.
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
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.curl "https://apis.io/api/v1/apis/cloudfront:cloudfront-vpc-origin-api"
curl "https://apis.io/api/v1/apis?limit=25"
Discovery needs no key. Ratings and market analysis are Pro.
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: 3.1.0
info:
title: Amazon CloudFront Vpc Origin API
version: '2020-05-31'
description: Generated from AWS's published Smithy model for Amazon CloudFront. 5 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/vpc-origin:
post:
operationId: CreateVpcOrigin
summary: Create Vpc Origin
description: Create an Amazon CloudFront VPC origin.
responses:
'200':
description: Success
content:
text/xml:
schema:
$ref: '#/components/schemas/CreateVpcOriginResult'
example:
VpcOrigin:
Status: Deploying
VpcOriginEndpointConfig:
Name: my-vpcorigin-name
OriginSslProtocols:
Items:
- TLSv1.1
- TLSv1.2
Quantity: 2
OriginProtocolPolicy: match-viewer
HTTPPort: 80
HTTPSPort: 443
Arn: arn:aws:elasticloadbalancing:us-west-2:123456789012:loadbalancer/app/my-alb-us-west-2/e6aa5c7d26415c6d
CreatedTime: '2024-10-15T17:19:42.318Z'
LastModifiedTime: '2024-10-15T17:19:42.318Z'
Id: vo_BQwjxxQxjCaBcQLzJUFkDM
Arn: arn:aws:cloudfront::123456789012:vpcorigin/vo_BQwjxxQxjCaBcQLzJUFkDM
ETag: E23ZP02F085DFQ
Location: https://cloudfront.amazonaws.com/2020-05-31/vpc-origin/vo_BQwjxxQxjCaBcQLzJUFkDM
'403':
description: AccessDenied
content:
text/xml:
schema:
$ref: '#/components/schemas/AccessDenied'
'409':
description: EntityAlreadyExists
content:
text/xml:
schema:
$ref: '#/components/schemas/EntityAlreadyExists'
'400':
description: EntityLimitExceeded; InconsistentQuantities; InvalidArgument; InvalidTagging; UnsupportedOperation
content:
text/xml:
schema:
$ref: '#/components/schemas/EntityLimitExceeded'
requestBody:
content:
application/xml:
schema:
$ref: '#/components/schemas/CreateVpcOriginRequest'
example:
VpcOriginEndpointConfig:
Name: my-vpcorigin-name
Arn: arn:aws:elasticloadbalancing:us-west-2:123456789012:loadbalancer/app/my-alb-us-west-2/e6aa5c7d26415c6d
HTTPPort: 80
HTTPSPort: 443
OriginProtocolPolicy: match-viewer
OriginSslProtocols:
Quantity: 2
Items:
- TLSv1.1
- TLSv1.2
tags:
- Vpc Origin
get:
operationId: ListVpcOrigins
summary: List Vpc Origins
description: List the CloudFront VPC origins in your account.
responses:
'200':
description: Success
content:
text/xml:
schema:
$ref: '#/components/schemas/ListVpcOriginsResult'
example:
VpcOriginList:
Items:
- Status: Deployed
Name: my-vpcorigin-name
CreatedTime: '2024-10-15T17:19:42.318Z'
LastModifiedTime: '2024-10-15T17:24:35.188Z'
Id: vo_BQwjxxQxjCaBcQLzJUFkDM
Arn: arn:aws:cloudfront::123456789012:vpcorigin/vo_BQwjxxQxjCaBcQLzJUFkDM
OriginEndpointArn: arn:aws:elasticloadbalancing:us-west-2:123456789012:loadbalancer/app/my-alb-us-west-2/e6aa5c7d26415c6d
MaxItems: 100
Quantity: 1
Marker: a
IsTruncated: true
'403':
description: AccessDenied
content:
text/xml:
schema:
$ref: '#/components/schemas/AccessDenied'
'404':
description: EntityNotFound
content:
text/xml:
schema:
$ref: '#/components/schemas/EntityNotFound'
'400':
description: InvalidArgument; UnsupportedOperation
content:
text/xml:
schema:
$ref: '#/components/schemas/InvalidArgument'
requestBody:
content:
application/xml:
schema:
$ref: '#/components/schemas/ListVpcOriginsRequest'
tags:
- Vpc Origin
/2020-05-31/vpc-origin/{Id}:
delete:
operationId: DeleteVpcOrigin
summary: Delete Vpc Origin
description: Delete an Amazon CloudFront VPC origin.
responses:
'200':
description: Success
content:
text/xml:
schema:
$ref: '#/components/schemas/DeleteVpcOriginResult'
example:
VpcOrigin:
Status: Deploying
VpcOriginEndpointConfig:
Name: my-vpcorigin-name
OriginSslProtocols:
Items:
- TLSv1.1
- TLSv1.2
Quantity: 2
OriginProtocolPolicy: match-viewer
HTTPPort: 80
HTTPSPort: 443
Arn: arn:aws:elasticloadbalancing:us-west-2:123456789012:loadbalancer/app/my-alb-us-west-2/e6aa5c7d26415c6d
CreatedTime: '2024-10-15T17:19:42.318Z'
LastModifiedTime: '2024-10-15T17:57:08.965Z'
Id: vo_BQwjxxQxjCaBcQLzJUFkDM
Arn: arn:aws:cloudfront::123456789012:vpcorigin/vo_BQwjxxQxjCaBcQLzJUFkDM
ETag: E1PA6795UKMFR9
'403':
description: AccessDenied
content:
text/xml:
schema:
$ref: '#/components/schemas/AccessDenied'
'409':
description: CannotDeleteEntityWhileInUse
content:
text/xml:
schema:
$ref: '#/components/schemas/CannotDeleteEntityWhileInUse'
'404':
description: EntityNotFound
content:
text/xml:
schema:
$ref: '#/components/schemas/EntityNotFound'
'400':
description: IllegalDelete; InvalidArgument; InvalidIfMatchVersion; UnsupportedOperation
content:
text/xml:
schema:
$ref: '#/components/schemas/IllegalDelete'
'412':
description: PreconditionFailed
content:
text/xml:
schema:
$ref: '#/components/schemas/PreconditionFailed'
requestBody:
content:
application/xml:
schema:
$ref: '#/components/schemas/DeleteVpcOriginRequest'
example:
Id: vo_BQwjxxQxjCaBcQLzJUFkDM
IfMatch: E1F83G8C2ARO7P
tags:
- Vpc Origin
get:
operationId: GetVpcOrigin
summary: Get Vpc Origin
description: Get the details of an Amazon CloudFront VPC origin.
responses:
'200':
description: Success
content:
text/xml:
schema:
$ref: '#/components/schemas/GetVpcOriginResult'
example:
VpcOrigin:
Status: Deployed
VpcOriginEndpointConfig:
Name: my-vpcorigin-name
OriginSslProtocols:
Items:
- TLSv1.1
- TLSv1.2
Quantity: 2
OriginProtocolPolicy: match-viewer
HTTPPort: 80
HTTPSPort: 443
Arn: arn:aws:elasticloadbalancing:us-west-2:123456789012:loadbalancer/app/my-alb-us-west-2/e6aa5c7d26415c6d
CreatedTime: '2024-10-15T17:19:42.318Z'
LastModifiedTime: '2024-10-15T17:24:35.188Z'
Id: vo_BQwjxxQxjCaBcQLzJUFkDM
Arn: arn:aws:cloudfront::123456789012:vpcorigin/vo_BQwjxxQxjCaBcQLzJUFkDM
ETag: ETVPDKIKX0DER
'403':
description: AccessDenied
content:
text/xml:
schema:
$ref: '#/components/schemas/AccessDenied'
'404':
description: EntityNotFound
content:
text/xml:
schema:
$ref: '#/components/schemas/EntityNotFound'
'400':
description: InvalidArgument; UnsupportedOperation
content:
text/xml:
schema:
$ref: '#/components/schemas/InvalidArgument'
requestBody:
content:
application/xml:
schema:
$ref: '#/components/schemas/GetVpcOriginRequest'
example:
Id: vo_BQwjxxQxjCaBcQLzJUFkDM
tags:
- Vpc Origin
put:
operationId: UpdateVpcOrigin
summary: Update Vpc Origin
description: Update an Amazon CloudFront VPC origin in your account.
responses:
'200':
description: Success
content:
text/xml:
schema:
$ref: '#/components/schemas/UpdateVpcOriginResult'
example:
VpcOrigin:
Status: Deploying
VpcOriginEndpointConfig:
Name: my-vpcorigin-name
OriginSslProtocols:
Items:
- TLSv1.1
- TLSv1.2
Quantity: 2
OriginProtocolPolicy: match-viewer
HTTPPort: 80
HTTPSPort: 443
Arn: arn:aws:elasticloadbalancing:us-west-2:123456789012:loadbalancer/app/my-alb-us-west-2/e6aa5c7d26415c6d
CreatedTime: '2024-10-15T17:19:42.318Z'
LastModifiedTime: '2024-10-15T17:47:08.133Z'
Id: vo_BQwjxxQxjCaBcQLzJUFkDM
Arn: arn:aws:cloudfront::123456789012:vpcorigin/vo_BQwjxxQxjCaBcQLzJUFkDM
ETag: E3UN6WX5RRO2AG
'403':
description: AccessDenied
content:
text/xml:
schema:
$ref: '#/components/schemas/AccessDenied'
'409':
description: CannotUpdateEntityWhileInUse; EntityAlreadyExists
content:
text/xml:
schema:
$ref: '#/components/schemas/CannotUpdateEntityWhileInUse'
'400':
description: EntityLimitExceeded; IllegalUpdate; InconsistentQuantities; InvalidArgument; InvalidIfMatchVersion;
UnsupportedOperation
content:
text/xml:
schema:
$ref: '#/components/schemas/EntityLimitExceeded'
'404':
description: EntityNotFound
content:
text/xml:
schema:
$ref: '#/components/schemas/EntityNotFound'
'412':
description: PreconditionFailed
content:
text/xml:
schema:
$ref: '#/components/schemas/PreconditionFailed'
requestBody:
content:
application/xml:
schema:
$ref: '#/components/schemas/UpdateVpcOriginRequest'
example:
VpcOriginEndpointConfig:
Name: my-vpcorigin-name
Arn: arn:aws:elasticloadbalancing:us-west-2:123456789012:loadbalancer/app/my-alb-us-west-2/e6aa5c7d26415c6d
HTTPPort: 80
HTTPSPort: 443
OriginProtocolPolicy: match-viewer
OriginSslProtocols:
Quantity: 2
Items:
- TLSv1.1
- TLSv1.2
Id: vo_BQwjxxQxjCaBcQLzJUFkDM
IfMatch: ETVPDKIKX0DER
tags:
- Vpc Origin
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
CannotDeleteEntityWhileInUse:
type: object
properties:
Message:
type: string
CannotUpdateEntityWhileInUse:
type: object
properties:
Message:
type: string
CreateVpcOriginRequest:
type: object
properties:
VpcOriginEndpointConfig:
$ref: '#/components/schemas/VpcOriginEndpointConfig'
Tags:
$ref: '#/components/schemas/Tags'
required:
- VpcOriginEndpointConfig
CreateVpcOriginResult:
type: object
properties:
VpcOrigin:
$ref: '#/components/schemas/VpcOrigin'
Location:
type: string
description: The VPC origin location.
ETag:
type: string
description: The VPC origin ETag.
DeleteVpcOriginRequest:
type: object
properties:
Id:
type: string
description: The VPC origin ID.
IfMatch:
type: string
description: The version identifier of the VPC origin to delete. This is the ETag value returned in the response
to GetVpcOrigin.
required:
- Id
- IfMatch
DeleteVpcOriginResult:
type: object
properties:
VpcOrigin:
$ref: '#/components/schemas/VpcOrigin'
ETag:
type: string
description: The VPC origin ETag.
EntityAlreadyExists:
type: object
properties:
Message:
type: string
EntityLimitExceeded:
type: object
properties:
Message:
type: string
EntityNotFound:
type: object
properties:
Message:
type: string
GetVpcOriginRequest:
type: object
properties:
Id:
type: string
description: The VPC origin ID.
required:
- Id
GetVpcOriginResult:
type: object
properties:
VpcOrigin:
$ref: '#/components/schemas/VpcOrigin'
ETag:
type: string
description: The VPC origin ETag.
IllegalDelete:
type: object
properties:
Message:
type: string
InvalidArgument:
type: object
properties:
Message:
type: string
ListVpcOriginsRequest:
type: object
properties:
Marker:
type: string
description: The marker associated with the VPC origins list.
MaxItems:
type: integer
description: The maximum number of items included in the list.
ListVpcOriginsResult:
type: object
properties:
VpcOriginList:
$ref: '#/components/schemas/VpcOriginList'
OriginSslProtocols:
type: object
properties:
Quantity:
type: integer
description: The number of SSL/TLS protocols that you want to allow CloudFront to use when establishing an HTTPS
connection with this origin.
Items:
type: array
items:
type: string
enum:
- SSLv3
- TLSv1
- TLSv1.1
- TLSv1.2
description: A list that contains allowed SSL/TLS protocols for this distribution.
required:
- Quantity
- Items
PreconditionFailed:
type: object
properties:
Message:
type: string
Tag:
type: object
properties:
Key:
type: string
description: 'A string that contains Tag key. The string length should be between 1 and 128 characters. Valid characters
include a-z, A-Z, 0-9, space, and the special characters _ - . : / = + @.'
Value:
type: string
description: 'A string that contains an optional Tag value. The string length should be between 0 and 256 characters.
Valid characters include a-z, A-Z, 0-9, space, and the special characters _ - . : / = + @.'
required:
- Key
Tags:
type: object
properties:
Items:
type: array
items:
$ref: '#/components/schemas/Tag'
description: A complex type that contains Tag elements.
UpdateVpcOriginRequest:
type: object
properties:
VpcOriginEndpointConfig:
$ref: '#/components/schemas/VpcOriginEndpointConfig'
Id:
type: string
description: The VPC origin ID.
IfMatch:
type: string
description: The VPC origin to update, if a match occurs.
required:
- VpcOriginEndpointConfig
- Id
- IfMatch
UpdateVpcOriginResult:
type: object
properties:
VpcOrigin:
$ref: '#/components/schemas/VpcOrigin'
ETag:
type: string
description: The VPC origin ETag.
VpcOrigin:
type: object
properties:
Id:
type: string
description: The VPC origin ID.
Arn:
type: string
description: The VPC origin ARN.
AccountId:
type: string
description: The account ID of the Amazon Web Services account that owns the VPC origin.
Status:
type: string
description: The VPC origin status.
CreatedTime:
type: string
format: date-time
description: The VPC origin created time.
LastModifiedTime:
type: string
format: date-time
description: The VPC origin last modified time.
VpcOriginEndpointConfig:
$ref: '#/components/schemas/VpcOriginEndpointConfig'
required:
- Id
- Arn
- Status
- CreatedTime
- LastModifiedTime
- VpcOriginEndpointConfig
VpcOriginEndpointConfig:
type: object
properties:
Name:
type: string
description: The name of the CloudFront VPC origin endpoint configuration.
Arn:
type: string
description: The ARN of the CloudFront VPC origin endpoint configuration.
HTTPPort:
type: integer
description: The HTTP port for the CloudFront VPC origin endpoint configuration. The default value is 80.
HTTPSPort:
type: integer
description: The HTTPS port of the CloudFront VPC origin endpoint configuration. The default value is 443.
OriginProtocolPolicy:
type: string
enum:
- http-only
- match-viewer
- https-only
description: The origin protocol policy for the CloudFront VPC origin endpoint configuration.
OriginSslProtocols:
$ref: '#/components/schemas/OriginSslProtocols'
IpAddressType:
type: string
enum:
- ipv4
- dualstack
description: The IP address type of the CloudFront VPC origin endpoint configuration. Valid values are ipv4 and
dualstack. IPv6-only is not supported for VPC origins.
required:
- Name
- Arn
- HTTPPort
- HTTPSPort
- OriginProtocolPolicy
VpcOriginList:
type: object
properties:
Marker:
type: string
description: The marker associated with the VPC origins list.
NextMarker:
type: string
description: The next marker associated with the VPC origins list.
MaxItems:
type: integer
description: The maximum number of items included in the list.
IsTruncated:
type: boolean
description: A flag that indicates whether more VPC origins 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 VPC origins in
the list.
Quantity:
type: integer
description: The number of VPC origins in the list.
Items:
type: array
items:
$ref: '#/components/schemas/VpcOriginSummary'
description: The items of the VPC origins list.
required:
- Marker
- MaxItems
- IsTruncated
- Quantity
VpcOriginSummary:
type: object
properties:
Id:
type: string
description: The VPC origin summary ID.
Name:
type: string
description: The VPC origin summary name.
Status:
type: string
description: The VPC origin summary status.
CreatedTime:
type: string
format: date-time
description: The VPC origin summary created time.
LastModifiedTime:
type: string
format: date-time
description: The VPC origin summary last modified time.
Arn:
type: string
description: The VPC origin summary ARN.
AccountId:
type: string
description: The account ID of the Amazon Web Services account that owns the VPC origin.
OriginEndpointArn:
type: string
description: The VPC origin summary origin endpoint ARN.
IpAddressType:
type: string
enum:
- ipv4
- dualstack
description: The IP address type of the CloudFront VPC origin. Valid values are ipv4 and dualstack. IPv6-only is
not supported for VPC origins.
required:
- Id
- Name
- Status
- CreatedTime
- LastModifiedTime
- Arn
- OriginEndpointArn
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)