campaigns

Embed
Preview of the card
<a href="https://hermeticor.com/docs/ref-campaigns"><img src="https://hermeticor.com/docs/_api/public/orgs/5fcd8b3c-a27c-4688-972f-de710125592f/spaces/caf5dc05-15f7-4e0c-bdb8-ab29ede6211e/pages/7b5e5778-2701-4b75-820c-3417186ab185/social-card.svg?v=3e7ae33eec8b" alt="campaigns" width="600" height="315"></a>
PATCHhttps://hermeticor.com/v1/campaigns/{id}

Parameters

idstringpathrequired

Request body

application/json
namestring
purposestring
marketing | prospecting
audienceobject
Show child parameters
includeSegmentIdsstring[]
= []
includeListIdsstring[]
= []
excludeSegmentIdsstring[]
= []
excludeListIdsstring[]
= []
onePerCompanyboolean
everyoneboolean
includeTagsstring[]
excludeTagsstring[]
templateIdstring
routeobject
Show child parameters
connectionIdstring
poolIdstring
routePolicyIdstring
scheduleobject
Show child parameters
atstringrequired
tzstring
= UTC
recipientLocalboolean
= false
throttlePerHourinteger
windowobject
Show child parameters
startMinintegerrequired
endMinintegerrequired
sendTimestring
fixed | optimized = fixed
pastZonesstring
immediately | tomorrow
batchSizeinteger
utmobject
topicIdstring
trackingobject
Show child parameters
opensboolean
clicksboolean
autoPauseobject
Show child parameters
enabledboolean
= true
maxFailureRatenumber
= 0.25
maxBounceRatenumber
= 0.1
minSampleinteger
= 50
slugstring
archiveProfileobject
inArchiveboolean
variantsVariantsItem2[]
Show child parameters
keystringrequired
templateVersionIdstringrequired
subjectstring
fromNamestring
previewTextstring
replyTostring
imageAssetIdstring
sendOffsetinteger
= 0
weightinteger
= 1
abTestobject
Show child parameters
testPercentinteger
= 20
metricstring
clicks | replies | conversions | revenue | opens = clicks
waitHoursinteger
= 4
autoboolean
= true
methodstring
bayesian_beta | frequentist_ztest = bayesian_beta
reviewDraftsboolean
reviewDeadlineobject
Show child parameters
hoursintegerrequired
actionstringrequired
send | skip
{
  "name": "string",
  "purpose": "marketing",
  "audience": {
    "includeSegmentIds": [],
    "includeListIds": [],
    "excludeSegmentIds": [],
    "excludeListIds": [],
    "onePerCompany": true,
    "everyone": true,
    "includeTags": [
      "string"
    ],
    "excludeTags": [
      "string"
    ]
  },
  "templateId": "string",
  "route": {
    "connectionId": "string",
    "poolId": "string",
    "routePolicyId": "string"
  },
  "schedule": {
    "at": "2024-01-01T00:00:00Z",
    "tz": "UTC",
    "recipientLocal": false,
    "throttlePerHour": 0,
    "window": {
      "startMin": 0,
      "endMin": 0
    },
    "sendTime": "fixed",
    "pastZones": "immediately",
    "batchSize": 0
  },
  "utm": {},
  "topicId": "string",
  "tracking": {
    "opens": true,
    "clicks": true
  },
  "autoPause": {
    "enabled": true,
    "maxFailureRate": 0.25,
    "maxBounceRate": 0.1,
    "minSample": 50
  },
  "slug": "string",
  "archiveProfile": {},
  "inArchive": true,
  "variants": [
    {
      "key": "string",
      "templateVersionId": "string",
      "subject": "string",
      "fromName": "string",
      "previewText": "string",
      "replyTo": "string",
      "imageAssetId": "string",
      "sendOffset": 0,
      "weight": 1
    }
  ],
  "abTest": {
    "testPercent": 20,
    "metric": "clicks",
    "waitHours": 4,
    "auto": true,
    "method": "bayesian_beta"
  },
  "reviewDrafts": true,
  "reviewDeadline": {
    "hours": 0,
    "action": "send"
  }
}

Code samples

