Table of Contents

Search

  1. Preface
  2. Informatica Intelligent Cloud Services REST API
  3. Platform REST API version 2 resources
  4. Platform REST API version 3 resources
  5. Data Integration REST API
  6. File Ingestion and Replication REST API
  7. Streaming Ingestion and Replication REST API
  8. Model Serve REST API
  9. RunAJob utility
  10. ParamSetCli utility
  11. REST API codes
  12. REST API resource quick references

REST API Reference

REST API Reference

Pulling objects

Pulling objects

Use the pull resource to retrieve objects such as assets and projects from your repository and load them into your organization.
When you pull a project, all of the source-controlled assets in the project and the project's folders are included in the pull. If the assets already exist in the target organization, their contents are overwritten to match the assets' state at the specified commit hash. If the project and the project's folders already exist in the target organization, they're reused.
You can pull objects at the global repository or project level. The objects that you pull determine which repository is used. For example, if Project A is linked to Repo1, the pull is from Repo1. If Project B isn't linked to a project-level repository, the pull will be done from the global repository.
Dependent objects that are located in other projects are not included in the pull. If dependent objects are missing in the pull request, the response includes an error message that lists the missing dependent objects.
If an asset's connections, runtime environments, or schedule exist in the target organization, they're reused. If you want an asset to use a different connection or runtime environment in the target organization, you can map the connection or runtime environment to a connection or runtime environment in your organization using the objectSpecification object.
For example, an asset uses the SecureAgent_dev runtime environment in the dev organization and uses the SecureAgent_test runtime environment in the test organization. You can use the objectSpecification object to map the SecureAgent_dev runtime environment to the SecureAgent_test runtime environment.
Informatica recommends that you include less than 1000 objects in a pull request.

POST request

To load the latest version of objects from your repository to your organization, use the following URI:
/public/core/v3/pull
You might receive a response to the POST request before the pull operation completes.
You can include the following fields in the request:
Field
Type
Required
Description
commitHash
String
Yes
Unique commit hash.
The commit hash is validated during the operation.
If you use a GitHub repository, you can include a partial hash in the request by sending the first 7 characters of the hash instead of the full string.
relaxObjectSpecificationValidation
Boolean
No
Whether the sources specified in the objectSpecification object must exist in the assets being pulled. Use one of the following values:
  • true. The objectSpecification objects are ignored if the sources don't exist in the assets that are included in the pull.
  • false. An error occurs when an objectSpecification source doesn't exist in the assets that are included in the pull.
Default is false.
objects
List<Object>
Yes
Contains a list of all the objects to be pulled.
path
List<String>
Yes, if ID is not included
Include in the objects object.
Full path of the object to be pulled.
id
String
Yes, if path is not included
Include in the objects object.
ID of the object.
type
String
-
Include in the objects object.
Type of asset to be pulled. If not specified, default is project.
Can be one of the following types:
  • DTEMPLATE. Mapping.
  • MTT. Mapping task.
  • DSS. Synchronization task.
  • DMASK. Masking task.
  • DRS. Replication task.
  • DMAPPLET. Mapplet created in
    Data Integration
    .
  • MAPPLET. PowerCenter mapplet.
  • BSERVICE. Business service definition.
  • HSCHEMA. Hierarchical schema.
  • PCS. PowerCenter task.
  • FWCONFIG. Fixed width configuration.
  • CUSTOMSOURCE. Saved query.
  • MI_TASK. Mass ingestion task.
  • WORKFLOW. Linear taskflow.
  • TASKFLOW
objectSpecification
List<Object>
-
Object specification for connection and runtime environments.
source
Object
Yes, if objectSpecification object is included and relaxObjectSpecificationValidation value is not true
Include in the objectSpecification object.
Contains information about the source object.
path
List<String>
Yes, if objectSpecification object is included
Include in the source object.
Full path of the connection or runtime environment in the repository.
type
String
Yes, if objectSpecification object is included
Include in the source object.
Asset type. Use one of the following values:
  • Connection
  • AgentGroup
