How to complete the challenge PUT /api/challenger/guid (409) mismatch
Get your current challenger state from /api/challenger/{guid}.
Then send that JSON payload to PUT /api/challenger/{different-guid} while leaving the payload xChallenger value unchanged.
The response should be 409 Conflict:
{
"errorMessages": [
"URL GUID does not match payload X-CHALLENGER"
]
}
This is a conflict because the URL identifies one challenger while the payload identifies another.
Try it now
If you want to inspect the challenger payload first, get it with GET /api/challenger/{guid}. See the solution.
GET /api/challenger/{guid} to get the challenger payload
PUT /api/challenger/{different-guid} to trigger a GUID mismatch
Lessons Learned
409 Conflictexposes a mismatch between the target guid and the challenger data being restored.- Restore endpoints need consistency checks so one session cannot be accidentally written as another.
- Conflict tests should compare identifiers in the URL, body, and
X-CHALLENGERheader.
Suggested Experiments
- Change only the URL guid while keeping the saved payload untouched and confirm the conflict remains.
- Correct the guid mismatch and compare the successful restore response.