:doc:`DataPipeline <../../datapipeline>` / Client / get_pipeline_definition

***********************
get_pipeline_definition
***********************



.. py:method:: DataPipeline.Client.get_pipeline_definition(**kwargs)

  

  Gets the definition of the specified pipeline. You can call ``GetPipelineDefinition`` to retrieve the pipeline definition that you provided using  PutPipelineDefinition.

  

  See also: `AWS API Documentation <https://docs.aws.amazon.com/goto/WebAPI/datapipeline-2012-10-29/GetPipelineDefinition>`_  


  **Request Syntax**
  ::

    response = client.get_pipeline_definition(
        pipelineId='string',
        version='string'
    )
    
  :type pipelineId: string
  :param pipelineId: **[REQUIRED]** 

    The ID of the pipeline.

    

  
  :type version: string
  :param version: 

    The version of the pipeline definition to retrieve. Set this parameter to ``latest`` (default) to use the last definition saved to the pipeline or ``active`` to use the last definition that was activated.

    

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

    
    ::

      {
          'pipelineObjects': [
              {
                  'id': 'string',
                  'name': 'string',
                  'fields': [
                      {
                          'key': 'string',
                          'stringValue': 'string',
                          'refValue': 'string'
                      },
                  ]
              },
          ],
          'parameterObjects': [
              {
                  'id': 'string',
                  'attributes': [
                      {
                          'key': 'string',
                          'stringValue': 'string'
                      },
                  ]
              },
          ],
          'parameterValues': [
              {
                  'id': 'string',
                  'stringValue': 'string'
              },
          ]
      }
      
    **Response Structure**

    

    - *(dict) --* 

      Contains the output of GetPipelineDefinition.

      
      

      - **pipelineObjects** *(list) --* 

        The objects defined in the pipeline.

        
        

        - *(dict) --* 

          Contains information about a pipeline object. This can be a logical, physical, or physical attempt pipeline object. The complete set of components of a pipeline defines the pipeline.

          
          

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

            The ID of the object.

            
          

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

            The name of the object.

            
          

          - **fields** *(list) --* 

            Key-value pairs that define the properties of the object.

            
            

            - *(dict) --* 

              A key-value pair that describes a property of a pipeline object. The value is specified as either a string value ( ``StringValue``) or a reference to another object ( ``RefValue``) but not as both.

              
              

              - **key** *(string) --* 

                The field identifier.

                
              

              - **stringValue** *(string) --* 

                The field value, expressed as a String.

                
              

              - **refValue** *(string) --* 

                The field value, expressed as the identifier of another object.

                
          
        
      
    
      

      - **parameterObjects** *(list) --* 

        The parameter objects used in the pipeline definition.

        
        

        - *(dict) --* 

          Contains information about a parameter object.

          
          

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

            The ID of the parameter object.

            
          

          - **attributes** *(list) --* 

            The attributes of the parameter object.

            
            

            - *(dict) --* 

              The attributes allowed or specified with a parameter object.

              
              

              - **key** *(string) --* 

                The field identifier.

                
              

              - **stringValue** *(string) --* 

                The field value, expressed as a String.

                
          
        
      
    
      

      - **parameterValues** *(list) --* 

        The parameter values used in the pipeline definition.

        
        

        - *(dict) --* 

          A value or list of parameter values.

          
          

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

            The ID of the parameter value.

            
          

          - **stringValue** *(string) --* 

            The field value, expressed as a String.

            
      
    
  
  **Exceptions**
  
  *   :py:class:`DataPipeline.Client.exceptions.InternalServiceError`

  
  *   :py:class:`DataPipeline.Client.exceptions.InvalidRequestException`

  
  *   :py:class:`DataPipeline.Client.exceptions.PipelineNotFoundException`

  
  *   :py:class:`DataPipeline.Client.exceptions.PipelineDeletedException`

  