cURL
curl -X PATCH "https://hermeticor.com/v1/campaigns/{id}" \
  -H "Authorization: Bearer $HERMETICOR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"name":"string","purpose":"marketing","audience":{"includeSegmentIds":[],"includeListIds":[],"excludeSegmentIds":[],"excludeListIds":[],"onePerCompany":true,"everyone":true,"includeTags":["string"],"excludeTags":["string"]},"templateId":"string","route":{"connectionId":"string","poolId":"string","routePolicyId":"string"},"schedule":{"at":"2024-01-01T00:00:00Z","tz":"UTC","recipientLocal":false,"throttlePerHour":0,"window":{"startMin":0,"endMin":0},"sendTime":"fixed","pastZones":"immediately","batchSize":0},"utm":{},"topicId":"string","tracking":{"opens":true,"clicks":true},"autoPause":{"enabled":true,"maxFailureRate":0.25,"maxBounceRate":0.1,"minSample":50},"slug":"string","archiveProfile":{},"inArchive":true,"variants":[{"key":"string","templateVersionId":"string","subject":"string","fromName":"string","previewText":"string","replyTo":"string","imageAssetId":"string","sendOffset":0,"weight":1}],"abTest":{"testPercent":20,"metric":"clicks","waitHours":4,"auto":true,"method":"bayesian_beta"},"reviewDrafts":true,"reviewDeadline":{"hours":0,"action":"send"}}'
TypeScript
Python
Go
PHP
Ruby
Java

Responses

200 Default Response
Example
{
  "id": "string",
  "name": "string",
  "channel": "email",
  "purpose": "marketing",
  "status": "draft",
  "audience": {
    "includeSegmentIds": [],
    "includeListIds": [],
    "excludeSegmentIds": [],
    "excludeListIds": [],
    "onePerCompany": true,
    "everyone": true,
    "includeTags": [
      "string"
    ],
    "excludeTags": [
      "string"
    ]
  },
  "audienceFrozenAt": "2024-01-01T00:00:00Z",
  "templateId": "string",
  "topicId": "string",
  "route": {
    "connectionId": "string",
    "poolId": "string",
    "routePolicyId": "string"
  },
  "schedule": {
    "at": "2024-01-01T00:00:00Z",
    "tz": "UTC",
    "recipientLocal": false,
    "throttlePerHour": 0,
    "window": {
      "startMin": 0,
      "endMin": 0
    },
    "sendTime": "fixed",
    "pastZones": "immediately",
    "batchSize": 0
  },
  "abTest": {
    "testPercent": 20,
    "metric": "clicks",
    "waitHours": 4,
    "auto": true,
    "method": "bayesian_beta"
  },
  "variants": [
    {
      "key": "string",
      "templateVersionId": "string",
      "subject": "string",
      "fromName": "string",
      "previewText": "string",
      "replyTo": "string",
      "imageAssetId": "string",
      "sendOffset": 0,
      "weight": 1
    }
  ],
  "utm": {},
  "tracking": {
    "opens": true,
    "clicks": true
  },
  "autoPause": {
    "enabled": true,
    "maxFailureRate": 0.25,
    "maxBounceRate": 0.1,
    "minSample": 50
  },
  "slug": "string",
  "archiveProfile": {},
  "inArchive": true,
  "ownerId": "string",
  "startsOn": "string",
  "endsOn": "string",
  "notes": "string",
  "approvalStatus": "string",
  "approvedBy": "string",
  "approvalSubmittedBy": "string",
  "approvalComment": "string",
  "startedAt": "2024-01-01T00:00:00Z",
  "completedAt": "2024-01-01T00:00:00Z",
  "testSentAt": "2024-01-01T00:00:00Z",
  "contentErasedAt": "2024-01-01T00:00:00Z",
  "stats": {},
  "archivedAt": "2024-01-01T00:00:00Z",
  "parentCampaignId": "string",
  "reviewDrafts": true,
  "reviewDeadline": {
    "hours": 0,
    "action": "send"
  },
  "failureReason": "string",
  "createdAt": "2024-01-01T00:00:00Z",
  "updatedAt": "2024-01-01T00:00:00Z"
}
Schema
idstringrequired
namestringrequired
channelstringrequired
email | sms | whatsapp | push | postcard
purposestringrequired
marketing | prospecting | transactional | operational
statusstringrequired
draft | scheduled | sending | paused | completed | cancelled | failed
audienceobjectrequired
Show child parameters
includeSegmentIdsstring[]required
= []
includeListIdsstring[]required
= []
excludeSegmentIdsstring[]required
= []
excludeListIdsstring[]required
= []
onePerCompanyboolean
everyoneboolean
includeTagsstring[]
excludeTagsstring[]
audienceFrozenAtstringrequired
templateIdstringrequired
topicIdstringrequired
routeobjectrequired
Show child parameters
connectionIdstring
poolIdstring
routePolicyIdstring
scheduleobjectrequired
Show child parameters
atstringrequired
tzstringrequired
= UTC
recipientLocalbooleanrequired
= false
throttlePerHourinteger
windowobject
Show child parameters
startMinintegerrequired
endMinintegerrequired
sendTimestringrequired
fixed | optimized = fixed
pastZonesstring
immediately | tomorrow
batchSizeinteger
abTestobjectrequired
Show child parameters
testPercentintegerrequired
= 20
metricstringrequired
clicks | replies | conversions | revenue | opens = clicks
waitHoursintegerrequired
= 4
autobooleanrequired
= true
methodstringrequired
bayesian_beta | frequentist_ztest = bayesian_beta
variantsVariantsItem[]
Show child parameters
keystringrequired
templateVersionIdstringrequired
subjectstring
fromNamestring
previewTextstring
replyTostring
imageAssetIdstring
sendOffsetintegerrequired
= 0
weightintegerrequired
= 1
utmobjectrequired
trackingobjectrequired
Show child parameters
opensboolean
clicksboolean
autoPauseobjectrequired
Show child parameters
enabledbooleanrequired
= true
maxFailureRatenumberrequired
= 0.25
maxBounceRatenumberrequired
= 0.1
minSampleintegerrequired
= 50
slugstringrequired
archiveProfileobjectrequired
inArchivebooleanrequired
ownerIdstring
startsOnstring
endsOnstring
notesstring
approvalStatusstringrequired
approvedBystringrequired
approvalSubmittedBystring
approvalCommentstring
startedAtstringrequired
completedAtstringrequired
testSentAtstringrequired
contentErasedAtstring
statsobjectrequired
archivedAtstring
parentCampaignIdstring
reviewDraftsboolean
reviewDeadlineobject
Show child parameters
hoursintegerrequired
actionstringrequired
send | skip
failureReasonstring
createdAtstringrequired
updatedAtstringrequired
4XX Default Response
Example
{
  "error": {
    "code": "string",
    "message": "string",
    "details": {}
  }
}
Schema
errorobjectrequired
Show child parameters
codestringrequired
messagestringrequired
detailsobject
5XX Default Response

