apichallenges > solutions
API Challenge Solutions
Getting Started
First Real Challenge
GET Challenges
HEAD Challenges
Creation Challenges with POST
- POST /todos id (201)
- POST /todos (400) doneStatus
- POST /todos (400) title too long
- POST /todos (400) description too long
- POST /todos (201) max out content
- POST /todos (413) content too long
- POST /todos (400) extra
Creation Challenges with PUT
- PUT /todos/{id} (400)
Update Challenges with POST
- POST /todos id (200)
- POST /todos/{id} (404)
Update Challenges with PUT
- PUT /todos/{id} full (200)
- PUT /todos/{id} partial (200)
- PUT /todos/{id} no title (400)
- PUT /todos/{id} no amend id (400)
DELETE Challenges
OPTIONS Challenges
Accept Header Challenges
- GET /todos (200) XML
- GET /todos (200) JSON
- GET /todos (200) ANY
- GET /todos (200) XML pref
- GET /todos (200) no accept
- GET /todos (406)
Content-Type Header Challenges
Fancy a Break? Restore your session
- GET /challenger/guid (existing X-CHALLENGER)
- PUT /challenger/guid RESTORE
- PUT /challenger/guid CREATE
- GET /challenger/database/guid (200)
- PUT /challenger/database/guid (Update)
Mix Accept and Content-Type Challenges
Status Code Challenges
- Solve the 405, 500, 501 and 204 Status Code Challenges
- DELETE /heartbeat (405)
- PATCH /heartbeat (500)
- TRACE /heartbeat (501)
- GET /heartbeat (204)
HTTP Method Override Challenges
- POST /heartbeat as DELETE (405)
- POST /heartbeat as PATCH (500)
- POST /heartbeat as Trace (501)
Authentication Challenges
Authorization Challenges
- GET /secret/note (403)
- GET /secret/note (401)
- GET /secret/note (200)
- POST /secret/note (200)
- POST /secret/note (401) && (403)
- POST /secret/note (401)
- POST /secret/note (403)
- GET && POST /secret/note (Bearer)
- GET /secret/note (Bearer)
- POST /secret/note (Bearer)
Miscellaneous Challenges
- DELETE /todos/{id} (200) all
- POST /todos (201) all