Skip to main content
GET
/
api
/
public
/
v1
/
payments
/
pending
curl -sS https://app.opentrain.ai/api/public/v1/payments/pending \
  -H "Authorization: Bearer $OT_API_TOKEN"
{
  "payments": [
    {
      "id": "<INVOICE_ID>",
      "status": "PENDING_FUNDING",
      "invoiceKind": "FUNDING",
      "viewerRole": "EMPLOYER",
      "amountUsd": 300,
      "createdAt": "2026-06-12T10:05:00.000Z",
      "invoiceNumber": 1042,
      "job": {
        "id": "<JOB_ID>",
        "title": "Spanish tweet sentiment labeling"
      },
      "milestone": {
        "id": "<MILESTONE_ID>",
        "name": "First labeling batch"
      }
    }
  ]
}
Lists incomplete invoices visible to your account, newest first. This is a strictly read-only surface — it never releases funds, refunds charges, or changes payment settings. Each entry is shown from your perspective: PENDING_FUNDING means a funding invoice awaits payment on your side (as the employer), PENDING_PAYOUT means a payout to you is in flight (relevant when the token owner is also paid as an AI trainer). Use GET /approvals/{id} and GET /updates to track the co-sign approvals that resolve funding items. Requirements: payments:read scope. Works pre-claim. No parameters.

Response

payments
object[]

Errors

StatuscodeMeaning
401UNAUTHORIZEDMissing or invalid token
403FORBIDDENMissing payments:read scope
curl -sS https://app.opentrain.ai/api/public/v1/payments/pending \
  -H "Authorization: Bearer $OT_API_TOKEN"
{
  "payments": [
    {
      "id": "<INVOICE_ID>",
      "status": "PENDING_FUNDING",
      "invoiceKind": "FUNDING",
      "viewerRole": "EMPLOYER",
      "amountUsd": 300,
      "createdAt": "2026-06-12T10:05:00.000Z",
      "invoiceNumber": 1042,
      "job": {
        "id": "<JOB_ID>",
        "title": "Spanish tweet sentiment labeling"
      },
      "milestone": {
        "id": "<MILESTONE_ID>",
        "name": "First labeling batch"
      }
    }
  ]
}