Workflows
apiKeyAuthorizationBearer <token>An API key from Settings → Developers → API keys.
Success. Writes without read permission return an ID and revision only.
application/json- response
workflows*array<>webhooks*array<>Where the workflows' Send webhook actions send, by webhookId.
curl -X GET 'https://app.italic.com/api/v2/workflows'{
"workflows": [
{
"id": "string",
"name": "string",
"enabled": true,
"trigger": {
"type": "recording",
"phrases": [
"string"
],
"match": "anywhere",
"input": "hold",
"kind": "clip"
},
"actions": [
{
"id": "string",
"type": "ai",
"approval": "ask"
}
],
"createdAt": 0,
"updatedAt": 0
}
],
"webhooks": [
{
"id": "string",
"url": "string"
}
]
}apiKeyAuthorizationBearer <token>An API key from Settings → Developers → API keys.
Idempotency-Key*stringReuse the same key and body when retrying; the retry returns the first result with replayed: true. Keys are kept for 24 hours.
1 <= length <= 128application/json- body
name*string1 <= length <= 60enabled?booleanDefaults to true.
trigger*Which new recordings start the workflow. Every condition given must match.
actions*array<>1 <= items <= 8Success. Writes without read permission return an ID and revision only.
application/json- response
workflow*secrets?array<>Signing secrets of webhooks this request added, shown once.
replayed?booleancurl -X POST 'https://app.italic.com/api/v2/workflows' \
-H 'Idempotency-Key: string' \
-H 'Content-Type: application/json' \
-d '{
"name": "string",
"trigger": {
"type": "recording"
},
"actions": [
{
"id": "string",
"type": "ai"
}
]
}'{
"workflow": {
"id": "string",
"name": "string",
"enabled": true,
"trigger": {
"type": "recording",
"phrases": [
"string"
],
"match": "anywhere",
"input": "hold",
"kind": "clip"
},
"actions": [
{
"id": "string",
"type": "ai",
"approval": "ask"
}
],
"createdAt": 0,
"updatedAt": 0
},
"secrets": [
{
"actionIndex": 0,
"url": "string",
"secret": "string"
}
],
"replayed": true
}apiKeyAuthorizationBearer <token>An API key from Settings → Developers → API keys.
id*string^[A-Za-z0-9][A-Za-z0-9._:-]*$1 <= length <= 256Success. Writes without read permission return an ID and revision only.
application/json- response
workflow*secrets?array<>Signing secrets of webhooks this request added, shown once.
replayed?booleancurl -X GET 'https://app.italic.com/api/v2/workflows/string'{
"workflow": {
"id": "string",
"name": "string",
"enabled": true,
"trigger": {
"type": "recording",
"phrases": [
"string"
],
"match": "anywhere",
"input": "hold",
"kind": "clip"
},
"actions": [
{
"id": "string",
"type": "ai",
"approval": "ask"
}
],
"createdAt": 0,
"updatedAt": 0
},
"secrets": [
{
"actionIndex": 0,
"url": "string",
"secret": "string"
}
],
"replayed": true
}apiKeyAuthorizationBearer <token>An API key from Settings → Developers → API keys.
id*string^[A-Za-z0-9][A-Za-z0-9._:-]*$1 <= length <= 256application/json- body
enabled*booleanSuccess. Writes without read permission return an ID and revision only.
application/json- response
workflow*secrets?array<>Signing secrets of webhooks this request added, shown once.
replayed?booleancurl -X PATCH 'https://app.italic.com/api/v2/workflows/string' \
-H 'Content-Type: application/json' \
-d '{
"enabled": true
}'{
"workflow": {
"id": "string",
"name": "string",
"enabled": true,
"trigger": {
"type": "recording",
"phrases": [
"string"
],
"match": "anywhere",
"input": "hold",
"kind": "clip"
},
"actions": [
{
"id": "string",
"type": "ai",
"approval": "ask"
}
],
"createdAt": 0,
"updatedAt": 0
},
"secrets": [
{
"actionIndex": 0,
"url": "string",
"secret": "string"
}
],
"replayed": true
}apiKeyAuthorizationBearer <token>An API key from Settings → Developers → API keys.
id*string^[A-Za-z0-9][A-Za-z0-9._:-]*$1 <= length <= 256Success. Writes without read permission return an ID and revision only.
application/json- response
id*string^[A-Za-z0-9][A-Za-z0-9._:-]*$1 <= length <= 256deleted*booleancurl -X DELETE 'https://app.italic.com/api/v2/workflows/string'{
"id": "string",
"deleted": true
}apiKeyAuthorizationBearer <token>An API key from Settings → Developers → API keys.
id*string^[A-Za-z0-9][A-Za-z0-9._:-]*$1 <= length <= 256application/json- body
name*string1 <= length <= 60enabled?booleanDefaults to true.
trigger*Which new recordings start the workflow. Every condition given must match.
actions*array<>1 <= items <= 8Success. Writes without read permission return an ID and revision only.
application/json- response
workflow*secrets?array<>Signing secrets of webhooks this request added, shown once.
replayed?booleancurl -X PUT 'https://app.italic.com/api/v2/workflows/string' \
-H 'Content-Type: application/json' \
-d '{
"name": "string",
"trigger": {
"type": "recording"
},
"actions": [
{
"id": "string",
"type": "ai"
}
]
}'{
"workflow": {
"id": "string",
"name": "string",
"enabled": true,
"trigger": {
"type": "recording",
"phrases": [
"string"
],
"match": "anywhere",
"input": "hold",
"kind": "clip"
},
"actions": [
{
"id": "string",
"type": "ai",
"approval": "ask"
}
],
"createdAt": 0,
"updatedAt": 0
},
"secrets": [
{
"actionIndex": 0,
"url": "string",
"secret": "string"
}
],
"replayed": true
}