:doc:`GroundStation <../../groundstation>` / Client / register_agent

**************
register_agent
**************



.. py:method:: GroundStation.Client.register_agent(**kwargs)

  

  

  .. note::

    

    For use by AWS Ground Station Agent and shouldn't be called directly.

    

   

  Registers a new agent with AWS Ground Station.

  

  

  See also: `AWS API Documentation <https://docs.aws.amazon.com/goto/WebAPI/groundstation-2019-05-23/RegisterAgent>`_  


  **Request Syntax**
  ::

    response = client.register_agent(
        discoveryData={
            'publicIpAddresses': [
                'string',
            ],
            'privateIpAddresses': [
                'string',
            ],
            'capabilityArns': [
                'string',
            ]
        },
        agentDetails={
            'agentVersion': 'string',
            'instanceId': 'string',
            'instanceType': 'string',
            'reservedCpuCores': [
                123,
            ],
            'agentCpuCores': [
                123,
            ],
            'componentVersions': [
                {
                    'componentType': 'string',
                    'versions': [
                        'string',
                    ]
                },
            ]
        },
        tags={
            'string': 'string'
        }
    )
    
  :type discoveryData: dict
  :param discoveryData: **[REQUIRED]** 

    Data for associating an agent with the capabilities it is managing.

    

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

      List of public IP addresses to associate with agent.

      

    
      - *(string) --* 

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

      List of private IP addresses to associate with agent.

      

    
      - *(string) --* 

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

      List of capabilities to associate with agent.

      

    
      - *(string) --* 

      
  
  
  :type agentDetails: dict
  :param agentDetails: **[REQUIRED]** 

    Detailed information about the agent being registered.

    

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

      Current agent version.

      

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

      ID of EC2 instance agent is running on.

      

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

      Type of EC2 instance agent is running on.

      

    
    - **reservedCpuCores** *(list) --* 

      

      .. note::

        

        This field should not be used. Use agentCpuCores instead.

        

       

      List of CPU cores reserved for processes other than the agent running on the EC2 instance.

      

      

    
      - *(integer) --* 

      
  
    - **agentCpuCores** *(list) --* 

      List of CPU cores reserved for the agent.

      

    
      - *(integer) --* 

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

      List of versions being used by agent components.

      

    
      - *(dict) --* 

        Version information for agent components.

        

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

          Component type.

          

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

          List of versions.

          

        
          - *(string) --* 

          
      
      
  
  
  :type tags: dict
  :param tags: 

    Tags assigned to an ``Agent``.

    

  
    - *(string) --* 

    
      - *(string) --* 

      


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

    
    ::

      {
          'agentId': 'string'
      }
      
    **Response Structure**

    

    - *(dict) --* 
      

      - **agentId** *(string) --* 

        UUID of registered agent.

        
  
  **Exceptions**
  
  *   :py:class:`GroundStation.Client.exceptions.InvalidParameterException`

  
  *   :py:class:`GroundStation.Client.exceptions.DependencyException`

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

  