Get entity workflow runs

GET/projects/{projectId}/entities/{entityId}/workflows/{workflowId}/runs

Base URL: https://api.tinkermode.com

Get a paginated list of runs for this workflow, ordered by creation time descending. Returned runs don't include step records. Fetch a single run for its steps.

Authentication

Send an Authorization header of the form ModeCloud <AUTH_CODE>.

Must contain a user API key of a user with read permission on entity workflows (resource type: entityWorkflowRun, action: read), a service account token with the same permission, or a project API key.

Path parameters

NameTypeRequiredConstraintsDescription
projectIdintegerYesThe unique ID for a specified project.
entityIdstringYesEntity ID (unique within project)
workflowIdstringYesThe unique ID of the workflow (MongoDB ObjectID hex string).

Query parameters

NameTypeRequiredConstraintsDescription
beginCreatedAtstringNoReturn runs created at or after this timestamp. The format follows RFC3339.
endCreatedAtstringNoReturn runs created at or before this timestamp. The format follows RFC3339.
limitintegerNodefault: 25; min: 0; max: 500Maximum number of runs to return.
skipintegerNodefault: 0; min: 0Number of runs to skip over.
statestringNoReturn runs with the specified state.

Responses

200 Successfully retrieved the workflow runs.

Content type: application/json

Represents a single execution record of a workflow, without its step execution records. Returned by the run list endpoint; fetch a single run for its steps.

An array of objects with the following shape:

PropertyTypeRequiredConstraintsDescription
createdAtstringNoThe time the run was created (ISO 8601).
entityIdstringNoThe unique identifier for the entity the workflow belongs to.
errorobjectNoError information set when the run fails. Absent on non-failed runs.
Properties of error
PropertyTypeRequiredConstraintsDescription
codestringNoone of: user, internal, expiredMachine-readable error code. 'user': a failure the user can fix (see 'message'). 'internal': an unexpected failure the user cannot fix. 'expired': the run was not picked up before the timeout.
messagestringNoHuman-readable, user-facing description of the failure and how to address it. Present for 'user' errors. Safe to display; contains no internal implementation detail.
finishedAtstringNoThe time the run completed (ISO 8601). Absent while the run is queued or running.
idstringNoThe unique identifier for the workflow run.
projectIdintegerNoThe unique identifier for the project the run belongs to.
statestringNoone of: queued, running, succeeded, failedThe current lifecycle state of the run.
updatedAtstringNoThe time the run was last updated (ISO 8601).
workflowIdstringNoThe unique identifier for the workflow that was executed.

Response example

[
  {
    "createdAt": "2026-07-28T10:15:00.000Z",
    "entityId": "entity123456",
    "error": {
      "code": "user",
      "message": "could not send Slack message: channel not found"
    },
    "finishedAt": "2026-07-28T10:15:01.688Z",
    "id": "6871f2c6a4b39d0f1a2c3d4e::daily-check::1785233700000000000",
    "projectId": 123,
    "state": "failed",
    "updatedAt": "2026-07-28T10:15:01.690Z",
    "workflowId": "6871f2c6a4b39d0f1a2c3d4e"
  },
  {
    "createdAt": "2026-07-28T09:00:00.000Z",
    "entityId": "entity123456",
    "error": {
      "code": "expired"
    },
    "finishedAt": "2026-07-28T09:10:00.000Z",
    "id": "6871f2c6a4b39d0f1a2c3d4e::daily-check::1785229200000000000",
    "projectId": 123,
    "state": "failed",
    "updatedAt": "2026-07-28T09:10:00.000Z",
    "workflowId": "6871f2c6a4b39d0f1a2c3d4e"
  }
]

401 Authorization is required to access this resource.

Content type: application/json

PropertyTypeRequiredConstraintsDescription
dataobjectNoread-only (server-generated)Any relevant data related to error.
reasonstringYesread-only (server-generated)Reason of error.

403 Request failed because of denied permission.

Content type: application/json

PropertyTypeRequiredConstraintsDescription
dataobjectNoread-only (server-generated)Any relevant data related to error.
reasonstringYesread-only (server-generated)Reason of error.

404 Workflow not found.

429 Request failed because of rate limit.

Content type: application/json

PropertyTypeRequiredConstraintsDescription
dataobjectNoread-only (server-generated)Any relevant data related to error.
reasonstringYesread-only (server-generated)Reason of error.

500 An unexpected error has occurred.

Content type: application/json

PropertyTypeRequiredConstraintsDescription
dataobjectNoread-only (server-generated)Any relevant data related to error.
reasonstringYesread-only (server-generated)Reason of error.

503 The service is temporarily unavailable.

Content type: application/json

PropertyTypeRequiredConstraintsDescription
dataobjectNoread-only (server-generated)Any relevant data related to error.
reasonstringYesread-only (server-generated)Reason of error.