> ## Documentation Index
> Fetch the complete documentation index at: https://dev-docs.trychainshift.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# Runs overview

> Asynchronous behavior of runs, submission parameters, statuses, and billing

A run is an asynchronous collection job that executes your registered prompts on AI models. When you submit one, a `runID` is returned immediately and collection proceeds in the background. Check for completion by polling (every 30 seconds is recommended).

## Submission rules

| Item | Rule |
| - | - |
| Prompt selection | **Exactly one** of `promptIDs` (1 to 500) or `promptSetID` |
| `models` | Values from [List supported models](https://dev-docs.trychainshift.ai/en/api-reference/discovery/list-models.md) only. At least 1; duplicates count once |
| `region` | Optional. Defaults to `KR` |
| `location` | Optional. A code from [List supported locations](https://dev-docs.trychainshift.ai/en/api-reference/discovery/list-locations.md). When omitted, the run uses the `region` level. ChatGPT and Perplexity only |
| `repeatCount` | 1 to 100. Repeats the same combination (for measuring visibility rate) |
| Total runs | prompts × models × repeats ≤ **10,000** (`RUN_TOO_MANY_TASKS`) |

## Statuses

* **Run request**: only `RUNNING` → `FINISHED`. Even if individual runs fail, the run request ends as `FINISHED`; check the failure count in `failedCount`.
* **Individual run**: `PENDING` → `SUCCESS` or `FAILED`.

## Billing

Credits are charged after completion, not at submission: **each run that finishes collection** is charged at the per-model rate. Failed runs are not charged. See [Credits](https://dev-docs.trychainshift.ai/en/guides/credits.md).

## FAQ

**Where do I get the answer body?**
The `answers` field in the run status only contains progress. For the body and sources, query [List answers](https://dev-docs.trychainshift.ai/en/api-reference/answers/list-answers.md) with the `runID` filter.

**Why does the run list return only 10 items at a time?**
The `limit` for `GET /runs` is at most 10 (other lists allow 100). Iterate with the cursor if you need to retrieve many runs.

See the [Running prompts](https://dev-docs.trychainshift.ai/en/guides/submitting-runs.md) guide for the full flow and polling code.


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.