CreateAPIKey - Amazon WAFV2
Services or capabilities described in Amazon Web Services documentation might vary by Region. To see the differences applicable to the China Regions, see Getting Started with Amazon Web Services in China (PDF).

CreateAPIKey

Creates an API key that contains a set of token domains.

API keys are required for the integration of the CAPTCHA API in your JavaScript client applications. The API lets you customize the placement and characteristics of the CAPTCHA puzzle for your end users. For more information about the CAPTCHA JavaScript integration, see Amazon WAF client application integration in the Amazon WAF Developer Guide.

You can use a single key for up to 5 domains. After you generate a key, you can copy it for use in your JavaScript integration.

Request Syntax

{ "Scope": "string", "TokenDomains": [ "string" ] }

Request Parameters

For information about the parameters that are common to all actions, see Common Parameters.

The request accepts the following data in JSON format.

Scope

Specifies whether this is for an Amazon CloudFront distribution or for a regional application. A regional application can be an Application Load Balancer (ALB), an Amazon API Gateway REST API, an Amazon AppSync GraphQL API, an Amazon Cognito user pool, an Amazon App Runner service, or an Amazon Verified Access instance.

To work with CloudFront, you must also specify the Region US East (N. Virginia) as follows:

  • CLI - Specify the Region when you use the CloudFront scope: --scope=CLOUDFRONT --region=us-east-1.

  • API and SDKs - For all calls, use the Region endpoint us-east-1.

Type: String

Valid Values: CLOUDFRONT | REGIONAL

Required: Yes

TokenDomains

The client application domains that you want to use this API key for.

Example JSON: "TokenDomains": ["abc.com", "store.abc.com"]

Public suffixes aren't allowed. For example, you can't use gov.au or co.uk as token domains.

Type: Array of strings

Array Members: Minimum number of 1 item.

Length Constraints: Minimum length of 1. Maximum length of 253.

Pattern: ^[\w\.\-/]+$

Required: Yes

Response Syntax

{ "APIKey": "string" }

Response Elements

If the action is successful, the service sends back an HTTP 200 response.

The following data is returned in JSON format by the service.

APIKey

The generated, encrypted API key. You can copy this for use in your JavaScript CAPTCHA integration.

Type: String

Length Constraints: Minimum length of 1. Maximum length of 2048.

Pattern: .*\S.*

Errors

For information about the errors that are common to all actions, see Common Errors.

WAFInternalErrorException

Your request is valid, but Amazon WAF couldn’t perform the operation because of a system problem. Retry your request.

HTTP Status Code: 500

WAFInvalidOperationException

The operation isn't valid.

HTTP Status Code: 400

WAFInvalidParameterException

The operation failed because Amazon WAF didn't recognize a parameter in the request. For example:

  • You specified a parameter name or value that isn't valid.

  • Your nested statement isn't valid. You might have tried to nest a statement that can’t be nested.

  • You tried to update a WebACL with a DefaultAction that isn't among the types available at DefaultAction.

  • Your request references an ARN that is malformed, or corresponds to a resource with which a web ACL can't be associated.

HTTP Status Code: 400

WAFLimitsExceededException

Amazon WAF couldn’t perform the operation because you exceeded your resource limit. For example, the maximum number of WebACL objects that you can create for an Amazon account. For more information, see Amazon WAF quotas in the Amazon WAF Developer Guide.

HTTP Status Code: 400

See Also

For more information about using this API in one of the language-specific Amazon SDKs, see the following: