webhooks

Embed
Preview of the card
<a href="https://hermeticor.com/docs/ref-webhooks"><img src="https://hermeticor.com/docs/_api/public/orgs/5fcd8b3c-a27c-4688-972f-de710125592f/spaces/caf5dc05-15f7-4e0c-bdb8-ab29ede6211e/pages/4870b1c4-ef67-427a-9cf5-cfc37c3c2402/social-card.svg?v=3e7ae33eec8b" alt="webhooks" width="600" height="315"></a>
DELETEhttps://hermeticor.com/v1/webhook-templates/{id}

Parameters

idstringpathrequired

Code samples

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

Responses

200 Default Response
Example
{
  "ok": true
}
Schema
okbooleanrequired
true
4XX Default Response
Example
{
  "error": {
    "code": "string",
    "message": "string",
    "details": {}
  }
}
Schema
errorobjectrequired
Show child parameters
codestringrequired
messagestringrequired
detailsobject
5XX Default Response

Same as 4XX · DELETE /v1/webhook-templates/{id}

PATCHhttps://hermeticor.com/v1/webhook-templates/{id}

Parameters

idstringpathrequired

Request body

application/json
namestring
urlstring
methodstring
POST | PUT | PATCH | DELETE | GET | HEAD | OPTIONS
headersobject
bodyobject
authHeadersAuthHeadersItem[]
Show child parameters
headerstringrequired
secretNamestringrequired
prefixstring
descriptionstring
inputsInputsItem2[]
Show child parameters
keystringrequired
labelstringrequired
requiredboolean
= false
typestring
string | number | boolean | date | enum = string
optionsstring[]
optionsUrlstring
propertystring
labelsobject
outputsOutputsItem2[]
Show child parameters
pathstringrequired
fieldstringrequired
labelstring
typestring
string | number | boolean | date
labelsobject
kindstring
webhook | code
statusstring
draft | published | archived
labelsobject
executionRulesExecutionRulesItem2[]
Show child parameters
pathstringrequired
opstringrequired
eq | neq | exists | gt | lt
value
statestringrequired
SUCCESS | FAIL_CONTINUE | BLOCK
messagestringrequired
codestring
preActionCodestring
allowedHostsstring[]
secretNamesstring[]
timeoutMsinteger
memoryMbinteger
{
  "name": "string",
  "url": "string",
  "method": "POST",
  "headers": {},
  "body": {},
  "authHeaders": [
    {
      "header": "string",
      "secretName": "string",
      "prefix": "string"
    }
  ],
  "description": "string",
  "inputs": [
    {
      "key": "string",
      "label": "string",
      "required": false,
      "type": "string",
      "options": [
        "string"
      ],
      "optionsUrl": "string",
      "property": "string",
      "labels": {}
    }
  ],
  "outputs": [
    {
      "path": "string",
      "field": "string",
      "label": "string",
      "type": "string",
      "labels": {}
    }
  ],
  "kind": "webhook",
  "status": "draft",
  "labels": {},
  "executionRules": [
    {
      "path": "string",
      "op": "eq",
      "value": {},
      "state": "SUCCESS",
      "message": "string"
    }
  ],
  "code": "string",
  "preActionCode": "string",
  "allowedHosts": [
    "string"
  ],
  "secretNames": [
    "string"
  ],
  "timeoutMs": 0,
  "memoryMb": 0
}

Code samples

cURL
curl -X PATCH "https://hermeticor.com/v1/webhook-templates/{id}" \
  -H "Authorization: Bearer $HERMETICOR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"name":"string","url":"string","method":"POST","headers":{},"body":{},"authHeaders":[{"header":"string","secretName":"string","prefix":"string"}],"description":"string","inputs":[{"key":"string","label":"string","required":false,"type":"string","options":["string"],"optionsUrl":"string","property":"string","labels":{}}],"outputs":[{"path":"string","field":"string","label":"string","type":"string","labels":{}}],"kind":"webhook","status":"draft","labels":{},"executionRules":[{"path":"string","op":"eq","value":{},"state":"SUCCESS","message":"string"}],"code":"string","preActionCode":"string","allowedHosts":["string"],"secretNames":["string"],"timeoutMs":0,"memoryMb":0}'
TypeScript
Python
Go
PHP
Ruby
Java

Responses

