Skip to main content
GET
/
api
/
partner
/
v1
/
contracts
/
{contractId}
/
participants
curl -sS https://app.opentrain.ai/api/partner/v1/contracts/<CONTRACT_ID>/participants \
  -H "Authorization: Bearer $OT_PARTNER_TOKEN"
{
  "contractId": "<CONTRACT_ID>",
  "participants": [
    {
      "opentrainUserId": "<OPENTRAIN_USER_ID>",
      "displayName": "Maria S.",
      "country": "PH",
      "profileUrl": "https://app.opentrain.ai/profile/maria-s-annotation",
      "workEmail": "maria.1234@opentrain.work"
    }
  ]
}
Returns the AI trainers on a contract whose job is linked by this install. Use it to provision workspace members — or to re-resolve a workEmail that was absent from a webhook payload. Requirements: participants:read scope. The workEmail field additionally requires the participants:email scope and the install’s PII consent — see privacy and Work Email.

Request

contractId
string
required
The contract ID, from list contracts or a contract.started event.

Response

contractId
string
The contract these participants belong to.
participants
object[]
The AI trainers on the contract.

Errors

StatuscodeMeaning
401UNAUTHORIZEDMissing, invalid, or revoked token
403FORBIDDENToken lacks participants:read
404NOT_FOUNDContract not found, or its job is not linked by this install
curl -sS https://app.opentrain.ai/api/partner/v1/contracts/<CONTRACT_ID>/participants \
  -H "Authorization: Bearer $OT_PARTNER_TOKEN"
{
  "contractId": "<CONTRACT_ID>",
  "participants": [
    {
      "opentrainUserId": "<OPENTRAIN_USER_ID>",
      "displayName": "Maria S.",
      "country": "PH",
      "profileUrl": "https://app.opentrain.ai/profile/maria-s-annotation",
      "workEmail": "maria.1234@opentrain.work"
    }
  ]
}