:doc:`Route53 <../../route53>` / Client / create_traffic_policy_instance

******************************
create_traffic_policy_instance
******************************



.. py:method:: Route53.Client.create_traffic_policy_instance(**kwargs)

  

  Creates resource record sets in a specified hosted zone based on the settings in a specified traffic policy version. In addition, ``CreateTrafficPolicyInstance`` associates the resource record sets with a specified domain name (such as example.com) or subdomain name (such as www.example.com). Amazon Route 53 responds to DNS queries for the domain or subdomain name by using the resource record sets that ``CreateTrafficPolicyInstance`` created.

   

  .. note::

    

    After you submit an ``CreateTrafficPolicyInstance`` request, there's a brief delay while Amazon Route 53 creates the resource record sets that are specified in the traffic policy definition. Use ``GetTrafficPolicyInstance`` with the ``id`` of new traffic policy instance to confirm that the ``CreateTrafficPolicyInstance`` request completed successfully. For more information, see the ``State`` response element.

    

  

  See also: `AWS API Documentation <https://docs.aws.amazon.com/goto/WebAPI/route53-2013-04-01/CreateTrafficPolicyInstance>`_  


  **Request Syntax**
  ::

    response = client.create_traffic_policy_instance(
        HostedZoneId='string',
        Name='string',
        TTL=123,
        TrafficPolicyId='string',
        TrafficPolicyVersion=123
    )
    
  :type HostedZoneId: string
  :param HostedZoneId: **[REQUIRED]** 

    The ID of the hosted zone that you want Amazon Route 53 to create resource record sets in by using the configuration in a traffic policy.

    

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

    The domain name (such as example.com) or subdomain name (such as www.example.com) for which Amazon Route 53 responds to DNS queries by using the resource record sets that Route 53 creates for this traffic policy instance.

    

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

    (Optional) The TTL that you want Amazon Route 53 to assign to all of the resource record sets that it creates in the specified hosted zone.

    

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

    The ID of the traffic policy that you want to use to create resource record sets in the specified hosted zone.

    

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

    The version of the traffic policy that you want to use to create resource record sets in the specified hosted zone.

    

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

    
    ::

      {
          'TrafficPolicyInstance': {
              'Id': 'string',
              'HostedZoneId': 'string',
              'Name': 'string',
              'TTL': 123,
              'State': 'string',
              'Message': 'string',
              'TrafficPolicyId': 'string',
              'TrafficPolicyVersion': 123,
              'TrafficPolicyType': 'SOA'|'A'|'TXT'|'NS'|'CNAME'|'MX'|'NAPTR'|'PTR'|'SRV'|'SPF'|'AAAA'|'CAA'|'DS'|'TLSA'|'SSHFP'|'SVCB'|'HTTPS'
          },
          'Location': 'string'
      }
      
    **Response Structure**

    

    - *(dict) --* 

      A complex type that contains the response information for the ``CreateTrafficPolicyInstance`` request.

      
      

      - **TrafficPolicyInstance** *(dict) --* 

        A complex type that contains settings for the new traffic policy instance.

        
        

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

          The ID that Amazon Route 53 assigned to the new traffic policy instance.

          
        

        - **HostedZoneId** *(string) --* 

          The ID of the hosted zone that Amazon Route 53 created resource record sets in.

          
        

        - **Name** *(string) --* 

          The DNS name, such as www.example.com, for which Amazon Route 53 responds to queries by using the resource record sets that are associated with this traffic policy instance.

          
        

        - **TTL** *(integer) --* 

          The TTL that Amazon Route 53 assigned to all of the resource record sets that it created in the specified hosted zone.

          
        

        - **State** *(string) --* 

          The value of ``State`` is one of the following values:

            Applied  

          Amazon Route 53 has finished creating resource record sets, and changes have propagated to all Route 53 edge locations.

            Creating  

          Route 53 is creating the resource record sets. Use ``GetTrafficPolicyInstance`` to confirm that the ``CreateTrafficPolicyInstance`` request completed successfully.

            Failed  

          Route 53 wasn't able to create or update the resource record sets. When the value of ``State`` is ``Failed``, see ``Message`` for an explanation of what caused the request to fail.

          
        

        - **Message** *(string) --* 

          If ``State`` is ``Failed``, an explanation of the reason for the failure. If ``State`` is another value, ``Message`` is empty.

          
        

        - **TrafficPolicyId** *(string) --* 

          The ID of the traffic policy that Amazon Route 53 used to create resource record sets in the specified hosted zone.

          
        

        - **TrafficPolicyVersion** *(integer) --* 

          The version of the traffic policy that Amazon Route 53 used to create resource record sets in the specified hosted zone.

          
        

        - **TrafficPolicyType** *(string) --* 

          The DNS type that Amazon Route 53 assigned to all of the resource record sets that it created for this traffic policy instance.

          
    
      

      - **Location** *(string) --* 

        A unique URL that represents a new traffic policy instance.

        
  
  **Exceptions**
  
  *   :py:class:`Route53.Client.exceptions.NoSuchHostedZone`

  
  *   :py:class:`Route53.Client.exceptions.InvalidInput`

  
  *   :py:class:`Route53.Client.exceptions.TooManyTrafficPolicyInstances`

  
  *   :py:class:`Route53.Client.exceptions.NoSuchTrafficPolicy`

  
  *   :py:class:`Route53.Client.exceptions.TrafficPolicyInstanceAlreadyExists`

  