200 Default Response
Example
{
  "id": "string",
  "name": "string",
  "url": "",
  "method": "POST",
  "headers": {},
  "body": null,
  "authHeaders": [],
  "description": "",
  "inputs": [],
  "outputs": [],
  "kind": "webhook",
  "status": "published",
  "labels": {},
  "executionRules": [],
  "code": null,
  "preActionCode": null,
  "allowedHosts": [],
  "secretNames": [],
  "timeoutMs": 5000,
  "memoryMb": 64,
  "createdAt": "2024-01-01T00:00:00Z",
  "updatedAt": "2024-01-01T00:00:00Z"
}
Schema
idstringrequired
namestringrequired
urlstringrequired
methodstringrequired
POST | PUT | PATCH | DELETE | GET | HEAD | OPTIONS = POST
headersobjectrequired
= {}
bodyobjectrequired
= null
authHeadersAuthHeadersItem2[]required
= []
Show child parameters
headerstringrequired
secretNamestringrequired
prefixstring
descriptionstringrequired
inputsInputsItem[]required
= []
Show child parameters
keystringrequired
labelstringrequired
requiredbooleanrequired
= false
typestringrequired
string | number | boolean | date | enum = string
optionsstring[]
optionsUrlstring
propertystring
labelsobject
outputsOutputsItem[]required
= []
Show child parameters
pathstringrequired
fieldstringrequired
labelstring
typestring
string | number | boolean | date
labelsobject
kindstringrequired
webhook | code = webhook
statusstringrequired
draft | published | archived = published
labelsobjectrequired
= {}
executionRulesExecutionRulesItem[]required
= []
Show child parameters
pathstringrequired
opstringrequired
eq | neq | exists | gt | lt
value
statestringrequired
SUCCESS | FAIL_CONTINUE | BLOCK
messagestringrequired
codestringrequired
= null
preActionCodestringrequired
= null
allowedHostsstring[]required
= []
secretNamesstring[]required
= []
timeoutMsintegerrequired
= 5000
memoryMbintegerrequired
= 64
createdAtstringrequired
updatedAtstringrequired
4XX Default Response

Same as 4XX · DELETE /v1/webhook-templates/{id}

5XX Default Response

Same as 4XX · DELETE /v1/webhook-templates/{id}

GEThttps://hermeticor.com/v1/webhook-templates/{id}/inputs/{key}/options

Dropdown values for an enum input (fixed options, or loaded from its options URL)

Parameters

limitintegerquery
Page size; omitted returns the whole list
cursorstringquery
Opaque: the nextCursor of the previous page
idstringpathrequired
keystringpathrequired

Code samples

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

Responses

200 Default Response
Example
{
  "items": [
    {
      "label": "string",
      "value": "string"
    }
  ],
  "nextCursor": "string"
}
Schema
itemsobject[]required
Show child parameters
labelstringrequired
valuestringrequired
nextCursorstringrequired
4XX Default Response

Same as 4XX · DELETE /v1/webhook-templates/{id}

5XX Default Response

Same as 4XX · DELETE /v1/webhook-templates/{id}

POSThttps://hermeticor.com/v1/webhook-templates/test

Make a real test call (saved template or ad-hoc), SSRF-guarded, never retried

Request body

application/json
templateIdstring
urlstring
methodstring
POST | PUT | PATCH | DELETE | GET | HEAD | OPTIONS
headersobject
= {}
bodyobject
authHeadersAuthHeadersItem[]
= []
Show child parameters
headerstringrequired
secretNamestringrequired
prefixstring
{
  "templateId": "string",
  "url": "string",
  "method": "POST",
  "headers": {},
  "body": {},
  "authHeaders": []
}

Code samples

cURL
curl -X POST "https://hermeticor.com/v1/webhook-templates/test" \
  -H "Authorization: Bearer $HERMETICOR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"templateId":"string","url":"string","method":"POST","headers":{},"body":{},"authHeaders":[]}'
TypeScript
Python
Go
PHP
Ruby
Java

Responses

200 Default Response
Example
{
  "ok": true,
  "status": 0,
  "error": "string",
  "blocked": true,
  "response": {}
}
Schema
okbooleanrequired
statusintegerrequired
errorstringrequired
blockedbooleanrequired
response
4XX Default Response

Same as 4XX · DELETE /v1/webhook-templates/{id}

5XX Default Response

Same as 4XX · DELETE /v1/webhook-templates/{id}

POSThttps://hermeticor.com/v1/webhooks/journal/exports

Start a background export of the journal (optionally as one endpoint would receive it); poll GET /v1/webhooks/journal/exports/:id

Request body

application/json
afterinteger
endpointIdstring
topicstring
{
  "after": 0,
  "endpointId": "string",
  "topic": "string"
}

Code samples

cURL
curl -X POST "https://hermeticor.com/v1/webhooks/journal/exports" \
  -H "Authorization: Bearer $HERMETICOR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"after":0,"endpointId":"string","topic":"string"}'
TypeScript
Python
Go
PHP
Ruby
Java

Responses

202 Default Response
Example
{
  "id": "string",
  "kind": "bulk",
  "op": "string",
  "status": "queued",
  "progress": {
    "total": 0,
    "processed": 0,
    "failed": 0
  },
  "error": "string",
  "downloadUrl": "string",
  "failures": [
    {
      "profileId": "string",
      "message": "string"
    }
  ],
  "createdAt": "2024-01-01T00:00:00Z",
  "finishedAt": "2024-01-01T00:00:00Z"
}
Schema
idstringrequired
kindstringrequired
bulk | export
opstringrequired
statusstringrequired
queued | running | completed | failed
progressobjectrequired
Show child parameters
totalintegerrequired
processedintegerrequired
failedintegerrequired
errorstringrequired
downloadUrlstring
failuresFailuresItem[]
Show child parameters
profileIdstringrequired
messagestringrequired
createdAtstringrequired
finishedAtstringrequired
4XX Default Response

Same as 4XX · DELETE /v1/webhook-templates/{id}

5XX Default Response

Same as 4XX · DELETE /v1/webhook-templates/{id}

Updated