# Contestant Joined Competition

**Webhook:** `ContestantJoinedCompetition`

Triggered when a user successfully joins a competition. This webhook helps track participation events, allowing external systems (e.g., email, CRM, or analytics platforms) to respond to user entries in trading competitions.

```json
{
  "webhookType"          : "ContestantJoinedCompetition",
  "testMode"             : false,
  "userId"               : "<user_id>",
  "userFirstname"        : "<user_firstname>",
  "userLastname"         : "<user_lastname>",
  "userEmail"            : "<user_email>",
  "userCountryCode"      : "<user_country>",
  "programId"            : "<program_id>",
  "programName"          : "<program_name>",
  "competitionId"        : "<competition_id>",
  "competitionName"      : "<competition_name>",
  "joinTimestamp"        : "<timestamp>"
}
```

## Payload Structure

| Field             | Type    | Description                                                                                                   |
| ----------------- | ------- | ------------------------------------------------------------------------------------------------------------- |
| `webhookType`     | String  | Type of webhook event. Always `ContestantJoinedCompetition` for this webhook.                                 |
| `testMode`        | Boolean | Flag to indicate whether this payload is a test `true` or live `false`. Currently, only `false` is supported. |
| `userId`          | String  | Unique identifier for the user within YourPropFirm SaaS platform.                                             |
| `userFirstname`   | String  | First name of the user.                                                                                       |
| `userLastname`    | String  | Last name of the user.                                                                                        |
| `userEmail`       | String  | Email address of the user, also the user unique identifier for authentication.                                |
| `userCountryCode` | String  | ISO 3166-1 alpha-2 country code (e.g., `US`, `SG`, `GB`) of the user’s address.                               |
| `programId`       | String  | Unique identifier for the trading program or plan the user enrolled in.                                       |
| `programName`     | String  | Display name of the trading program of the user joined.                                                       |
| `competitionId`   | String  | Unique identifier of the competition the user has joined.                                                     |
| `competitionName` | String  | Name of the competition.                                                                                      |
| `joinTimestamp`   | String  | ISO 8601. Timestamp when the user joined the competition (e.g., `2025-04-29T16:00:00Z`).                      |
