agency
POST
https://hermeticor.com /v1/agency/groups Request body
application/json
namestringrequiredworkspaceIdsstring[]{
"name": "string",
"workspaceIds": []
}Code samples
cURL
curl -X POST "https://hermeticor.com/v1/agency/groups" \
-H "Content-Type: application/json" \
-d '{"name":"string","workspaceIds":[]}'TypeScript
Python
Go
PHP
Ruby
Java
Responses
201 Default Response
Example
{
"id": "string",
"name": "string",
"workspaceIds": [
"string"
],
"createdAt": "2024-01-01T00:00:00Z"
}Schema
idstringrequirednamestringrequiredworkspaceIdsstring[]requiredcreatedAtstringrequired4XX Default Response
Example
{
"error": {
"code": "string",
"message": "string",
"details": {}
}
}Schema
errorobjectrequiredShow child parameters
codestringrequiredmessagestringrequireddetailsobjectGET
https://hermeticor.com /v1/agency/groups/{groupId} Parameters
groupIdstringpathrequiredCode samples
cURL
curl -X GET "https://hermeticor.com/v1/agency/groups/{groupId}"TypeScript
Python
Go
PHP
Ruby
Java
Responses
PUT
https://hermeticor.com /v1/agency/groups/{groupId} Rename a group and/or replace its members
Parameters
groupIdstringpathrequiredRequest body
application/json
namestringworkspaceIdsstring[]{
"name": "string",
"workspaceIds": [
"string"
]
}Code samples
cURL
curl -X PUT "https://hermeticor.com/v1/agency/groups/{groupId}" \
-H "Content-Type: application/json" \
-d '{"name":"string","workspaceIds":["string"]}'TypeScript
Python
Go
PHP
Ruby
Java
Responses
DELETE
https://hermeticor.com /v1/agency/groups/{groupId} Parameters
groupIdstringpathrequiredCode samples
cURL
curl -X DELETE "https://hermeticor.com/v1/agency/groups/{groupId}"TypeScript
Python
Go
PHP
Ruby
Java
Responses
200 Default Response
Example
{
"ok": true
}Schema
okbooleanrequiredPOST
https://hermeticor.com /v1/agency/groups/{groupId}/unlink Parameters
groupIdstringpathrequiredRequest body
application/json
workspaceIdsstring[]required{
"workspaceIds": [
"string"
]
}Code samples
cURL
curl -X POST "https://hermeticor.com/v1/agency/groups/{groupId}/unlink" \
-H "Content-Type: application/json" \
-d '{"workspaceIds":["string"]}'TypeScript
Python
Go
PHP
Ruby
Java
Responses
PUT
https://hermeticor.com /v1/agency/quota Set the monthly send cap on many clients at once (explicit workspaces and/or a group)
Request body
application/json
sendsEmailintegerrequiredsendsSmsintegerrequiredworkspaceIdsstring[]groupIdstring{
"sendsEmail": 0,
"sendsSms": 0,
"workspaceIds": [
"string"
],
"groupId": "string"
}Code samples
cURL
curl -X PUT "https://hermeticor.com/v1/agency/quota" \
-H "Content-Type: application/json" \
-d '{"sendsEmail":0,"sendsSms":0,"workspaceIds":["string"],"groupId":"string"}'TypeScript
Python
Go
PHP
Ruby
Java
Responses
200 Default Response
Example
{
"updated": 0,
"workspaceIds": [
"string"
]
}Schema
updatedintegerrequiredworkspaceIdsstring[]requiredPOST
https://hermeticor.com /v1/agency/clients/{workspaceId}/api-keys Mint an API key inside a client workspace; the key is bound to that client and audited there. Plaintext is returned once
Parameters
workspaceIdstringpathrequiredRequest body
application/json
namestringrequiredkindstringrequiredscopesstring[]allowedOriginsstring[]allowedDomainsstring[]allowedConnectionIdsstring[]allowedSequenceIdsstring[]rateLimitPerMininteger{
"name": "string",
"kind": "secret",
"scopes": [],
"allowedOrigins": [
"string"
],
"allowedDomains": [
"string"
],
"allowedConnectionIds": [
"string"
],
"allowedSequenceIds": [
"string"
],
"rateLimitPerMin": 0
}Code samples
cURL
curl -X POST "https://hermeticor.com/v1/agency/clients/{workspaceId}/api-keys" \
-H "Content-Type: application/json" \
-d '{"name":"string","kind":"secret","scopes":[],"allowedOrigins":["string"],"allowedDomains":["string"],"allowedConnectionIds":["string"],"allowedSequenceIds":["string"],"rateLimitPerMin":0}'TypeScript
Python
Go
PHP
Ruby
Java
Responses
201 Default Response
Example
{
"id": "string",
"name": "string",
"kind": "secret",
"prefix": "string",
"scopes": [
"string"
],
"allowedOrigins": [
"string"
],
"allowedDomains": [
"string"
],
"allowedConnectionIds": [
"string"
],
"allowedSequenceIds": [
"string"
],
"rateLimitPerMin": 0,
"lastUsedAt": "2024-01-01T00:00:00Z",
"revokedAt": "2024-01-01T00:00:00Z",
"createdAt": "2024-01-01T00:00:00Z",
"plaintext": "string"
}Schema
idstringrequirednamestringrequiredkindstringrequiredprefixstringrequiredscopesstring[]requiredallowedOriginsstring[]requiredallowedDomainsstring[]allowedConnectionIdsstring[]allowedSequenceIdsstring[]rateLimitPerMinintegerlastUsedAtstringrequiredrevokedAtstringrequiredcreatedAtstringrequiredplaintextstringrequiredGET
https://hermeticor.com /v1/agency/clients/by-month Client workspaces created per month
Parameters
limitintegerqueryPage size; omitted returns the whole list
cursorstringqueryOpaque: the
nextCursor of the previous pageCode samples
cURL
curl -X GET "https://hermeticor.com/v1/agency/clients/by-month"TypeScript
Python
Go
PHP
Ruby
Java
Responses
200 Default Response
Example
{
"items": [
{
"month": "string",
"clients": 0
}
],
"nextCursor": "string"
}Schema
itemsobject[]requiredShow child parameters
monthstringrequiredclientsintegerrequirednextCursorstringrequiredPOST
https://hermeticor.com /v1/agency/move-sequence Hand a sequence or journey to a client: it is copied into the client workspace as a draft, then archived here. Templates, segments and mailboxes do not travel; the result lists what to re-link.
Request body
application/json
sourceIdstringrequiredtargetWorkspaceIdstringrequired{
"sourceId": "string",
"targetWorkspaceId": "string"
}Code samples
cURL
curl -X POST "https://hermeticor.com/v1/agency/move-sequence" \
-H "Content-Type: application/json" \
-d '{"sourceId":"string","targetWorkspaceId":"string"}'TypeScript
Python
Go
PHP
Ruby
Java
Responses
201 Default Response
Example
{
"id": "string",
"name": "string",
"note": "string"
}Schema
idstringrequirednamestringrequirednotestringrequiredPOST
https://hermeticor.com /v1/agency/move-mailbox Move a connected mailbox to a client workspace: reconnected there with its credentials re-sealed, then archived here. Sender identities, pools and warm-up history start fresh.
Request body
application/json
sourceIdstringrequiredtargetWorkspaceIdstringrequired{
"sourceId": "string",
"targetWorkspaceId": "string"
}Code samples
cURL
curl -X POST "https://hermeticor.com/v1/agency/move-mailbox" \
-H "Content-Type: application/json" \
-d '{"sourceId":"string","targetWorkspaceId":"string"}'TypeScript
Python
Go
PHP
Ruby
Java
Responses
POST
https://hermeticor.com /v1/agency/clients/{workspaceId}/handoff Single-use login link into a client workspace (valid 5 minutes, audited in the client workspace)
Parameters
workspaceIdstringpathrequiredCode samples
cURL
curl -X POST "https://hermeticor.com/v1/agency/clients/{workspaceId}/handoff"TypeScript
Python
Go
PHP
Ruby
Java
Responses
201 Default Response
Example
{
"url": "string",
"token": "string",
"expiresAt": "2024-01-01T00:00:00Z"
}Schema
urlstringrequiredtokenstringrequiredexpiresAtstringrequiredUpdated