CreateKey - Amazon Location Service

CreateKey

Creates an API key resource in your AWS account, which lets you grant actions for Amazon Location resources to the API key bearer.

Note

For more information, see Using API keys.

Request Syntax

POST /metadata/v0/keys HTTP/1.1 Content-type: application/json { "Description": "string", "ExpireTime": "string", "KeyName": "string", "NoExpiry": boolean, "Restrictions": { "AllowActions": [ "string" ], "AllowReferers": [ "string" ], "AllowResources": [ "string" ] }, "Tags": { "string" : "string" } }

URI Request Parameters

The request does not use any URI parameters.

Request Body

The request accepts the following data in JSON format.

Description

An optional description for the API key resource.

Type: String

Length Constraints: Minimum length of 0. Maximum length of 1000.

Required: No

ExpireTime

The optional timestamp for when the API key resource will expire in ISO 8601 format: YYYY-MM-DDThh:mm:ss.sss. One of NoExpiry or ExpireTime must be set.

Type: Timestamp

Required: No

KeyName

A custom name for the API key resource.

Requirements:

  • Contain only alphanumeric characters (A–Z, a–z, 0–9), hyphens (-), periods (.), and underscores (_).

  • Must be a unique API key name.

  • No spaces allowed. For example, ExampleAPIKey.

Type: String

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

Pattern: [-._\w]+

Required: Yes

NoExpiry

Optionally set to true to set no expiration time for the API key. One of NoExpiry or ExpireTime must be set.

Type: Boolean

Required: No

Restrictions

The API key restrictions for the API key resource.

Type: ApiKeyRestrictions object

Required: Yes

Tags

Applies one or more tags to the map resource. A tag is a key-value pair that helps manage, identify, search, and filter your resources by labelling them.

Format: "key" : "value"

Restrictions:

  • Maximum 50 tags per resource

  • Each resource tag must be unique with a maximum of one value.

  • Maximum key length: 128 Unicode characters in UTF-8

  • Maximum value length: 256 Unicode characters in UTF-8

  • Can use alphanumeric characters (A–Z, a–z, 0–9), and the following characters: + - = . _ : / @.

  • Cannot use "aws:" as a prefix for a key.

Type: String to string map

Map Entries: Minimum number of 0 items. Maximum number of 50 items.

Key Length Constraints: Minimum length of 1. Maximum length of 128.

Key Pattern: ([\p{L}\p{Z}\p{N}_.,:/=+\-@]*)

Value Length Constraints: Minimum length of 0. Maximum length of 256.

Value Pattern: ([\p{L}\p{Z}\p{N}_.,:/=+\-@]*)

Required: No

Response Syntax

HTTP/1.1 200 Content-type: application/json { "CreateTime": "string", "Key": "string", "KeyArn": "string", "KeyName": "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.

CreateTime

The timestamp for when the API key resource was created in ISO 8601 format: YYYY-MM-DDThh:mm:ss.sss.

Type: Timestamp

Key

The key value/string of an API key. This value is used when making API calls to authorize the call. For example, see GetMapGlyphs.

Type: String

Length Constraints: Minimum length of 0. Maximum length of 1000.

KeyArn

The Amazon Resource Name (ARN) for the API key resource. Used when you need to specify a resource across all AWS.

  • Format example: arn:aws:geo:region:account-id:key/ExampleKey

Type: String

Length Constraints: Minimum length of 0. Maximum length of 1600.

Pattern: arn(:[a-z0-9]+([.-][a-z0-9]+)*){2}(:([a-z0-9]+([.-][a-z0-9]+)*)?){2}:([^/].*)?

KeyName

The name of the API key resource.

Type: String

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

Pattern: [-._\w]+

Errors

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

AccessDeniedException

HTTP Status Code: 403

ConflictException

HTTP Status Code: 409

InternalServerException

HTTP Status Code: 500

ServiceQuotaExceededException

HTTP Status Code: 402

ThrottlingException

HTTP Status Code: 429

ValidationException

HTTP Status Code: 400

See Also

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