Create an export definition for a custom object

post

/api/bulk/2.0/customObjects/{parentId}/exports

Creates a new export definition for the specified custom object. See the tutorial for details on how to export data.

Request

Supported Media Types
Path Parameters
Body ()
Root Schema : CustomObjectExportIndividual
Type: object
Title: CustomObjectExportIndividual
Show Source
Nested Schema : fields
Type: object
Title: fields
Nested Schema : syncActions
Type: array
Title: syncActions
Show Source
Nested Schema : SyncAction
Type: object
Title: SyncAction
Show Source
  • Title: SyncActionType
    Default Value: add
    Allowed Values: [ "add", "remove", "setStatus" ]
  • Title: destination
  • Title: MemberStatus
    Default Value: bounced
    Allowed Values: [ "bounced", "subscribed", "unsubscribed", "active", "complete", "pending", "errored", "yes", "no", "invalid", "permission" ]
  • Title: updateAll
Back to Top

Response

Supported Media Types

201 Response

Success.
Body ()
Root Schema : CustomObjectExportIndividualResponse
Type: object
Title: CustomObjectExportIndividualResponse
Show Source
Nested Schema : fields
Type: object
Title: fields
Nested Schema : syncActions
Type: array
Title: syncActions
Show Source
Nested Schema : SyncAction
Type: object
Title: SyncAction
Show Source
  • Title: SyncActionType
    Default Value: add
    Allowed Values: [ "add", "remove", "setStatus" ]
  • Title: destination
  • Title: MemberStatus
    Default Value: bounced
    Allowed Values: [ "bounced", "subscribed", "unsubscribed", "active", "complete", "pending", "errored", "yes", "no", "invalid", "permission" ]
  • Title: updateAll

400 Response

Bad request. See Status Codes for information about other possible HTTP status codes.

401 Response

Unauthorized. See Status Codes for information about other possible HTTP status codes.

403 Response

Forbidden. See Status Codes for information about other possible HTTP status codes.

404 Response

The requested resource was not found. See Status Codes for information about other possible HTTP status codes.

409 Response

There was a conflict. See Status Codes for information about other possible HTTP status codes.

410 Response

The requested resource is no longer available. See Status Codes for information about other possible HTTP status codes.

412 Response

The resource you are attempting to delete has dependencies, and cannot be deleted. See Status Codes for information about other possible HTTP status codes.

413 Response

Storage space exceeded. See Status Codes for information about other possible HTTP status codes.

500 Response

The service has encountered an internal server error. See Status Codes for information about other possible HTTP status codes.

503 Response

There was a timeout processing the request. See Status Codes for information about other possible HTTP status codes.
Back to Top

Examples

The following examples demonstrate how to create a new custom object export definition using an HTTP request and cURL. For more information on requests, see API requests. See the tutorial for details on how to export data.

HTTP Request Example

Create a new "Hot Air Balloon" custom object (id #9) export:


POST /customObjects/9/exports
Content-Type: application/json 
			

Request body:


{
   "name": "Hot Air Balloon Export",
   "fields": {
	"inflated": "{{CustomObject[9].Field[99]}}",
        "ID": "{{CustomObject[9].ExternalId}}"
   }
}
			

Note:

Custom objects are unique to each Eloqua installation. Examples here will not map directly to your custom objects and their fields. You can obtain a list of all custom objects using the GET /api/bulk/2.0/customObjects endpoint. Once you have a custom object's id #, you can retrieve its field list by using the GET /api/bulk/2.0/customObjects/{id}/fields endpoint: this will allow you to create accurate import/export definitions.

Response:


{
    "name":"Hot Air Balloon Export",
    "fields":{
        "inflated":"{{CustomObject[9].Field[99]}}",
        "ID":"{{CustomObject[9].ExternalId}}"
    },
    "dataRetentionDuration":"PT12H",
    "uri":"/customObjects/9/exports/32091",
    "createdBy":"API.User",
    "createdAt":"2015-09-14T19:45:46.2078245Z",
    "updatedBy":"API.User",
    "updatedAt":"2015-09-14T19:45:46.2078245Z"
}
			

cURL Example

Here is the same example in cURL given an instance with the name APITest, username API.User, and POD of 3.


curl --user "APITest\API.User" --header "Content-Type: application/json" --request POST --data '{"name":"Hot Air Balloon Export","fields":{"inflated":"{{CustomObject[9].Field[99]}}","ID":"{{CustomObject[9].ExternalId}}"}}' https://secure.p03.eloqua.com/api/bulk/2.0/customObjects/9/exports
			

HTTP Request Example

Create a new custom object export that includes mapped contact and account fields:


POST /customObjects/9/exports
Content-Type: application/json 
			

Request body:

Note:

Custom object exports can include any Contact or Account field, which will be returned if the exported Custom Object record is mapped to a Contact or Account. Contact or Account fields must be added with the Custom Object root.

{
  "name": "Hot Air Balloon Export with Contact and Account Fields",
  "fields": {
    "inflated": "{{CustomObject[9].Field[99]}}",
    "ExternalId": "{{CustomObject[9].ExternalId}}",
    "ContactId": "{{CustomObject[9].Contact.Id}}",
    "ContactFirstName": "{{CustomObject[9].Contact.Field(C_FirstName)}}",
    "AccountId": "{{CustomObject[9].Account.Id}}",
    "AccountCompanyName": "{{CustomObject[9].Account.Field(M_CompanyName)}}"
  }
}
			

Response:


{
  "name": "Custom Object Export with Mapped fields",
  "fields": {
    "inflated": "{{CustomObject[9].Field[99]}}",
    "ExternalId": "{{CustomObject[9].ExternalId}}",
    "ContactId": "{{CustomObject[9].Contact.Id}}",
    "ContactFirstName": "{{CustomObject[9].Contact.Field(C_FirstName)}}",
    "AccountId": "{{CustomObject[9].Account.Id}}",
    "AccountCompanyName": "{{CustomObject[9].Account.Field(M_CompanyName)}}"
  },
  "dataRetentionDuration": "PT12H",
  "uri": "/customObjects/9/exports/83",
  "createdBy": "API.User",
  "createdAt": "2018-12-05T17:56:09.9810802Z",
  "updatedBy": "API.User",
  "updatedAt": "2018-12-05T17:56:09.9810802Z"
}
			

cURL Example

Here is the same example in cURL given an instance with the name APITest, username API.User, and POD of 3.


curl --user "APITest\API.User" --header "Content-Type: application/json" --request POST --data '{"name":"Hot Air Balloon Export with Contact and Account Fields","fields":{"inflated":"{{CustomObject[9].Field[99]}}","ExternalId":"{{CustomObject[9].ExternalId}}","ContactId":"{{CustomObject[9].Contact.Id}}","ContactFirstName":"{{CustomObject[9].Contact.Field(C_FirstName)}}","AccountId":"{{CustomObject[9].Account.Id}}","AccountCompanyName":"{{CustomObject[9].Account.Field(M_CompanyName)}}"}}' https://secure.p03.eloqua.com/api/bulk/2.0/customObjects/9/exports
			
Back to Top