newsletter
POST
https://hermeticor.com /v1/newsletter/posts/{id}/email Create the campaign for this post (draft, send now or schedule) with optional A/B subject
Parameters
idstringpathrequiredRequest body
application/json
subjectstringsubjectBstringpreviewTextstringlistIdstringsegmentIdstringmodestringatstring{
"subject": "string",
"subjectB": "string",
"previewText": "string",
"listId": "string",
"segmentId": "string",
"mode": "draft",
"at": "2024-01-01T00:00:00Z"
}Code samples
cURL
curl -X POST "https://hermeticor.com/v1/newsletter/posts/{id}/email" \
-H "Authorization: Bearer $HERMETICOR_API_KEY" \
-H "Content-Type: application/json" \
-d '{"subject":"string","subjectB":"string","previewText":"string","listId":"string","segmentId":"string","mode":"draft","at":"2024-01-01T00:00:00Z"}'TypeScript
Python
Go
PHP
Ruby
Java
Responses
201 Default Response
Example
{
"campaignId": "string",
"paidCampaignId": "string",
"status": "string"
}Schema
campaignIdstringrequiredpaidCampaignIdstringrequiredstatusstringrequired4XX Default Response
Example
{
"error": {
"code": "string",
"message": "string",
"details": {}
}
}Schema
errorobjectrequiredShow child parameters
codestringrequiredmessagestringrequireddetailsobjectPOST
https://hermeticor.com /v1/newsletter/posts/{id}/test-send Send the real email to a few addresses through the campaign pipeline
Parameters
idstringpathrequiredRequest body
application/json
emailsstring[]required{
"emails": [
"string"
]
}Code samples
cURL
curl -X POST "https://hermeticor.com/v1/newsletter/posts/{id}/test-send" \
-H "Authorization: Bearer $HERMETICOR_API_KEY" \
-H "Content-Type: application/json" \
-d '{"emails":["string"]}'TypeScript
Python
Go
PHP
Ruby
Java
Responses
200 Default Response
Example
{
"sent": 0,
"blocked": 0
}Schema
sentintegerrequiredblockedintegerrequiredPOST
https://hermeticor.com /v1/newsletter/posts/{id}/preview Preview as a free reader, a paid reader, the email or the web page (from unsaved text if given)
Parameters
idstringpathrequiredRequest body
application/json
asstringmarkdownstring{
"as": "web",
"markdown": "string"
}Code samples
cURL
curl -X POST "https://hermeticor.com/v1/newsletter/posts/{id}/preview" \
-H "Authorization: Bearer $HERMETICOR_API_KEY" \
-H "Content-Type: application/json" \
-d '{"as":"web","markdown":"string"}'TypeScript
Python
Go
PHP
Ruby
Java
Responses
200 Default Response
Example
{
"html": "string",
"words": 0,
"readMinutes": 0,
"hasPaywall": true
}Schema
htmlstringrequiredwordsintegerrequiredreadMinutesintegerrequiredhasPaywallbooleanrequiredGET
https://hermeticor.com /v1/newsletter/posts/{id}/revisions Parameters
limitintegerqueryPage size; omitted returns the whole list
cursorstringqueryOpaque: the
nextCursor of the previous pageidstringpathrequiredCode samples
cURL
curl -X GET "https://hermeticor.com/v1/newsletter/posts/{id}/revisions" \
-H "Authorization: Bearer $HERMETICOR_API_KEY"TypeScript
Python
Go
PHP
Ruby
Java
Responses
200 Default Response
Example
{
"items": [
{
"id": "string",
"postId": "string",
"title": "string",
"subtitle": "string",
"markdown": "string",
"note": "string",
"createdBy": "string",
"createdAt": "2024-01-01T00:00:00Z"
}
],
"nextCursor": "string"
}Schema
itemsobject[]requiredShow child parameters
idstringrequiredpostIdstringrequiredtitlestringrequiredsubtitlestringrequiredmarkdownstringrequirednotestringrequiredcreatedBystringrequiredcreatedAtstringrequirednextCursorstringrequiredPOST
https://hermeticor.com /v1/newsletter/posts/{id}/revisions/{revisionId}/restore Parameters
idstringpathrequiredrevisionIdstringpathrequiredCode samples
cURL
curl -X POST "https://hermeticor.com/v1/newsletter/posts/{id}/revisions/{revisionId}/restore" \
-H "Authorization: Bearer $HERMETICOR_API_KEY"TypeScript
Python
Go
PHP
Ruby
Java
Responses
200 Default Response
Example
{
"id": "string",
"publicationId": "string",
"title": "string",
"subtitle": "string",
"slug": "string",
"coverUrl": "string",
"coverAlt": "string",
"markdown": "string",
"excerpt": "string",
"authorIds": [
"string"
],
"sectionIds": [
"string"
],
"tags": [
"string"
],
"audience": {
"kind": "everyone",
"tierIds": [
"string"
]
},
"delivery": "web",
"featured": true,
"seoTitle": "string",
"seoDescription": "string",
"seoImageUrl": "string",
"noindex": true,
"status": "draft",
"publishedAt": "2024-01-01T00:00:00Z",
"scheduledAt": "2024-01-01T00:00:00Z",
"campaignId": "string",
"paidCampaignId": "string",
"emailError": "string",
"wordCount": 0,
"readMinutes": 0,
"url": "string",
"createdAt": "2024-01-01T00:00:00Z",
"updatedAt": "2024-01-01T00:00:00Z"
}Schema
idstringrequiredpublicationIdstringrequiredtitlestringrequiredsubtitlestringrequiredslugstringrequiredcoverUrlstringrequiredcoverAltstringrequiredmarkdownstringrequiredexcerptstringrequiredauthorIdsstring[]requiredsectionIdsstring[]requiredtagsstring[]requiredaudienceobjectrequiredShow child parameters
kindstringrequiredtierIdsstring[]deliverystringrequiredfeaturedbooleanrequiredseoTitlestringrequiredseoDescriptionstringrequiredseoImageUrlstringrequirednoindexbooleanrequiredstatusstringrequiredpublishedAtstringrequiredscheduledAtstringrequiredcampaignIdstringrequiredpaidCampaignIdstringrequiredemailErrorstringrequiredwordCountintegerrequiredreadMinutesintegerrequiredurlstringrequiredcreatedAtstringrequiredupdatedAtstringrequiredGET
https://hermeticor.com /v1/newsletter/posts/{id}/analytics Email stats from delivery, web views, read depth, referrers, attributed subscribes and upgrades
Parameters
idstringpathrequiredCode samples
cURL
curl -X GET "https://hermeticor.com/v1/newsletter/posts/{id}/analytics" \
-H "Authorization: Bearer $HERMETICOR_API_KEY"TypeScript
Python
Go
PHP
Ruby
Java
Responses
200 Default Response
Example
{
"postId": "string",
"web": {
"views": 0,
"uniqueReaders": 0,
"avgSeconds": 0,
"avgDepth": 0,
"depthBuckets": [
{
"pct": 0,
"readers": 0
}
],
"sections": [
{
"id": "string",
"heading": "string",
"readers": 0
}
],
"referrers": [
{
"host": "string",
"views": 0
}
],
"daily": [
{
"day": "string",
"views": 0
}
]
},
"email": {
"sent": 0,
"opened": 0,
"clicked": 0,
"unsubscribed": 0,
"links": [
{
"url": "string",
"total": 0,
"unique": 0
}
]
},
"attributed": {
"subscribes": 0,
"upgrades": 0
}
}Schema
postIdstringrequiredwebobjectrequiredShow child parameters
viewsintegerrequireduniqueReadersintegerrequiredavgSecondsnumberrequiredavgDepthnumberrequireddepthBucketsobject[]requiredShow child parameters
pctintegerrequiredreadersintegerrequiredsectionsobject[]requiredShow child parameters
idstringrequiredheadingstringrequiredreadersintegerrequiredreferrersobject[]requiredShow child parameters
hoststringrequiredviewsintegerrequireddailyobject[]requiredShow child parameters
daystringrequiredviewsintegerrequiredemailobjectrequiredShow child parameters
sentintegerrequiredopenedintegerrequiredclickedintegerrequiredunsubscribedintegerrequiredlinksLinksItem[]requiredShow child parameters
urlstringrequiredtotalintegerrequireduniqueintegerrequiredattributedobjectrequiredShow child parameters
subscribesintegerrequiredupgradesintegerrequiredUpdated