---
title: "List engines"
method: GET
path: "/api/v1/engines"
tags: ["Engine"]
---

# List engines

`GET /api/v1/engines`

Retrieve all engine objects.

## Query parameters

- `page_size` integer
- `cursor` string
- `id` integer[]
- `type` 'extractor' | 'splitter'
- `agenda_id` string
- `ordering` 'id' | '-id' | 'type' | '-type' | 'agenda_id' | '-agenda_id'

## Response `200`

OK

- object
  - `pagination` Pagination, required
    - `next` string, uri, nullable — URL for the next page of results. Contains an opaque signed `cursor` query parameter. Use this URL directly to fetch the next page — do not attempt to construct or modify the cursor value.
    - `previous` string, uri, nullable — URL for the previous page of results. Contains an opaque signed `cursor` query parameter. Use this URL directly to fetch the previous page — do not attempt to construct or modify the cursor value.
  - `results` Engine[], required
    - `id` integer, required — Engine object ID.
    - `url` string, uri, required — Engine object URL.
    - `name` string, required — Name of the engine.
    - `type` 'extractor' | 'splitter', required — Type of the engine. Allowed values are: - `extractor`: Engine used for data extraction - `splitter`: Engine used for splitting of documents
    - `learning_enabled` boolean, required — Whether is the engine learning from the attached queues.
    - `description` string, required — Description of the engine.
    - `agenda_id` string, required — Unique identifier of the engine.
    - `organization` string, uri, required — Organization URL.
    - `training_queues` string[], nullable, required — Queues that are used for training the engine. Queues that become assigned to the engine are added to the list automatically.
    - `settings` object — Engine settings.
      - `use_case` 'generic_ap' | 'coupa_line_level' | 'coupa_header_level' — Use case of the engine. Allowed values are: - `generic_ap`: Generic accounts payable - `coupa_line_level`: Coupa line level extraction - `coupa_header_level`: Coupa header level extraction

## Other responses

- `400` — Invalid input data.
- `401` — The username/password is invalid or token is invalid (e.g. expired).
- `403` — Insufficient permission, missing authentication, invalid CSRF token and similar issue.
- `404` — The specified resource was not found.
- `409` — Conflict
- `429` — Request rate is too high, wait before sending more requests. See [Rate Limiting](/guides/overview#rate-limiting) for more details.
- `500` — Server failure while processing the request.
- `502` — Invalid response from the upstream server.
- `503` — We're temporarily offline for maintenance. Please try again later.
- `504` — Upstream server could not complete the request in time.

---

[API](https://skmtc.dev/rossum/apis/rossum-api.md) · [All operations](https://skmtc.dev/rossum/apis/rossum-api/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/rossum/rossum-api/revisions/f1b5a910991d/schema)