Same as 4XX · PATCH /v1/campaigns/{id}

DELETEhttps://hermeticor.com/v1/campaigns/{id}/permanent

Parameters

idstringpathrequired

Code samples

cURL
curl -X DELETE "https://hermeticor.com/v1/campaigns/{id}/permanent" \
  -H "Authorization: Bearer $HERMETICOR_API_KEY"
TypeScript
Python
Go
PHP
Ruby
Java

Responses

200 Default Response
Example
{
  "outcome": "deleted"
}
Schema
outcomestringrequired
deleted | content_erased
4XX Default Response

Same as 4XX · PATCH /v1/campaigns/{id}

5XX Default Response

Same as 4XX · PATCH /v1/campaigns/{id}

POSThttps://hermeticor.com/v1/campaigns/bulk-delete

Soft-delete many drafts; non-drafts are skipped with a reason

Request body

application/json
idsstring[]required
{
  "ids": [
    "string"
  ]
}

Code samples

cURL
curl -X POST "https://hermeticor.com/v1/campaigns/bulk-delete" \
  -H "Authorization: Bearer $HERMETICOR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"ids":["string"]}'
TypeScript
Python
Go
PHP
Ruby
Java

Responses

200 Default Response
Example
{
  "deleted": [
    "string"
  ],
  "skipped": [
    {
      "id": "string",
      "reason": "string"
    }
  ]
}
Schema
deletedstring[]required
skippedFailedItem[]required
Show child parameters
idstringrequired
reasonstringrequired
4XX Default Response

Same as 4XX · PATCH /v1/campaigns/{id}

5XX Default Response

Same as 4XX · PATCH /v1/campaigns/{id}

Updated