## Remove Player from Campaign

This endpoint allows you to remove a player from a campaign.

A player cannot be removed if any of the following conditions are met:

* the campaign is ended or disabled
* the campaign doesn't use PLAYER_LIST strategy.
* player already started campaign


**API Call Sample:**

```shell curl
curl -i -X DELETE \
  -u '<username>:<password>' \
  https://asia.stage.rubyplay.io/api/v1/campaign/123/participant/player2
```

```json 400 application/json
{
  "code": "REQUEST_NOT_VALID",
  "message": "Input param is not valid.",
  "timestamp": "2026-01-25T14:30:00Z",
  "path": "/api/v1/campaign/{campaignId}/participant/{externalPlayerId}"
}
```

```json 401 application/json
{
  "code": "NOT_AUTHORIZED",
  "message": "Authentication failed",
  "timestamp": "2026-01-25T14:30:00Z",
  "path": "/api/v1/campaign/{campaignId}/participant/{externalPlayerId}"
}
```

```json 403 application/json
{
  "code": "INSUFFICIENT_SCOPE",
  "message": "Insufficient scope to access this resource. Required: campaign:delete",
  "timestamp": "2026-01-25T14:30:00Z",
  "path": "/api/v1/campaign/{campaignId}/participant/{externalPlayerId}"
}
```

```json 500 application/json
{
  "code": "UNKNOWN_ERROR",
  "message": "Something went wrong",
  "timestamp": "2026-01-25T14:30:00Z",
  "path": "/api/v1/campaign/{campaignId}/participant/{externalPlayerId}"
}
```

```json 504 application/json
{
  "code": "TIMEOUT",
  "message": "The server did not respond within the expected time",
  "timestamp": "2026-01-25T14:30:00Z",
  "path": "/api/v1/campaign/{campaignId}/participant/{externalPlayerId}"
}
```