Skip to content

Automations

19 calls. Every request needs the Authorization header: see the overview.

GET /automated-actions

Every definition of the tenant, or of one namespace with { namespace }.

Who can call it: Admins and members, with an API key or a portal session. Try it in the API playground.

Response: AutomatedAction[] (200)

curl -X GET "https://api.maitento.com/automated-actions" \
-H "Authorization: $MAITENTO_AUTH"
DELETE /automated-actions/by-id/{id}

Deletes the definition (refused with a 400 while something still uses it or a run of it is going).

Who can call it: Admins and members, with an API key or a portal session. Try it in the API playground.

Path parameters

NameTypeRequiredDescription
iduuidyes

Response: no body (204)

curl -X DELETE "https://api.maitento.com/automated-actions/by-id/<id>" \
-H "Authorization: $MAITENTO_AUTH"
GET /automated-actions/by-id/{id}

The definition with this id. Throws NotFoundError when there is none.

Who can call it: Admins and members, with an API key or a portal session. Try it in the API playground.

Path parameters

NameTypeRequiredDescription
iduuidyes

Response: AutomatedAction (200)

curl -X GET "https://api.maitento.com/automated-actions/by-id/<id>" \
-H "Authorization: $MAITENTO_AUTH"
PUT /automated-actions/by-id/{id}

Replaces an automation’s name, description and actions.

Who can call it: Admins and members, with an API key or a portal session. Try it in the API playground.

Path parameters

NameTypeRequiredDescription
iduuidyes

Request body: UpdateAutomatedActionRequest

FieldTypeRequiredDescription
namestringThe automation’s name, unique within the namespace.
descriptionstring | nullWhat the automation is for.
actionsAutomatedActionItemInput[]What the automation starts each time it fires, at least one: one run per action. Replaces the current list.

Response: AutomatedAction (200)

curl -X PUT "https://api.maitento.com/automated-actions/by-id/<id>" \
-H "Authorization: $MAITENTO_AUTH" \
-H "Content-Type: application/json" \
-d '{"name":"...","description":"...","actions":[]}'
GET /automated-actions/by-id/{id}/history

The automation’s recent executions.

Who can call it: Admins and members, with an API key or a portal session. Try it in the API playground.

Path parameters

NameTypeRequiredDescription
iduuidyes

Query parameters

NameTypeRequiredDescription
limitinteger

Response: ExecutionHistoryEntry[] (200)

curl -X GET "https://api.maitento.com/automated-actions/by-id/<id>/history" \
-H "Authorization: $MAITENTO_AUTH"
POST /automated-actions/by-id/{id}/message-triggers

Adds a message trigger.

Who can call it: Admins and members, with an API key or a portal session. Try it in the API playground.

Path parameters

NameTypeRequiredDescription
iduuidyes

Request body: MessageTriggerInput

FieldTypeRequiredDescription
iduuidThe trigger’s id.
namestring | nullA name for the trigger. Optional.
isEnabledbooleanWhether the trigger fires. Switch it off to pause it without deleting it.
triggerTypeMessageTriggerTypeWhich kind of run’s changes it listens to.
eventFilterstring | nullA JSONPath expression over the change (the run is under item, with statuses as numbers): the trigger fires only when it matches. Null or empty: every change fires it, including changes to the runs it starts itself.

Response: AutomatedAction (200)

curl -X POST "https://api.maitento.com/automated-actions/by-id/<id>/message-triggers" \
-H "Authorization: $MAITENTO_AUTH" \
-H "Content-Type: application/json" \
-d '{"id":"...","name":"...","isEnabled":false,"triggerType":"AppProcessUpdated","eventFilter":"..."}'
DELETE /automated-actions/by-id/{id}/message-triggers/{triggerId}

Removes a message trigger.

Who can call it: Admins and members, with an API key or a portal session. Try it in the API playground.

Path parameters

NameTypeRequiredDescription
iduuidyes
triggerIduuidyes

Response: AutomatedAction (200)

curl -X DELETE "https://api.maitento.com/automated-actions/by-id/<id>/message-triggers/<triggerId>" \
-H "Authorization: $MAITENTO_AUTH"
PUT /automated-actions/by-id/{id}/message-triggers/{triggerId}

Replaces a message trigger.

Who can call it: Admins and members, with an API key or a portal session. Try it in the API playground.

