REST API Reference > Platform REST API version 3 resources > Exporting objects
  

Exporting objects

Use this resource with the import resource to migrate objects from one organization to another.
Exporting objects includes a series of requests and responses. The end result is a ZIP file that contains the exported objects. To export objects, you perform the following tasks:
  1. 1Log in to the source organization.
  2. 2Send an objects GET request with query parameters to get a list of objects to export. Or, if you already know which objects you want to export, send a lookup GET request to get the object IDs for the objects that you want to export.
  3. Informatica Intelligent Cloud Services returns the object IDs.
    See Objects and Lookup.
  4. 3Send an export POST request to start the export job, using the object IDs returned in the objects or lookup response.
  5. Informatica Intelligent Cloud Services returns the job ID for the export job.
    See Starting an export job.
  6. 4Send an export GET request to get the status of the export job, using the export job ID for the export package.
  7. Informatica Intelligent Cloud Services returns the job ID and status. The response can also include a list of the objects in the export package.
    See Getting the export job status.
  8. 5Send an export GET request to download the export package.
  9. Informatica Intelligent Cloud Services returns the export package in a ZIP file.
    See Downloading an export package.
Note: This resource uses a dynamic rate limit. When the system experiences a large volume or size of requests, responses might be slow or fail with the error message, "too many requests."

Starting an export job

Use a POST request to start an export job.

POST request

You can export objects such as assets, connections, Secure Agent configurations, and schedules. To specify the objects to export and start the export job, use the following URI:
/public/core/v3/export
Include the following fields in the request:
Field
Type
Required
Description
name
String
Name of the export job. If a name is not specified, the default name will be used in the following format: job-<currentTimeInMilliseconds>
objects
Collection <complex type>
Yes
Object IDs for objects to export.
Note: Informatica recommends that you include no more than 1000 objects in an export file.
id
String
Yes
Included in the objects object.
Global unique identifier for the export object. This can be a project, folder, or asset ID.
includeDependencies
Boolean
Included in the objects object.
Determines whether to include dependent objects for the assets in the export.
Default is True.

POST request example

You might use a request similar to the following example:
POST <baseApiUrl>/public/core/v3/export
Content-Type: application/json
Accept: application/json
INFA-SESSION-ID: <sessionId>

{
"name" : "testJob1",
"objects" : [
{
"id": "l7bgB85m5oGiXObDxwnvK9",
"includeDependencies" : true
},
{
"id": "1MW0GDAE1sFgnvWkvom7mK",
"includeDependencies" : false
},
{
"id": "iIVBNZSpUKFg4N6g2PKUox"
}
]
}

POST response

If successful, returns the following information for the export job:
Field
Type
Description
id
String
ID of the export job.
createTime
String
Time export package was created.
updateTime
String
Time export package was last updated.
name
String
Name of the import job.
startTime
String
Time the export job was started.
endTime
String
Time the export job ended.
status
Complex type
Status of the export.
state
String
Returned in the status object.
Status of the export job, such as In Progress, Success, or Failed.
message
String
Returned in the status object.
Export job status message.
objects
Collection
Collection of objects. Returns null if blank.

POST response examples

If successful, you might receive a response similar to the following example:
{
"id": "7evG9CokA1whk8ehF3opKM",
"createTime": "2017-10-26T08:15:48.502Z",
"updateTime": "2017-10-26T08:15:48.502Z",
"name": "testJob1",
"startTime": "2017-10-26T08:15:48.501Z",
"endTime": null,
"status": {
"state": "IN_PROGRESS",
"message": "In Progress"
},
"objects": null
}
If you receive an error, you might see a response similar to the following example:
{
"error": {
"code": "MigrationSvc_034",
"message": "Invalid object id/s [[242973wgfscbwasd23]]. Object resolution failed.",
"requestId": "2ataXVlgw3ydI1Yb2MA4sq"
}
}

Getting the export job status

Use a GET request to get the status of an export job or download an export job log.

GET request

To obtain status of the export job, use one of the following URIs:
Continue polling the request until the state is SUCCESSFUL.
To download the export job log, use the following URI:
/public/core/v3/export/<id>/log

