:doc:`CloudFront <../../cloudfront>` / Client / create_trust_store

******************
create_trust_store
******************



.. py:method:: CloudFront.Client.create_trust_store(**kwargs)

  

  Creates a trust store.

  

  See also: `AWS API Documentation <https://docs.aws.amazon.com/goto/WebAPI/cloudfront-2020-05-31/CreateTrustStore>`_  


  **Request Syntax**
  ::

    response = client.create_trust_store(
        Name='string',
        CaCertificatesBundleSource={
            'CaCertificatesBundleS3Location': {
                'Bucket': 'string',
                'Key': 'string',
                'Region': 'string',
                'Version': 'string'
            }
        },
        Tags={
            'Items': [
                {
                    'Key': 'string',
                    'Value': 'string'
                },
            ]
        }
    )
    
  :type Name: string
  :param Name: **[REQUIRED]** 

    A name for the trust store.

    

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

    The CA certificates bundle source for the trust store.

    .. note::    This is a Tagged Union structure. Only one of the     following top level keys can be set: ``CaCertificatesBundleS3Location``. 

  
    - **CaCertificatesBundleS3Location** *(dict) --* 

      The CA certificates bundle location in Amazon S3.

      

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

        The S3 bucket.

        

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

        The location's key.

        

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

        The location's Region.

        

      
      - **Version** *(string) --* 

        The location's version.

        

      
    
  
  :type Tags: dict
  :param Tags: 

    A complex type that contains zero or more ``Tag`` elements.

    

  
    - **Items** *(list) --* 

      A complex type that contains ``Tag`` elements.

      

    
      - *(dict) --* 

        A complex type that contains ``Tag`` key and ``Tag`` value.

        

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

          A string that contains ``Tag`` key.

           

          The string length should be between 1 and 128 characters. Valid characters include ``a-z``, ``A-Z``, ``0-9``, space, and the special characters ``_ - . : / = + @``.

          

        
        - **Value** *(string) --* 

          A string that contains an optional ``Tag`` value.

           

          The string length should be between 0 and 256 characters. Valid characters include ``a-z``, ``A-Z``, ``0-9``, space, and the special characters ``_ - . : / = + @``.

          

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

    
    ::

      {
          'TrustStore': {
              'Id': 'string',
              'Arn': 'string',
              'Name': 'string',
              'Status': 'pending'|'active'|'failed',
              'NumberOfCaCertificates': 123,
              'LastModifiedTime': datetime(2015, 1, 1),
              'Reason': 'string'
          },
          'ETag': 'string'
      }
      
    **Response Structure**

    

    - *(dict) --* 
      

      - **TrustStore** *(dict) --* 

        The trust store.

        
        

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

          The trust store's ID.

          
        

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

          The trust store's Amazon Resource Name (ARN).

          
        

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

          The trust store's name.

          
        

        - **Status** *(string) --* 

          The trust store's status.

          
        

        - **NumberOfCaCertificates** *(integer) --* 

          The trust store's number of CA certificates.

          
        

        - **LastModifiedTime** *(datetime) --* 

          The trust store's last modified time.

          
        

        - **Reason** *(string) --* 

          The trust store's reason.

          
    
      

      - **ETag** *(string) --* 

        The version identifier for the current version of the trust store.

        
  
  **Exceptions**
  
  *   :py:class:`CloudFront.Client.exceptions.AccessDenied`

  
  *   :py:class:`CloudFront.Client.exceptions.EntityNotFound`

  
  *   :py:class:`CloudFront.Client.exceptions.EntityAlreadyExists`

  
  *   :py:class:`CloudFront.Client.exceptions.InvalidTagging`

  
  *   :py:class:`CloudFront.Client.exceptions.EntityLimitExceeded`

  
  *   :py:class:`CloudFront.Client.exceptions.InvalidArgument`

  