> ## Documentation Index
> Fetch the complete documentation index at: https://opentrain.ai/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# Privacy and Work Email

> What identity data the API exposes at each stage, and why AI trainers are reachable only at their @opentrain.work Work Email.

The Public API applies one privacy rule consistently: **names are always masked, and personal contact details are never revealed at all.** Every API surface — proposals, profiles, contracts, platform events — shows a first name and last initial, never a full last name. Personal emails you never see — all platform-mediated contact happens through OpenTrain messaging or, for platform integrations, a managed `@opentrain.work` Work Email.

## Masked Identity Everywhere

Proposal candidates, AI trainer profiles, and contracts all expose a first name and last initial:

```json theme={null}
{
  "candidate": {
    "id": "...",
    "displayName": "Ada L.",
    "firstName": "Ada",
    "lastNameInitial": "L.",
    "profileSlug": "ada-l-1a2b3c",
    "profileTitle": "Senior Data Annotator",
    "country": "United Kingdom",
    "countryCode": "GB"
  }
}
```

If a name is missing entirely, the API falls back to `"Freelancer"` rather than exposing anything else.

AI-interview transcripts are sanitized before they reach you — internal control markers are stripped, and an empty transcript reads `"Interview completed."`.

## Post-Hire: Still Masked

Hiring does not unmask anyone. Contracts you're party to show the same masked name:

```json theme={null}
{
  "freelancer": {
    "userId": "...",
    "displayName": "Ada L.",
    "country": "United Kingdom",
    "profilePath": "/profile/ada-l-1a2b3c"
  }
}
```

Full names live only inside the OpenTrain app, where the platform controls how they're displayed — they never cross the API boundary.

## What Is Never Exposed

**The Public API returns no email field anywhere.** Not pre-hire, not post-hire, not on profiles, proposals, contracts, messages, or team rosters. Personal email addresses, phone numbers, and off-platform contact details never leave the platform. To reach an AI trainer, use [OpenTrain messaging](/docs/developers/api-reference/messages/send) — it notifies them through their own verified channels.

This is deliberate: it protects AI trainers from disintermediation and spam, and it means an agent integration can never accidentally leak a worker's personal contact information, because it never has it.

## Work Email: The Platform Exception

The [Platform API](/docs/developers/annotation-platforms/overview) has one carefully-gated channel for direct contact. When an annotation platform provisions a hired AI trainer into its own workspace, it may receive that person's **Work Email** — a platform-issued address ending in `@opentrain.work` that OpenTrain manages and can revoke:

```json theme={null}
{
  "contractId": "...",
  "participants": [
    {
      "opentrainUserId": "...",
      "displayName": "Ada L.",
      "country": "United Kingdom",
      "profileUrl": "https://app.opentrain.ai/profile/ada-l-1a2b3c",
      "workEmail": "ada.1234@opentrain.work"
    }
  ]
}
```

`workEmail` is present only when **both** gates pass:

1. The install holds the `participants:email` scope, **and**
2. The human granted **PII consent** when authorizing the install.

Otherwise the request fails `403`:

```json theme={null}
{
  "error": "Install has not granted PII consent for participant work emails",
  "code": "FORBIDDEN",
  "details": { "requiredScopes": ["participants:email"], "piiConsent": false }
}
```

Even then, only addresses with active provisioning and the `@opentrain.work` suffix are ever returned — a personal address can never slip through this path.

## Designing Your Integration Around This

* **Key your records on stable IDs** (`userId` / `opentrainUserId`), never on display names — masked names are not unique and can change.
* **Don't build flows that assume you can email candidates.** Pre-hire outreach goes through the [proposal conversation](/docs/developers/guides/evaluate-candidates) endpoint; post-hire communication through contract messaging.
* **Platforms: treat Work Email as account provisioning material** (workspace logins, assignment notifications), not as a general contact list. It's consent-gated for a reason, and addresses are deactivated when contracts end.
* **Never store or forward personal contact details** an AI trainer might volunteer in a message — the platform guarantee works only if integrations uphold it too.

## Related

<CardGroup cols={2}>
  <Card title="Evaluate Candidates" href="/docs/developers/guides/evaluate-candidates" icon="user-check">
    Working with masked profiles, transcripts, and pre-hire conversations.
  </Card>

  <Card title="Annotation Platforms Overview" href="/docs/developers/annotation-platforms/overview" icon="puzzle">
    Where Work Email fits in the platform provisioning lifecycle.
  </Card>
</CardGroup>
