consent
POST
https://hermeticor.com /v1/topic-groups/default Create the default topic group with one opt-in-only general topic per channel (safe to repeat)
Code samples
cURL
curl -X POST "https://hermeticor.com/v1/topic-groups/default" \
-H "Authorization: Bearer $HERMETICOR_API_KEY"TypeScript
Python
Go
PHP
Ruby
Java
Responses
200 Default Response
Example
{
"group": {
"id": "string",
"name": "string",
"displayType": "string",
"position": 0,
"topicCount": 0,
"createdAt": "2024-01-01T00:00:00Z"
},
"created": 0
}Schema
groupobjectrequiredShow child parameters
idstringrequirednamestringrequireddisplayTypestringrequiredpositionintegerrequiredtopicCountintegercreatedAtstringrequiredcreatedintegerrequired4XX Default Response
Example
{
"error": {
"code": "string",
"message": "string",
"details": {}
}
}Schema
errorobjectrequiredShow child parameters
codestringrequiredmessagestringrequireddetailsobjectGET
https://hermeticor.com /v1/topic-groups Parameters
limitintegerqueryPage size; omitted returns the whole list
cursorstringqueryOpaque: the
nextCursor of the previous pageCode samples
cURL
curl -X GET "https://hermeticor.com/v1/topic-groups" \
-H "Authorization: Bearer $HERMETICOR_API_KEY"TypeScript
Python
Go
PHP
Ruby
Java
Responses
200 Default Response
Example
{
"items": [
{
"id": "string",
"name": "string",
"displayType": "string",
"position": 0,
"topicCount": 0,
"createdAt": "2024-01-01T00:00:00Z"
}
],
"nextCursor": "string"
}Schema
itemsGroup[]requiredShow child parameters
idstringrequirednamestringrequireddisplayTypestringrequiredpositionintegerrequiredtopicCountintegercreatedAtstringrequirednextCursorstringrequiredPOST
https://hermeticor.com /v1/topic-groups Request body
application/json
namestringrequireddisplayTypestringpositioninteger{
"name": "string",
"displayType": "checkboxes",
"position": 0
}Code samples
cURL
curl -X POST "https://hermeticor.com/v1/topic-groups" \
-H "Authorization: Bearer $HERMETICOR_API_KEY" \
-H "Content-Type: application/json" \
-d '{"name":"string","displayType":"checkboxes","position":0}'TypeScript
Python
Go
PHP
Ruby
Java
Responses
201 Default Response
Example
{
"id": "string",
"name": "string",
"displayType": "string",
"position": 0,
"topicCount": 0,
"createdAt": "2024-01-01T00:00:00Z"
}Schema
idstringrequirednamestringrequireddisplayTypestringrequiredpositionintegerrequiredtopicCountintegercreatedAtstringrequiredGET
https://hermeticor.com /v1/topic-groups/{id} Parameters
idstringpathrequiredCode samples
cURL
curl -X GET "https://hermeticor.com/v1/topic-groups/{id}" \
-H "Authorization: Bearer $HERMETICOR_API_KEY"TypeScript
Python
Go
PHP
Ruby
Java
Responses
DELETE
https://hermeticor.com /v1/topic-groups/{id} Parameters
idstringpathrequiredCode samples
cURL
curl -X DELETE "https://hermeticor.com/v1/topic-groups/{id}" \
-H "Authorization: Bearer $HERMETICOR_API_KEY"TypeScript
Python
Go
PHP
Ruby
Java
Responses
200 Default Response
Example
{
"ok": true
}Schema
okbooleanrequiredPATCH
https://hermeticor.com /v1/topic-groups/{id} Parameters
idstringpathrequiredRequest body
application/json
namestringdisplayTypestringpositioninteger{
"name": "string",
"displayType": "checkboxes",
"position": 0
}Code samples
cURL
curl -X PATCH "https://hermeticor.com/v1/topic-groups/{id}" \
-H "Authorization: Bearer $HERMETICOR_API_KEY" \
-H "Content-Type: application/json" \
-d '{"name":"string","displayType":"checkboxes","position":0}'TypeScript
Python
Go
PHP
Ruby
Java
Responses
GET
https://hermeticor.com /v1/subscription-channels Channels a person can subscribe to, with the purposes each is consented for
Parameters
limitintegerqueryPage size; omitted returns the whole list
cursorstringqueryOpaque: the
nextCursor of the previous pageCode samples
cURL
curl -X GET "https://hermeticor.com/v1/subscription-channels" \
-H "Authorization: Bearer $HERMETICOR_API_KEY"TypeScript
Python
Go
PHP
Ruby
Java
Responses
200 Default Response
Example
{
"items": [
{
"channel": "email",
"purposes": [
"marketing"
]
}
],
"nextCursor": "string"
}Schema
itemsobject[]requiredShow child parameters
channelstringrequiredpurposesstring[]requirednextCursorstringrequiredGET
https://hermeticor.com /v1/topics Topics; `groupId` filters by group, `counts=true` adds how many people are subscribed to each
Parameters
groupIdstringquerycountsstringquerylimitintegerqueryPage size; omitted returns the whole list
cursorstringqueryOpaque: the
nextCursor of the previous pageCode samples
cURL
curl -X GET "https://hermeticor.com/v1/topics" \
-H "Authorization: Bearer $HERMETICOR_API_KEY"TypeScript
Python
Go
PHP
Ruby
Java
Responses
200 Default Response
Example
{
"items": [
{
"id": "string",
"channel": "email",
"key": "string",
"name": "string",
"description": "string",
"defaultOptIn": true,
"visibleInPreferenceCenter": true,
"groupId": "string",
"position": 0,
"createdAt": "2024-01-01T00:00:00Z",
"subscriberCount": 0
}
],
"nextCursor": "string"
}Schema
itemsItemsItem15[]requiredShow child parameters
idstringrequiredchannelstringrequiredkeystringrequirednamestringrequireddescriptionstringrequireddefaultOptInbooleanrequiredvisibleInPreferenceCenterbooleanrequiredgroupIdstringpositionintegercreatedAtstringrequiredsubscriberCountintegernextCursorstringrequiredPOST
https://hermeticor.com /v1/topics Request body
application/json
channelstringrequiredkeystringrequirednamestringrequireddescriptionstringdefaultOptInbooleanvisibleInPreferenceCenterbooleangroupIdstringpositioninteger{
"channel": "email",
"key": "string",
"name": "string",
"description": "string",
"defaultOptIn": false,
"visibleInPreferenceCenter": true,
"groupId": "string",
"position": 0
}Code samples
cURL
curl -X POST "https://hermeticor.com/v1/topics" \
-H "Authorization: Bearer $HERMETICOR_API_KEY" \
-H "Content-Type: application/json" \
-d '{"channel":"email","key":"string","name":"string","description":"string","defaultOptIn":false,"visibleInPreferenceCenter":true,"groupId":"string","position":0}'TypeScript
Python
Go
PHP
Ruby
Java
Responses
201 Default Response
Example
{
"id": "string",
"channel": "email",
"key": "string",
"name": "string",
"description": "string",
"defaultOptIn": true,
"visibleInPreferenceCenter": true,
"groupId": "string",
"position": 0,
"createdAt": "2024-01-01T00:00:00Z",
"subscriberCount": 0
}Schema
idstringrequiredchannelstringrequiredkeystringrequirednamestringrequireddescriptionstringrequireddefaultOptInbooleanrequiredvisibleInPreferenceCenterbooleanrequiredgroupIdstringpositionintegercreatedAtstringrequiredsubscriberCountintegerGET
https://hermeticor.com /v1/topics/{id} Parameters
idstringpathrequiredCode samples
cURL
curl -X GET "https://hermeticor.com/v1/topics/{id}" \
-H "Authorization: Bearer $HERMETICOR_API_KEY"TypeScript
Python
Go
PHP
Ruby
Java
Responses
Updated