workflows

Embed
Preview of the card
<a href="https://hermeticor.com/docs/ref-workflows"><img src="https://hermeticor.com/docs/_api/public/orgs/5fcd8b3c-a27c-4688-972f-de710125592f/spaces/caf5dc05-15f7-4e0c-bdb8-ab29ede6211e/pages/27c987c7-83e1-4744-b0ce-54b59acc4526/social-card.svg?v=3e7ae33eec8b" alt="workflows" width="600" height="315"></a>
GEThttps://hermeticor.com/v1/workflows/{id}/goals

Flow goal, goal steps and the conversion count

Parameters

idstringpathrequired

Code samples

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

Responses

200 Default Response
Example
{
  "flowGoal": {
    "kind": "event",
    "eventName": "string",
    "filter": {},
    "definition": {
      "type": "group",
      "op": "and",
      "negate": true,
      "children": [
        {}
      ]
    },
    "windowDays": 30,
    "onReach": "exit"
  },
  "nodes": [
    {
      "nodeId": "string",
      "name": "string",
      "skipAhead": true,
      "match": {
        "kind": "event",
        "eventName": "string",
        "filter": {},
        "definition": {
          "type": "group",
          "op": "and",
          "negate": true,
          "children": [
            {}
          ]
        }
      }
    }
  ],
  "conversions": {
    "enrolled": 0,
    "converted": 0,
    "rate": 0
  }
}
Schema
flowGoalobjectrequired
Show child parameters
kindstringrequired
event | segment
eventNamestring
filterobject
definitionobject
Show child parameters
typestringrequired
group
opstringrequired
and | or
negateboolean
childrenschema0[]required
windowDaysintegerrequired
= 30
onReachstringrequired
exit | continue | jump = exit
nodesNodesItem3[]required
Show child parameters
nodeIdstringrequired
namestringrequired
skipAheadbooleanrequired
matchobjectrequired
Show child parameters
kindstringrequired
event | segment
eventNamestring
filterobject
definitionobject
conversionsobjectrequired
Show child parameters
enrolledintegerrequired
convertedintegerrequired
ratenumberrequired
4XX Default Response
Example
{
  "error": {
    "code": "string",
    "message": "string",
    "details": {}
  }
}
Schema
errorobjectrequired
Show child parameters
codestringrequired
messagestringrequired
detailsobject
5XX Default Response

Same as 4XX · GET /v1/workflows/{id}/goals

PUThttps://hermeticor.com/v1/workflows/{id}/goals/flow

Set the draft flow goal (applies on next publish)

Parameters

idstringpathrequired

Request body

application/json
kindstringrequired
event | segment
eventNamestring
filterobject
definitionobject
Show child parameters
typestringrequired
group
opstringrequired
and | or
negateboolean
childrenschema0[]required
windowDaysinteger
= 30
onReachstring
exit | continue | jump = exit
{
  "kind": "event",
  "eventName": "string",
  "filter": {},
  "definition": {
    "type": "group",
    "op": "and",
    "negate": true,
    "children": [
      {}
    ]
  },
  "windowDays": 30,
  "onReach": "exit"
}

Code samples

cURL
curl -X PUT "https://hermeticor.com/v1/workflows/{id}/goals/flow" \
  -H "Authorization: Bearer $HERMETICOR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"kind":"event","eventName":"string","filter":{},"definition":{"type":"group","op":"and","negate":true,"children":[{}]},"windowDays":30,"onReach":"exit"}'
TypeScript
Python
Go
PHP
Ruby
Java

Responses

200 Default Response

Same as 200 · GET /v1/workflows/{id}/goals

4XX Default Response

Same as 4XX · GET /v1/workflows/{id}/goals

5XX Default Response

Same as 4XX · GET /v1/workflows/{id}/goals

DELETEhttps://hermeticor.com/v1/workflows/{id}/goals/flow

Parameters

idstringpathrequired

Code samples

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

Responses

200 Default Response

Same as 200 · GET /v1/workflows/{id}/goals

4XX Default Response

Same as 4XX · GET /v1/workflows/{id}/goals

5XX Default Response

Same as 4XX · GET /v1/workflows/{id}/goals

PATCHhttps://hermeticor.com/v1/workflows/{id}/goals/{nodeId}

Edit a goal step of the draft

Parameters

idstringpathrequired
nodeIdstringpathrequired

Request body