target
Object
Yes, if objectSpecification object is included
Include in the objectSpecification object.
Contains information about the target object.
Include path and type or include ID. If path, type, and ID are included, ID takes precedence.
path
List<String>
Yes, if ID is not included
Include in the target object.
Path of the connection or runtime environment that is being mapped.
Use with type.
type
String
Yes, if ID is not included
Include in the target object.
Asset type.
Use with path.
Use one of the following values:
  • Connection
  • AgentGroup
id
String
Yes, if path and type are not included
Include in the target object.
ID of the target object.
additionalProviderFlags
Collection <complex type>
No
Additional object specifications.
Use key-value pairs to specify additional object specifications, such as in-out parameter values and sequence generator values.

POST response

If successful, a POST request returns the following information:
Field
Type
Description
pullActionId
String
ID for the pull operation.
status
Object
Status of the pull operation.
state
String
Returned in the status object.
Initial state of the pull operation. For a successful request, value will always be NOT_STARTED.
To see the status after the operation begins, use the Getting the status of a source control operation resource.
message
String
Returned in the status object
Descriptive status message for the pull operation.

POST request examples for projects

You can request a pull operation for one or more assets or projects in a single POST request. To request a pull operation for multiple projects using the path field to specify the projects to pull, you might send a request that's similar to the following example:
POST <baseApiUrl>/public/core/v3/pull Content-Type: application/json Accept: application/json INFA-SESSION-ID: <sessionId> { "commitHash": "7c525831c247cf792f595d1663396d1ae2c85033", "objects": [ { "path": ["Project2"] }, { "path": ["Default"] } ] }
To request a pull operation for the projects using project IDs, you might send a request that's similar to the following example:
POST <baseApiUrl>/public/core/v3/pull Content-Type: application/json Accept: application/json INFA-SESSION-ID: <sessionId> { "commitHash": "7c525831c247cf792f595d1663396d1ae2c85033", "objects": [ { "id": "4gmWUVziA1qe7zXbyN1l6E" }, { "id": "4TjbmrAGrk2eal3DOwdIk8" } ] }

POST request examples for assets

You can request a pull operation for one or more assets in a POST request. To request a pull operation for an asset using the path field to specify the asset to pull, you might send a request that's similar to the following example:
POST <baseApiUrl>/public/core/v3/pull Content-Type: application/json Accept: application/json INFA-SESSION-ID: <sessionId> { "commitHash": "1013f61bf318758cccec08f2165f59bbbb41e8f0", "objects": [ { "path": ["Default","Test_Mapping"], "type": "DTEMPLATE" } ] }
To request a pull operation using the asset ID, you might send a request that's similar to the following example:
POST <baseApiUrl>/public/core/v3/pull Content-Type: application/json Accept: application/json INFA-SESSION-ID: <sessionId> { "commitHash": "1013f61bf318758cccec08f2165f59bbbb41e8f0", "objects": [ { "id": "6wLjSK4tS4rdjKq5uGuC0T" } ] }
To request a pull operation using the asset ID and include the connections, you might send a request that's similar to the following example:
POST <baseApiUrl>/public/core/v3/pull Content-Type: application/json Accept: application/json INFA-SESSION-ID: <sessionId> { "commitHash": "1013f61bf318758cccec08f2165f59bbbb41e8f0", "objects": [ { "id": "6wLjSK4tS4rdjKq5uGuC0T" } ], "objectSpecification":[ { "source": { "path":["ff"], "type":"Connection" }, "target": { "path":["target_connection"], "type":"Connection" } } ] }
To request a pull operation using the asset ID, the source runtime environment, and the target ID, you might send a request that's similar to the following example:
POST <baseApiUrl>/public/core/v3/pull Content-Type: application/json Accept: application/json INFA-SESSION-ID: <sessionId> { "commitHash": "1013f61bf318758cccec08f2165f59bbbb41e8f0", "objects": [ { "id": "6wLjSK4tS4rdjKq5uGuC0T" } ], "objectSpecification":[ { "source": { "path":["USW1MJ02YNFB"], "type":"AgentGroup" }, "target": { "id":"7UPtJVbrESTj0VkCBYAcUv" } } ] }

POST response example

For a successful POST request, the POST response might look like the following example:
{ "pullActionId": "awRrziMMWXol7i42aTm1ih", "status": { "state": "NOT_STARTED", "message": "Initialized" } }

0 COMMENTS

We’d like to hear from you!