RĂ©fĂ©rence de lâAPI REST de jeux
Utilisez une clĂ© dâAPI Bearer. La crĂ©ation enregistre le rĂ©sultat complet dans Mes jeux et renvoie des pages, sans octets de fichier.
Authentification
Envoyez Authorization: Bearer YOUR_API_KEY. Les points dâaccĂšs externes refusent les cookies. Gardez la clĂ© sur votre serveur.
Exemple de requĂȘte
curl -X POST https://puzzlegenio.com/api/v1/puzzles \
-H 'Authorization: Bearer YOUR_API_KEY' \
-H 'Idempotency-Key: task-000000000001' \
-H 'Content-Type: application/json' \
-d '{ "type": "wordsearch", "preset": "word-search-for-kids", "title": "Animal word search", "input": { "words": [ "CAT", "DOG", "LION", "TIGER" ] }, "options": { "gridSize": 10, "allowDiagonal": false } }'Exemple de réponse réussie
{
"data": {
"savedId": "123456789",
"shareId": "AbCdEfGhIjKlMnOpQrStUvWxYz012345",
"type": "wordsearch",
"preset": "word-search-for-kids",
"viewUrl": "https://puzzlegenio.com/puzzles/AbCdEfGhIjKlMnOpQrStUvWxYz012345",
"exportPageUrl": "https://puzzlegenio.com/puzzles/AbCdEfGhIjKlMnOpQrStUvWxYz012345",
"editUrl": "https://puzzlegenio.com/word-search-for-kids?id=123456789",
"playUrl": "https://puzzlegenio.com/word-search-maker/play/AbCdEfGhIjKlMnOpQrStUvWxYz012345",
"expiresAt": "2026-11-01T00:00:00.000Z",
"shareState": "active",
"savedCount": 1,
"limit": 20,
"formats": [
"pdf",
"answer-pdf"
],
"itemCount": 1,
"warnings": []
},
"requestId": "00000000-0000-4000-8000-000000000000"
}Les identifiants et dates illustrent la structure. data contient le rĂ©sultat enregistrĂ© ; requestId dĂ©signe cette requĂȘte.
- viewUrl
- Page dâaperçu publique ; toute personne ayant le lien peut aussi consulter les rĂ©ponses.
- exportPageUrl
- Page du navigateur pour choisir un format de tĂ©lĂ©chargement. Elle peut ĂȘtre identique Ă viewUrl ; ce nâest pas un fichier direct.
- editUrl
- Page de modification réservée au propriétaire, avec connexion et vérification des droits.
- playUrl
- Page de jeu uniquement pour les modes compatibles ; sinon null.
Points dâaccĂšs REST
| POST | /api/v1/puzzles |
|---|---|
| GET | /api/v1/puzzles |
| GET | /api/v1/puzzles/{savedId} |
| DELETE | /api/v1/puzzles/{savedId} |
| POST | /api/v1/puzzles/{savedId}/share |
| GET | /api/v1/capabilities |
| GET | /api/v1/results/{shareId} |
| POST | /api/v1/assets |
| POST | /api/v1/assets/import |
| GET | /api/v1/openapi.json |
Idempotence et réponses
Idempotency-Key est obligatoire pour crĂ©er un jeu. La mĂȘme clĂ© avec le mĂȘme contenu renvoie le mĂȘme jeu enregistrĂ©. Un contenu diffĂ©rent avec cette clĂ© renvoie 409. Une crĂ©ation initiale renvoie 201 ; une rĂ©pĂ©tition, 200.
Erreurs
Les erreurs suivent {error:{code,message,details},requestId}. 400 indique une requĂȘte incorrecte ; 401 une authentification absente ; 403 un quota ou un droit ; 404 un Ă©lĂ©ment inconnu ou non dĂ©tenu ; 409 un conflit ; 410 un partage invalide ; 413 une taille excessive ; 415 un format de contenu ; 422 une entrĂ©e invalide ; 429 une limite de frĂ©quence avec Retry-After ; 503 une crĂ©ation indisponible.