Path parameters

NameTypeRequiredDescription
iduuidyes
triggerIduuidyes

Request body: MessageTriggerInput

FieldTypeRequiredDescription
iduuidThe trigger’s id.
namestring | nullA name for the trigger. Optional.
isEnabledbooleanWhether the trigger fires. Switch it off to pause it without deleting it.
triggerTypeMessageTriggerTypeWhich kind of run’s changes it listens to.
eventFilterstring | nullA JSONPath expression over the change (the run is under item, with statuses as numbers): the trigger fires only when it matches. Null or empty: every change fires it, including changes to the runs it starts itself.

Response: AutomatedAction (200)

curl -X PUT "https://api.maitento.com/automated-actions/by-id/<id>/message-triggers/<triggerId>" \
-H "Authorization: $MAITENTO_AUTH" \
-H "Content-Type: application/json" \
-d '{"id":"...","name":"...","isEnabled":false,"triggerType":"AppProcessUpdated","eventFilter":"..."}'
POST /automated-actions/by-id/{id}/message-triggers/{triggerId}/disable

Disables a message trigger.

Who can call it: Admins and members, with an API key or a portal session. Try it in the API playground.

Path parameters

NameTypeRequiredDescription
iduuidyes
triggerIduuidyes

Response: AutomatedAction (200)

curl -X POST "https://api.maitento.com/automated-actions/by-id/<id>/message-triggers/<triggerId>/disable" \
-H "Authorization: $MAITENTO_AUTH"
POST /automated-actions/by-id/{id}/message-triggers/{triggerId}/enable

Enables a message trigger.

Who can call it: Admins and members, with an API key or a portal session. Try it in the API playground.

Path parameters

NameTypeRequiredDescription
iduuidyes
triggerIduuidyes

Response: AutomatedAction (200)

curl -X POST "https://api.maitento.com/automated-actions/by-id/<id>/message-triggers/<triggerId>/enable" \
-H "Authorization: $MAITENTO_AUTH"
POST /automated-actions/by-id/{id}/schedules

Adds a cron schedule.

Who can call it: Admins and members, with an API key or a portal session. Try it in the API playground.

Path parameters

NameTypeRequiredDescription
iduuidyes

Request body: CronScheduleInput

FieldTypeRequiredDescription
iduuidThe schedule’s id.
namestring | nullA name for the schedule. Optional.
isEnabledbooleanWhether the schedule triggers the automation. Switch it off to pause it without deleting it.
secondstring | nullThe cron seconds field. Optional: set it for a six-field expression.
minutestringThe cron minutes field, such as 0 or */15.
hourstringThe cron hours field, in UTC, such as 7.
dayOfMonthstringThe cron day-of-month field.
monthstringThe cron month field.
dayOfWeekstringThe cron day-of-week field, such as 1-5 for weekdays.
nextOccurrencedatetime | nullWhen the schedule next triggers, in UTC. Set by Maitento.

Response: AutomatedAction (200)

curl -X POST "https://api.maitento.com/automated-actions/by-id/<id>/schedules" \
-H "Authorization: $MAITENTO_AUTH" \
-H "Content-Type: application/json" \
-d '{"id":"...","name":"...","isEnabled":false,"second":"...","minute":"...","hour":"...","dayOfMonth":"...","month":"...","dayOfWeek":"...","nextOccurrence":"2026-01-01T00:00:00Z"}'
DELETE /automated-actions/by-id/{id}/schedules/{scheduleId}

Removes a schedule.

Who can call it: Admins and members, with an API key or a portal session. Try it in the API playground.

Path parameters

NameTypeRequiredDescription
iduuidyes
scheduleIduuidyes

Response: AutomatedAction (200)

curl -X DELETE "https://api.maitento.com/automated-actions/by-id/<id>/schedules/<scheduleId>" \
-H "Authorization: $MAITENTO_AUTH"
PUT /automated-actions/by-id/{id}/schedules/{scheduleId}

Replaces a schedule.

Who can call it: Admins and members, with an API key or a portal session. Try it in the API playground.

Path parameters

NameTypeRequiredDescription
iduuidyes
scheduleIduuidyes

Request body: CronScheduleInput

