Crossword puzzles API reference
Crossword puzzles: This reference reads modes, presets, formats and accepted fields from the same registry and input contract as the API.
Example request
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": "crossword", "title": "Nature crossword", "input": { "entries": [ { "word": "RIVER", "clue": "A flowing body of water" }, { "word": "TREE", "clue": "A woody plant" } ] } }'Modes
normal Β· solution-word
Page presets
Browser export formats
pdf Β· answer-pdf
Formats reflect the puzzle configuration and account plan. The creation response gives viewUrl and exportPageUrl for browser downloads; it does not contain PDF, PNG or STL bytes. The saved export policy is fixed when published and is checked again on republish.
Common request fields
| Field | Accepted value | Required |
|---|---|---|
| preset | text | No |
| mode | text | No |
| locale | one of; en | zh | es | de | fr | pt | it | id | ja | ko | No |
| contentLanguage | one of; en | zh | es | de | fr | pt | it | id | ja | ko | No |
| title | text | Yes |
| retentionDays | number; integer | No |
| appearance.fontFamily | one of; sans | serif | handwriting | playful | mono | No |
| appearance.themeColor | text | No |
| appearance.footerText | text; maximum 200 | No |
| appearance.borderStyle | one of; solid | dashed | dotted | No |
| appearance.layoutMode | one of; default | worksheet | No |
| appearance.pillTitle | true/false | No |
| appearance.showWorksheetHeader | true/false | No |
| appearance.outerBorder | true/false | No |
| export.paperSize | one of; A3 | A4 | A4-landscape | A5 | B5 | Letter | Letter-landscape | Legal | Half-Letter | Tabloid | custom | No |
| export.widthMm | number; minimum 50; maximum 2000 | No |
| export.heightMm | number; minimum 50; maximum 2000 | No |
| export.unit | one of; mm | cm | in | px | No |
| export.quality | one of; standard | high | print | No |
| input.entries | list; minimum 1; maximum 200 | No |
| input.entries[].word | text; minimum 1; maximum 50 | No |
| input.entries[].clue | text; minimum 1; maximum 300 | No |
| input.templateId | text; minimum 1; maximum 100 | No |
| input.solutionWord | text; minimum 1; maximum 50 | No |
| options.seed | number; integer; minimum 0; maximum 2147483647 | No |
| options.difficulty | one of; easy | medium | hard | No |
| options.gridSize | number; integer; minimum 5; maximum 50 | No |
Templates and themes
Query /api/v1/capabilities for currently available template IDs, themes and account-specific limits. A template selection still creates one saved puzzle.
Images and files
Image input uses a previously uploaded or imported assetId owned by the API key account. Downloads are performed on the result page in a browser; a result URL is not a direct file URL.
Failure cases
Unknown fields or incompatible type, mode and preset combinations return 422. Inputs that cannot produce a complete puzzle also return 422. Available formats depend on configuration and account rights.
