List an automation's firings
const url = 'https://api.pixonaut.app/v1/automations/example/firings?page=1&pageSize=50&status=all';const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
try { const response = await fetch(url, options); const data = await response.json(); console.log(data);} catch (error) { console.error(error);}curl --request GET \ --url 'https://api.pixonaut.app/v1/automations/example/firings?page=1&pageSize=50&status=all' \ --header 'Authorization: Bearer <token>'Operation ID: automations.firings
Newest first: each firing’s state, what it acts on, the step it got to and why, when it started, its version and whose grants it ran with; with how many each status filter holds, the search applied.
Authorizations
Section titled “Authorizations”Parameters
Section titled “Parameters”Path Parameters
Section titled “Path Parameters”Query Parameters
Section titled “Query Parameters”The page to read, from 1; the first when left out.
The page to read, from 1; the first when left out.
Only the firings in this state; done is one that succeeded.
Only the firings in this state; done is one that succeeded.
Only the firings that touched this design, print file or order, by its id.
Only the firings that touched this design, print file or order, by its id.
Responses
Section titled “Responses”A page of the automation’s firings
object
How many firings each status filter holds.
object
object
Why it failed, paused or was cancelled, in Pixonaut’s words. For an MCP key, a reason that may carry a printshop’s own answer (an email’s or a printshop step’s) is replaced: it can name the order’s customer.
The step it got to, and that step’s reason; null before any. For an MCP key, a reason that may carry a printshop’s own answer (an email’s or a printshop step’s) is replaced: it can name the order’s customer.
object
What it acts on, by id.
object
The name of the template its design was made from, which is how a design is named; null once the design is gone.
Every design, print file and order id it touched.
The version it runs on.
How many the chosen filter holds.
Examples
Example
{ "counts": { "all": 42, "done": 39, "failed": 1, "paused": 1, "waiting": 1 }, "firings": [ { "finishedAt": null, "id": "fir_1a2b3c4d5e6f", "ranAs": { "kind": "member", "name": "Ada Lewis", "userId": "u_8b1d2c3e4f5a" }, "reason": "It reached its limit of 50 spend actions in 24 hours.", "startedAt": 1760000300000, "state": "paused", "step": { "reason": "It reached its limit of 50 spend actions in 24 hours.", "state": "paused", "stepId": "order", "type": "place_order" }, "subject": { "designId": "des_2b4d8a9f6c1e", "orderId": "ord_6c1d2e3f4a5b", "printId": "prt_9e1b3d5f7a2c", "templateName": "Classic Tee" }, "touched": [ "des_2b4d8a9f6c1e", "prt_9e1b3d5f7a2c", "ord_6c1d2e3f4a5b" ], "version": 3 }, { "finishedAt": 1760000360000, "id": "fir_2b3c4d5e6f7a", "ranAs": { "kind": "member", "name": "Ada Lewis", "userId": "u_8b1d2c3e4f5a" }, "reason": null, "startedAt": 1760000300000, "state": "succeeded", "step": { "reason": null, "state": "done", "stepId": "order", "type": "place_order" }, "subject": { "designId": "des_3c5e9a0b7d2f", "orderId": "ord_7d2e3f4a5b6c", "printId": "prt_9e1b3d5f7a2c", "templateName": "Classic Tee" }, "touched": [ "des_3c5e9a0b7d2f", "prt_9e1b3d5f7a2c", "ord_7d2e3f4a5b6c" ], "version": 3 } ], "page": 1, "pageSize": 50, "total": 42}Headers
Section titled “Headers”Every response names the request it answers in X-Request-Id: the id the request was sent with in that header, when it is well formed, else one the API gave it. Quote it when reporting a refusal or a failure: the API’s log lines for that request carry it.
Refused: unauthorized
object
Examples
unauthorized
{ "error": "unauthorized"}Headers
Section titled “Headers”Every response names the request it answers in X-Request-Id: the id the request was sent with in that header, when it is well formed, else one the API gave it. Quote it when reporting a refusal or a failure: the API’s log lines for that request carry it.
Refused: feature_disabled, origin_forbidden, forbidden
object
The feature the tenant does not have. Always sent with feature_disabled.
Examples
feature_disabled
{ "error": "feature_disabled", "feature": "api"}forbidden
{ "error": "forbidden"}origin_forbidden
{ "error": "origin_forbidden"}Headers
Section titled “Headers”Every response names the request it answers in X-Request-Id: the id the request was sent with in that header, when it is well formed, else one the API gave it. Quote it when reporting a refusal or a failure: the API’s log lines for that request carry it.
Refused: automation_not_found
object
Examples
automation_not_found
{ "error": "automation_not_found"}Headers
Section titled “Headers”Every response names the request it answers in X-Request-Id: the id the request was sent with in that header, when it is well formed, else one the API gave it. Quote it when reporting a refusal or a failure: the API’s log lines for that request carry it.
Refused: invalid_query
object
Examples
invalid_query
{ "error": "invalid_query"}Headers
Section titled “Headers”Every response names the request it answers in X-Request-Id: the id the request was sent with in that header, when it is well formed, else one the API gave it. Quote it when reporting a refusal or a failure: the API’s log lines for that request carry it.
Refused: db_error. A request that failed unexpectedly answers as text instead.
object
Examples
db_error
{ "error": "db_error"}Headers
Section titled “Headers”Every response names the request it answers in X-Request-Id: the id the request was sent with in that header, when it is well formed, else one the API gave it. Quote it when reporting a refusal or a failure: the API’s log lines for that request carry it.
Questions? Write to [email protected].