primary_contact_conflict
Two requests tried to claim the primary contact for the same counterparty at once.
Two requests tried to claim the primary contact for the same counterparty at once.
| Code | primary_contact_conflict |
| Type | conflict_error — State conflict |
| HTTP | 409 |
| Retriable? | Yes |
What to do
Retry. Exactly one contact per counterparty may be primary and the database enforces it, so the loser of the race is safe to repeat.
Retrying the same request may work. Respect Retry-After when it comes.
The envelope
{
"error": {
"type": "conflict_error",
"code": "primary_contact_conflict",
"message": "…",
"hint": "Retry. Exactly one contact per counterparty may be primary and the database enforces it, so the loser of the race is safe to repeat.",
"retriable": true,
"doc_url": "https://docs.facturia.cl/errors/primary_contact_conflict",
"request_id": "req_01K2R7Q9M4T2VB"
}
}Program against code, never against message — the prose can be rewritten, the code cannot (§5.8).
hint and retriable arrive in the response with these exact values: they are a function of code and come from the same dictionary GET /v1/error_codes serves, so the envelope and the dictionary cannot disagree. Both are English on the wire by design — one registry, one language. More in The error envelope.
See also
Every code
The error envelope
The machine-readable copy of this page lives at GET /v1/error_codes, unauthenticated.