AppSync / Client / create_channel_namespace

create_channel_namespace

AppSync.Client.create_channel_namespace(**kwargs)

Creates a ChannelNamespace for an Api.

See also: AWS API Documentation

Request Syntax

response = client.create_channel_namespace(
    apiId='string',
    name='string',
    subscribeAuthModes=[
        {
            'authType': 'API_KEY'|'AWS_IAM'|'AMAZON_COGNITO_USER_POOLS'|'OPENID_CONNECT'|'AWS_LAMBDA'
        },
    ],
    publishAuthModes=[
        {
            'authType': 'API_KEY'|'AWS_IAM'|'AMAZON_COGNITO_USER_POOLS'|'OPENID_CONNECT'|'AWS_LAMBDA'
        },
    ],
    codeHandlers='string',
    tags={
        'string': 'string'
    },
    handlerConfigs={
        'onPublish': {
            'behavior': 'CODE'|'DIRECT',
            'integration': {
                'dataSourceName': 'string',
                'lambdaConfig': {
                    'invokeType': 'REQUEST_RESPONSE'|'EVENT'
                }
            }
        },
        'onSubscribe': {
            'behavior': 'CODE'|'DIRECT',
            'integration': {
                'dataSourceName': 'string',
                'lambdaConfig': {
                    'invokeType': 'REQUEST_RESPONSE'|'EVENT'
                }
            }
        }
    }
)
Parameters:
  • apiId (string) –

    [REQUIRED]

    The Api ID.

  • name (string) –

    [REQUIRED]

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

  • subscribeAuthModes (list) –

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

    • (dict) –

      Describes an authorization configuration. Use AuthMode to specify the publishing and subscription authorization configuration for an Event API.

      • authType (string) – [REQUIRED]

        The authorization type.

  • publishAuthModes (list) –

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

    • (dict) –

      Describes an authorization configuration. Use AuthMode to specify the publishing and subscription authorization configuration for an Event API.

      • authType (string) – [REQUIRED]

        The authorization type.

  • codeHandlers (string) – The event handler functions that run custom business logic to process published events and subscribe requests.

  • tags (dict) –

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

    • (string) –

      The key for the tag.

      • (string) –

        The value for the tag.

  • handlerConfigs (dict) –

    The configuration for the OnPublish and OnSubscribe handlers.

    • onPublish (dict) –

      The configuration for the OnPublish handler.

      • behavior (string) – [REQUIRED]

        The behavior for the handler.

      • integration (dict) – [REQUIRED]

        The integration data source configuration for the handler.

        • dataSourceName (string) – [REQUIRED]

          The unique name of the data source that has been configured on the API.

        • lambdaConfig (dict) –

          The configuration for a Lambda data source.

          • invokeType (string) –

            The invocation type for a Lambda data source.

    • onSubscribe (dict) –

      The configuration for the OnSubscribe handler.

      • behavior (string) – [REQUIRED]

        The behavior for the handler.

      • integration (dict) – [REQUIRED]

        The integration data source configuration for the handler.

        • dataSourceName (string) – [REQUIRED]

          The unique name of the data source that has been configured on the API.

        • lambdaConfig (dict) –

          The configuration for a Lambda data source.

          • invokeType (string) –

            The invocation type for a Lambda data source.

Return type:

dict

Returns:

Response Syntax

{
    'channelNamespace': {
        'apiId': 'string',
        'name': 'string',
        'subscribeAuthModes': [
            {
                'authType': 'API_KEY'|'AWS_IAM'|'AMAZON_COGNITO_USER_POOLS'|'OPENID_CONNECT'|'AWS_LAMBDA'
            },
        ],
        'publishAuthModes': [
            {
                'authType': 'API_KEY'|'AWS_IAM'|'AMAZON_COGNITO_USER_POOLS'|'OPENID_CONNECT'|'AWS_LAMBDA'
            },
        ],
        'codeHandlers': 'string',
        'tags': {
            'string': 'string'
        },
        'channelNamespaceArn': 'string',
        'created': datetime(2015, 1, 1),
        'lastModified': datetime(2015, 1, 1),
        'handlerConfigs': {
            'onPublish': {
                'behavior': 'CODE'|'DIRECT',
                'integration': {
                    'dataSourceName': 'string',
                    'lambdaConfig': {
                        'invokeType': 'REQUEST_RESPONSE'|'EVENT'
                    }
                }
            },
            'onSubscribe': {
                'behavior': 'CODE'|'DIRECT',
                'integration': {
                    'dataSourceName': 'string',
                    'lambdaConfig': {
                        'invokeType': 'REQUEST_RESPONSE'|'EVENT'
                    }
                }
            }
        }
    }
}

Response Structure

  • (dict) –

    • channelNamespace (dict) –

      The ChannelNamespace object.

      • apiId (string) –

        The Api ID.

      • name (string) –

        The name of the channel namespace. This name must be unique within the Api.

      • subscribeAuthModes (list) –

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

        • (dict) –

          Describes an authorization configuration. Use AuthMode to specify the publishing and subscription authorization configuration for an Event API.

          • authType (string) –

            The authorization type.

      • publishAuthModes (list) –

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

        • (dict) –

          Describes an authorization configuration. Use AuthMode to specify the publishing and subscription authorization configuration for an Event API.

          • authType (string) –

            The authorization type.

      • codeHandlers (string) –

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

      • tags (dict) –

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

        • (string) –

          The key for the tag.

          • (string) –

            The value for the tag.

      • channelNamespaceArn (string) –

        The Amazon Resource Name (ARN) for the ChannelNamespace.

      • created (datetime) –

        The date and time that the ChannelNamespace was created.

      • lastModified (datetime) –

        The date and time that the ChannelNamespace was last changed.

      • handlerConfigs (dict) –

        The configuration for the OnPublish and OnSubscribe handlers.

        • onPublish (dict) –

          The configuration for the OnPublish handler.

          • behavior (string) –

            The behavior for the handler.

          • integration (dict) –

            The integration data source configuration for the handler.

            • dataSourceName (string) –

              The unique name of the data source that has been configured on the API.

            • lambdaConfig (dict) –

              The configuration for a Lambda data source.

              • invokeType (string) –

                The invocation type for a Lambda data source.

        • onSubscribe (dict) –

          The configuration for the OnSubscribe handler.

          • behavior (string) –

            The behavior for the handler.

          • integration (dict) –

            The integration data source configuration for the handler.

            • dataSourceName (string) –

              The unique name of the data source that has been configured on the API.

            • lambdaConfig (dict) –

              The configuration for a Lambda data source.

              • invokeType (string) –

                The invocation type for a Lambda data source.

Exceptions

  • AppSync.Client.exceptions.BadRequestException

  • AppSync.Client.exceptions.ConcurrentModificationException

  • AppSync.Client.exceptions.ConflictException

  • AppSync.Client.exceptions.NotFoundException

  • AppSync.Client.exceptions.UnauthorizedException

  • AppSync.Client.exceptions.InternalFailureException

  • AppSync.Client.exceptions.ServiceQuotaExceededException