:doc:`DataZone <../../datazone>` / Client / update_environment_blueprint

****************************
update_environment_blueprint
****************************



.. py:method:: DataZone.Client.update_environment_blueprint(**kwargs)

  

  Updates an environment blueprint in Amazon DataZone.

  

  See also: `AWS API Documentation <https://docs.aws.amazon.com/goto/WebAPI/datazone-2018-05-10/UpdateEnvironmentBlueprint>`_  


  **Request Syntax**
  ::

    response = client.update_environment_blueprint(
        domainIdentifier='string',
        identifier='string',
        description='string',
        provisioningProperties={
            'cloudFormation': {
                'templateUrl': 'string'
            }
        },
        userParameters=[
            {
                'keyName': 'string',
                'description': 'string',
                'fieldType': 'string',
                'defaultValue': 'string',
                'isEditable': True|False,
                'isOptional': True|False,
                'isUpdateSupported': True|False
            },
        ]
    )
    
  :type domainIdentifier: string
  :param domainIdentifier: **[REQUIRED]** 

    The identifier of the Amazon DataZone domain in which an environment blueprint is to be updated.

    

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

    The identifier of the environment blueprint to be updated.

    

  
  :type description: string
  :param description: 

    The description to be updated as part of the ``UpdateEnvironmentBlueprint`` action.

    

  
  :type provisioningProperties: dict
  :param provisioningProperties: 

    The provisioning properties to be updated as part of the ``UpdateEnvironmentBlueprint`` action.

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

  
    - **cloudFormation** *(dict) --* 

      The cloud formation properties included as part of the provisioning properties of an environment blueprint.

      

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

        The template URL of the cloud formation provisioning properties of the environment blueprint.

        

      
    
  
  :type userParameters: list
  :param userParameters: 

    The user parameters to be updated as part of the ``UpdateEnvironmentBlueprint`` action.

    

  
    - *(dict) --* 

      The details of user parameters of an environment blueprint.

      

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

        The key name of the parameter.

        

      
      - **description** *(string) --* 

        The description of the parameter.

        

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

        The filed type of the parameter.

        

      
      - **defaultValue** *(string) --* 

        The default value of the parameter.

        

      
      - **isEditable** *(boolean) --* 

        Specifies whether the parameter is editable.

        

      
      - **isOptional** *(boolean) --* 

        Specifies whether the custom parameter is optional.

        

      
      - **isUpdateSupported** *(boolean) --* 

        Specifies whether a parameter value can be updated after creation.

        

      
    

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

    
    ::

      {
          'id': 'string',
          'name': 'string',
          'description': 'string',
          'provider': 'string',
          'provisioningProperties': {
              'cloudFormation': {
                  'templateUrl': 'string'
              }
          },
          'deploymentProperties': {
              'startTimeoutMinutes': 123,
              'endTimeoutMinutes': 123
          },
          'userParameters': [
              {
                  'keyName': 'string',
                  'description': 'string',
                  'fieldType': 'string',
                  'defaultValue': 'string',
                  'isEditable': True|False,
                  'isOptional': True|False,
                  'isUpdateSupported': True|False
              },
          ],
          'glossaryTerms': [
              'string',
          ],
          'createdAt': datetime(2015, 1, 1),
          'updatedAt': datetime(2015, 1, 1)
      }
      
    **Response Structure**

    

    - *(dict) --* 
      

      - **id** *(string) --* 

        The identifier of the blueprint to be updated.

        
      

      - **name** *(string) --* 

        The name to be updated as part of the ``UpdateEnvironmentBlueprint`` action.

        
      

      - **description** *(string) --* 

        The description to be updated as part of the ``UpdateEnvironmentBlueprint`` action.

        
      

      - **provider** *(string) --* 

        The provider of the blueprint to be udpated.

        
      

      - **provisioningProperties** *(dict) --* 

        The provisioning properties to be updated as part of the ``UpdateEnvironmentBlueprint`` action.

        .. note::    This is a Tagged Union structure. Only one of the     following top level keys will be set: ``cloudFormation``.     If a client receives an unknown member it will     set ``SDK_UNKNOWN_MEMBER`` as the top level key,     which maps to the name or tag of the unknown     member. The structure of ``SDK_UNKNOWN_MEMBER`` is     as follows::

                'SDK_UNKNOWN_MEMBER': {'name': 'UnknownMemberName'}


      
        

        - **cloudFormation** *(dict) --* 

          The cloud formation properties included as part of the provisioning properties of an environment blueprint.

          
          

          - **templateUrl** *(string) --* 

            The template URL of the cloud formation provisioning properties of the environment blueprint.

            
      
    
      

      - **deploymentProperties** *(dict) --* 

        The deployment properties to be updated as part of the ``UpdateEnvironmentBlueprint`` action.

        
        

        - **startTimeoutMinutes** *(integer) --* 

          The start timeout of the environment blueprint deployment.

          
        

        - **endTimeoutMinutes** *(integer) --* 

          The end timeout of the environment blueprint deployment.

          
    
      

      - **userParameters** *(list) --* 

        The user parameters to be updated as part of the ``UpdateEnvironmentBlueprint`` action.

        
        

        - *(dict) --* 

          The details of user parameters of an environment blueprint.

          
          

          - **keyName** *(string) --* 

            The key name of the parameter.

            
          

          - **description** *(string) --* 

            The description of the parameter.

            
          

          - **fieldType** *(string) --* 

            The filed type of the parameter.

            
          

          - **defaultValue** *(string) --* 

            The default value of the parameter.

            
          

          - **isEditable** *(boolean) --* 

            Specifies whether the parameter is editable.

            
          

          - **isOptional** *(boolean) --* 

            Specifies whether the custom parameter is optional.

            
          

          - **isUpdateSupported** *(boolean) --* 

            Specifies whether a parameter value can be updated after creation.

            
      
    
      

      - **glossaryTerms** *(list) --* 

        The glossary terms to be updated as part of the ``UpdateEnvironmentBlueprint`` action.

        
        

        - *(string) --* 
    
      

      - **createdAt** *(datetime) --* 

        The timestamp of when the environment blueprint was created.

        
      

      - **updatedAt** *(datetime) --* 

        The timestamp of when the blueprint was updated.

        
  
  **Exceptions**
  
  *   :py:class:`DataZone.Client.exceptions.InternalServerException`

  
  *   :py:class:`DataZone.Client.exceptions.ResourceNotFoundException`

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

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

  
  *   :py:class:`DataZone.Client.exceptions.ServiceQuotaExceededException`

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

  
  *   :py:class:`DataZone.Client.exceptions.ValidationException`

  
  *   :py:class:`DataZone.Client.exceptions.UnauthorizedException`

  