Skip to content

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.

Limites et partage

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

Schéma OpenAPI lisible par machine

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.

RĂ©fĂ©rence de l’API REST de jeux