profiles
POST
https://hermeticor.com /v1/profiles/{id}/files/{key} Upload a file (multipart field "file": image, PDF or MP4, up to 25 MB) into a profile property of type file; the property then holds the hosted URL
Parameters
idstringpathrequiredkeystringpathrequiredCode samples
cURL
curl -X POST "https://hermeticor.com/v1/profiles/{id}/files/{key}" \
-H "Authorization: Bearer $HERMETICOR_API_KEY"TypeScript
Python
Go
PHP
Ruby
Java
Responses
200 Default Response
Example
{
"key": "string",
"url": "string",
"filename": "string"
}Schema
keystringrequiredurlstringrequiredfilenamestringrequired4XX Default Response
Example
{
"error": {
"code": "string",
"message": "string",
"details": {}
}
}Schema
errorobjectrequiredShow child parameters
codestringrequiredmessagestringrequireddetailsobjectGET
https://hermeticor.com /v1/profiles/{id}/pgp-key The contact's PGP public key, if any (email to them is encrypted while it is set)
Parameters
idstringpathrequiredCode samples
cURL
curl -X GET "https://hermeticor.com/v1/profiles/{id}/pgp-key" \
-H "Authorization: Bearer $HERMETICOR_API_KEY"TypeScript
Python
Go
PHP
Ruby
Java
Responses
200 Default Response
Example
{
"profileId": "string",
"fingerprint": "string",
"userIds": [
"string"
],
"createdAt": "2024-01-01T00:00:00Z"
}Schema
profileIdstringrequiredfingerprintstringrequireduserIdsstring[]requiredcreatedAtstringrequiredPUT
https://hermeticor.com /v1/profiles/{id}/pgp-key Set the contact's PGP public key; private keys are refused
Parameters
idstringpathrequiredRequest body
application/json
publicKeystringrequired{
"publicKey": "string"
}Code samples
cURL
curl -X PUT "https://hermeticor.com/v1/profiles/{id}/pgp-key" \
-H "Authorization: Bearer $HERMETICOR_API_KEY" \
-H "Content-Type: application/json" \
-d '{"publicKey":"string"}'TypeScript
Python
Go
PHP
Ruby
Java
Responses
DELETE
https://hermeticor.com /v1/profiles/{id}/pgp-key Parameters
idstringpathrequiredCode samples
cURL
curl -X DELETE "https://hermeticor.com/v1/profiles/{id}/pgp-key" \
-H "Authorization: Bearer $HERMETICOR_API_KEY"TypeScript
Python
Go
PHP
Ruby
Java
Responses
200 Default Response
Example
{
"ok": true
}Schema
okbooleanrequiredPOST
https://hermeticor.com /v1/profiles/batch/{op} Synchronous batch of up to 100 contacts: op is create (fails if it exists), update (fails if unknown), upsert or archive. One result per row.
Parameters
opstringpathrequiredRequest body
application/json
itemsobject[]requiredShow child parameters
identifiersobjectrequiredShow child parameters
emailstringphonestringexternalIdstringanonymousIdstringstandardobjectShow child parameters
firstNamestringlastNamestringtimezonestringlocalestringcountrystringcitystringregionstringlifecycleStagestringownerUserIdstringattributesobject{
"items": [
{
"identifiers": {
"email": "string",
"phone": "string",
"externalId": "string",
"anonymousId": "string"
},
"standard": {
"firstName": "string",
"lastName": "string",
"timezone": "string",
"locale": "string",
"country": "string",
"city": "string",
"region": "string",
"lifecycleStage": "string",
"ownerUserId": "string"
},
"attributes": {}
}
]
}Code samples
cURL
curl -X POST "https://hermeticor.com/v1/profiles/batch/{op}" \
-H "Authorization: Bearer $HERMETICOR_API_KEY" \
-H "Content-Type: application/json" \
-d '{"items":[{"identifiers":{"email":"string","phone":"string","externalId":"string","anonymousId":"string"},"standard":{"firstName":"string","lastName":"string","timezone":"string","locale":"string","country":"string","city":"string","region":"string","lifecycleStage":"string","ownerUserId":"string"},"attributes":{}}]}'TypeScript
Python
Go
PHP
Ruby
Java
Responses
200 Default Response
Example
{
"items": [
{
"index": 0,
"ok": true,
"profileId": "string",
"message": "string",
"result": "string"
}
],
"succeeded": 0,
"failed": 0
}Schema
itemsItemsItem167[]requiredShow child parameters
indexintegerrequiredokbooleanrequiredprofileIdstringrequiredmessagestringresultstringsucceededintegerrequiredfailedintegerrequiredPOST
https://hermeticor.com /v1/profiles/query Filter profiles with a typed where / orderBy / limit / offset (fields are an allowlist; read "fields" in the result)
Request body
application/json
whereWhereItem[]Show child parameters
fieldstringrequiredopstringrequiredvaluestring | number | boolean | string | number[]orderByobject[]Show child parameters
fieldstringrequireddirstringlimitintegeroffsetinteger{
"where": [],
"orderBy": [],
"limit": 50,
"offset": 0
}Code samples
cURL
curl -X POST "https://hermeticor.com/v1/profiles/query" \
-H "Authorization: Bearer $HERMETICOR_API_KEY" \
-H "Content-Type: application/json" \
-d '{"where":[],"orderBy":[],"limit":50,"offset":0}'TypeScript
Python
Go
PHP
Ruby
Java
Responses
200 Default Response
Example
{
"items": [
{}
],
"fields": [
"string"
],
"hasMore": true
}Schema
itemsobject[]requiredfieldsstring[]requiredhasMorebooleanrequiredGET
https://hermeticor.com /v1/notes/{id} A contact or company note by its id
Parameters
idstringpathrequiredCode samples
cURL
curl -X GET "https://hermeticor.com/v1/notes/{id}" \
-H "Authorization: Bearer $HERMETICOR_API_KEY"TypeScript
Python
Go
PHP
Ruby
Java
Responses
200 Default Response
Example
{
"id": "string",
"profileId": "string",
"authorId": "string",
"body": "string",
"kind": "note",
"at": "2024-01-01T00:00:00Z",
"updatedAt": "2024-01-01T00:00:00Z",
"resource": "contact"
}GetV1NotesByIdResponseVariant
idstringrequiredprofileIdstringrequiredauthorIdstringrequiredbodystringrequiredkindstringrequiredatstringrequiredupdatedAtstringresourcestringrequired{
"id": "string",
"profileId": "string",
"authorId": "string",
"body": "string",
"kind": "note",
"at": "2024-01-01T00:00:00Z",
"updatedAt": "2024-01-01T00:00:00Z",
"resource": "contact"
}GetV1NotesByIdResponseVariant2
idstringrequiredcompanyIdstringrequiredbodystringrequiredauthorIdstringrequiredcreatedAtstringrequiredresourcestringrequired{
"id": "string",
"companyId": "string",
"body": "string",
"authorId": "string",
"createdAt": "2024-01-01T00:00:00Z",
"resource": "company"
}PUT
https://hermeticor.com /v1/notes/{id} Edit a contact or company note
Parameters
idstringpathrequiredRequest body
application/json
bodystringrequired{
"body": "string"
}Code samples
cURL
curl -X PUT "https://hermeticor.com/v1/notes/{id}" \
-H "Authorization: Bearer $HERMETICOR_API_KEY" \
-H "Content-Type: application/json" \
-d '{"body":"string"}'TypeScript
Python
Go
PHP
Ruby
Java
Responses
DELETE
https://hermeticor.com /v1/notes/{id} Delete a contact or company note
Parameters
idstringpathrequiredCode samples
cURL
curl -X DELETE "https://hermeticor.com/v1/notes/{id}" \
-H "Authorization: Bearer $HERMETICOR_API_KEY"TypeScript
Python
Go
PHP
Ruby
Java
Responses
Updated