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

# Conflict

> The request is well formed, but the current state of the organization refuses it.

This page is the resolution target of the RFC 9457 `type` URI on every `conflict` problem body: `https://docs.get-exo.com/errors/conflict`.

**HTTP status: `409` Conflict**.

```json theme={"theme":{"light":"github-light-default","dark":"github-dark-default"}}
{
  "type": "https://docs.get-exo.com/errors/conflict",
  "title": "Conflict",
  "status": 409,
  "detail": "This subject id equals the key owner's user id and cannot be provisioned.",
  "code": "conflict",
  "requestId": "req_9f2c41ab7d0e5c18",
  "suggestedAction": "Choose a subject id that is not an internal user id."
}
```

## Why it happens

This is the default 409 code. It is raised directly when `PUT /v1/subjects/{subject_id}` is handed the key owner's own user id, which is already the default identity every unselected call acts as.

Most 409s in the API are named: `job_not_cancelable`, `export_not_ready`, `webhook_limit_reached`, `purge_impact_changed`, `idempotency_in_flight`, `connector_not_syncable`, `sandbox_subject_conflict` and `subject_mapping_invalid`.

## How to fix it

* Choose a different subject id. Use the id your own product has for that end user rather than an Exo internal id.

## Related

* [`subject_mapping_invalid`](/errors/subject_mapping_invalid)
* [`sandbox_subject_conflict`](/errors/sandbox_subject_conflict)
* [Errors](/platform/errors) for the envelope and the full catalogue
