engagement
GET
https://hermeticor.com /v1/newsletter/engagement/settings Comment and reaction settings of a publication
Parameters
publicationIdstringqueryrequiredCode samples
cURL
curl -X GET "https://hermeticor.com/v1/newsletter/engagement/settings?publicationId=<publicationId>" \
-H "Authorization: Bearer $HERMETICOR_API_KEY"TypeScript
Python
Go
PHP
Ruby
Java
Responses
200 Default Response
Example
{
"commentsMode": "off",
"moderation": "none",
"holdLinks": true,
"reactionsEnabled": true,
"reactionSet": [
"string"
],
"maxPerHour": 0,
"minSecondsBetween": 0,
"notifyComments": true,
"publicationId": "string"
}Schema
commentsModestringrequiredmoderationstringrequiredholdLinksbooleanrequiredreactionsEnabledbooleanrequiredreactionSetstring[]requiredmaxPerHourintegerrequiredminSecondsBetweenintegerrequirednotifyCommentsbooleanrequiredpublicationIdstringrequired4XX Default Response
Example
{
"error": {
"code": "string",
"message": "string",
"details": {}
}
}Schema
errorobjectrequiredShow child parameters
codestringrequiredmessagestringrequireddetailsobjectPUT
https://hermeticor.com /v1/newsletter/engagement/settings Save comment and reaction settings
Parameters
publicationIdstringqueryrequiredRequest body
application/json
commentsModestringrequiredmoderationstringrequiredholdLinksbooleanrequiredreactionsEnabledbooleanrequiredreactionSetstring[]requiredmaxPerHourintegerrequiredminSecondsBetweenintegerrequirednotifyCommentsboolean{
"commentsMode": "off",
"moderation": "none",
"holdLinks": true,
"reactionsEnabled": true,
"reactionSet": [
"string"
],
"maxPerHour": 0,
"minSecondsBetween": 0,
"notifyComments": true
}Code samples
cURL
curl -X PUT "https://hermeticor.com/v1/newsletter/engagement/settings?publicationId=<publicationId>" \
-H "Authorization: Bearer $HERMETICOR_API_KEY" \
-H "Content-Type: application/json" \
-d '{"commentsMode":"off","moderation":"none","holdLinks":true,"reactionsEnabled":true,"reactionSet":["string"],"maxPerHour":0,"minSecondsBetween":0,"notifyComments":true}'TypeScript
Python
Go
PHP
Ruby
Java
Responses
GET
https://hermeticor.com /v1/newsletter/engagement/comments Comments for moderation (filter by status, e.g. pending)
Parameters
publicationIdstringqueryrequiredpostIdstringquerystatusstringquerylimitintegerquerycursorstringqueryCode samples
cURL
curl -X GET "https://hermeticor.com/v1/newsletter/engagement/comments?publicationId=<publicationId>" \
-H "Authorization: Bearer $HERMETICOR_API_KEY"TypeScript
Python
Go
PHP
Ruby
Java
Responses
200 Default Response
Example
{
"items": [
{
"id": "string",
"publicationId": "string",
"postId": "string",
"parentId": "string",
"profileId": "string",
"displayName": "string",
"body": "string",
"status": "published",
"pinned": true,
"isAuthor": true,
"likeCount": 0,
"editedAt": "2024-01-01T00:00:00Z",
"createdAt": "2024-01-01T00:00:00Z"
}
],
"nextCursor": "string"
}Schema
itemsItemsItem202[]requiredShow child parameters
idstringrequiredpublicationIdstringrequiredpostIdstringrequiredparentIdstringrequiredprofileIdstringrequireddisplayNamestringrequiredbodystringrequiredstatusstringrequiredpinnedbooleanrequiredisAuthorbooleanrequiredlikeCountintegerrequirededitedAtstringrequiredcreatedAtstringrequirednextCursorstringrequiredPOST
https://hermeticor.com /v1/newsletter/engagement/comments/{id}/moderate Approve, mark spam, remove, pin or unpin a comment
Parameters
idstringpathrequiredRequest body
application/json
actionstringrequired{
"action": "approve"
}Code samples
cURL
curl -X POST "https://hermeticor.com/v1/newsletter/engagement/comments/{id}/moderate" \
-H "Authorization: Bearer $HERMETICOR_API_KEY" \
-H "Content-Type: application/json" \
-d '{"action":"approve"}'TypeScript
Python
Go
PHP
Ruby
Java
Responses
200 Default Response
Example
{
"id": "string",
"publicationId": "string",
"postId": "string",
"parentId": "string",
"profileId": "string",
"displayName": "string",
"body": "string",
"status": "published",
"pinned": true,
"isAuthor": true,
"likeCount": 0,
"editedAt": "2024-01-01T00:00:00Z",
"createdAt": "2024-01-01T00:00:00Z"
}Schema
idstringrequiredpublicationIdstringrequiredpostIdstringrequiredparentIdstringrequiredprofileIdstringrequireddisplayNamestringrequiredbodystringrequiredstatusstringrequiredpinnedbooleanrequiredisAuthorbooleanrequiredlikeCountintegerrequirededitedAtstringrequiredcreatedAtstringrequiredPOST
https://hermeticor.com /v1/newsletter/engagement/comments/{id}/reply Reply as the author (badged, notifies the commenter)
Parameters
idstringpathrequiredRequest body
application/json
bodystringrequiredauthorNamestring{
"body": "string",
"authorName": "Author"
}Code samples
cURL
curl -X POST "https://hermeticor.com/v1/newsletter/engagement/comments/{id}/reply" \
-H "Authorization: Bearer $HERMETICOR_API_KEY" \
-H "Content-Type: application/json" \
-d '{"body":"string","authorName":"Author"}'TypeScript
Python
Go
PHP
Ruby
Java
Responses
GET
https://hermeticor.com /v1/newsletter/engagement/bans Banned commenters
Parameters
publicationIdstringqueryrequiredlimitintegerqueryPage size; omitted returns the whole list
cursorstringqueryOpaque: the
nextCursor of the previous pageCode samples
cURL
curl -X GET "https://hermeticor.com/v1/newsletter/engagement/bans?publicationId=<publicationId>" \
-H "Authorization: Bearer $HERMETICOR_API_KEY"TypeScript
Python
Go
PHP
Ruby
Java
Responses
200 Default Response
Example
{
"items": [
{
"id": "string",
"publicationId": "string",
"profileId": "string",
"reason": "string",
"createdAt": "2024-01-01T00:00:00Z"
}
],
"nextCursor": "string"
}Schema
itemsItemsItem203[]requiredShow child parameters
idstringrequiredpublicationIdstringrequiredprofileIdstringrequiredreasonstringrequiredcreatedAtstringrequirednextCursorstringrequiredPOST
https://hermeticor.com /v1/newsletter/engagement/bans Ban a reader from commenting on a publication
Request body
application/json
publicationIdstringrequiredprofileIdstringrequiredreasonstring{
"publicationId": "string",
"profileId": "string",
"reason": "string"
}Code samples
cURL
curl -X POST "https://hermeticor.com/v1/newsletter/engagement/bans" \
-H "Authorization: Bearer $HERMETICOR_API_KEY" \
-H "Content-Type: application/json" \
-d '{"publicationId":"string","profileId":"string","reason":"string"}'TypeScript
Python
Go
PHP
Ruby
Java
Responses
201 Default Response
Example
{
"id": "string",
"publicationId": "string",
"profileId": "string",
"reason": "string",
"createdAt": "2024-01-01T00:00:00Z"
}Schema
idstringrequiredpublicationIdstringrequiredprofileIdstringrequiredreasonstringrequiredcreatedAtstringrequiredDELETE
https://hermeticor.com /v1/newsletter/engagement/bans/{publicationId}/{profileId} Lift a ban
Parameters
publicationIdstringpathrequiredprofileIdstringpathrequiredCode samples
cURL
curl -X DELETE "https://hermeticor.com/v1/newsletter/engagement/bans/{publicationId}/{profileId}" \
-H "Authorization: Bearer $HERMETICOR_API_KEY"TypeScript
Python
Go
PHP
Ruby
Java
Responses
200 Default Response
Example
{
"ok": true
}Schema
okbooleanrequiredUpdated