Unlock statusEntitytypeEntityid

Poll extraction status for a pending unlock

After /unlock returns `outcome: "unlock_pending"`, poll this endpoint until status becomes `completed` or `failed`. Returns the pipeline phase, percent complete, and an error message if the pipeline failed. Contacts are not supported here (their enrichment is resolved automatically by the credit-hold cron). **Free (0 credits).**

GET
/unlock-status/{entityType}/{entityId}

After /unlock returns outcome: "unlock_pending", poll this endpoint until status becomes completed or failed. Returns the pipeline phase, percent complete, and an error message if the pipeline failed. Contacts are not supported here (their enrichment is resolved automatically by the credit-hold cron). Free (0 credits).

AuthorizationBearer <token>

API key (sk_live_... prefix). Generate keys in the UI under Settings > API Keys, then send it as Authorization: Bearer sk_live_...

In: header

Path Parameters

entityType*string
Value in"district" | "school"
entityId*string
Formatuuid

Response Body

application/json

application/json

curl -X GET "https://loading/api/v1/unlock-status/district/497f6eca-6276-4993-bfeb-53cbbbba6f08"
{
  "entity_id": "550e8400-e29b-41d4-a716-446655440000",
  "entity_type": "district",
  "status": "idle",
  "progress": {
    "current_phase": "string",
    "phase_state": "pending",
    "phases_completed": 9007199254740991,
    "phases_total": 1,
    "percent": 100,
    "message": "string",
    "started_at": "string"
  },
  "failure": {
    "message": "string",
    "can_retry": true,
    "occurred_at": "string"
  },
  "success": {
    "completed_at": "string",
    "duration_seconds": 9007199254740991
  },
  "extraction": {
    "state": "not_queued",
    "message": "string"
  }
}
Empty
{
  "error": "string",
  "message": "string",
  "statusCode": -9007199254740991
}