---
title: "List every atomic op with its parameter contract"
method: GET
path: "/api/v1/ops"
tags: ["Ops"]
---

# List every atomic op with its parameter contract

`GET /api/v1/ops`

## Request

- Base URL: `https://api.imagestep.dev`
- URL: `https://api.imagestep.dev/api/v1/ops`
- Auth: none required

Every atomic op, with what a program needs to call it without a list of its own. Submit one with
`POST /api/v1/jobs {"op": "<name>", "assetIds": [...], "parameters": {...}}`, priced first with
`?dryRun=true`. Chaining ops is a list of steps — inline as `steps` on `POST /api/v1/jobs`, or
saved as a preset (`POST /api/v1/presets`). Answers without a credential.

What each entry carries:
- `params` — the parameter contract: name → type, bounds, default, description
- `pricing` — the price as data: `basis` (`per_item` · `process_quota` · `free`); for an AI op, `defaultModel` is that model's published price (the record `GET /api/pricing/image-models` publishes) with `markup` and `creditsPerUsd`; for a deterministic op, `processLimit` is the allowance per billing period by plan (-1 unlimited)
- `example` — one complete, validated `POST /api/v1/jobs` body with a placeholder asset id: copy it, swap the id. Absent for a sync op, which is not a job
- `modelCategory` — AI ops: the category a `model` must carry (`GET /api/v1/ai-models` → `categories`) to run the op
- `typicalSeconds` — how long one item usually takes as a job on the default model: a measured hint for sizing `wait`, not a promise; absent where nobody has measured
- `syncEndpoint` — the endpoint that runs the op while you wait; absent when there is none

USE THIS WHEN:
- Building a tool list or an operation dropdown
- Checking a request's parameters before submitting it

## Response `200`

OK

## Other responses

- `429`: Rate limited — `error.code` is `rate_limited` and `retryable` is true. `Retry-After` says how many seconds to wait.

---

[API](https://skmtc.dev/imagestep/apis/imagestep-api.md) · [All operations](https://skmtc.dev/imagestep/apis/imagestep-api/llms.txt) · [OpenAPI document](https://skmtc.dev/imagestep/apis/imagestep-api/revisions/5e8e922a3085?raw)
