CreateChannelNamespace - AWS AppSync

CreateChannelNamespace

Creates a ChannelNamespace for an Api.

Request Syntax

POST /v2/apis/apiId/channelNamespaces HTTP/1.1 Content-type: application/json { "codeHandlers": "string", "name": "string", "publishAuthModes": [ { "authType": "string" } ], "subscribeAuthModes": [ { "authType": "string" } ], "tags": { "string" : "string" } }

URI Request Parameters

The request uses the following URI parameters.

apiId

The Api ID.

Required: Yes

Request Body

The request accepts the following data in JSON format.

codeHandlers

The event handler functions that run custom business logic to process published events and subscribe requests.

Type: String

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

Required: No

name

The name of the ChannelNamespace. This name must be unique within the Api

Type: String

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

Pattern: ([A-Za-z0-9](?:[A-Za-z0-9\-]{0,48}[A-Za-z0-9])?)

Required: Yes

publishAuthModes

The authorization mode to use for publishing messages on the channel namespace. This configuration overrides the default Api authorization configuration.

Type: Array of AuthMode objects

Required: No

subscribeAuthModes

The authorization mode to use for subscribing to messages on the channel namespace. This configuration overrides the default Api authorization configuration.

Type: Array of AuthMode objects

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 { "channelNamespace": { "apiId": "string", "channelNamespaceArn": "string", "codeHandlers": "string", "created": number, "lastModified": number, "name": "string", "publishAuthModes": [ { "authType": "string" } ], "subscribeAuthModes": [ { "authType": "string" } ], "tags": { "string" : "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.

channelNamespace

The ChannelNamespace object.

Type: ChannelNamespace object

Errors

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

BadRequestException

The request is not well formed. For example, a value is invalid or a required field is missing. Check the field values, and then try again.

HTTP Status Code: 400

ConcurrentModificationException

Another modification is in progress at this time and it must complete before you can make your change.

HTTP Status Code: 409

ConflictException

A conflict with a previous successful update is detected. This typically occurs when the previous update did not have time to propagate before the next update was made. A retry (with appropriate backoff logic) is the recommended response to this exception.

HTTP Status Code: 409

InternalFailureException

An internal AWS AppSync error occurred. Try your request again.

HTTP Status Code: 500

NotFoundException

The resource specified in the request was not found. Check the resource, and then try again.

HTTP Status Code: 404

ServiceQuotaExceededException

The operation exceeded the service quota for this resource.

HTTP Status Code: 402

UnauthorizedException

You aren't authorized to perform this operation.

HTTP Status Code: 401

See Also

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