templates

Embed
Preview of the card
<a href="https://hermeticor.com/docs/ref-templates"><img src="https://hermeticor.com/docs/_api/public/orgs/5fcd8b3c-a27c-4688-972f-de710125592f/spaces/caf5dc05-15f7-4e0c-bdb8-ab29ede6211e/pages/9c29e4ff-ee5d-4be6-9133-6951bf2d35cb/social-card.svg?v=3e7ae33eec8b" alt="templates" width="600" height="315"></a>
GEThttps://hermeticor.com/v1/template-conversion-jobs

Block-to-HTML conversions, newest first

Parameters

limitintegerquery
= 50
cursorstringquery

Code samples

cURL
curl -X GET "https://hermeticor.com/v1/template-conversion-jobs" \
  -H "Authorization: Bearer $HERMETICOR_API_KEY"
TypeScript
Python
Go
PHP
Ruby
Java

Responses

200 Default Response
Example
{
  "items": [
    {
      "id": "string",
      "status": "complete",
      "sourceTemplateId": "string",
      "resultTemplateId": "string",
      "createdAt": "2024-01-01T00:00:00Z"
    }
  ],
  "nextCursor": "string"
}
Schema
itemsItemsItem7[]required
Show child parameters
idstringrequired
statusstringrequired
complete
sourceTemplateIdstringrequired
resultTemplateIdstringrequired
createdAtstringrequired
nextCursorstringrequired
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/template-conversion-jobs

GEThttps://hermeticor.com/v1/template-conversion-jobs/{id}

Parameters

idstringpathrequired

Code samples

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

Responses

200 Default Response
Example
{
  "id": "string",
  "status": "complete",
  "sourceTemplateId": "string",
  "resultTemplateId": "string",
  "createdAt": "2024-01-01T00:00:00Z"
}
Schema
idstringrequired
statusstringrequired
complete
sourceTemplateIdstringrequired
resultTemplateIdstringrequired
createdAtstringrequired
4XX Default Response

Same as 4XX · GET /v1/template-conversion-jobs

5XX Default Response

Same as 4XX · GET /v1/template-conversion-jobs

GEThttps://hermeticor.com/v1/templates/github-sync

The GitHub repository templates sync with (the token is never returned)

Code samples

cURL
curl -X GET "https://hermeticor.com/v1/templates/github-sync" \
  -H "Authorization: Bearer $HERMETICOR_API_KEY"
TypeScript
Python
Go
PHP
Ruby
Java

Responses

200 Default Response
Example
{
  "repo": "string",
  "branch": "string",
  "pathPrefix": "string",
  "hasToken": true,
  "lastPushedAt": "2024-01-01T00:00:00Z",
  "lastPulledAt": "2024-01-01T00:00:00Z",
  "lastError": "string"
}
Schema
repostringrequired
branchstringrequired
pathPrefixstringrequired
hasTokenbooleanrequired
lastPushedAtstringrequired
lastPulledAtstringrequired
lastErrorstringrequired
4XX Default Response

Same as 4XX · GET /v1/template-conversion-jobs

5XX Default Response

Same as 4XX · GET /v1/template-conversion-jobs

PUThttps://hermeticor.com/v1/templates/github-sync

Connect a GitHub repository with your own access token (sealed; write-only)

Request body

application/json
repostringrequired
branchstring
= main
pathPrefixstring
= templates
tokenstring
{
  "repo": "string",
  "branch": "main",
  "pathPrefix": "templates",
  "token": "string"
}

Code samples

cURL
curl -X PUT "https://hermeticor.com/v1/templates/github-sync" \
  -H "Authorization: Bearer $HERMETICOR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"repo":"string","branch":"main","pathPrefix":"templates","token":"string"}'
TypeScript
Python
Go
PHP
Ruby
Java

Responses

200 Default Response

Same as 200 · GET /v1/templates/github-sync

4XX Default Response

Same as 4XX · GET /v1/template-conversion-jobs

5XX Default Response

Same as 4XX · GET /v1/template-conversion-jobs

DELETEhttps://hermeticor.com/v1/templates/github-sync

Disconnect GitHub sync (the saved token stays in Integrations > Secrets until you delete it)

Code samples

cURL
curl -X DELETE "https://hermeticor.com/v1/templates/github-sync" \
  -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

Same as 4XX · GET /v1/template-conversion-jobs

5XX Default Response

Same as 4XX · GET /v1/template-conversion-jobs

POSThttps://hermeticor.com/v1/templates/github-sync/push

Write every template, journey and segment to the repository as one JSON file each (unchanged files are skipped)

Code samples

cURL
curl -X POST "https://hermeticor.com/v1/templates/github-sync/push" \
  -H "Authorization: Bearer $HERMETICOR_API_KEY"
TypeScript
Python
Go
PHP
Ruby
Java

Responses

