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

*********************
create_device_profile
*********************



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

  

  Creates a new device profile.

  

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


  **Request Syntax**
  ::

    response = client.create_device_profile(
        Name='string',
        LoRaWAN={
            'SupportsClassB': True|False,
            'ClassBTimeout': 123,
            'PingSlotPeriod': 123,
            'PingSlotDr': 123,
            'PingSlotFreq': 123,
            'SupportsClassC': True|False,
            'ClassCTimeout': 123,
            'MacVersion': 'string',
            'RegParamsRevision': 'string',
            'RxDelay1': 123,
            'RxDrOffset1': 123,
            'RxDataRate2': 123,
            'RxFreq2': 123,
            'FactoryPresetFreqsList': [
                123,
            ],
            'MaxEirp': 123,
            'MaxDutyCycle': 123,
            'RfRegion': 'string',
            'SupportsJoin': True|False,
            'Supports32BitFCnt': True|False
        },
        Tags=[
            {
                'Key': 'string',
                'Value': 'string'
            },
        ],
        ClientRequestToken='string',
        Sidewalk={}
        
    )
    
  :type Name: string
  :param Name: 

    The name of the new resource.

     

    .. note::

      

      The following special characters aren't accepted: ``<>^#~$``

      

    

  
  :type LoRaWAN: dict
  :param LoRaWAN: 

    The device profile information to use to create the device profile.

    

  
    - **SupportsClassB** *(boolean) --* 

      The SupportsClassB value.

      

    
    - **ClassBTimeout** *(integer) --* 

      The ClassBTimeout value.

      

    
    - **PingSlotPeriod** *(integer) --* 

      The PingSlotPeriod value.

      

    
    - **PingSlotDr** *(integer) --* 

      The PingSlotDR value.

      

    
    - **PingSlotFreq** *(integer) --* 

      The PingSlotFreq value.

      

    
    - **SupportsClassC** *(boolean) --* 

      The SupportsClassC value.

      

    
    - **ClassCTimeout** *(integer) --* 

      The ClassCTimeout value.

      

    
    - **MacVersion** *(string) --* 

      The MAC version (such as OTAA 1.1 or OTAA 1.0.3) to use with this device profile.

      

    
    - **RegParamsRevision** *(string) --* 

      The version of regional parameters.

      

    
    - **RxDelay1** *(integer) --* 

      The RXDelay1 value.

      

    
    - **RxDrOffset1** *(integer) --* 

      The RXDROffset1 value.

      

    
    - **RxDataRate2** *(integer) --* 

      The RXDataRate2 value.

      

    
    - **RxFreq2** *(integer) --* 

      The RXFreq2 value.

      

    
    - **FactoryPresetFreqsList** *(list) --* 

      The list of values that make up the FactoryPresetFreqs value.

      

    
      - *(integer) --* 

      
  
    - **MaxEirp** *(integer) --* 

      The MaxEIRP value.

      

    
    - **MaxDutyCycle** *(integer) --* 

      The MaxDutyCycle value. It ranges from 0 to 15.

      

    
    - **RfRegion** *(string) --* 

      The frequency band (RFRegion) value.

      

    
    - **SupportsJoin** *(boolean) --* 

      The SupportsJoin value.

      

    
    - **Supports32BitFCnt** *(boolean) --* 

      The Supports32BitFCnt value.

      

    
  
  :type Tags: list
  :param Tags: 

    The tags to attach to the new device profile. 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.

        

      
    

  :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 Sidewalk: dict
  :param Sidewalk: 

    The Sidewalk-related information for creating the Sidewalk device profile.

    

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

    
    ::

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

    

    - *(dict) --* 
      

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

        The Amazon Resource Name of the new resource.

        
      

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

        The ID of the new device profile.

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

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

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

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

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

  