Skip to content

create_vpc_origin

create_vpc_origin(
    vpc_origin_endpoint_config: VpcOriginEndpointConfig,
    *,
    config_overrides: Optional[CloudFrontClientConfig] = None,
    tags: Optional[Tags] = None,
) -> CreateVpcOriginResult

Create an Amazon CloudFront VPC origin.

Parameters:

Raises:

Examples:

To create a VPC origin The following command creates a VPC origin:

>>> client.create_vpc_origin(vpc_origin_endpoint_config={'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']}})
Source code in docs_src/capo_cloudfront/_services/cloud_front.py
def create_vpc_origin(
    self,
    vpc_origin_endpoint_config: "capo_cloudfront.types.vpc_origin_endpoint_config.VpcOriginEndpointConfig",
    *,
    config_overrides: Optional[CloudFrontClientConfig] = None,
    tags: Optional["capo_cloudfront.types.tags.Tags"] = None,
) -> "capo_cloudfront.types.create_vpc_origin_result.CreateVpcOriginResult":
    """<p>Create an Amazon CloudFront VPC origin.</p>

    Args:
        vpc_origin_endpoint_config: <p>The VPC origin endpoint configuration.</p>

    Raises:
        capo_cloudfront.errors.access_denied.AccessDenied: <p>Access denied.</p>
        capo_cloudfront.errors.entity_already_exists.EntityAlreadyExists: <p>The entity already exists. You must provide a unique entity.</p>
        capo_cloudfront.errors.entity_limit_exceeded.EntityLimitExceeded: <p>The entity limit has been exceeded.</p>
        capo_cloudfront.errors.inconsistent_quantities.InconsistentQuantities: <p>The value of <code>Quantity</code> and the size of <code>Items</code> don't match.</p>
        capo_cloudfront.errors.invalid_argument.InvalidArgument: <p>An argument is invalid.</p>
        capo_cloudfront.errors.invalid_tagging.InvalidTagging: <p>The tagging specified is not valid.</p>
        capo_cloudfront.errors.unsupported_operation.UnsupportedOperation: <p>This operation is not supported in this Amazon Web Services Region.</p>
        capo_cloudfront.errors.UnknownServiceError: The service returned an error code this client does not model.

    Examples:
        To create a VPC origin
        The following command creates a VPC origin:

        >>> client.create_vpc_origin(vpc_origin_endpoint_config={'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']}})
    """

    def _handler(
        req: "OperationRequest[capo_cloudfront.types.create_vpc_origin_request.CreateVpcOriginRequest]",
    ) -> OperationResponse[
        "capo_cloudfront.types.create_vpc_origin_result.CreateVpcOriginResult"
    ]:
        import capo_cloudfront._operations.cloudfront2020_05_31.create_vpc_origin

        output, http_response = (
            capo_cloudfront._operations.cloudfront2020_05_31.create_vpc_origin.create_vpc_origin(
                req.options, req.input
            )
        )
        return OperationResponse(output=output, response=http_response)

    interceptors_, options_ = self.operation_options(
        config_overrides, OperationLogging("CreateVpcOrigin")
    )
    input_: capo_cloudfront.types.create_vpc_origin_request.CreateVpcOriginRequest = {
        "vpc_origin_endpoint_config": vpc_origin_endpoint_config
    }
    if tags is not None:
        input_["tags"] = tags

    response = execute_pipeline(
        OperationRequest(input=input_, options=options_),
        handler=_handler,
        interceptors=list(interceptors_),
    )
    response.response.close()
    return response.output