Start Data Export Job
1 min
POST
https://api.us1.odp.optimizely.com/v3/exports
Body Parameters
- bodyDataExportRequestExamplesStart Export Job (Filtered):
{ "format": "csv", "delimiter": "comma", "select": { "object": "events", "fields": [ "product.name" ], "filter": { "field": "product.name", "operator": "=", "value": "%shoe%" }, "sorts": [ { "field": "product.name", "order": "asc" } ] } }Start Export Job (Unfiltered):{ "objects": [ "products" ], "format": "csv", "delimiter": "comma" }- formatstring<csv | parquet>requiredDescriptionAllowedcsvparquet
- delimiterstring<tab | comma | pipe>requiredDescriptionAllowedtabcommapipe
- objectsstring[]Description
- selectSelect
- objectstringrequiredExampleDescription
- fieldsstring[]requiredExample
[ "product.name" ]
Description - filtermap<string, object>Example
{ "field": "product.name", "operator": "=", "value": "%shoe%" }Description - sortsSort[]Description
Responses
200
- ExportJobStatus
- idstringrequiredExample
- pathstringrequiredExample
- statestring<pending | running | completed | completed_with_errors>requiredExampleAllowedpendingrunningcompletedcompleted_with_errors
- exportRowCountinteger<int64>ExampleFormatint64
- exportTypestringExample
- requestedAtstring<date-time>requiredExampleFormatdate-time
- startedAtstring<date-time>Formatdate-time
- endedAtstring<date-time>Formatdate-time
- presignedUrlsstring[]Example
[ "https://s3.amazonaws.com/abc123/data-exports/abc123/has_email_0_0_0.csv.gz?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Date=20250403T162222Z&X-Amz-SignedHeaders=host&X-Amz-Expires=3599&X-Amz-Credential=abc123%2Fus-east-1%2Fs3%2Faws4_request&X-Amz-Signature=abc123" ]
- activeboolean
- formatstring<csv | parquet>Allowedcsvparquet
- runningboolean
- terminatedboolean
- delimiterstring<tab | comma | pipe>Allowedtabcommapipe
- routeBasestring
- trackerIdstring
- completeboolean
- pendingboolean
- childErrorsstring[]
- detailExportDefinition
- idstringrequiredExample
- formatstring<csv | parquet>requiredExampleAllowedcsvparquet
- delimiterstring<tab | comma | pipe>ExampleAllowedtabcommapipe
- selectSelect
- objectstringrequiredExampleDescription
- fieldsstring[]requiredExample
[ "product.name" ]
Description - filtermap<string, object>Example
{ "field": "product.name", "operator": "=", "value": "%shoe%" }Description - sortsSort[]Description
- exportTypestringExample
- objectsstring[]Example
[ "string" ]
400
- stringExample
{ "title": "Bad Request", "status": 400, "timestamp": "2018-09-11T02:07:10.000Z", "detail": { "invalids": [ { "field": "delimiter", "reason": "Unrecognized delimiter. Valid options are \"comma\", \"tab\", or \"pipe\"." } ] } }
403
- stringExample
{ "title": "Forbidden", "status": 403, "timestamp": "2018-09-11T02:07:10.000Z", "detail": { "message": "Insufficient privileges to access this resource." } }
404
- stringExample
{ "title": "Not Found", "status": 404, "timestamp": "2018-09-11T02:07:10.000Z", "detail": { "message": "Unable to locate field products.unknown_field." } }
422
- stringExample
{ "title": "Unprocessable Entity", "status": 422, "timestamp": "2018-09-11T02:07:10.000Z", "detail": { "message": "Unable to process request. The following object(s) are currently being exported: events." } }
curl
curl --request POST \
--url https://api.us1.odp.optimizely.com/v3/exports \
--header 'accept: application/json' \
--header 'content-type: application/json' \
--data '{
"format": "",
"delimiter": "",
"select": {
"object": "events",
"fields": []
}
}'javascript
var myHeaders = new Headers();
myHeaders.append("accept", "application/json");
myHeaders.append("content-type", "application/json");
var raw = JSON.stringify({
"format": "",
"delimiter": "",
"select": {
"object": "events",
"fields": []
}
});
var requestOptions = {
method: 'POST',
headers: myHeaders,
body: raw,
redirect: 'follow'
};
fetch("https://api.us1.odp.optimizely.com/v3/exports", requestOptions)
.then(response => response.text())
.then(result => console.log(result))
.catch(error => console.log('error', error));ruby
require "uri"
require "json"
require "net/http"
url = URI("https://api.us1.odp.optimizely.com/v3/exports")
https = Net::HTTP.new(url.host, url.port)
https.use_ssl = true
request = Net::HTTP::Post.new(url)
request["accept"] = "application/json"
request["content-type"] = "application/json"
request.body = JSON.dump({
"format": "",
"delimiter": "",
"select": {
"object": "events",
"fields": []
}
})
response = https.request(request)
puts response.read_body
python
import requests
import json
url = "https://api.us1.odp.optimizely.com/v3/exports"
payload = json.dumps({
"format": "",
"delimiter": "",
"select": {
"object": "events",
"fields": []
}
})
headers = {
'accept': 'application/json',
'content-type': 'application/json'
}
response = requests.request("POST", url, headers=headers, data=payload)
print(response.text)
200
// OK
{
"id": "3aab9524-5248-45f9-8102-0399872a921e",
"path": "s3://zaius-outgoing/kIFB_X1VG2gf6caBn8LHtg/data-exports/3aab9524-5248-45f9-8102-0399872a921e",
"state": "pending",
"exportRowCount": 14,
"exportType": "data",
"requestedAt": "2018-09-11T02:07:10.000Z",
"startedAt": "",
"endedAt": "",
"presignedUrls": [
"https://s3.amazonaws.com/abc123/data-exports/abc123/has_email_0_0_0.csv.gz?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Date=20250403T162222Z&X-Amz-SignedHeaders=host&X-Amz-Expires=3599&X-Amz-Credential=abc123%2Fus-east-1%2Fs3%2Faws4_request&X-Amz-Signature=abc123"
],
"active": false,
"format": "",
"running": false,
"terminated": false,
"delimiter": "",
"routeBase": "",
"trackerId": "",
"complete": false,
"pending": false,
"childErrors": [
""
],
"detail": {
"id": "3aab9524-5248-45f9-8102-0399872a921e",
"format": "csv",
"delimiter": "comma",
"select": {
"object": "events",
"fields": [
"[\"product.name\"]"
],
"filter": "{\"field\":\"product.name\",\"operator\":\"=\",\"value\":\"%shoe%\"}",
"sorts": [
""
]
},
"exportType": "data",
"objects": [
"[\"string\"]"
]
}
}400
// Bad Request
"{\"title\":\"Bad Request\",\"status\":400,\"timestamp\":\"2018-09-11T02:07:10.000Z\",\"detail\":{\"invalids\":[{\"field\":\"delimiter\",\"reason\":\"Unrecognized delimiter. Valid options are \\\"comma\\\", \\\"tab\\\", or \\\"pipe\\\".\"}]}}"403
// Forbidden
"{\"title\":\"Forbidden\",\"status\":403,\"timestamp\":\"2018-09-11T02:07:10.000Z\",\"detail\":{\"message\":\"Insufficient privileges to access this resource.\"}}"404
// Not Found
"{\"title\":\"Not Found\",\"status\":404,\"timestamp\":\"2018-09-11T02:07:10.000Z\",\"detail\":{\"message\":\"Unable to locate field products.unknown_field.\"}}"422
// Unprocessable Entity
"{\"title\":\"Unprocessable Entity\",\"status\":422,\"timestamp\":\"2018-09-11T02:07:10.000Z\",\"detail\":{\"message\":\"Unable to process request. The following object(s) are currently being exported: events.\"}}"