---
id: elicitation-get-elicitation-job
title: "GET /api/elicitation/:id/jobs/:jobId — Статус async-прогона (poll)"
domain: elicitation
kind: api-method
http: "GET /api/elicitation/:id/jobs/:jobId"
---

# GET /api/elicitation/:id/jobs/:jobId — Статус async-прогона (poll) {#elicitation-get-elicitation-job}

## Сводка

| Поле | Значение |
|---|---|
| **HTTP** | `GET /api/elicitation/:id/jobs/:jobId` |
| **Auth** | `requireAuth` — только авторизованный |
| **Scope токена** | `read` |
| **PG-функции** | `api.update_generation_job` |
| **Таблицы** | `generation_job`, `elicitation_run` |
| **SRM** | SRM-395 |
| **RP (права)** | — |
| **Файл роута** | `server/routes/elicitation.js` |
| **Статус** | done |

**Аргументы запроса** (best-effort из хендлера; путь-параметры опущены):

_аргументов не обнаружено (подтвердить вручную по `server/routes/elicitation.js`)_

**Коды ответов/ошибок** (из хендлера): `403`, `404` (+ `200`) — _уточнить причины вручную_

**Scope токена:** `read` достаточно.

Стандартный poll async-контракта: опрашивайте раз в 2–5 секунд до статуса
`succeeded` или `failed`, затем забирайте результат через
[`GET /api/elicitation/:id`](get-run.md#elicitation-get-run).

**Ответ 200:**

```json
{ "id": "uuid", "kind": "elicitation", "resource_type": "elicitation_run",
  "resource_id": "uuid", "status": "running", "progress": { "stage": "…" },
  "error": null, "created_at": "…", "started_at": "…", "finished_at": null }
```

Джоб обязан принадлежать прогону из пути, а прогон — вам (иначе `404`/`403`).
Зависшие `pending`/`running` старше 30 минут при опросе переводятся в `failed`
с ошибкой `timeout (30m)`.

<!-- gen:start:related -->
## Связанные
- [Конвенции](../../../shared/conventions.md#conventions) · [Роли](../../../shared/roles.md#roles) · [Ошибки](../../../shared/errors.md#errors) · [Глоссарий](../../../shared/glossary.md#glossary)
<!-- gen:end:related -->

---

Human view: https://docs.vnimanie.ai/specbuilder/v1/domains/elicitation/api/get-elicitation-job/