imports
POST
https://hermeticor.com /v1/events/backfill Upload a CSV of historic events (event, occurred_at, email|phone|external_id, value?, currency?, properties?); progress via GET /v1/profiles/bulk/:id
Code samples
cURL
curl -X POST "https://hermeticor.com/v1/events/backfill" \
-H "Authorization: Bearer $HERMETICOR_API_KEY"TypeScript
Python
Go
PHP
Ruby
Java
Responses
202 Default Response
Example
{
"id": "string",
"kind": "bulk",
"op": "string",
"status": "queued",
"progress": {
"total": 0,
"processed": 0,
"failed": 0
},
"error": "string",
"downloadUrl": "string",
"failures": [
{
"profileId": "string",
"message": "string"
}
],
"createdAt": "2024-01-01T00:00:00Z",
"finishedAt": "2024-01-01T00:00:00Z"
}Schema
idstringrequiredkindstringrequiredopstringrequiredstatusstringrequiredprogressobjectrequiredShow child parameters
totalintegerrequiredprocessedintegerrequiredfailedintegerrequirederrorstringrequireddownloadUrlstringfailuresFailuresItem[]Show child parameters
profileIdstringrequiredmessagestringrequiredcreatedAtstringrequiredfinishedAtstringrequired4XX Default Response
Example
{
"error": {
"code": "string",
"message": "string",
"details": {}
}
}Schema
errorobjectrequiredShow child parameters
codestringrequiredmessagestringrequireddetailsobjectGET
https://hermeticor.com /v1/imports Parameters
limitintegerquerycursorstringqueryCode samples
cURL
curl -X GET "https://hermeticor.com/v1/imports" \
-H "Authorization: Bearer $HERMETICOR_API_KEY"TypeScript
Python
Go
PHP
Ruby
Java
Responses
200 Default Response
Example
{
"items": [
{
"id": "string",
"filename": "string",
"status": "uploaded",
"mapping": {},
"listId": "string",
"tags": [
"string"
],
"consentAssertion": {
"channel": "email",
"purpose": "marketing",
"sourceText": "string",
"attestedBy": "string"
},
"verifyEmail": true,
"listIds": [],
"updateExisting": true,
"topicId": null,
"stats": {
"total": 0,
"created": 0,
"updated": 0,
"errors": 0,
"suppressed": 0,
"consentSkipped": 0,
"consentGranted": 0,
"skipped": 0,
"blocked": 0,
"topicSubscribed": 0,
"topicUnsubscribed": 0
},
"progress": {
"rowsRead": 0,
"processed": 0,
"errors": 0
},
"error": "string",
"errorsUrl": "string",
"createdAt": "2024-01-01T00:00:00Z",
"finishedAt": "2024-01-01T00:00:00Z"
}
],
"nextCursor": "string"
}Schema
itemsPostV1ImportsResponse[]requiredShow child parameters
idstringrequiredfilenamestringrequiredstatusstringrequiredmappingobjectrequiredlistIdstringrequiredtagsstring[]requiredconsentAssertionobjectrequiredShow child parameters
channelstringrequiredpurposestringrequiredsourceTextstringrequiredattestedBystringrequiredverifyEmailbooleanrequiredlistIdsstring[]requiredupdateExistingbooleanrequiredtopicIdstringrequiredstatsobjectrequiredShow child parameters
totalintegerrequiredcreatedintegerrequiredupdatedintegerrequirederrorsintegerrequiredsuppressedintegerrequiredconsentSkippedintegerrequiredconsentGrantedintegerrequiredskippedintegerrequiredblockedintegerrequiredtopicSubscribedintegerrequiredtopicUnsubscribedintegerrequiredprogressobjectrequiredShow child parameters
rowsReadintegerrequiredprocessedintegerrequirederrorsintegerrequirederrorstringrequirederrorsUrlstringcreatedAtstringrequiredfinishedAtstringrequirednextCursorstringrequiredPOST
https://hermeticor.com /v1/imports Upload a CSV, an Excel .xlsx (first sheet) or a ZIP containing a CSV (multipart: file + mapping, delimiter?, listId?, tags?, consentAssertion?, verifyEmail?, defaultCountry?)
Code samples
cURL
curl -X POST "https://hermeticor.com/v1/imports" \
-H "Authorization: Bearer $HERMETICOR_API_KEY"TypeScript
Python
Go
PHP
Ruby
Java
Responses
201 Default Response
Example
{
"id": "string",
"filename": "string",
"status": "uploaded",
"mapping": {},
"listId": "string",
"tags": [
"string"
],
"consentAssertion": {
"channel": "email",
"purpose": "marketing",
"sourceText": "string",
"attestedBy": "string"
},
"verifyEmail": true,
"listIds": [],
"updateExisting": true,
"topicId": null,
"stats": {
"total": 0,
"created": 0,
"updated": 0,
"errors": 0,
"suppressed": 0,
"consentSkipped": 0,
"consentGranted": 0,
"skipped": 0,
"blocked": 0,
"topicSubscribed": 0,
"topicUnsubscribed": 0
},
"progress": {
"rowsRead": 0,
"processed": 0,
"errors": 0
},
"error": "string",
"errorsUrl": "string",
"createdAt": "2024-01-01T00:00:00Z",
"finishedAt": "2024-01-01T00:00:00Z"
}Schema
idstringrequiredfilenamestringrequiredstatusstringrequiredmappingobjectrequiredlistIdstringrequiredtagsstring[]requiredconsentAssertionobjectrequiredShow child parameters
channelstringrequiredpurposestringrequiredsourceTextstringrequiredattestedBystringrequiredverifyEmailbooleanrequiredlistIdsstring[]requiredupdateExistingbooleanrequiredtopicIdstringrequiredstatsobjectrequiredShow child parameters
totalintegerrequiredcreatedintegerrequiredupdatedintegerrequirederrorsintegerrequiredsuppressedintegerrequiredconsentSkippedintegerrequiredconsentGrantedintegerrequiredskippedintegerrequiredblockedintegerrequiredtopicSubscribedintegerrequiredtopicUnsubscribedintegerrequiredprogressobjectrequiredShow child parameters
rowsReadintegerrequiredprocessedintegerrequirederrorsintegerrequirederrorstringrequirederrorsUrlstringcreatedAtstringrequiredfinishedAtstringrequiredGET
https://hermeticor.com /v1/imports/{id} Parameters
idstringpathrequiredCode samples
cURL
curl -X GET "https://hermeticor.com/v1/imports/{id}" \
-H "Authorization: Bearer $HERMETICOR_API_KEY"TypeScript
Python
Go
PHP
Ruby
Java
Responses
GET
https://hermeticor.com /v1/imports/{id}/preview First 20 rows as they would be imported, with per-row errors
Parameters
idstringpathrequiredCode samples
cURL
curl -X GET "https://hermeticor.com/v1/imports/{id}/preview" \
-H "Authorization: Bearer $HERMETICOR_API_KEY"TypeScript
Python
Go
PHP
Ruby
Java
Responses
200 Default Response
Example
{
"headers": [
"string"
],
"rows": [
{
"row": 0,
"identifiers": {},
"standard": {},
"attributes": {},
"errors": [
"string"
],
"warnings": [
"string"
]
}
]
}Schema
headersstring[]requiredrowsobject[]requiredShow child parameters
rowintegerrequiredidentifiersobjectrequiredstandardobjectrequiredattributesobjectrequirederrorsstring[]requiredwarningsstring[]requiredPOST
https://hermeticor.com /v1/imports/{id}/append Add more CSV rows (no header line) to an upload that has not been committed yet; send big files in several calls, then commit
Parameters
idstringpathrequiredRequest body
application/json
csvstringrequired{
"csv": "string"
}Code samples
cURL
curl -X POST "https://hermeticor.com/v1/imports/{id}/append" \
-H "Authorization: Bearer $HERMETICOR_API_KEY" \
-H "Content-Type: application/json" \
-d '{"csv":"string"}'TypeScript
Python
Go
PHP
Ruby
Java
Responses
POST
https://hermeticor.com /v1/imports/{id}/commit Parameters
idstringpathrequiredCode samples
cURL
curl -X POST "https://hermeticor.com/v1/imports/{id}/commit" \
-H "Authorization: Bearer $HERMETICOR_API_KEY"TypeScript
Python
Go
PHP
Ruby
Java
Responses
Updated