:doc:`IoTWireless <../../iotwireless>` / Client / create_wireless_gateway_task_definition

***************************************
create_wireless_gateway_task_definition
***************************************



.. py:method:: IoTWireless.Client.create_wireless_gateway_task_definition(**kwargs)

  

  Creates a gateway task definition.

  

  See also: `AWS API Documentation <https://docs.aws.amazon.com/goto/WebAPI/iotwireless-2020-11-22/CreateWirelessGatewayTaskDefinition>`_  


  **Request Syntax**
  ::

    response = client.create_wireless_gateway_task_definition(
        AutoCreateTasks=True|False,
        Name='string',
        Update={
            'UpdateDataSource': 'string',
            'UpdateDataRole': 'string',
            'LoRaWAN': {
                'UpdateSignature': 'string',
                'SigKeyCrc': 123,
                'CurrentVersion': {
                    'PackageVersion': 'string',
                    'Model': 'string',
                    'Station': 'string'
                },
                'UpdateVersion': {
                    'PackageVersion': 'string',
                    'Model': 'string',
                    'Station': 'string'
                }
            }
        },
        ClientRequestToken='string',
        Tags=[
            {
                'Key': 'string',
                'Value': 'string'
            },
        ]
    )
    
  :type AutoCreateTasks: boolean
  :param AutoCreateTasks: **[REQUIRED]** 

    Whether to automatically create tasks using this task definition for all gateways with the specified current version. If ``false``, the task must me created by calling ``CreateWirelessGatewayTask``.

    

  
  :type Name: string
  :param Name: 

    The name of the new resource.

    

  
  :type Update: dict
  :param Update: 

    Information about the gateways to update.

    

  
    - **UpdateDataSource** *(string) --* 

      The link to the S3 bucket.

      

    
    - **UpdateDataRole** *(string) --* 

      The IAM role used to read data from the S3 bucket.

      

    
    - **LoRaWAN** *(dict) --* 

      The properties that relate to the LoRaWAN wireless gateway.

      

    
      - **UpdateSignature** *(string) --* 

        The signature used to verify the update firmware.

        

      
      - **SigKeyCrc** *(integer) --* 

        The CRC of the signature private key to check.

        

      
      - **CurrentVersion** *(dict) --* 

        The version of the gateways that should receive the update.

        

      
        - **PackageVersion** *(string) --* 

          The version of the wireless gateway firmware.

          

        
        - **Model** *(string) --* 

          The model number of the wireless gateway.

          

        
        - **Station** *(string) --* 

          The basic station version of the wireless gateway.

          

        
      
      - **UpdateVersion** *(dict) --* 

        The firmware version to update the gateway to.

        

      
        - **PackageVersion** *(string) --* 

          The version of the wireless gateway firmware.

          

        
        - **Model** *(string) --* 

          The model number of the wireless gateway.

          

        
        - **Station** *(string) --* 

          The basic station version of the wireless gateway.

          

        
      
    
  
  :type ClientRequestToken: string
  :param ClientRequestToken: 

    Each resource must have a unique client request token. The client token is used to implement idempotency. It ensures that the request completes no more than one time. If you retry a request with the same token and the same parameters, the request will complete successfully. However, if you try to create a new resource using the same token but different parameters, an HTTP 409 conflict occurs. If you omit this value, AWS SDKs will automatically generate a unique client request. For more information about idempotency, see `Ensuring idempotency in Amazon EC2 API requests <https://docs.aws.amazon.com/ec2/latest/devguide/ec2-api-idempotency.html>`__.

    This field is autopopulated if not provided.

  
  :type Tags: list
  :param Tags: 

    The tags to attach to the specified resource. Tags are metadata that you can use to manage a resource.

    

  
    - *(dict) --* 

      A simple label consisting of a customer-defined key-value pair

      

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

        The tag's key value.

        

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

        The tag's value.

        

      
    

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

    
    ::

      {
          'Id': 'string',
          'Arn': 'string'
      }
      
    **Response Structure**

    

    - *(dict) --* 
      

      - **Id** *(string) --* 

        The ID of the new wireless gateway task definition.

        
      

      - **Arn** *(string) --* 

        The Amazon Resource Name of the resource.

        
  
  **Exceptions**
  
  *   :py:class:`IoTWireless.Client.exceptions.ValidationException`

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

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

  
  *   :py:class:`IoTWireless.Client.exceptions.ConflictException`

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

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

  