---
title: "Poll request status / fetch the result"
method: GET
path: "/auth/{requestId}"
tags: ["Auth"]
---

# Poll request status / fetch the result

`GET /auth/{requestId}`

## Request

- Base URL: `https://atk.tvarka.pro/v1`
- URL: `https://atk.tvarka.pro/v1/auth/{requestId}`
- Auth: one of:
  - HTTP basic
  - HTTP bearer

Readable with the provider's Basic credentials, or with the request's `clientToken`.

## Path parameters

- `requestId` string, uuid, required

## Response `200`

Current state.

- AuthAuthRequestState
  - `requestId` string, uuid, required
  - `method` 'physical' | 'nfc', required: physical = desktop reader; nfc = phone tap.
  - `status` 'pending' | 'awaitingCard' | 'awaitingCredentials' | 'finalizing' | 'done' | 'cancelled' | 'timeout' | 'deviceError' | 'pinBlocked' | 'cardRemoved' | 'certInvalid', required: Flat request status. Non-terminal - `pending`, `awaitingCard`, `awaitingCredentials`, `finalizing`. Terminal success - `done`. Terminal failure - `cancelled`/`timeout`/`deviceError`/`pinBlocked`/`cardRemoved`/`certInvalid`. `awaitingCredentials` is SDK-reported (CAN/PIN entry is out-of-band).
  - `nonce` string: Server-minted challenge nonce (see `Challenge`) - enables independent `sig` verification from polling alone.
  - `cert` object
    - `subject` AuthCertSubject: Selected subject fields from the certificate. `serialNumber` holds `PNOLT-<personal code>`.
      - `serialNumber` string
      - `givenName` string
      - `sn` string: Surname.
      - `cn` string
      - `c` string
    - `der` string, byte: Base64 DER, present once status == done.
  - `sig` string, byte
  - `assertion` string
  - `error` AuthErrorBody
    - `code` 'invalid_json' | 'missing_field' | 'invalid_field' | 'invalid_webhook_url' | 'invalid_document_ref' | 'invalid_basic_credentials' | 'invalid_client_token' | 'client_token_expired' | 'operation_token_expired' | 'invalid_download_token' | 'origin_not_allowed' | 'ip_not_allowed' | 'format_not_allowed' | 'document_ref_host_not_allowed' | 'method_not_allowed' | 'tenant_suspended' | 'tier_forbidden' | 'request_not_found' | 'pairing_not_found' | 'document_not_ready' | 'request_terminal' | 'operation_token_spent' | 'identity_swap' | 'idempotency_conflict' | 'service_in_progress' | 'service_expired' | 'pairing_not_available' | 'pairing_already_claimed' | 'pairing_expired' | 'document_too_large' | 'cert_invalid' | 'untrusted_chain' | 'cert_revoked' | 'cert_expired' | 'not_qualified' | 'cert_purpose_mismatch' | 'signature_invalid' | 'document_hash_mismatch' | 'document_size_mismatch' | 'rate_limited' | 'assembly_failed' | 'document_ref_fetch_failed' | 'erasure_failed' | 'pairing_service_unavailable' | 'service_unavailable', required: The full stable error-code catalog of the ATK API family (auth + sign + services); each endpoint returns the subset that applies to it. By HTTP status: 400 invalid_json, missing_field, invalid_field, invalid_webhook_url, invalid_document_ref. 401 invalid_basic_credentials, invalid_client_token, client_token_expired, operation_token_expired, invalid_download_token. 403 origin_not_allowed, ip_not_allowed, format_not_allowed, document_ref_host_not_allowed, method_not_allowed, tenant_suspended, tier_forbidden. 404 request_not_found, pairing_not_found, document_not_ready. 409 request_terminal, operation_token_spent, identity_swap, idempotency_conflict, service_in_progress, pairing_not_available, pairing_already_claimed. 410 pairing_expired. 413 document_too_large. 422 cert_invalid, untrusted_chain, cert_revoked, cert_expired, not_qualified, cert_purpose_mismatch, signature_invalid, document_hash_mismatch, document_size_mismatch. 429 rate_limited. 500 assembly_failed. 502 document_ref_fetch_failed. 503 erasure_failed, pairing_service_unavailable, service_unavailable. The catalog can grow in minor versions - fall back to HTTP status semantics for codes you do not recognize.
    - `message` string, required
    - `requestId` string, uuid
    - `retryable` boolean

## Other responses

- `401`: Missing/invalid credentials or client token.
- `404`: Unknown request.

---

[API](https://skmtc.dev/tvarka/apis/tvarka-atk-api.md) · [All operations](https://skmtc.dev/tvarka/apis/tvarka-atk-api/llms.txt) · [OpenAPI document](https://skmtc.dev/tvarka/apis/tvarka-atk-api/revisions/2ab888b16069?raw)