GET response

A request for an export job log returns the log in a text file.
A request for status returns the following export status information:
Field
Type
Description
id
String
ID of the export job.
createTime
String
Time the export job was created.
updateTime
String
Last time the export job was updated.
name
String
Name of the export job.
startTime
String
Start time of the export job.
endTime
String
End time of the export job.
status
Complex type
Status of the export job.
state
String
Returned in the status object.
State of the export job, such as In Progress, Success, or Failed.
message
String
Returned in the status object.
Export job status message.
objects
Collection
Objects in the export job. Returned only when the URI includes ?expand=objects
id
String
Returned in the objects object.
Global unique identifier for the export object requested.
name
String
Returned in the objects object.
Name of the object to export.
path
String
Returned in the objects object.
Complete path of the object to export.
description
String
Returned in the objects object.
Description of the object to export.
status
Complex type
Returned in the objects object.
Export status of the individual object.
state
String
Returned in the status object.
Export state of the individual object, such as IN PROGRESS, SUCCESS, or FAILED.
message
String
Returned in the status object.
Export status message for the individual object.

GET response example

If your request for an export job's status is successful, you might receive a response similar to the following example:
{
"id": "7evG9CokA1whk8ehF3opKM",
"createTime": "2017-10-26T08:15:48.502Z",
"updateTime": "2017-10-26T08:15:48.502Z",
"name": "testJob1",
"startTime": "2017-10-26T08:15:48.501Z",
"endTime": null,
"status": {
"state": "IN_PROGRESS",
"message": "In Progress."
},
"objects": null
}
If your request included import status for individual objects, a successful response might be similar to the following example:
{
"id": "7evG9CokA1whk8ehF3opKM",
"createTime": "2017-10-26T08:15:49.000Z",
"updateTime": "2017-10-26T08:15:50.000Z",
"name": "testJob1",
"startTime": "2017-10-26T08:15:49.000Z",
"endTime": "2017-10-26T08:15:50.000Z",
"status": {
"state": "SUCCESSFUL",
"message": "Export completed successfully."
},
"objects": [
{
"id": "1MW0GDAE1sFgnvWkvom7mK",
"name": "Linear Taskflow",
"path": "/ICS Taskflow",
"type": "SAAS_LINEAR_TASKFLOW",
"description": null,
"status": {
"state": "SUCCESSFUL",
"message": null
}
},
{
"id": "1SuZ9Gf8LtphrJn9EdHCod",
"name": "SQL Server",
"path": "/DSS",
"type": "Folder",
"description": "",
"status": {
"state": "SUCCESSFUL",
"message": null
}
},
{
"id": "1Uf9PTj6kTjbsVYMk55OC6",
"name": "Synchronization Task Multi Source",
"path": "/Default/SQL Server",
"type": "SAAS_DSS",
"description": "",
"status": {
"state": "SUCCESSFUL",
"message": null
}
},
{
"id": "2UL9ZO9Z3OJeuxbL2cYbaX",
"name": "Synchronization Task Simple Filter",
"path": "/Default/SQL Server",
"type": "SAAS_DSS",
"description": "",
"status": {
"state": "SUCCESSFUL",
"message": null
}
},
{
"id": "31SzqpeEEKacy7OaXXCfaD",
"name": "Synchronization Task Multi Source",
"path": "/DSS/SQL Server",
"type": "SAAS_DSS",
"description": "",
"status": {
"state": "SUCCESSFUL",
"message": null
}
},
{
"id": "5FA0DnMzeuDbYZnn3hdto9",
"name": "Default",
"path": "/",
"type": "Project",
"description": "Auto-generated Default Project",
"status": {
"state": "SUCCESSFUL",
"message": null
}
},
{
"id": "5V5VpaoJGTNkWCB2f2t4MG",
"name": "Synchronization Task Simple Filter",
"path": "/DSS/SQL Server",
"type": "SAAS_DSS",
"description": "",
"status": {
"state": "SUCCESSFUL",
"message": null
}
},
{
"id": "7udJJF48H5Iizzry8gjUAb",
"name": "SQL Server",
"path": "/Default",
"type": "Folder",
"description": "",
"status": {
"state": "SUCCESSFUL",
"message": null
}
},
{
"id": "fIQLvhNnsqBjXKNfjyZFaH",
"name": "ICS Taskflow",
"path": "/",
"type": "Project",
"description": "",
"status": {
"state": "SUCCESSFUL",
"message": null
}
},
{
"id": "hGrgtrajWMUjNIsnLKQCAi",
"name": "SQL Server Linux",
"path": null,
"type": "SAAS_CONNECTION",
"description": null,
"status": {
"state": "SUCCESSFUL",
"message": null
}
},
{
"id": "iIVBNZSpUKFg4N6g2PKUox",
"name": "abc_map",
"path": "/Default",
"type": "MAPPING",
"description": "",
"status": {
"state": "SUCCESSFUL",
"message": null
}
},
{
"id": "l7bgB85m5oGiXObDxwnvK9",
"name": "DSS",
"path": "/",
"type": "Project",
"description": "",
"status": {
"state": "SUCCESSFUL",
"message": null
}
},
{
"id": "lOqsFQE4OSWeyg77AeWwK2",
"name": "Linux",
"path": null,
"type": "SAAS_RUNTIME_ENVIRONMENT",
"description": null,
"status": {
"state": "SUCCESSFUL",
"message": null
}
}
]
}
If you requested an export job log, the contents of the text file might be similar to the following example:
> OIE_002 INFO 2019-02-05T22:50:08.788Z Starting export operation.
Execution Client: API
Job Name: m_RegionTotalNew-1549407002393
Organization: infa2.doc
RequestId: iklHoZTokKAiNO95Cw9NG3
User: janer2
> OIE_004 INFO 2019-02-05T22:50:09.042Z Successfully exported object [/SYS/_SYSTEM_PROJECT] of type [Project] id [5UrdDrgV5yKerYgtJAA4IU]> OIE_004 INFO 2019-02-05T22:50:09.042Z Successfully exported object [/Explore/Accounts] of type [Project] id [8Uyq1wiZ9lye2Sou5OCqOa]
> OIE_004 INFO 2019-02-05T22:50:09.126Z Successfully exported object [/SYS/_SYSTEM_FOLDER] of type [Folder] id [b98UuC0ADGEkXxF9EIlUCZ]
> OIE_004 INFO 2019-02-05T22:50:09.126Z Successfully exported object [/Explore/Accounts/February2018] of type [Folder] id [cojSZpHcqcafFy6YkCBgIl]
> OIE_004 INFO 2019-02-05T22:50:09.354Z Successfully exported object [/SYS/TMS26W0864] of type [SAAS_RUNTIME_ENVIRONMENT] id [6TKTNZ3wfIIjV5yBTJmYWO]
> OIE_004 INFO 2019-02-05T22:50:09.504Z Successfully exported object [/SYS/ff] of type [SAAS_CONNECTION] id [7GgahDJzE9GbYb75xQ35GM]
> OIE_004 INFO 2019-02-05T22:50:09.765Z Successfully exported object [/Explore/Accounts/February2018/m_RegionTotalNew] of type [MAPPING] id [4LiKwGKgegAixI2awqWgK1]
> OIE_003 INFO 2019-02-05T22:50:09.843Z Finished export operation.
Job Name: m_RegionTotalNew-1549407002393
Start Time: 2019-02-05T22:50:03.000Z
End Time: 2019-02-05T22:50:09.765Z
Started by: janer2
Start Method: API
Source Organization: infa.doc
Status: SUCCESSFUL

Downloading an export package

Use a GET request to download an export package.

GET request

To download the export package, use the following URI:
/public/core/v3/export/<id>/package
The <id> is the export job ID.

GET response

If successful, you receive the ZIP stream in the response body and the response type will be application/zip.
If unsuccessful, you might receive a response similar to the following example:
{
"error": {
"code": "MigrationSvc_017",
"message": "Export request with identifier [asdasduguyvasd8347] doesn't exist.",
"requestId": "2ataXVlgw3ydI1Yb2MA4sq"
}
}