Skip to content

Rujukan API REST teka-teki

Gunakan kunci API Bearer. Pembuatan menyimpan hasil lengkap di Teka-teki Saya dan mengembalikan tautan halaman, bukan isi berkas.

Autentikasi

Kirim Authorization: Bearer YOUR_API_KEY. Titik akses eksternal tidak menerima kuki. Simpan kunci di server Anda.

Batas dan berbagi

Contoh permintaan

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 } }'

Contoh respons berhasil

{
  "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"
}

Pengenal dan tanggal hanya contoh struktur. data berisi hasil tersimpan; requestId menandai permintaan ini.

viewUrl
Halaman pratinjau publik; siapa pun yang memiliki tautan juga dapat melihat jawaban.
exportPageUrl
Halaman untuk memilih format unduhan di peramban. Dapat sama dengan viewUrl dan bukan alamat berkas langsung.
editUrl
Halaman penyuntingan hanya untuk pemilik; harus masuk dan lolos pemeriksaan kepemilikan.
playUrl
Halaman bermain hanya untuk mode yang didukung; selain itu null.

Titik akses 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

Skema OpenAPI yang dapat dibaca mesin

Idempotensi dan respons

Idempotency-Key wajib saat membuat. Kunci dan isi yang sama menghasilkan teka-teki tersimpan yang sama. Kunci sama dengan isi berbeda menghasilkan 409. Pembuatan pertama menghasilkan 201; pengulangan menghasilkan 200.

Galat

Galat memakai bentuk {error:{code,message,details},requestId}. 400 berarti permintaan salah; 401 autentikasi; 403 jatah atau hak; 404 item tidak dikenal atau bukan milik Anda; 409 konflik; 410 tautan tidak berlaku; 413 ukuran; 415 jenis media; 422 masukan tidak sesuai; 429 batas frekuensi dengan Retry-After; 503 pembuatan tidak tersedia.

Rujukan API REST teka-teki