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

**************
get_public_key
**************



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

  

  Gets a public key.

  

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


  **Request Syntax**
  ::

    response = client.get_public_key(
        Id='string'
    )
    
  :type Id: string
  :param Id: **[REQUIRED]** 

    The identifier of the public key you are getting.

    

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

    
    ::

      {
          'PublicKey': {
              'Id': 'string',
              'CreatedTime': datetime(2015, 1, 1),
              'PublicKeyConfig': {
                  'CallerReference': 'string',
                  'Name': 'string',
                  'EncodedKey': 'string',
                  'Comment': 'string'
              }
          },
          'ETag': 'string'
      }
      
    **Response Structure**

    

    - *(dict) --* 
      

      - **PublicKey** *(dict) --* 

        The public key.

        
        

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

          The identifier of the public key.

          
        

        - **CreatedTime** *(datetime) --* 

          The date and time when the public key was uploaded.

          
        

        - **PublicKeyConfig** *(dict) --* 

          Configuration information about a public key that you can use with `signed URLs and signed cookies <https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/PrivateContent.html>`__, or with `field-level encryption <https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/field-level-encryption.html>`__.

          
          

          - **CallerReference** *(string) --* 

            A string included in the request to help make sure that the request can't be replayed.

            
          

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

            A name to help identify the public key.

            
          

          - **EncodedKey** *(string) --* 

            The public key that you can use with `signed URLs and signed cookies <https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/PrivateContent.html>`__, or with `field-level encryption <https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/field-level-encryption.html>`__.

            
          

          - **Comment** *(string) --* 

            A comment to describe the public key. The comment cannot be longer than 128 characters.

            
      
    
      

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

        The identifier for this version of the public key.

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

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

  