create_web_function_endpoint
¶
create_web_function_endpoint(
function_name: FunctionName,
endpoint_name: EndpointName,
endpoint_type: EndpointType,
auth_type: AuthType,
*,
config_overrides: Optional[LambdaWebClientConfig] = None,
description: Optional[Description] = None,
auto_deployment_mode: Optional[AutoDeploymentMode] = None,
revision_weights: Optional[RevisionWeightList] = None,
regions: Optional[RegionList] = None,
scaling_config: Optional[ScalingConfig] = None,
throttle_config: Optional[ThrottleConfig] = None,
) -> CreateWebFunctionEndpointResponse
Creates an endpoint for a web function. An endpoint exposes the web function over HTTPS and routes traffic to one or more revisions.
To use this operation, you must have the CreateWebFunctionEndpoint permission on the web function, not on the endpoint being created.
Parameters:
-
function_name(FunctionName) –The web function to create the endpoint for.
You can specify either of the following:
-
The function name, for example
my-function. -
The function ARN.
The length constraint applies only to the full ARN. If you specify only the function name, it is limited to 64 characters in length.
-
-
endpoint_name(EndpointName) –The name of the endpoint to create. The name can contain letters, numbers, hyphens (-), and underscores (_), and can't begin or end with a hyphen or an underscore. The name is limited to 64 characters in length.
-
description(Optional[Description], default:None) –A description of the endpoint.
-
endpoint_type(EndpointType) –The type of endpoint to create. Determines how traffic is served and routed across Regions.
Valid values:
-
HomeRegion– Serves traffic from the Region where you created the web function. -
MultiRegion– Replicates across the Regions that you choose and routes each request to the nearest one. -
PerRegion– Creates a separate endpoint in each Region that you choose.
-
-
auth_type(AuthType) –The authorization type for the endpoint.
Valid values:
-
ApplicationManaged– Your application handles authorization. -
IamAuth– Lambda uses IAM to authorize requests, which must be signed with Signature Version 4 (SigV4).
-
-
auto_deployment_mode(Optional[AutoDeploymentMode], default:None) –The auto-deployment mode for the endpoint. Controls whether the endpoint automatically serves the newest revision. If you don't specify a value, the default is
Disabled, and this default is returned in the response.Valid values:
-
LatestRevision– The endpoint automatically serves the newest revision. -
Disabled– Revision routing stays fixed until you change it.
-
-
revision_weights(Optional[RevisionWeightList], default:None) –A list of revision weights that determine how traffic is distributed across revisions. You can specify up to two revisions for canary or blue-green deployments.
-
regions(Optional[RegionList], default:None) –The list of Regions for the endpoint. Required when the endpoint type is
MultiRegionorPerRegion: specify at least one Region other than the Region where you create the endpoint (the home Region). The home Region is added automatically if you don't include it; specifying only the home Region isn't allowed. When the endpoint type isHomeRegion, omit this field or specify only the home Region. -
scaling_config(Optional[ScalingConfig], default:None) –The scaling configuration for the endpoint. There is no default value. If you don't specify a scaling configuration, it is absent from the response.
-
throttle_config(Optional[ThrottleConfig], default:None) –The throttling configuration for the endpoint. There is no default value. If you don't specify a throttling configuration, it is absent from the response.
Raises:
-
AccessDeniedException–You don't have permission to perform this operation. Check the IAM policies for your identity and any resource-based policy on the web function.
-
ConflictException–The request conflicts with the current state of the resource. For example, the resource is being modified by another request, you tried to delete a revision that is serving traffic on an endpoint, or the policy revision ID that you specified doesn't match the current policy. Resolve the conflict and try again.
-
InternalServerException–The request failed because of an internal error in the service. Retry the request. If the error persists, open a support case.
-
ResourceNotFoundException–The specified web function, revision, endpoint, or resource-based policy doesn't exist. Verify the resource identifier and try again.
-
ServiceQuotaExceededException–The request would exceed a service quota, such as the maximum number of web functions in your account or the maximum number of revisions or endpoints per web function. Request a quota increase or reduce usage and try again.
-
ThrottlingException–The request was denied because it exceeded the request rate that Lambda allows for your account. Reduce the frequency of requests and retry with exponential backoff.
-
ValidationException–The request failed validation because a parameter was missing, malformed, or outside the allowed range. Check the request parameters and try again.
-
UnknownServiceError–The service returned an error code this client does not model.
Source code in docs_src/capo_lambda_web/_services/lambda_web.py
817 818 819 820 821 822 823 824 825 826 827 828 829 830 831 832 833 834 835 836 837 838 839 840 841 842 843 844 845 846 847 848 849 850 851 852 853 854 855 856 857 858 859 860 861 862 863 864 865 866 867 868 869 870 871 872 873 874 875 876 877 878 879 880 881 882 883 884 885 886 887 888 889 890 891 892 893 894 895 896 897 898 899 900 901 902 903 904 905 906 907 | |