:doc:`ApiGatewayV2 <../../apigatewayv2>` / Client / get_api

*******
get_api
*******



.. py:method:: ApiGatewayV2.Client.get_api(**kwargs)

  

  Gets an Api resource.

  

  See also: `AWS API Documentation <https://docs.aws.amazon.com/goto/WebAPI/apigatewayv2-2018-11-29/GetApi>`_  


  **Request Syntax**
  ::

    response = client.get_api(
        ApiId='string'
    )
    
  :type ApiId: string
  :param ApiId: **[REQUIRED]** 

    The API identifier.

    

  
  
  :rtype: dict
  :returns: 
    
    **Response Syntax**

    
    ::

      {
          'ApiEndpoint': 'string',
          'ApiGatewayManaged': True|False,
          'ApiId': 'string',
          'ApiKeySelectionExpression': 'string',
          'CorsConfiguration': {
              'AllowCredentials': True|False,
              'AllowHeaders': [
                  'string',
              ],
              'AllowMethods': [
                  'string',
              ],
              'AllowOrigins': [
                  'string',
              ],
              'ExposeHeaders': [
                  'string',
              ],
              'MaxAge': 123
          },
          'CreatedDate': datetime(2015, 1, 1),
          'Description': 'string',
          'DisableSchemaValidation': True|False,
          'DisableExecuteApiEndpoint': True|False,
          'ImportInfo': [
              'string',
          ],
          'IpAddressType': 'ipv4'|'dualstack',
          'Name': 'string',
          'ProtocolType': 'WEBSOCKET'|'HTTP',
          'RouteSelectionExpression': 'string',
          'Tags': {
              'string': 'string'
          },
          'Version': 'string',
          'Warnings': [
              'string',
          ]
      }
      
    **Response Structure**

    

    - *(dict) --* 

      Success

      
      

      - **ApiEndpoint** *(string) --* 

        The URI of the API, of the form {api-id}.execute-api.{region}.amazonaws.com. The stage name is typically appended to this URI to form a complete path to a deployed API stage.

        
      

      - **ApiGatewayManaged** *(boolean) --* 

        Specifies whether an API is managed by API Gateway. You can't update or delete a managed API by using API Gateway. A managed API can be deleted only through the tooling or service that created it.

        
      

      - **ApiId** *(string) --* 

        The API ID.

        
      

      - **ApiKeySelectionExpression** *(string) --* 

        An API key selection expression. Supported only for WebSocket APIs. See `API Key Selection Expressions <https://docs.aws.amazon.com/apigateway/latest/developerguide/apigateway-websocket-api-selection-expressions.html#apigateway-websocket-api-apikey-selection-expressions>`__.

        
      

      - **CorsConfiguration** *(dict) --* 

        A CORS configuration. Supported only for HTTP APIs.

        
        

        - **AllowCredentials** *(boolean) --* 

          Specifies whether credentials are included in the CORS request. Supported only for HTTP APIs.

          
        

        - **AllowHeaders** *(list) --* 

          Represents a collection of allowed headers. Supported only for HTTP APIs.

          
          

          - *(string) --* 
      
        

        - **AllowMethods** *(list) --* 

          Represents a collection of allowed HTTP methods. Supported only for HTTP APIs.

          
          

          - *(string) --* 

            A string with a length between [1-64].

            
      
        

        - **AllowOrigins** *(list) --* 

          Represents a collection of allowed origins. Supported only for HTTP APIs.

          
          

          - *(string) --* 
      
        

        - **ExposeHeaders** *(list) --* 

          Represents a collection of exposed headers. Supported only for HTTP APIs.

          
          

          - *(string) --* 
      
        

        - **MaxAge** *(integer) --* 

          The number of seconds that the browser should cache preflight request results. Supported only for HTTP APIs.

          
    
      

      - **CreatedDate** *(datetime) --* 

        The timestamp when the API was created.

        
      

      - **Description** *(string) --* 

        The description of the API.

        
      

      - **DisableSchemaValidation** *(boolean) --* 

        Avoid validating models when creating a deployment. Supported only for WebSocket APIs.

        
      

      - **DisableExecuteApiEndpoint** *(boolean) --* 

        Specifies whether clients can invoke your API by using the default execute-api endpoint. By default, clients can invoke your API with the default https://{api_id}.execute-api.{region}.amazonaws.com endpoint. To require that clients use a custom domain name to invoke your API, disable the default endpoint.

        
      

      - **ImportInfo** *(list) --* 

        The validation information during API import. This may include particular properties of your OpenAPI definition which are ignored during import. Supported only for HTTP APIs.

        
        

        - *(string) --* 
    
      

      - **IpAddressType** *(string) --* 

        The IP address types that can invoke the API.

        
      

      - **Name** *(string) --* 

        The name of the API.

        
      

      - **ProtocolType** *(string) --* 

        The API protocol.

        
      

      - **RouteSelectionExpression** *(string) --* 

        The route selection expression for the API. For HTTP APIs, the routeSelectionExpression must be ${request.method} ${request.path}. If not provided, this will be the default for HTTP APIs. This property is required for WebSocket APIs.

        
      

      - **Tags** *(dict) --* 

        A collection of tags associated with the API.

        
        

        - *(string) --* 
          

          - *(string) --* 

            A string with a length between [0-1600].

            
    
  
      

      - **Version** *(string) --* 

        A version identifier for the API.

        
      

      - **Warnings** *(list) --* 

        The warning messages reported when failonwarnings is turned on during API import.

        
        

        - *(string) --* 
    
  
  **Exceptions**
  
  *   :py:class:`ApiGatewayV2.Client.exceptions.NotFoundException`

  
  *   :py:class:`ApiGatewayV2.Client.exceptions.TooManyRequestsException`

  