grant_conflict

HTTP 409: Grant conflict

When it occurs

A concurrent grant-state transition landed between your read and your write, for instance two redemptions racing the same join code, or a redemption racing an invite for the same person and team. This is the same "re-read, don't retry blind" shape precondition_failed carries for a row.

What to do next

Retry the same redemption or invite; a persisting conflict means the grant already exists for that (team, person) pair, so treat it as the outcome you wanted rather than an error to work around.