AWS WAFV2

2023/04/20 - AWS WAFV2 - 3 new api methods

Changes  You can now create encrypted API keys to use in a client application integration of the JavaScript CAPTCHA API . You can also retrieve a list of your API keys and the JavaScript application integration URL.

GetDecryptedAPIKey (new) Link ¶

Returns your API key in decrypted form. Use this to check the token domains that you have defined for the key.

See also: AWS API Documentation

Request Syntax

client.get_decrypted_api_key(
    Scope='CLOUDFRONT'|'REGIONAL',
    APIKey='string'
)
type Scope

string

param Scope

[REQUIRED]

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 AppSync GraphQL API, an Amazon Cognito user pool, or an App Runner service.

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 APIKey

string

param APIKey

[REQUIRED]

The encrypted API key.

rtype

dict

returns

Response Syntax

{
    'TokenDomains': [
        'string',
    ],
    'CreationTimestamp': datetime(2015, 1, 1)
}

Response Structure

  • (dict) --

    • TokenDomains (list) --

      The token domains that are defined in this API key.

      • (string) --

    • CreationTimestamp (datetime) --

      The date and time that the key was created.

CreateAPIKey (new) Link ¶

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

The CAPTCHA API requires a key that authorizes CAPTCHA use from the client application domain. 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.

See also: AWS API Documentation

Request Syntax

client.create_api_key(
    Scope='CLOUDFRONT'|'REGIONAL',
    TokenDomains=[
        'string',
    ]
)
type Scope

string

param Scope

[REQUIRED]

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 AppSync GraphQL API, an Amazon Cognito user pool, or an App Runner service.

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 TokenDomains

list

param TokenDomains

[REQUIRED]

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

  • (string) --

rtype

dict

returns

Response Syntax

{
    'APIKey': 'string'
}

Response Structure

  • (dict) --

    • APIKey (string) --

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

      For information about how to use this in your CAPTCHA JavaScript integration, see WAF client application integration in the WAF Developer Guide .

ListAPIKeys (new) Link ¶

Retrieves a list of the API keys that you've defined for the specified scope.

See also: AWS API Documentation

Request Syntax

client.list_api_keys(
    Scope='CLOUDFRONT'|'REGIONAL',
    NextMarker='string',
    Limit=123
)
type Scope

string

param Scope

[REQUIRED]

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 AppSync GraphQL API, an Amazon Cognito user pool, or an App Runner service.

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 NextMarker

string

param NextMarker

When you request a list of objects with a Limit setting, if the number of objects that are still available for retrieval exceeds the limit, WAF returns a NextMarker value in the response. To retrieve the next batch of objects, provide the marker from the prior call in your next request.

type Limit

integer

param Limit

The maximum number of objects that you want WAF to return for this request. If more objects are available, in the response, WAF provides a NextMarker value that you can use in a subsequent call to get the next batch of objects.

rtype

dict

returns

Response Syntax

{
    'NextMarker': 'string',
    'APIKeySummaries': [
        {
            'TokenDomains': [
                'string',
            ],
            'APIKey': 'string',
            'CreationTimestamp': datetime(2015, 1, 1),
            'Version': 123
        },
    ],
    'ApplicationIntegrationURL': 'string'
}

Response Structure

  • (dict) --

    • NextMarker (string) --

      When you request a list of objects with a Limit setting, if the number of objects that are still available for retrieval exceeds the limit, WAF returns a NextMarker value in the response. To retrieve the next batch of objects, provide the marker from the prior call in your next request.

    • APIKeySummaries (list) --

      The array of key summaries. If you specified a Limit in your request, this might not be the full list.

      • (dict) --

        Information for a single API key.

        • TokenDomains (list) --

          The token domains that are defined in this API key.

          • (string) --

        • APIKey (string) --

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

          For information about how to use this in your CAPTCHA JavaScript integration, see WAF client application integration in the WAF Developer Guide .

        • CreationTimestamp (datetime) --

          The date and time that the key was created.

        • Version (integer) --

          Internal value used by WAF to manage the key.

    • ApplicationIntegrationURL (string) --

      The CAPTCHA application integration URL, for use in your JavaScript implementation.

      For information about how to use this in your CAPTCHA JavaScript integration, see WAF client application integration in the WAF Developer Guide .