---
title: "Read order status"
method: GET
path: "/v4/account/orders/{orderId}/status"
tags: ["API ordering"]
---

# Read order status

`GET /v4/account/orders/{orderId}/status`

Returns the lifecycle state of a previously placed order. Consumers `POST /v4/account/orders/create`, then poll this endpoint every 1–2 seconds with the returned `order_id` until `status === "processed"`. At that point `data.subaccount` is populated with the same shape `/v4/account/subaccounts` emits, so the caller can drop it straight into per-product endpoints like `/v4/account/{AccountID}/datacenter_shared/proxy-list`.

Gated on `account:api_ordering:read`. The order's email must match the authenticated identity — mismatches return 404 (not 403) so existence isn't leaked.

## Path parameters

- `orderId` string, uuid, required

## Response `200`

Order status. `subaccount` is `null` while the order is still being processed; once `status === 'processed'` the field is populated with the new subaccount's `AccountID`, `AccountType`, `label`, and `time_added`.

- object
  - `success` boolean
  - `data` object
    - `order_id` string, uuid
    - `status` 'paid' | 'processed' | 'blocked' | 'failed' | 'refunded' — Lifecycle state. `paid` = wallet debited, awaiting processor. `processed` = subaccount created. `blocked` / `failed` = rejected by the fraud / pricing guards (see `block_reason`).
    - `type` string
    - `created_at` integer, nullable — Unix timestamp.
    - `updated_at` integer, nullable — Unix timestamp.
    - `price` string, nullable
    - `currency` string
    - `paid_with_credit` boolean
    - `block_reason` string, nullable — Only set when `status` is `blocked` or `failed`.
    - `subaccount` object, nullable — Populated once the order processor finishes. Same shape as `/v4/account/subaccounts` entries.
      - `AccountID` string, uuid
      - `AccountType` string
      - `label` string
      - `time_added` integer, nullable

## Other responses

- `401` — Missing or invalid credentials.
- `403` — Status read is not enabled for this account. Contact support to request the `account:api_ordering:read` grant.
- `404` — Order not found, or it belongs to a different account.

---

[API](https://skmtc.net/proxyscrape/apis/proxyscrape-account-api.md) · [All operations](https://skmtc.net/proxyscrape/apis/proxyscrape-account-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/proxyscrape/proxyscrape-account-api/revisions/4e10267785e1/schema)
