ApiGatewayManagementApi

Client

class ApiGatewayManagementApi.Client

A low-level client representing AmazonApiGatewayManagementApi

The Amazon API Gateway Management API allows you to directly manage runtime aspects of your deployed APIs. To use it, you must explicitly set the SDK's endpoint to point to the endpoint of your deployed API. The endpoint will be of the form https://{api-id}.execute-api.{region}.amazonaws.com/{stage}, or will be the endpoint corresponding to your API's custom domain and base path, if applicable.

client = session.create_client('apigatewaymanagementapi')

These are the available methods:

can_paginate(operation_name)

Check if an operation can be paginated.

Parameters
operation_name (string) -- The operation name. This is the same name as the method name on the client. For example, if the method name is create_foo, and you'd normally invoke the operation as client.create_foo(**kwargs), if the create_foo operation can be paginated, you can use the call client.get_paginator("create_foo").
Returns
True if the operation can be paginated, False otherwise.
delete_connection(**kwargs)

Delete the connection with the provided id.

See also: AWS API Documentation

Request Syntax

response = client.delete_connection(
    ConnectionId='string'
)
Parameters
ConnectionId (string) -- [REQUIRED]
Returns
None

Exceptions

generate_presigned_url(ClientMethod, Params=None, ExpiresIn=3600, HttpMethod=None)

Generate a presigned url given a client, its method, and arguments

Parameters
  • ClientMethod (string) -- The client method to presign for
  • Params (dict) -- The parameters normally passed to ClientMethod.
  • ExpiresIn (int) -- The number of seconds the presigned url is valid for. By default it expires in an hour (3600 seconds)
  • HttpMethod (string) -- The http method to use on the generated url. By default, the http method is whatever is used in the method's model.
Returns

The presigned url

get_connection(**kwargs)

Get information about the connection with the provided id.

See also: AWS API Documentation

Request Syntax

response = client.get_connection(
    ConnectionId='string'
)
Parameters
ConnectionId (string) -- [REQUIRED]
Return type
dict
Returns
Response Syntax
{
    'ConnectedAt': datetime(2015, 1, 1),
    'Identity': {
        'SourceIp': 'string',
        'UserAgent': 'string'
    },
    'LastActiveAt': datetime(2015, 1, 1)
}

Response Structure

  • (dict) --
    • ConnectedAt (datetime) --

      The time in ISO 8601 format for when the connection was established.

    • Identity (dict) --
      • SourceIp (string) --

        The source IP address of the TCP connection making the request to API Gateway.

      • UserAgent (string) --

        The User Agent of the API caller.

    • LastActiveAt (datetime) --

      The time in ISO 8601 format for when the connection was last active.

Exceptions

get_paginator(operation_name)

Create a paginator for an operation.

Parameters
operation_name (string) -- The operation name. This is the same name as the method name on the client. For example, if the method name is create_foo, and you'd normally invoke the operation as client.create_foo(**kwargs), if the create_foo operation can be paginated, you can use the call client.get_paginator("create_foo").
Raises OperationNotPageableError
Raised if the operation is not pageable. You can use the client.can_paginate method to check if an operation is pageable.
Return type
L{botocore.paginate.Paginator}
Returns
A paginator object.
get_waiter(waiter_name)

Returns an object that can wait for some condition.

Parameters
waiter_name (str) -- The name of the waiter to get. See the waiters section of the service docs for a list of available waiters.
Returns
The specified waiter object.
Return type
botocore.waiter.Waiter
post_to_connection(**kwargs)

Sends the provided data to the specified connection.

See also: AWS API Documentation

Request Syntax

response = client.post_to_connection(
    Data=b'bytes'|file,
    ConnectionId='string'
)
Parameters
  • Data (bytes or seekable file-like object) --

    [REQUIRED]

    The data to be sent to the client specified by its connection id.

  • ConnectionId (string) --

    [REQUIRED]

    The identifier of the connection that a specific client is using.

Returns

None

Exceptions

Client Exceptions

Client exceptions are available on a client instance via the exceptions property. For more detailed instructions and examples on the exact usage of client exceptions, see the error handling user guide.

The available client exceptions are:

class ApiGatewayManagementApi.Client.exceptions.ForbiddenException

The caller is not authorized to invoke this operation.

Example

try:
  ...
except client.exceptions.ForbiddenException as e:
  print(e.response)
response

The parsed error response. All exceptions have a top level Error key that provides normalized access to common exception atrributes. All other keys are specific to this service or exception class.

Syntax

{}

Structure

  • (dict) --

    The caller is not authorized to invoke this operation.

    • Error (dict) -- Normalized access to common exception attributes.
      • Code (string) -- An identifier specifying the exception type.
      • Message (string) -- A descriptive message explaining why the exception occured.
class ApiGatewayManagementApi.Client.exceptions.GoneException

The connection with the provided id no longer exists.

Example

try:
  ...
except client.exceptions.GoneException as e:
  print(e.response)
response

The parsed error response. All exceptions have a top level Error key that provides normalized access to common exception atrributes. All other keys are specific to this service or exception class.

Syntax

{}

Structure

  • (dict) --

    The connection with the provided id no longer exists.

    • Error (dict) -- Normalized access to common exception attributes.
      • Code (string) -- An identifier specifying the exception type.
      • Message (string) -- A descriptive message explaining why the exception occured.
class ApiGatewayManagementApi.Client.exceptions.PayloadTooLargeException

The data has exceeded the maximum size allowed.

Example

try:
  ...
except client.exceptions.PayloadTooLargeException as e:
  print(e.response)
response

The parsed error response. All exceptions have a top level Error key that provides normalized access to common exception atrributes. All other keys are specific to this service or exception class.

Syntax

{
    'Message': 'string',
    'Error': {
        'Code': 'string',
        'Message': 'string'
    }
}

Structure

  • (dict) --

    The data has exceeded the maximum size allowed.

    • Message (string) --
    • Error (dict) -- Normalized access to common exception attributes.
      • Code (string) -- An identifier specifying the exception type.
      • Message (string) -- A descriptive message explaining why the exception occured.
class ApiGatewayManagementApi.Client.exceptions.LimitExceededException

The client is sending more than the allowed number of requests per unit of time or the WebSocket client side buffer is full.

Example

try:
  ...
except client.exceptions.LimitExceededException as e:
  print(e.response)
response

The parsed error response. All exceptions have a top level Error key that provides normalized access to common exception atrributes. All other keys are specific to this service or exception class.

Syntax

{}

Structure

  • (dict) --

    The client is sending more than the allowed number of requests per unit of time or the WebSocket client side buffer is full.

    • Error (dict) -- Normalized access to common exception attributes.
      • Code (string) -- An identifier specifying the exception type.
      • Message (string) -- A descriptive message explaining why the exception occured.

Paginators

The available paginators are: