View a markdown version of this page

CreateApi - AWS AppSync

CreateApi

Creates an Api object. Use this operation to create an AWS AppSync API with your preferred configuration, such as an Event API that provides real-time message publishing and message subscriptions over WebSockets.

Request Syntax

POST /v2/apis HTTP/1.1 Content-type: application/json { "eventConfig": { "authProviders": [ { "authType": "string", "cognitoConfig": { "appIdClientRegex": "string", "awsRegion": "string", "userPoolId": "string" }, "lambdaAuthorizerConfig": { "authorizerResultTtlInSeconds": number, "authorizerUri": "string", "identityValidationExpression": "string" }, "openIDConnectConfig": { "authTTL": number, "clientId": "string", "iatTTL": number, "issuer": "string" } } ], "connectionAuthModes": [ { "authType": "string" } ], "defaultPublishAuthModes": [ { "authType": "string" } ], "defaultSubscribeAuthModes": [ { "authType": "string" } ], "logConfig": { "cloudWatchLogsRoleArn": "string", "logLevel": "string" } }, "name": "string", "ownerContact": "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.

eventConfig

The Event API configuration. This includes the default authorization configuration for connecting, publishing, and subscribing to an Event API.

Type: EventConfig object

Required: No

name

The name for the Api.

Type: String

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

Pattern: [A-Za-z0-9_\-\ ]+

Required: Yes

ownerContact

The owner contact information for the Api.

Type: String

Required: No

tags

A map with keys of TagKey objects and values of TagValue objects.

Type: String to string map

Map Entries: Maximum number of 50 items.

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

Key Pattern: ^(?!aws:)[ a-zA-Z+-=._:/]+$

Value Length Constraints: Maximum length of 256.

Value Pattern: ^[\s\w+-=\.:/@]*$

Required: No

Response Syntax

HTTP/1.1 200 Content-type: application/json { "api": { "apiArn": "string", "apiId": "string", "created": number, "dns": { "string" : "string" }, "eventConfig": { "authProviders": [ { "authType": "string", "cognitoConfig": { "appIdClientRegex": "string", "awsRegion": "string", "userPoolId": "string" }, "lambdaAuthorizerConfig": { "authorizerResultTtlInSeconds": number, "authorizerUri": "string", "identityValidationExpression": "string" }, "openIDConnectConfig": { "authTTL": number, "clientId": "string", "iatTTL": number, "issuer": "string" } } ], "connectionAuthModes": [ { "authType": "