application/json
namestring
skipAheadboolean
matchobject
Show child parameters
kindstringrequired
event | segment
eventNamestring
filterobject
definitionobject
Show child parameters
typestringrequired
group
opstringrequired
and | or
negateboolean
childrenschema0[]required
{
  "name": "string",
  "skipAhead": true,
  "match": {
    "kind": "event",
    "eventName": "string",
    "filter": {},
    "definition": {
      "type": "group",
      "op": "and",
      "negate": true,
      "children": [
        {}
      ]
    }
  }
}

Code samples

cURL
curl -X PATCH "https://hermeticor.com/v1/workflows/{id}/goals/{nodeId}" \
  -H "Authorization: Bearer $HERMETICOR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"name":"string","skipAhead":true,"match":{"kind":"event","eventName":"string","filter":{},"definition":{"type":"group","op":"and","negate":true,"children":[{}]}}}'
TypeScript
Python
Go
PHP
Ruby
Java

Responses

200 Default Response

Same as 200 · GET /v1/workflows/{id}/goals

4XX Default Response

Same as 4XX · GET /v1/workflows/{id}/goals

5XX Default Response

Same as 4XX · GET /v1/workflows/{id}/goals

POSThttps://hermeticor.com/v1/workflows/{id}/enrollments/{enrollmentId}/pause

Hold one enrollment where it is

Parameters

idstringpathrequired
enrollmentIdstringpathrequired

Request body

application/json
reasonstring
= manual
{
  "reason": "manual"
}

Code samples

cURL
curl -X POST "https://hermeticor.com/v1/workflows/{id}/enrollments/{enrollmentId}/pause" \
  -H "Authorization: Bearer $HERMETICOR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"reason":"manual"}'
TypeScript
Python
Go
PHP
Ruby
Java

Responses

200 Default Response
Example
{
  "ok": true
}
Schema
okbooleanrequired
true
4XX Default Response

Same as 4XX · GET /v1/workflows/{id}/goals

5XX Default Response

Same as 4XX · GET /v1/workflows/{id}/goals

POSThttps://hermeticor.com/v1/workflows/{id}/enrollments/{enrollmentId}/resume

Release a held enrollment

Parameters

idstringpathrequired
enrollmentIdstringpathrequired

Code samples

cURL
curl -X POST "https://hermeticor.com/v1/workflows/{id}/enrollments/{enrollmentId}/resume" \
  -H "Authorization: Bearer $HERMETICOR_API_KEY"
TypeScript
Python
Go
PHP
Ruby
Java

Responses

4XX Default Response

Same as 4XX · GET /v1/workflows/{id}/goals

5XX Default Response

Same as 4XX · GET /v1/workflows/{id}/goals

GEThttps://hermeticor.com/v1/workflows/{id}/step-report

Per-step sends, opens, clicks and attributed revenue for one journey over a date range

Parameters

fromstringqueryrequired
tostringqueryrequired
idstringpathrequired

Code samples

cURL
curl -X GET "https://hermeticor.com/v1/workflows/{id}/step-report?from=<from>&to=<to>" \
  -H "Authorization: Bearer $HERMETICOR_API_KEY"
TypeScript
Python
Go
PHP
Ruby
Java

Responses

200 Default Response
Example
{
  "workflowId": "string",
  "from": "string",
  "to": "string",
  "steps": [
    {
      "nodeId": "string",
      "sent": 0,
      "delivered": 0,
      "opened": 0,
      "clicked": 0,
      "revenue": [
        {
          "currency": "string",
          "conversions": 0,
          "revenueMinor": 0
        }
      ]
    }
  ],
  "revenue": [
    {
      "currency": "string",
      "conversions": 0,
      "revenueMinor": 0
    }
  ]
}
Schema
workflowIdstringrequired
fromstringrequired
tostringrequired
stepsobject[]required
Show child parameters
nodeIdstringrequired
sentintegerrequired
deliveredintegerrequired
= 0
openedintegerrequired
clickedintegerrequired
revenueRevenueItem[]required
Show child parameters
currencystringrequired
conversionsintegerrequired
revenueMinornumberrequired
revenueRevenueItem[]required
Show child parameters
currencystringrequired
conversionsintegerrequired
revenueMinornumberrequired
4XX Default Response

Same as 4XX · GET /v1/workflows/{id}/goals

5XX Default Response

Same as 4XX · GET /v1/workflows/{id}/goals

Updated