campaigns
GET
https://hermeticor.com /v1/reports/{id} One campaign report: domains, locations by country and region, links, abuse, revenue, rates, list-average and industry comparison, and the share link
Parameters
industrystringqueryidstringpathrequiredCode samples
cURL
curl -X GET "https://hermeticor.com/v1/reports/{id}" \
-H "Authorization: Bearer $HERMETICOR_API_KEY"TypeScript
Python
Go
PHP
Ruby
Java
Responses
200 Default Response
Example
{
"campaignId": "string",
"sent": 0,
"domains": [
{
"domain": "string",
"sent": 0,
"opened": 0,
"clicked": 0,
"bounced": 0
}
],
"locations": [
{
"network": "string",
"opens": 0
}
],
"countries": [],
"devices": [
{
"device": "string",
"opens": 0,
"clicks": 0
}
],
"links": [
{
"url": "string",
"total": 0,
"unique": 0
}
],
"abuse": [
{
"profileId": "string",
"destination": "string",
"at": "2024-01-01T00:00:00Z"
}
],
"unsubscribeReasons": [
{
"reason": "string",
"count": 0
}
],
"revenue": {
"orders": 0,
"revenueMinor": 0
},
"delivered": 0,
"opens": {
"total": 0,
"unique": 0,
"last": "2024-01-01T00:00:00Z"
},
"clicks": {
"total": 0,
"unique": 0,
"last": "2024-01-01T00:00:00Z"
},
"bounces": {
"hard": 0,
"soft": 0
},
"unsubscribed": 0,
"complaints": 0,
"forwards": 0,
"rates": {
"deliveryRate": 0,
"openRate": 0,
"clickRate": 0,
"clickToOpenRate": 0,
"bounceRate": 0,
"unsubscribeRate": 0,
"complaintRate": 0
},
"comparison": {
"listAverage": {
"deliveryRate": 0,
"openRate": 0,
"clickRate": 0,
"clickToOpenRate": 0,
"bounceRate": 0,
"unsubscribeRate": 0,
"complaintRate": 0
},
"industry": {
"key": "string",
"label": "string",
"open": [
0
],
"click": [
0
],
"unsubscribe": [
0
],
"bounce": [
0
],
"note": "string"
}
},
"regions": [
{
"country": "string",
"region": "string",
"opens": 0,
"people": 0
}
],
"shareReport": {
"url": "string"
}
}Schema
campaignIdstringrequiredsentintegerrequireddomainsobject[]requiredShow child parameters
domainstringrequiredsentnumberrequiredopenednumberrequiredclickednumberrequiredbouncednumberrequiredlocationsobject[]requiredShow child parameters
networkstringrequiredopensnumberrequiredcountriesobject[]requiredShow child parameters
countrystringrequiredopensnumberrequireddevicesobject[]requiredShow child parameters
devicestringrequiredopensnumberrequiredclicksnumberrequiredlinksobject[]requiredShow child parameters
urlstringrequiredtotalnumberrequireduniquenumberrequiredabuseobject[]requiredShow child parameters
profileIdstringrequireddestinationstringrequiredatstringrequiredunsubscribeReasonsobject[]requiredShow child parameters
reasonstringrequiredcountnumberrequiredrevenueobjectrequiredShow child parameters
ordersnumberrequiredrevenueMinornumberrequireddeliveredintegerrequiredopensobjectrequiredShow child parameters
totalintegerrequireduniqueintegerrequiredlaststringrequiredclicksobjectrequiredShow child parameters
totalintegerrequireduniqueintegerrequiredlaststringrequiredbouncesobjectrequiredShow child parameters
hardintegerrequiredsoftintegerrequiredunsubscribedintegerrequiredcomplaintsintegerrequiredforwardsnumberrequiredratesobjectrequiredShow child parameters
deliveryRatenumberrequiredopenRatenumberrequiredclickRatenumberrequiredclickToOpenRatenumberrequiredbounceRatenumberrequiredunsubscribeRatenumberrequiredcomplaintRatenumberrequiredcomparisonobjectrequiredShow child parameters
listAverageobjectrequiredShow child parameters
deliveryRatenumberrequiredopenRatenumberrequiredclickRatenumberrequiredclickToOpenRatenumberrequiredbounceRatenumberrequiredunsubscribeRatenumberrequiredcomplaintRatenumberrequiredindustryobjectrequiredShow child parameters
keystringrequiredlabelstringrequiredopennumber[]requiredclicknumber[]requiredunsubscribenumber[]requiredbouncenumber[]requirednotestringrequiredregionsobject[]requiredShow child parameters
countrystringrequiredregionstringrequiredopensintegerrequiredpeopleintegerrequiredshareReportobjectrequiredShow child parameters
urlstringrequired4XX Default Response
Example
{
"error": {
"code": "string",
"message": "string",
"details": {}
}
}Schema
errorobjectrequiredShow child parameters
codestringrequiredmessagestringrequireddetailsobjectGET
https://hermeticor.com /v1/reports/{id}/advice Plain-language advice on one campaign's open, click, bounce and spam rates
Parameters
idstringpathrequiredCode samples
cURL
curl -X GET "https://hermeticor.com/v1/reports/{id}/advice" \
-H "Authorization: Bearer $HERMETICOR_API_KEY"TypeScript
Python
Go
PHP
Ruby
Java
Responses
200 Default Response
Example
{
"campaignId": "string",
"items": [
{
"tone": "good",
"message": "string"
}
]
}Schema
campaignIdstringrequireditemsobject[]requiredShow child parameters
tonestringrequiredmessagestringrequiredGET
https://hermeticor.com /v1/reports/{id}/click-details Parameters
urlstringqueryrequiredidstringpathrequiredCode samples
cURL
curl -X GET "https://hermeticor.com/v1/reports/{id}/click-details?url=<url>" \
-H "Authorization: Bearer $HERMETICOR_API_KEY"TypeScript
Python
Go
PHP
Ruby
Java
Responses
200 Default Response
Example
{
"url": "string",
"total": 0,
"unique": 0
}Schema
urlstringrequiredtotalnumberrequireduniquenumberrequiredGET
https://hermeticor.com /v1/reports/{id}/links Every link: clicks, unique clickers, last click, share of all clicks, and the split per A/B variant
Parameters
limitintegerqueryPage size; omitted returns the whole list
cursorstringqueryOpaque: the
nextCursor of the previous pageidstringpathrequiredCode samples
cURL
curl -X GET "https://hermeticor.com/v1/reports/{id}/links" \
-H "Authorization: Bearer $HERMETICOR_API_KEY"TypeScript
Python
Go
PHP
Ruby
Java
Responses
200 Default Response
Example
{
"items": [
{
"url": "string",
"clicks": 0,
"unique": 0,
"lastClick": "2024-01-01T00:00:00Z",
"clickShare": 0,
"uniqueShare": 0,
"variants": [
{
"variantKey": "string",
"clicks": 0,
"unique": 0
}
]
}
],
"nextCursor": "string"
}Schema
itemsobject[]requiredShow child parameters
urlstringrequiredclicksintegerrequireduniqueintegerrequiredlastClickstringrequiredclickSharenumberrequireduniqueSharenumberrequiredvariantsobject[]requiredShow child parameters
variantKeystringrequiredclicksintegerrequireduniqueintegerrequirednextCursorstringrequiredGET
https://hermeticor.com /v1/reports/{id}/unsubscribed Who unsubscribed from this campaign, when, and how (link, List-Unsubscribe header, reply ...)
Parameters
limitintegerquerycursorstringqueryidstringpathrequiredCode samples
cURL
curl -X GET "https://hermeticor.com/v1/reports/{id}/unsubscribed" \
-H "Authorization: Bearer $HERMETICOR_API_KEY"TypeScript
Python
Go
PHP
Ruby
Java
Responses
200 Default Response
Example
{
"items": [
{
"profileId": "string",
"email": "string",
"reason": "string",
"at": "2024-01-01T00:00:00Z"
}
],
"nextCursor": "string"
}Schema
itemsobject[]requiredShow child parameters
profileIdstringrequiredemailstringrequiredreasonstringrequiredatstringrequirednextCursorstringrequiredGET
https://hermeticor.com /v1/reports/{id}/share-stats Views, unique visitors, referrers and link clicks of the public share link
Parameters
idstringpathrequiredCode samples
cURL
curl -X GET "https://hermeticor.com/v1/reports/{id}/share-stats" \
-H "Authorization: Bearer $HERMETICOR_API_KEY"TypeScript
Python
Go
PHP
Ruby
Java
Responses
200 Default Response
Example
{
"campaignId": "string",
"views": 0,
"uniqueVisitors": 0,
"clicks": 0,
"lastViewAt": "2024-01-01T00:00:00Z",
"referrers": [
{
"key": "string",
"count": 0
}
],
"links": [
{
"url": "string",
"clicks": 0
}
]
}Schema
campaignIdstringrequiredviewsintegerrequireduniqueVisitorsintegerrequiredclicksintegerrequiredlastViewAtstringrequiredreferrersItemsItem13[]requiredShow child parameters
keystringrequiredcountintegerrequiredlinksobject[]requiredShow child parameters
urlstringrequiredclicksintegerrequiredUpdated