---
title: "List learned workflows"
method: GET
path: "/api/memories/workflows"
tags: ["Memories"]
---

# List learned workflows

`GET /api/memories/workflows`

## Request

- Base URL: `https://aximo.autify.com`
- URL: `https://aximo.autify.com/api/memories/workflows`
- Auth: API key in header `x-api-key`
- TypeScript: <https://skmtc.dev/autify/apis/aximo-api/docs/api/memories/workflows/get.ts> (a function with typed inputs; its response is checked against the schema)

Workflows the agent has learned in a workspace, each with the ordered
skills it is built from, most-used first.

Pages are cursored: pass the `nextCursor` from the previous response
back as `cursor`. The token is opaque — do not construct or parse it. A
response without `nextCursor` is the last page.

## Query parameters

- `projectId` string, uuid, required
- `platform` 'desktop' | 'android' | 'ios'
- `appIdentifier` string
- `limit` integer
- `cursor` string

## Response `200`

A page of workflows.

- object
  - `items` MemoryWorkflow[], required
    - `id` string, uuid, required
    - `projectId` string, uuid, nullable: Returned only by `GET /api/memories/workflows/{workflowId}`, where the request carries no workspace of its own. `null` for a memory scoped to the whole organization rather than one workspace.
    - `title` string, required
    - `steps` string[], required: The steps that completed the task, in order.
    - `platform` 'desktop' | 'android' | 'ios', required
    - `appIdentifier` string, nullable: The app this memory was learned against. `null` when it could not be derived — see the `appIdentifier` query parameter.
    - `nSucc` integer, required: Sessions in which this workflow was retrieved and the task succeeded.
    - `nUsed` integer, required: Sessions in which this workflow was retrieved.
    - `lastUsedAt` string, date-time, nullable
    - `createdAt` string, date-time, required
    - `updatedAt` string, date-time, required
    - `boundToCase` boolean, required: Whether a live test case pins this workflow, which makes it always available to that case's runs regardless of retrieval scoring.
    - `skills` MemoryWorkflowSkill[], required
      - `id` string, uuid, required
      - `title` string, required
      - `template` string, required: The instruction the agent replays, with `[[name]]` placeholders for the values that change between runs.
      - `placeholders` string[], required: Placeholder names appearing in `template`.
      - `platform` 'desktop' | 'android' | 'ios', required
      - `appIdentifier` string, nullable
      - `nSucc` integer, required: Sessions in which this skill was used and the task succeeded.
      - `nUsed` integer, required: Sessions in which this skill was used.
  - `nextCursor` string: Opaque cursor for the next page. Absent on the last page.

## Other responses

- `400`: Invalid query parameters or an undecodable cursor.
- `401`: Missing or invalid API key.
- `403`: API key is not scoped to an organization, the user is banned, or the user is no longer a member of the organization.
- `404`: The workspace does not exist in your organization.
- `429`: Rate limit exceeded — e.g. the daily session limit was reached for the organization, or too many API requests were sent in a short window (retry after the number of seconds in the `Retry-After` header).
- `500`: Unexpected server error.

---

[API](https://skmtc.dev/autify/apis/aximo-api.md) - [All operations](https://skmtc.dev/autify/apis/aximo-api/llms.txt) - [OpenAPI document](https://skmtc.dev/autify/apis/aximo-api/revisions/590722011284?raw)
