Disable the default endpoint for HTTP APIs
By default, clients can invoke your API by using the execute-api
endpoint that API Gateway generates for
your API. To ensure that clients can access your API only by using a custom domain name, disable the default
execute-api
endpoint. When you disable the default endpoint, it affects all stages of an API.
The following procedure shows how to disable the default endpoint for an HTTP API.
- AWS Management Console
-
Sign in to the API Gateway console at https://console.aws.amazon.com/apigateway.
Choose an HTTP API.
Choose your API's ID to open the API details page.
On API details, choose Edit.
For Default endpoint, select Disable.
-
Choose Save.
If you turn on automatic deployments for your stage, you do not need to redeploy your API for the
change to take effect. Otherwise, you must redeploy your API.
-
(Optional) Choose Deploy, and then redeploy your API or create a new stage for
the change to take effect.
- AWS CLI
The following update-domain-name command disables the default endpoint for an HTTP API.
aws apigatewayv2 update-api \
--api-id abcdef123
\
--disable-execute-api-endpoint
After you disable the default endpoint, you must deploy your API for the change to take effect, unless automatic
deployments are enabled.
The following create-deployment command creates a deployment.
aws apigatewayv2 create-deployment \
--api-id abcdef123
\
--stage-name dev