200 Default Response
Example
{
  "pushed": 0,
  "pulled": 0,
  "unchanged": 0,
  "journeys": 0,
  "segments": 0,
  "skipped": [
    {
      "path": "string",
      "reason": "string"
    }
  ]
}
Schema
pushedintegerrequired
pulledintegerrequired
unchangedintegerrequired
journeysintegerrequired
= 0
segmentsintegerrequired
= 0
skippedobject[]required
Show child parameters
pathstringrequired
reasonstringrequired
4XX Default Response

Same as 4XX · GET /v1/template-conversion-jobs

5XX Default Response

Same as 4XX · GET /v1/template-conversion-jobs

POSThttps://hermeticor.com/v1/templates/github-sync/pull

Read files from the repository: new templates and changed template versions, journey drafts (never a published version) and segments (created or updated by id, else by name)

Code samples

cURL
curl -X POST "https://hermeticor.com/v1/templates/github-sync/pull" \
  -H "Authorization: Bearer $HERMETICOR_API_KEY"
TypeScript
Python
Go
PHP
Ruby
Java

Responses

200 Default Response

Same as 200 · POST /v1/templates/github-sync/push

4XX Default Response

Same as 4XX · GET /v1/template-conversion-jobs

5XX Default Response

Same as 4XX · GET /v1/template-conversion-jobs

GEThttps://hermeticor.com/v1/upload-scan

Your ClamAV virus scanner for uploaded files (null = uploads are not scanned)

Code samples

cURL
curl -X GET "https://hermeticor.com/v1/upload-scan" \
  -H "Authorization: Bearer $HERMETICOR_API_KEY"
TypeScript
Python
Go
PHP
Ruby
Java

Responses

200 Default Response
Example
{
  "host": "string",
  "port": 0,
  "enabled": true
}
Schema
hoststringrequired
portintegerrequired
enabledbooleanrequired
4XX Default Response

Same as 4XX · GET /v1/template-conversion-jobs

5XX Default Response

Same as 4XX · GET /v1/template-conversion-jobs

PUThttps://hermeticor.com/v1/upload-scan

Scan every uploaded file with your clamd host (public address required). A hit quarantines the file; an unreachable scanner refuses the upload

Request body

application/json
hoststringrequired
portinteger
= 3310
enabledboolean
= true
{
  "host": "string",
  "port": 3310,
  "enabled": true
}

Code samples

cURL
curl -X PUT "https://hermeticor.com/v1/upload-scan" \
  -H "Authorization: Bearer $HERMETICOR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"host":"string","port":3310,"enabled":true}'
TypeScript
Python
Go
PHP
Ruby
Java

Responses

200 Default Response

Same as 200 · GET /v1/upload-scan

4XX Default Response

Same as 4XX · GET /v1/template-conversion-jobs

5XX Default Response

Same as 4XX · GET /v1/template-conversion-jobs

DELETEhttps://hermeticor.com/v1/upload-scan

Stop scanning uploads

Code samples

cURL
curl -X DELETE "https://hermeticor.com/v1/upload-scan" \
  -H "Authorization: Bearer $HERMETICOR_API_KEY"
TypeScript
Python
Go
PHP
Ruby
Java

Responses

200 Default Response

Same as 200 · DELETE /v1/templates/github-sync

4XX Default Response

Same as 4XX · GET /v1/template-conversion-jobs

5XX Default Response

Same as 4XX · GET /v1/template-conversion-jobs

POSThttps://hermeticor.com/v1/assets/uploads

Start a chunked upload of a large file

Request body

application/json
filenamestringrequired
chunksintegerrequired
folderIdstring
accessstring
public_indexable | public_not_indexable | private
{
  "filename": "string",
  "chunks": 0,
  "folderId": "string",
  "access": "public_indexable"
}

Code samples

cURL
curl -X POST "https://hermeticor.com/v1/assets/uploads" \
  -H "Authorization: Bearer $HERMETICOR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"filename":"string","chunks":0,"folderId":"string","access":"public_indexable"}'
TypeScript
Python
Go
PHP
Ruby
Java

Responses

201 Default Response
Example
{
  "uploadId": "string",
  "chunkBytes": 0
}
Schema
uploadIdstringrequired
chunkBytesintegerrequired
4XX Default Response

Same as 4XX · GET /v1/template-conversion-jobs

5XX Default Response

Same as 4XX · GET /v1/template-conversion-jobs

PUThttps://hermeticor.com/v1/assets/uploads/{id}/chunks/{n}

Send chunk n (multipart field "chunk", at most 2 MB); resending a chunk replaces it

Parameters

idstringpathrequired
nintegerpathrequired

Code samples

cURL
curl -X PUT "https://hermeticor.com/v1/assets/uploads/{id}/chunks/{n}" \
  -H "Authorization: Bearer $HERMETICOR_API_KEY"
TypeScript
Python
Go
PHP
Ruby
Java

Responses

200 Default Response

Same as 200 · DELETE /v1/templates/github-sync

4XX Default Response

Same as 4XX · GET /v1/template-conversion-jobs

5XX Default Response

Same as 4XX · GET /v1/template-conversion-jobs

Updated