:doc:`RTBFabric <../../rtbfabric>` / Client / create_responder_gateway

************************
create_responder_gateway
************************



.. py:method:: RTBFabric.Client.create_responder_gateway(**kwargs)

  

  Creates a responder gateway.

   

  .. warning::

     

    A domain name or managed endpoint is required.

    

  

  See also: `AWS API Documentation <https://docs.aws.amazon.com/goto/WebAPI/rtbfabric-2023-05-15/CreateResponderGateway>`_  


  **Request Syntax**
  ::

    response = client.create_responder_gateway(
        vpcId='string',
        subnetIds=[
            'string',
        ],
        securityGroupIds=[
            'string',
        ],
        domainName='string',
        port=123,
        protocol='HTTP'|'HTTPS',
        trustStoreConfiguration={
            'certificateAuthorityCertificates': [
                'string',
            ]
        },
        managedEndpointConfiguration={
            'autoScalingGroups': {
                'autoScalingGroupNames': [
                    'string',
                ],
                'roleArn': 'string'
            },
            'eksEndpoints': {
                'endpointsResourceName': 'string',
                'endpointsResourceNamespace': 'string',
                'clusterApiServerEndpointUri': 'string',
                'clusterApiServerCaCertificateChain': 'string',
                'clusterName': 'string',
                'roleArn': 'string'
            }
        },
        clientToken='string',
        description='string',
        tags={
            'string': 'string'
        }
    )
    
  :type vpcId: string
  :param vpcId: **[REQUIRED]** 

    The unique identifier of the Virtual Private Cloud (VPC).

    

  
  :type subnetIds: list
  :param subnetIds: **[REQUIRED]** 

    The unique identifiers of the subnets.

    

  
    - *(string) --* 

    

  :type securityGroupIds: list
  :param securityGroupIds: **[REQUIRED]** 

    The unique identifiers of the security groups.

    

  
    - *(string) --* 

    

  :type domainName: string
  :param domainName: 

    The domain name for the responder gateway.

    

  
  :type port: integer
  :param port: **[REQUIRED]** 

    The networking port to use.

    

  
  :type protocol: string
  :param protocol: **[REQUIRED]** 

    The networking protocol to use.

    

  
  :type trustStoreConfiguration: dict
  :param trustStoreConfiguration: 

    The configuration of the trust store.

    

  
    - **certificateAuthorityCertificates** *(list) --* **[REQUIRED]** 

      The certificate authority certificate.

      

    
      - *(string) --* 

      
  
  
  :type managedEndpointConfiguration: dict
  :param managedEndpointConfiguration: 

    The configuration for the managed endpoint.

    .. note::    This is a Tagged Union structure. Only one of the     following top level keys can be set: ``autoScalingGroups``, ``eksEndpoints``. 

  
    - **autoScalingGroups** *(dict) --* 

      Describes the configuration of an auto scaling group.

      

    
      - **autoScalingGroupNames** *(list) --* **[REQUIRED]** 

        The names of the auto scaling group.

        

      
        - *(string) --* 

        
    
      - **roleArn** *(string) --* **[REQUIRED]** 

        The role ARN of the auto scaling group.

        

      
    
    - **eksEndpoints** *(dict) --* 

      Describes the configuration of an Amazon Elastic Kubernetes Service endpoint.

      

    
      - **endpointsResourceName** *(string) --* **[REQUIRED]** 

        The name of the endpoint resource.

        

      
      - **endpointsResourceNamespace** *(string) --* **[REQUIRED]** 

        The namespace of the endpoint resource.

        

      
      - **clusterApiServerEndpointUri** *(string) --* **[REQUIRED]** 

        The URI of the cluster API server endpoint.

        

      
      - **clusterApiServerCaCertificateChain** *(string) --* **[REQUIRED]** 

        The CA certificate chain of the cluster API server.

        

      
      - **clusterName** *(string) --* **[REQUIRED]** 

        The name of the cluster.

        

      
      - **roleArn** *(string) --* **[REQUIRED]** 

        The role ARN for the cluster.

        

      
    
  
  :type clientToken: string
  :param clientToken: **[REQUIRED]** 

    The unique client token.

    This field is autopopulated if not provided.

  
  :type description: string
  :param description: 

    An optional description for the responder gateway.

    

  
  :type tags: dict
  :param tags: 

    A map of the key-value pairs of the tag or tags to assign to the resource.

    

  
    - *(string) --* 

    
      - *(string) --* 

      


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

    
    ::

      {
          'gatewayId': 'string',
          'status': 'PENDING_CREATION'|'ACTIVE'|'PENDING_DELETION'|'DELETED'|'ERROR'|'PENDING_UPDATE'|'ISOLATED'|'PENDING_ISOLATION'|'PENDING_RESTORATION'
      }
      
    **Response Structure**

    

    - *(dict) --* 
      

      - **gatewayId** *(string) --* 

        The unique identifier of the gateway.

        
      

      - **status** *(string) --* 

        The status of the request.

        
  
  **Exceptions**
  
  *   :py:class:`RTBFabric.Client.exceptions.ServiceQuotaExceededException`

  
  *   :py:class:`RTBFabric.Client.exceptions.ResourceNotFoundException`

  
  *   :py:class:`RTBFabric.Client.exceptions.ThrottlingException`

  
  *   :py:class:`RTBFabric.Client.exceptions.AccessDeniedException`

  
  *   :py:class:`RTBFabric.Client.exceptions.InternalServerException`

  
  *   :py:class:`RTBFabric.Client.exceptions.ValidationException`

  