:doc:`Greengrass <../../greengrass>` / Client / create_subscription_definition_version

**************************************
create_subscription_definition_version
**************************************



.. py:method:: Greengrass.Client.create_subscription_definition_version(**kwargs)

  Creates a version of a subscription definition which has already been defined.

  See also: `AWS API Documentation <https://docs.aws.amazon.com/goto/WebAPI/greengrass-2017-06-07/CreateSubscriptionDefinitionVersion>`_  


  **Request Syntax**
  ::

    response = client.create_subscription_definition_version(
        AmznClientToken='string',
        SubscriptionDefinitionId='string',
        Subscriptions=[
            {
                'Id': 'string',
                'Source': 'string',
                'Subject': 'string',
                'Target': 'string'
            },
        ]
    )
    
  :type AmznClientToken: string
  :param AmznClientToken: A client token used to correlate requests and responses.

  
  :type SubscriptionDefinitionId: string
  :param SubscriptionDefinitionId: **[REQUIRED]** The ID of the subscription definition.

  
  :type Subscriptions: list
  :param Subscriptions: A list of subscriptions.

  
    - *(dict) --* Information about a subscription.

    
      - **Id** *(string) --* **[REQUIRED]** A descriptive or arbitrary ID for the subscription. This value must be unique within the subscription definition version. Max length is 128 characters with pattern ''[a-zA-Z0-9:_-]+''.

      
      - **Source** *(string) --* **[REQUIRED]** The source of the subscription. Can be a thing ARN, a Lambda function ARN, a connector ARN, 'cloud' (which represents the AWS IoT cloud), or 'GGShadowService'.

      
      - **Subject** *(string) --* **[REQUIRED]** The MQTT topic used to route the message.

      
      - **Target** *(string) --* **[REQUIRED]** Where the message is sent to. Can be a thing ARN, a Lambda function ARN, a connector ARN, 'cloud' (which represents the AWS IoT cloud), or 'GGShadowService'.

      
    

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

    
    ::

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

    

    - *(dict) --* 
      

      - **Arn** *(string) --* The ARN of the version.
      

      - **CreationTimestamp** *(string) --* The time, in milliseconds since the epoch, when the version was created.
      

      - **Id** *(string) --* The ID of the parent definition that the version is associated with.
      

      - **Version** *(string) --* The ID of the version.
  
  **Exceptions**
  
  *   :py:class:`Greengrass.Client.exceptions.BadRequestException`

  