FieldTypeRequiredDescription
iduuidThe schedule’s id.
namestring | nullA name for the schedule. Optional.
isEnabledbooleanWhether the schedule triggers the automation. Switch it off to pause it without deleting it.
secondstring | nullThe cron seconds field. Optional: set it for a six-field expression.
minutestringThe cron minutes field, such as 0 or */15.
hourstringThe cron hours field, in UTC, such as 7.
dayOfMonthstringThe cron day-of-month field.
monthstringThe cron month field.
dayOfWeekstringThe cron day-of-week field, such as 1-5 for weekdays.
nextOccurrencedatetime | nullWhen the schedule next triggers, in UTC. Set by Maitento.

Response: AutomatedAction (200)

curl -X PUT "https://api.maitento.com/automated-actions/by-id/<id>/schedules/<scheduleId>" \
-H "Authorization: $MAITENTO_AUTH" \
-H "Content-Type: application/json" \
-d '{"id":"...","name":"...","isEnabled":false,"second":"...","minute":"...","hour":"...","dayOfMonth":"...","month":"...","dayOfWeek":"...","nextOccurrence":"2026-01-01T00:00:00Z"}'
POST /automated-actions/by-id/{id}/schedules/{scheduleId}/disable

Disables a schedule.

Who can call it: Admins and members, with an API key or a portal session. Try it in the API playground.

Path parameters

NameTypeRequiredDescription
iduuidyes
scheduleIduuidyes

Response: AutomatedAction (200)

curl -X POST "https://api.maitento.com/automated-actions/by-id/<id>/schedules/<scheduleId>/disable" \
-H "Authorization: $MAITENTO_AUTH"
POST /automated-actions/by-id/{id}/schedules/{scheduleId}/enable

Enables a schedule.

Who can call it: Admins and members, with an API key or a portal session. Try it in the API playground.

Path parameters

NameTypeRequiredDescription
iduuidyes
scheduleIduuidyes

Response: AutomatedAction (200)

curl -X POST "https://api.maitento.com/automated-actions/by-id/<id>/schedules/<scheduleId>/enable" \
-H "Authorization: $MAITENTO_AUTH"
POST /automated-actions/by-id/{id}/trigger

Runs the automation now. Starts work, so it is never retried. Returns the first run started. Throws a ValidationError with code api:automations:start-failed (then the cause’s own codes) when nothing could start.

Who can call it: Admins and members, with an API key or a portal session. Try it in the API playground.

Path parameters

NameTypeRequiredDescription
iduuidyes

Response: TriggerResponse (200)

curl -X POST "https://api.maitento.com/automated-actions/by-id/<id>/trigger" \
-H "Authorization: $MAITENTO_AUTH"
GET /namespaces/{namespaceName}/automated-actions

Every definition of the tenant, or of one namespace with { namespace }.

Who can call it: Admins and members, with an API key or a portal session. Try it in the API playground.

Path parameters

NameTypeRequiredDescription
namespaceNamestringyes

Response: AutomatedAction[] (200)

curl -X GET "https://api.maitento.com/namespaces/<namespaceName>/automated-actions" \
-H "Authorization: $MAITENTO_AUTH"
POST /namespaces/{namespaceName}/automated-actions

Creates an automation in the namespace.

Who can call it: Admins and members, with an API key or a portal session. Try it in the API playground.

Path parameters

NameTypeRequiredDescription
namespaceNamestringyes

Request body: CreateAutomatedActionRequest

FieldTypeRequiredDescription
namestringThe automation’s name, unique within the namespace.
descriptionstring | nullWhat the automation is for.
actionsAutomatedActionItemInput[]What the automation starts each time it fires, at least one: one run per action.

Response: AutomatedAction (200)

curl -X POST "https://api.maitento.com/namespaces/<namespaceName>/automated-actions" \
-H "Authorization: $MAITENTO_AUTH" \
-H "Content-Type: application/json" \
-d '{"name":"...","description":"...","actions":[]}'
GET /namespaces/{namespaceName}/automated-actions/by-name/{name}

The definition with this name in the namespace. Throws NotFoundError when there is none.

Who can call it: Admins and members, with an API key or a portal session. Try it in the API playground.

Path parameters

NameTypeRequiredDescription
namespaceNamestringyes
namestringyes

Response: AutomatedAction (200)

curl -X GET "https://api.maitento.com/namespaces/<namespaceName>/automated-actions/by-name/<name>" \
-H "Authorization: $MAITENTO_AUTH"