Preskoči na vsebino
API za razvijalce

Ustvarjaj dejavnosti iz svojega sistema

En POST za vsako vrsto dejavnosti. Pošlji svojo vsebino kot JSON in dobiš dejavnost v svojem računu Puzzel.org ter URL, ki ga lahko daš igralcem ali vstaviš v iframe.

Osnovni URL
https://puzzel.org/api/public/v1
Avtentikacija
Ključ in e-pošta v telesu
Končne točke
38 vrst dejavnosti
Kvota
10 dejavnosti na dan

Tvoja prva zahteva

Nič ni treba namestiti in ni rokovanja: pošlji telo JSON s svojim ključem, e-pošto in vsebino. Odgovor vsebuje ključ nove dejavnosti in URL, na katerem se igra.

POST crossword
curl -X POST https://puzzel.org/api/public/v1/crossword \
  -H "Content-Type: application/json" \
  -d '{
  "account_api_key": "YOUR_API_KEY",
  "email": "you@example.com",
  "title": "Crossword",
  "language": "sl",
  "items": [
    {
      "answer": "BANANA",
      "description": "A long yellow fruit",
      "type": "text"
    },
    {
      "answer": "CHERRY",
      "description": "A small red stone fruit",
      "type": "text"
    },
    {
      "answer": "MELON",
      "description": "Big, green outside, sweet inside",
      "type": "text"
    }
  ]
}'
Uspeh
{
  "success": true,
  "id": "-Nq8sample_activity_key",
  "url": "https://puzzel.org/en/crossword/embed?p=-Nq8sample_activity_key",
  "message": "Crossword created successfully"
}

Vsak primer na tej strani je popolna, izvedljiva zahteva. Zamenjaj svoj ključ in vsebino in deluje takoj.

Avtentikacija

Ni glav in ni žetona nosilca. Obe poverilnici potujeta v telesu JSON vsake zahteve, ključ pa je sprejet samo za račun, ki mu pripada ta e-pošta.

PoljeTipKaj počne
account_api_key
obvezno
string
stringKljuč API tvojega računa. Gre v telo, ne v glavo.
email
obvezno
string
stringNaslov, s katerim se prijavljaš v svoj račun Puzzel.org. Ključ je veljaven samo skupaj z njim.

Tvoj ključ najdeš v razdelku računa na nadzorni plošči, za gumbom Pokaži.

Prijava

Ključi API se dodelijo ob začetku naročnine, zato jih brezplačni računi še nimajo.

Oglej si pakete

Ključ obravnavaj kot geslo. Ustvarja in prepisuje dejavnosti v tvojem računu, zato ga hrani na strani strežnika in stran od vsega, kar lahko prebere brskalnik.

Telo zahteve

Vsaka končna točka sprejme enakih pet polj. Razlikuje se polje z vsebino pod njimi: večina sprejme niz elementov, nekatere eno poved ali eno sliko, sudoku pa nič.

PoljeTipKaj počne
account_api_key
obvezno
string
stringKljuč API tvojega računa. Gre v telo, ne v glavo.
email
obvezno
string
stringNaslov, s katerim se prijavljaš v svoj račun Puzzel.org. Ključ je veljaven samo skupaj z njim.
title
neobvezno
string
stringIme, ki ga dejavnost dobi na tvoji nadzorni plošči. Če ga izpustiš, končna točka uporabi svoje privzeto ime.
language
neobvezno
string
stringDoloča samo jezikovno različico v URL-ju, ki ga dobiš nazaj — ne prevede ničesar, kar pošlješ. Besedna iskalnica ga uporabi tudi za preklop polnilnih črk v arabščino, ko je vrednost "ar".
Privzeto: "en"
activity_key
neobvezno
string
stringIzpusti ga, če želiš ustvariti novo dejavnost. Če pošlješ ključ dejavnosti, ki jo že imaš, se namesto tega ta dejavnost ponovno zgradi.

settings je objekt z možnostmi za posamezno končno točko. Katere možnosti končna točka prebere, je navedeno spodaj pri njej; vse drugo, kar vneseš tja, se prezre.

Kaj dobiš nazaj

Uspešen klic odgovori s 200 ter ključem nove dejavnosti in URL-jem, na katerem se igra. Vse drugo odgovori s success, nastavljenim na false, in enim samim nizom napake.

Uspeh
{
  "success": true,
  "id": "-Nq8sample_activity_key",
  "url": "https://puzzel.org/en/crossword/embed?p=-Nq8sample_activity_key",
  "message": "Crossword created successfully"
}
Napaka
{
  "success": false,
  "error": "Invalid Email or API Key"
}

URL, ki ga dobiš nazaj, je pogled za vdelavo. Zamenjaj embed s play, da ga odpreš čez celo stran, ali z build, da ga odpreš v urejevalniku — ključ za p= ostane enak.

Ustvarjanje in posodabljanje

Pošlji activity_key in dejavnost za njim se zgradi na mestu: njena vsebina se zamenja, ime in oznaka različice se osvežita, sam ključ pa ostane enak — zato povezave in vdelave, ki si jih že delil, še naprej delujejo. Rezultati, umestitev v mapo in vsaka nastavitev, ki je končna točka sama ne zapiše, ostanejo nespremenjeni.

activity_key
{
  "account_api_key": "YOUR_API_KEY",
  "email": "you@example.com",
  "activity_key": "-Nq8sample_activity_key",
  "title": "Fruit crossword, week 2",
  "items": [
    {
      "answer": "BANANA",
      "description": "A long yellow fruit",
      "type": "text"
    },
    {
      "answer": "CHERRY",
      "description": "A small red stone fruit",
      "type": "text"
    },
    {
      "answer": "MELON",
      "description": "Big, green outside, sweet inside",
      "type": "text"
    }
  ]
}
  • title se uporabi ob vsaki posodobitvi, vključno s privzeto vrednostjo — če ga izpustiš, se dejavnost preimenuje v privzeto ime te končne točke.
  • Bloki nastavitev, ki jih končna točka zapiše sama, se prepišejo od začetka, zato posodobitev tudi te ponastavi na vrednosti, ki jih pošlješ, ali na privzete vrednosti končne točke.
  • Posodobiš lahko samo dejavnosti, ki jih ima v lasti tvoj lastni račun. Ključ nekoga drugega dobi odgovor 403.
  • Posodobitev stane enako kot ustvarjanje: en klic od današnje kvote.

Omejitev hitrosti

10
10 dejavnosti na račun na dan

Šteje se vsak uspešen klic, ustvarjanje in posodabljanje enako. Če presežeš mejo, naslednja zahteva dobi odgovor 429, dokler se števec ne počisti.

Števec enkrat na dan počisti načrtovano opravilo, ne pa drseče 24-urno okno.

Napake

Napake vedno prispejo kot JSON z enakima dvema poljema, nikoli kot stran HTML. Niz napake je napisan tako, da ga lahko prebere človek — poimenuje polje ali omejitev, ki ni uspela.

StatusKaj pomeni
400
Bad Request
Nekaj v telesu manjka, je napačno oblikovano ali izven dovoljenega obsega. Sporočilo poimenuje polje.
401
Unauthorized
E-pošta ni znana ali ključ ne pripada temu računu.
403
Forbidden
activity_key, ki si ga poslal, pripada drugemu računu.
429
Too Many Requests
Današnja kvota je porabljena. Počisti se enkrat na dan.
500
Server Error
Generator ni mogel zgraditi uganke iz tega, kar si poslal — običajno je premalo besed ali pa besed ni mogoče sestaviti skupaj.

Končne točke

Ena pot za vsako vrsto dejavnosti, vse POST, vse pod istim osnovnim URL-jem. Vsaka navaja vsebino, ki jo potrebuje, nastavitve, ki jih prebere, in zahtevo, ki jo lahko poženeš.

Besede in črke

Križanka

Tvoje odgovore prepleta v mrežo in oštevilči definicije namesto tebe.

#
POST /api/public/v1/crossword Od 2 do 80 v items
Vsebina

Niz besed. Vsak vnos poveže odgovor z definicijo, ki nanj kaže.

Privzeto uporabi ime “Crossword API”

Vredno vedeti
  • Odgovori, krajši od dveh znakov, se izločijo, preden se zgradi mreža, in vsaj dva morata to preživeti.
  • Odgovori se spremenijo v velike črke, generator pa ima dvajset poskusov, da jih razporedi. Če ne uspe umestiti niti ene besede, klic dobi odgovor 500.
Nastavitve, ki jih prebere
PoljeTipKaj počne
hidden_solution
neobvezno znotraj settings
string
stringNeobvezna dodatna beseda. Njene črke so v dokončani mreži označene v poljih, igralci pa jih poberejo, ko rešijo križanko, zato se mora vsaka njena črka pojaviti v odgovorih.
Primer zahteve
POST crossword
curl -X POST https://puzzel.org/api/public/v1/crossword \
  -H "Content-Type: application/json" \
  -d '{
  "account_api_key": "YOUR_API_KEY",
  "email": "you@example.com",
  "title": "Crossword",
  "language": "sl",
  "items": [
    {
      "answer": "BANANA",
      "description": "A long yellow fruit",
      "type": "text"
    },
    {
      "answer": "CHERRY",
      "description": "A small red stone fruit",
      "type": "text"
    },
    {
      "answer": "MELON",
      "description": "Big, green outside, sweet inside",
      "type": "text"
    }
  ]
}'
Uspeh
{
  "success": true,
  "id": "-Nq8sample_activity_key",
  "url": "https://puzzel.org/en/crossword/embed?p=-Nq8sample_activity_key",
  "message": "Crossword created successfully"
}

Besedna iskalnica

Tvoje besede skrije v mrežo črk, v smereh in obliki, ki ju izbereš.

#
POST /api/public/v1/wordseeker Od 2 do 40 v items
Vsebina

Niz besed. Besedilo definicije postane seznam besed, iz katerega izhajajo igralci.

Privzeto uporabi ime “Wordseeker API”

Vredno vedeti
  • Odgovori, krajši od dveh znakov, se izločijo, vsak odgovor pa se pred vstavitvijo v mrežo spremeni v velike črke.
  • Mreža se zapolni z latiničnimi črkami, razen če je language nastavljen na "ar", kar preklopi polnilo na arabščino.
Nastavitve, ki jih prebere
PoljeTipKaj počne
hidden_solution
neobvezno znotraj settings
string
stringPreostale črke sestavijo prav to. Če to nastaviš, generatorju hkrati naročiš, naj najprej umesti rešitev namesto čim več besed.
directions
neobvezno znotraj settings
string[]
string[]V katere smeri lahko teče beseda. Če to izpustiš, besede tečejo samo proti vzhodu, jugovzhodu in jugu.
Ena od westeastnorthsouthnorthwestnortheastsouthwestsoutheast
Privzeto: ["east", "southeast", "south"]
template
neobvezno znotraj settings
string
stringMrežo izreže v obliko, namesto da bi ostala kvadratna.
Ena od squarecirclecrossdiamondpyramidsmileystarcross_plus
Primer zahteve
POST wordseeker
curl -X POST https://puzzel.org/api/public/v1/wordseeker \
  -H "Content-Type: application/json" \
  -d '{
  "account_api_key": "YOUR_API_KEY",
  "email": "you@example.com",
  "title": "Wordseeker",
  "language": "sl",
  "items": [
    {
      "answer": "BANANA",
      "description": "A long yellow fruit",
      "type": "text"
    },
    {
      "answer": "CHERRY",
      "description": "A small red stone fruit",
      "type": "text"
    },
    {
      "answer": "MELON",
      "description": "Big, green outside, sweet inside",
      "type": "text"
    }
  ],
  "settings": {
    "hidden_solution": "FRUIT",
    "directions": [
      "east",
      "south",
      "southeast"
    ],
    "template": "square"
  }
}'
Uspeh
{
  "success": true,
  "id": "-Nq8sample_activity_key",
  "url": "https://puzzel.org/en/wordseeker/embed?p=-Nq8sample_activity_key",
  "message": "Wordseeker created successfully"
}

Akrostih

Tvoje odgovore zloži tako, da en stolpec sestavi skrito besedo.

#
POST /api/public/v1/acrostic Od 1 do 40 v items
Vsebina

Niz besed. Skupaj morajo zagotoviti vsako črko skrite besede.

Privzeto uporabi ime “Acrostic API”

Vredno vedeti
  • Če odgovori ne morejo zagotoviti črk, ki jih rešitev potrebuje, klic dobi odgovor 500, namesto da bi shranil napol zgrajeno mrežo.
  • Generator razvrsti tvoje odgovore v drug vrstni red, da stolpec deluje, zato vrstni red, ki ga pošlješ, ni vrstni red, ki ga vidijo igralci.
Nastavitve, ki jih prebere
PoljeTipKaj počne
hidden_solution
obvezno znotraj settings
string
stringBeseda, ki jo sestavi označeni stolpec. Ta končna točka brez nje ne deluje.
Primer zahteve
POST acrostic
curl -X POST https://puzzel.org/api/public/v1/acrostic \
  -H "Content-Type: application/json" \
  -d '{
  "account_api_key": "YOUR_API_KEY",
  "email": "you@example.com",
  "title": "Acrostic",
  "language": "sl",
  "items": [
    {
      "answer": "PEACH",
      "description": "Fuzzy skin, sweet flesh",
      "type": "text"
    },
    {
      "answer": "BANANA",
      "description": "A long yellow fruit",
      "type": "text"
    },
    {
      "answer": "CHERRY",
      "description": "A small red stone fruit",
      "type": "text"
    },
    {
      "answer": "MELON",
      "description": "Big, green outside, sweet inside",
      "type": "text"
    }
  ],
  "settings": {
    "hidden_solution": "PLUM"
  }
}'
Uspeh
{
  "success": true,
  "id": "-Nq8sample_activity_key",
  "url": "https://puzzel.org/en/acrostic/embed?p=-Nq8sample_activity_key",
  "message": "Acrostic created successfully"
}

Premešane besede

api_e_word_scramble

#
POST /api/public/v1/word-scramble Od 1 do 40 v items
Vsebina

api_c_word_scramble

Privzeto uporabi ime “Word Scramble API”

Vredno vedeti
  • Dejavnosti, ustvarjene prek API, imajo vedno vklopljeno nastavitev za mešanje vrstnega reda, zato vrstni red, ki ga pošlješ, ni vrstni red, ki ga dobijo igralci.
Nastavitve, ki jih prebere
PoljeTipKaj počne
hidden_solution
neobvezno znotraj settings
string
stringNeobvezna dodatna beseda, ki jo igralci vnesejo, ko rešijo preostalo.
Primer zahteve
POST word-scramble
curl -X POST https://puzzel.org/api/public/v1/word-scramble \
  -H "Content-Type: application/json" \
  -d '{
  "account_api_key": "YOUR_API_KEY",
  "email": "you@example.com",
  "title": "Word Scramble",
  "language": "sl",
  "items": [
    {
      "answer": "BANANA",
      "description": "A long yellow fruit",
      "type": "text"
    },
    {
      "answer": "CHERRY",
      "description": "A small red stone fruit",
      "type": "text"
    },
    {
      "answer": "MELON",
      "description": "Big, green outside, sweet inside",
      "type": "text"
    }
  ],
  "settings": {
    "hidden_solution": "FRUIT"
  }
}'
Uspeh
{
  "success": true,
  "id": "-Nq8sample_activity_key",
  "url": "https://puzzel.org/en/word-scramble/embed?p=-Nq8sample_activity_key",
  "message": "Word Scramble created successfully"
}

Vislice

Tvoje besede ali besedne zveze spremeni v runde ugibanja črk.

#
POST /api/public/v1/hangman Od 1 do 50 v items
Vsebina

Niz besed ali kratkih besednih zvez. Opis je namig, ki ga vidijo igralci.

Privzeto uporabi ime “Hangman API”

Primer zahteve
POST hangman
curl -X POST https://puzzel.org/api/public/v1/hangman \
  -H "Content-Type: application/json" \
  -d '{
  "account_api_key": "YOUR_API_KEY",
  "email": "you@example.com",
  "title": "Hangman",
  "language": "sl",
  "items": [
    {
      "answer": "BANANA",
      "description": "A long yellow fruit",
      "type": "text"
    }
  ]
}'
Uspeh
{
  "success": true,
  "id": "-Nq8sample_activity_key",
  "url": "https://puzzel.org/en/hangman/embed?p=-Nq8sample_activity_key",
  "message": "Hangman created successfully"
}

Wordle

Iz vsake besede, ki jo pošlješ, naredi igro ugibanja besede.

#
POST /api/public/v1/wordle Od 1 do 50 v items
Vsebina

Niz besed. Igralci dobijo eno rundo na besedo.

Privzeto uporabi ime “Wordle API”

Vredno vedeti
  • Ustvarjeno z vklopljeno nastavitvijo za preverjanje, da so ugibane besede resnične. Če so tvoje besede imena ali izmišljene, jo izklopi v urejevalniku.
Primer zahteve
POST wordle
curl -X POST https://puzzel.org/api/public/v1/wordle \
  -H "Content-Type: application/json" \
  -d '{
  "account_api_key": "YOUR_API_KEY",
  "email": "you@example.com",
  "title": "Wordle",
  "language": "sl",
  "items": [
    {
      "answer": "MELON",
      "description": "Sweet and green",
      "type": "text"
    },
    {
      "answer": "PEACH",
      "description": "Fuzzy and orange",
      "type": "text"
    }
  ]
}'
Uspeh
{
  "success": true,
  "id": "-Nq8sample_activity_key",
  "url": "https://puzzel.org/en/wordle/embed?p=-Nq8sample_activity_key",
  "message": "Wordle created successfully"
}

Vaja tipkanja

api_e_typing_practice

#
POST /api/public/v1/typing-practice Od 1 do 50 v items
Vsebina

api_c_typing_practice

Privzeto uporabi ime “Typing Practice API”

Primer zahteve
POST typing-practice
curl -X POST https://puzzel.org/api/public/v1/typing-practice \
  -H "Content-Type: application/json" \
  -d '{
  "account_api_key": "YOUR_API_KEY",
  "email": "you@example.com",
  "title": "Typing Practice",
  "language": "sl",
  "items": [
    {
      "answer": "The quick brown fox jumps over the lazy dog",
      "description": "Every letter of the alphabet",
      "type": "text"
    },
    {
      "answer": "Pack my box with five dozen liquor jugs",
      "description": "Another pangram",
      "type": "text"
    }
  ]
}'
Uspeh
{
  "success": true,
  "id": "-Nq8sample_activity_key",
  "url": "https://puzzel.org/en/typing-practice/embed?p=-Nq8sample_activity_key",
  "message": "Typing Practice created successfully"
}

Kolo sreče

api_e_wheel_of_fortune

#
POST /api/public/v1/wheel-of-fortune Od 1 do 50 v items
Vsebina

api_c_wheel_of_fortune

Privzeto uporabi ime “Wheel of Fortune API”

Vredno vedeti
  • Ustvarjeno z nastavitvijo “prikaži izid samo na kolesu”, zato se rezultat prebere s kolesa, namesto da bi bil naznanjen poleg njega.
Primer zahteve
POST wheel-of-fortune
curl -X POST https://puzzel.org/api/public/v1/wheel-of-fortune \
  -H "Content-Type: application/json" \
  -d '{
  "account_api_key": "YOUR_API_KEY",
  "email": "you@example.com",
  "title": "Wheel of Fortune",
  "language": "sl",
  "items": [
    {
      "answer": "Read a page aloud",
      "description": "Segment 1",
      "type": "text"
    },
    {
      "answer": "Name three fruits",
      "description": "Segment 2",
      "type": "text"
    },
    {
      "answer": "Spell it backwards",
      "description": "Segment 3",
      "type": "text"
    }
  ]
}'
Uspeh
{
  "success": true,
  "id": "-Nq8sample_activity_key",
  "url": "https://puzzel.org/en/wheel-of-fortune/embed?p=-Nq8sample_activity_key",
  "message": "Wheel of Fortune created successfully"
}

Skandinavska križanka

Skandinavska križanka: definicije so znotraj mreže, vsaka s puščico proti svojemu odgovoru.

#
POST /api/public/v1/arrowword Od 2 do 80 v items
Vsebina

Niz besed. Vsak vnos poveže odgovor z definicijo, ki je dovolj kratka, da stane v eno polje.

Privzeto uporabi ime “Arrowword API”

Nastavitve, ki jih prebere
PoljeTipKaj počne
hidden_solution
neobvezno znotraj settings
string
stringNeobvezna dodatna beseda. Njene črke so v dokončani mreži označene v poljih, zato se mora vsaka njena črka pojaviti v odgovorih.
Primer zahteve
POST arrowword
curl -X POST https://puzzel.org/api/public/v1/arrowword \
  -H "Content-Type: application/json" \
  -d '{
  "account_api_key": "YOUR_API_KEY",
  "email": "you@example.com",
  "title": "Arrowword",
  "language": "sl",
  "items": [
    {
      "answer": "Stockholm",
      "description": "Capital of Sweden",
      "type": "text"
    },
    {
      "answer": "Oslo",
      "description": "Capital of Norway",
      "type": "text"
    },
    {
      "answer": "Helsinki",
      "description": "Capital of Finland",
      "type": "text"
    }
  ],
  "settings": {
    "hidden_solution": "North"
  }
}'
Uspeh
{
  "success": true,
  "id": "-Nq8sample_activity_key",
  "url": "https://puzzel.org/en/arrowword/embed?p=-Nq8sample_activity_key",
  "message": "Arrowword created successfully"
}

Strands

Mreža, v kateri vsaka črka pripada tematski besedi, ena beseda, ki poimenuje temo, pa teče od roba do roba.

#
POST /api/public/v1/strands Od 2 do 24 v items
Vsebina

Niz tematskih besed. Njihove črke morajo skupaj s spangramom natanko zapolniti ploščo.

Privzeto uporabi ime “Strands API”

Vredno vedeti
  • Črke vseh besed in spangrama skupaj morajo biti natanko 30, 35, 36, 40, 42, 45, 48, 49, 50, 54, 56, 60, 63, 64, 70, 72 ali 80. Pri vsakem drugem številu klic dobi odgovor 400 in pove, koliko črk je treba dodati ali odstraniti.
Nastavitve, ki jih prebere
PoljeTipKaj počne
theme
neobvezno znotraj settings
string
stringUganka, prikazana nad mrežo. Če jo izpustiš, igralci vidijo naslov.
spangram
neobvezno znotraj settings
string
stringBeseda ali besedna zveza, ki poimenuje temo in prečka ploščo od enega roba do drugega.
Primer zahteve
POST strands
curl -X POST https://puzzel.org/api/public/v1/strands \
  -H "Content-Type: application/json" \
  -d '{
  "account_api_key": "YOUR_API_KEY",
  "email": "you@example.com",
  "title": "Strands",
  "language": "sl",
  "items": [
    {
      "answer": "whisk",
      "type": "text"
    },
    {
      "answer": "ladle",
      "type": "text"
    },
    {
      "answer": "spatula",
      "type": "text"
    },
    {
      "answer": "grater",
      "type": "text"
    },
    {
      "answer": "peeler",
      "type": "text"
    },
    {
      "answer": "skillet",
      "type": "text"
    }
  ],
  "settings": {
    "theme": "What the cook reaches for",
    "spangram": "Kitchen tools"
  }
}'
Uspeh
{
  "success": true,
  "id": "-Nq8sample_activity_key",
  "url": "https://puzzel.org/en/strands/embed?p=-Nq8sample_activity_key",
  "message": "Strands created successfully"
}

Naštevanje

api_e_name_them_all

#
POST /api/public/v1/name-them-all Od 1 do 250 v items
Vsebina

api_c_name_them_all

Privzeto uporabi ime “Name Them All API”

Vredno vedeti
  • Vnos je objekt z answer in neobvezno z aliases (drugi zapisi, ki se štejejo), description (namig) in group. Pri preverjanju imena se velike črke, naglasi in ločila prezrejo.
Nastavitve, ki jih prebere
PoljeTipKaj počne
list_match_mode
neobvezno znotraj settings
string
stringAli se ime šteje takoj, ko je natipkano, ali šele z Enter.
Ena od while_typingon_enter
Privzeto: "while_typing"
list_slot_hint
neobvezno znotraj settings
string
stringKaj izda prazno mesto: nič, dolžino imena, njegovo prvo črko ali namig, ki si ga napisal.
Ena od nonelengthfirst_letterhint
Privzeto: "none"
list_arrange
neobvezno znotraj settings
string
stringEn stolpec za vsako skupino ali en sam seznam.
Ena od groupsone_list
Privzeto: "groups"
list_allow_give_up
neobvezno znotraj settings
boolean
booleanPrikaže gumb za predajo, ki konča krog in razkrije, kaj je ostalo nenaštetega.
Privzeto: false
Primer zahteve
POST name-them-all
curl -X POST https://puzzel.org/api/public/v1/name-them-all \
  -H "Content-Type: application/json" \
  -d '{
  "account_api_key": "YOUR_API_KEY",
  "email": "you@example.com",
  "title": "Name Them All",
  "language": "sl",
  "items": [
    {
      "answer": "United Kingdom",
      "aliases": [
        "UK",
        "Great Britain",
        "Britain"
      ],
      "group": "Islands"
    },
    {
      "answer": "Ireland",
      "aliases": [
        "Éire"
      ],
      "group": "Islands"
    },
    {
      "answer": "Côte d'Azur's neighbour Monaco",
      "aliases": [
        "Monaco"
      ],
      "description": "The smallest one",
      "group": "Mainland"
    }
  ],
  "settings": {
    "list_slot_hint": "first_letter",
    "list_match_mode": "on_enter",
    "list_allow_give_up": true
  }
}'
Uspeh
{
  "success": true,
  "id": "-Nq8sample_activity_key",
  "url": "https://puzzel.org/en/name-them-all/embed?p=-Nq8sample_activity_key",
  "message": "Name them all list created successfully"
}
Kartice in pari

Memory

Kartice, obrnjene navzdol, ki jih obračaš in združuješ v pare.

#
POST /api/public/v1/memory Od 2 do 30 v items
Vsebina

Niz parov. Vsak par vsebuje dve kartici, ki spadata skupaj.

Privzeto uporabi ime “Memory Game API”

Vredno vedeti
  • Kartica je objekt s tipom in vrednostjo. Uporabi "text" za besede ali "image", "audio", "youtube" oz. "link" z URL-jem v value, opis pa dodaj v alt.
Primer zahteve
POST memory
curl -X POST https://puzzel.org/api/public/v1/memory \
  -H "Content-Type: application/json" \
  -d '{
  "account_api_key": "YOUR_API_KEY",
  "email": "you@example.com",
  "title": "Memory Game",
  "language": "sl",
  "items": [
    {
      "cards": [
        {
          "type": "text",
          "value": "Apple"
        },
        {
          "type": "text",
          "value": "A red fruit"
        }
      ]
    },
    {
      "cards": [
        {
          "type": "text",
          "value": "Banana"
        },
        {
          "type": "text",
          "value": "A yellow fruit"
        }
      ]
    }
  ]
}'
Uspeh
{
  "success": true,
  "id": "-Nq8sample_activity_key",
  "url": "https://puzzel.org/en/memory/embed?p=-Nq8sample_activity_key",
  "message": "Memory game created successfully"
}

Igra povezovanja

api_e_matching_pairs

#
POST /api/public/v1/matching-pairs Od 2 do 30 v items
Vsebina

api_c_matching_pairs

Privzeto uporabi ime “Matching Game API”

Vredno vedeti
  • Kartica je objekt s tipom in vrednostjo. Uporabi "text" za besede ali "image", "audio", "youtube" oz. "link" z URL-jem v value, opis pa dodaj v alt.
Primer zahteve
POST matching-pairs
curl -X POST https://puzzel.org/api/public/v1/matching-pairs \
  -H "Content-Type: application/json" \
  -d '{
  "account_api_key": "YOUR_API_KEY",
  "email": "you@example.com",
  "title": "Matching Game",
  "language": "sl",
  "items": [
    {
      "cards": [
        {
          "type": "text",
          "value": "Apple"
        },
        {
          "type": "text",
          "value": "A red fruit"
        }
      ]
    },
    {
      "cards": [
        {
          "type": "text",
          "value": "Banana"
        },
        {
          "type": "text",
          "value": "A yellow fruit"
        }
      ]
    }
  ]
}'
Uspeh
{
  "success": true,
  "id": "-Nq8sample_activity_key",
  "url": "https://puzzel.org/en/matching-pairs/embed?p=-Nq8sample_activity_key",
  "message": "Matching pairs game created successfully"
}

Učne kartice

api_e_flash_cards

#
POST /api/public/v1/flash-cards Od 1 do 150 v items
Vsebina

api_c_flash_cards

Privzeto uporabi ime “Flash Cards API”

Vredno vedeti
  • Končna točka shrani toliko kartic, kolikor jih pošlješ, zato pošlji natanko dve na vnos — najprej sprednjo, nato zadnjo stran.
  • Kartica je objekt s tipom in vrednostjo. Uporabi "text" za besede ali "image", "audio", "youtube" oz. "link" z URL-jem v value, opis pa dodaj v alt.
Primer zahteve
POST flash-cards
curl -X POST https://puzzel.org/api/public/v1/flash-cards \
  -H "Content-Type: application/json" \
  -d '{
  "account_api_key": "YOUR_API_KEY",
  "email": "you@example.com",
  "title": "Flash Cards",
  "language": "sl",
  "items": [
    {
      "cards": [
        {
          "type": "text",
          "value": "Apple"
        },
        {
          "type": "text",
          "value": "A red fruit"
        }
      ]
    },
    {
      "cards": [
        {
          "type": "text",
          "value": "Banana"
        },
        {
          "type": "text",
          "value": "A yellow fruit"
        }
      ]
    }
  ]
}'
Uspeh
{
  "success": true,
  "id": "-Nq8sample_activity_key",
  "url": "https://puzzel.org/en/flash-cards/embed?p=-Nq8sample_activity_key",
  "message": "Flash Cards created successfully"
}

Razvrščanka

Kartice, ki jih razvrstiš v skupino, kamor spadajo.

#
POST /api/public/v1/categorize Vsaj 2 v items · Največ 60 kartic skupaj
Vsebina

Niz kategorij, vsaka z imenom in karticami, ki vanjo spadajo.

Privzeto uporabi ime “Categorize Game API”

Vredno vedeti
  • Kategorija, poslana brez imena, se shrani kot “Untitled Category”, zato ime vedno pošlji.
  • Kartica je objekt s tipom in vrednostjo. Uporabi "text" za besede ali "image", "audio", "youtube" oz. "link" z URL-jem v value, opis pa dodaj v alt.
Primer zahteve
POST categorize
curl -X POST https://puzzel.org/api/public/v1/categorize \
  -H "Content-Type: application/json" \
  -d '{
  "account_api_key": "YOUR_API_KEY",
  "email": "you@example.com",
  "title": "Categorize Game",
  "language": "sl",
  "items": [
    {
      "name": "Red fruits",
      "cards": [
        {
          "type": "text",
          "value": "Strawberry"
        },
        {
          "type": "text",
          "value": "Cherry"
        }
      ]
    },
    {
      "name": "Yellow fruits",
      "cards": [
        {
          "type": "text",
          "value": "Banana"
        },
        {
          "type": "text",
          "value": "Lemon"
        }
      ]
    }
  ]
}'
Uspeh
{
  "success": true,
  "id": "-Nq8sample_activity_key",
  "url": "https://puzzel.org/en/categorize/embed?p=-Nq8sample_activity_key",
  "message": "Categorize game created successfully"
}

Zaporedje

Zaporedje, ki ga morajo igralci znova urediti.

#
POST /api/public/v1/reorder Vsaj 1 v items · Največ 60 kartic skupaj
Vsebina

Niz zaporedij. Vsako vsebuje svoje kartice v pravilnem vrstnem redu.

Privzeto uporabi ime “Reorder Game API”

Vredno vedeti
  • Vrstni red, ki ga pošlješ, se shrani kot pravilni vrstni red — številka ena je prva.
  • Kartica je objekt s tipom in vrednostjo. Uporabi "text" za besede ali "image", "audio", "youtube" oz. "link" z URL-jem v value, opis pa dodaj v alt.
Primer zahteve
POST reorder
curl -X POST https://puzzel.org/api/public/v1/reorder \
  -H "Content-Type: application/json" \
  -d '{
  "account_api_key": "YOUR_API_KEY",
  "email": "you@example.com",
  "title": "Reorder Game",
  "language": "sl",
  "items": [
    {
      "name": "From seed to fruit",
      "cards": [
        {
          "type": "text",
          "value": "Plant the seed"
        },
        {
          "type": "text",
          "value": "Water it"
        },
        {
          "type": "text",
          "value": "Watch it grow"
        },
        {
          "type": "text",
          "value": "Pick the fruit"
        }
      ]
    }
  ]
}'
Uspeh
{
  "success": true,
  "id": "-Nq8sample_activity_key",
  "url": "https://puzzel.org/en/reorder/embed?p=-Nq8sample_activity_key",
  "message": "Reorder game created successfully"
}

Bingo

Razredni bingo, ki ga voditelj izklicuje v živo: vsak igralec dobi kartico, sestavljeno iz tvojih elementov.

#
POST /api/public/v1/bingo Ne sprejme items
Vsebina

Niz elementov, iz katerih se sestavijo kartice. Pošlji bistveno več elementov, kot jih ima ena kartica polj, da se kartice med seboj razlikujejo.

Privzeto uporabi ime “Bingo API”

Vredno vedeti
  • Element je objekt z value in neobvezno z type ("text", "image" ali "audio" z URL-jem v value), description (opis, ki ga voditelj prebere v načinu z opisi) in alt.
Nastavitve, ki jih prebere
PoljeTipKaj počne
mode
neobvezno znotraj settings
string
stringKaj zapolni polja: tvoji elementi, tvoji elementi, izklicani po njihovem opisu, ali navadne številke (te ne potrebujejo elementov).
Ena od itemscluesnumbers
Privzeto: "items"
rows
neobvezno znotraj settings
number
numberŠtevilo vrstic na vsaki kartici, od 2 do 5.
Privzeto: 3
columns
neobvezno znotraj settings
number
numberŠtevilo stolpcev na vsaki kartici, od 2 do 5.
Privzeto: 3
highest_number
neobvezno znotraj settings
number
numberV načinu s številkami se kartice napolnijo od 1 do te številke, največ 100. Funkcija paketa: brez paketa ostane 50.
Privzeto: 50
Primer zahteve
POST bingo
curl -X POST https://puzzel.org/api/public/v1/bingo \
  -H "Content-Type: application/json" \
  -d '{
  "account_api_key": "YOUR_API_KEY",
  "email": "you@example.com",
  "title": "Bingo",
  "language": "sl",
  "items": [
    {
      "type": "text",
      "value": "Paris",
      "description": "The capital of France"
    },
    {
      "type": "text",
      "value": "Berlin",
      "description": "The capital of Germany"
    },
    {
      "type": "text",
      "value": "Madrid",
      "description": "The capital of Spain"
    }
  ],
  "settings": {
    "mode": "clues",
    "rows": 3,
    "columns": 4,
    "highest_number": 75
  }
}'
Uspeh
{
  "success": true,
  "id": "-Nq8sample_activity_key",
  "url": "https://puzzel.org/en/bingo/embed?p=-Nq8sample_activity_key",
  "message": "Bingo created successfully"
}

Imam, kdo ima

api_e_i_have_who_has

#
POST /api/public/v1/i-have-who-has Od 3 do 40 v items
Vsebina

api_c_i_have_who_has

Privzeto uporabi ime “I Have, Who Has API”

Vredno vedeti
  • Nobeno vprašanje in noben odgovor se ne sme pojaviti dvakrat: učenec, ki drži odgovor, ne bi mogel ugotoviti, kateremu vprašanju pripada.
Nastavitve, ki jih prebere
PoljeTipKaj počne
chain_shape
neobvezno znotraj settings
string
stringKrog se sklene sam vase, zato lahko začne katera koli kartica; vrsta se odpre z začetno kartico in konča s končno kartico.
Ena od loopline
Privzeto: "loop"
Primer zahteve
POST i-have-who-has
curl -X POST https://puzzel.org/api/public/v1/i-have-who-has \
  -H "Content-Type: application/json" \
  -d '{
  "account_api_key": "YOUR_API_KEY",
  "email": "you@example.com",
  "title": "I Have, Who Has",
  "language": "sl",
  "items": [
    {
      "cards": [
        {
          "type": "text",
          "value": "3 × 4"
        },
        {
          "type": "text",
          "value": "12"
        }
      ]
    },
    {
      "cards": [
        {
          "type": "text",
          "value": "6 × 7"
        },
        {
          "type": "text",
          "value": "42"
        }
      ]
    },
    {
      "cards": [
        {
          "type": "text",
          "value": "9 × 9"
        },
        {
          "type": "text",
          "value": "81"
        }
      ]
    }
  ],
  "settings": {
    "chain_shape": "line"
  }
}'
Uspeh
{
  "success": true,
  "id": "-Nq8sample_activity_key",
  "url": "https://puzzel.org/en/i-have-who-has/embed?p=-Nq8sample_activity_key",
  "message": "I have, who has created successfully"
}

Kodna ključavnica

Kodna ključavnica: mreža kartic, od katerih nekatere skupaj sestavljajo kodo.

#
POST /api/public/v1/keypad Od 1 do 30 v items
Vsebina

Niz kartic. Kartice, ki so del kode, nosijo svoje mesto v njej.

Privzeto uporabi ime “Keypad API”

Vredno vedeti
  • Kartica je objekt z value in neobvezno z type ("text", "image" ali "audio" z URL-jem v value), alt in code_position: njeno mesto v kodi, 1 je prvo. Kartica je lahko v kodi samo enkrat, vsaj ena pa jih mora biti.
Nastavitve, ki jih prebere
PoljeTipKaj počne
instructions
neobvezno znotraj settings
string
stringVprašanje ali uganka, na katero odgovarja koda, prikazana skupaj z mrežo kartic.
force_solution_in_correct_order
neobvezno znotraj settings
boolean
booleanKartice je treba pritisniti po vrsti. Če je izklopljeno, ključavnico odpre kateri koli vrstni red pravih kartic.
Privzeto: false
randomize_order
neobvezno znotraj settings
boolean
booleanVsak igralec dobi kartice v premešanem vrstnem redu.
Privzeto: true
Primer zahteve
POST keypad
curl -X POST https://puzzel.org/api/public/v1/keypad \
  -H "Content-Type: application/json" \
  -d '{
  "account_api_key": "YOUR_API_KEY",
  "email": "you@example.com",
  "title": "Keypad",
  "language": "sl",
  "items": [
    {
      "type": "text",
      "value": "4"
    },
    {
      "type": "text",
      "value": "7",
      "code_position": 2
    },
    {
      "type": "text",
      "value": "9"
    },
    {
      "type": "text",
      "value": "2",
      "code_position": 1
    }
  ],
  "settings": {
    "instructions": "Press the prime numbers, smallest first.",
    "force_solution_in_correct_order": true,
    "randomize_order": false
  }
}'
Uspeh
{
  "success": true,
  "id": "-Nq8sample_activity_key",
  "url": "https://puzzel.org/en/keypad/embed?p=-Nq8sample_activity_key",
  "message": "Keypad created successfully"
}

Igra kvartetov

Kartična igra: igralci drug drugega sprašujejo po kartah, da zberejo kvartete.

#
POST /api/public/v1/quartets Od 2 do 16 v items
Vsebina

Niz kvartetov. Vsak ima ime in natanko štiri karte.

Privzeto uporabi ime “Quartets API”

Vredno vedeti
  • Karta je ime ali objekt z imenom in description (dejstvo, prikazano na njej). Nobeno ime karte se v igri ne sme pojaviti dvakrat: igralci karte zahtevajo po imenu.
Nastavitve, ki jih prebere
PoljeTipKaj počne
type
neobvezno znotraj settings
string
stringNavadna igra ali učna igra, v kateri vsaka karta prikazuje dejstvo. Če ga izpustiš, je to learn, kadar ima katera koli karta description.
Ena od normallearn
Primer zahteve
POST quartets
curl -X POST https://puzzel.org/api/public/v1/quartets \
  -H "Content-Type: application/json" \
  -d '{
  "account_api_key": "YOUR_API_KEY",
  "email": "you@example.com",
  "title": "Quartets",
  "language": "sl",
  "items": [
    {
      "name": "Birds",
      "cards": [
        {
          "name": "Owl",
          "description": "Hunts at night and turns its head three quarters of the way round."
        },
        {
          "name": "Robin",
          "description": "Sings through the winter."
        },
        {
          "name": "Woodpecker",
          "description": "Drums on trees up to twenty times a second."
        },
        {
          "name": "Jay",
          "description": "Buries thousands of acorns each autumn."
        }
      ]
    },
    {
      "name": "Mammals",
      "cards": [
        {
          "name": "Hedgehog",
          "description": "Carries about five thousand spines."
        },
        {
          "name": "Fox",
          "description": "Hears a mouse under the snow."
        },
        {
          "name": "Badger",
          "description": "Lives in a sett with its clan."
        },
        {
          "name": "Otter",
          "description": "Sleeps holding hands so it does not drift off."
        }
      ]
    }
  ],
  "settings": {
    "type": "learn"
  }
}'
Uspeh
{
  "success": true,
  "id": "-Nq8sample_activity_key",
  "url": "https://puzzel.org/en/quartets/embed?p=-Nq8sample_activity_key",
  "message": "Quartets game created successfully"
}
Vprašanja in odgovori

Kviz

Vprašanja izbirnega tipa in odprta vprašanja, ocenjena sproti med igro.

#
POST /api/public/v1/quiz Od 1 do 100 v items
Vsebina

Niz vprašanj. Vprašanja izbirnega tipa nosijo svoje odgovore, odprta vprašanja pa odgovor, ki ga sprejmeš.

Privzeto uporabi ime “Quiz API”

Vredno vedeti
  • question_type je "multiple_choice", pri katerem ima prava možnost isCorrect true; "true_false", enako z natanko dvema možnostma, prva je drži, druga ne drži; ali "open_answer", ki namesto tega uporablja correct_answer. Če ga izpustiš, se obravnava kot izbirni odgovor.
  • Končna točka za kviz posreduje settings neposredno kot bloke nastavitev dejavnosti, zato to ni mesto za posamezne možnosti — kviz pozneje prilagodi v urejevalniku.
Primer zahteve
POST quiz
curl -X POST https://puzzel.org/api/public/v1/quiz \
  -H "Content-Type: application/json" \
  -d '{
  "account_api_key": "YOUR_API_KEY",
  "email": "you@example.com",
  "title": "Quiz",
  "language": "sl",
  "items": [
    {
      "question_type": "multiple_choice",
      "description": "Which fruit is yellow?",
      "answers": [
        {
          "type": "text",
          "description": "Banana",
          "isCorrect": true
        },
        {
          "type": "text",
          "description": "Cherry",
          "isCorrect": false
        }
      ]
    },
    {
      "question_type": "open_answer",
      "description": "What colour is a lemon?",
      "correct_answer": "Yellow",
      "explanation": "Lemons ripen from green to yellow."
    }
  ]
}'
Uspeh
{
  "success": true,
  "id": "-Nq8sample_activity_key",
  "url": "https://puzzel.org/en/quiz/embed?p=-Nq8sample_activity_key",
  "message": "Quiz created successfully"
}

Družabna igra

api_e_board_game

#
POST /api/public/v1/board-game Od 1 do 100 v items
Vsebina

api_c_board_game

Privzeto uporabi ime “Board Game API”

Vredno vedeti
  • question_type je "multiple_choice", pri katerem ima prava možnost isCorrect true; "true_false", enako z natanko dvema možnostma, prva je drži, druga ne drži; ali "open_answer", ki namesto tega uporablja correct_answer. Če ga izpustiš, se obravnava kot izbirni odgovor.
Nastavitve, ki jih prebere
PoljeTipKaj počne
number_of_tiles
neobvezno znotraj settings
number
numberKoliko polj ima plošča. Med 10 in 75.
Privzeto: 30
game_mode
neobvezno znotraj settings
string
stringAli igralci tekmujejo do cilja ali po poti zbirajo predmete.
Ena od race_to_finishcollect_items
Privzeto: "race_to_finish"
Primer zahteve
POST board-game
curl -X POST https://puzzel.org/api/public/v1/board-game \
  -H "Content-Type: application/json" \
  -d '{
  "account_api_key": "YOUR_API_KEY",
  "email": "you@example.com",
  "title": "Board Game",
  "language": "sl",
  "items": [
    {
      "question_type": "multiple_choice",
      "description": "Which fruit is yellow?",
      "answers": [
        {
          "type": "text",
          "description": "Banana",
          "isCorrect": true
        },
        {
          "type": "text",
          "description": "Cherry",
          "isCorrect": false
        }
      ]
    },
    {
      "question_type": "open_answer",
      "description": "What colour is a lemon?",
      "correct_answer": "Yellow",
      "explanation": "Lemons ripen from green to yellow."
    }
  ],
  "settings": {
    "number_of_tiles": 30,
    "game_mode": "race_to_finish"
  }
}'
Uspeh
{
  "success": true,
  "id": "-Nq8sample_activity_key",
  "url": "https://puzzel.org/en/board-game/embed?p=-Nq8sample_activity_key",
  "message": "Board Game created successfully"
}

Labirint

Labirint, po katerem hodiš: vsako vprašanje je dvorana, njegovi odgovori pa so vrata.

#
POST /api/public/v1/maze Vsaj 1 v items
Vsebina

Niz vprašanj izbirnega tipa ali vprašanj drži ali ne drži, natanko v obliki, kakršno sprejme končna točka za kviz. Odprta vprašanja so zavrnjena: na vratih mora biti napisan odgovor.

Privzeto uporabi ime “Maze API”

Nastavitve, ki jih prebere
PoljeTipKaj počne
maze_width
neobvezno znotraj settings
string
stringKako so razporejene dvorane: en stolpec, kvadrat ali širše.
Ena od narrownormalwide
Privzeto: "normal"
maze_corridors
neobvezno znotraj settings
string
stringKoliko labirinta leži med dvema vprašanjema.
Ena od shortnormallong
Privzeto: "normal"
maze_fog
neobvezno znotraj settings
string
stringPrikaži cel labirint ali samo tisto, ob čemer je igralec že bil.
Ena od offnear
Privzeto: "off"
maze_wrong_door_pause
neobvezno znotraj settings
string
stringKako dolgo ostanejo vrata zaprta po napačnih.
Ena od noneshortlong
Privzeto: "short"
maze_walk_there
neobvezno znotraj settings
boolean
booleanPonudi gumb, ki figuro odpelje do naslednje dvorane.
Privzeto: false
maze_seed
neobvezno znotraj settings
string
stringSeme, iz katerega se ustvari labirint. Isto seme in ista vprašanja dasta isti labirint; če ga izpustiš, se izžreba nov.
Primer zahteve
POST maze
curl -X POST https://puzzel.org/api/public/v1/maze \
  -H "Content-Type: application/json" \
  -d '{
  "account_api_key": "YOUR_API_KEY",
  "email": "you@example.com",
  "title": "Maze",
  "language": "sl",
  "items": [
    {
      "question_type": "multiple_choice",
      "description": "What is it called when water vapour turns back into liquid droplets?",
      "answers": [
        {
          "type": "text",
          "description": "Evaporation",
          "isCorrect": false
        },
        {
          "type": "text",
          "description": "Condensation",
          "isCorrect": true
        },
        {
          "type": "text",
          "description": "Transpiration",
          "isCorrect": false
        }
      ],
      "explanation": "Cooling vapour condenses into the droplets that make clouds."
    },
    {
      "question_type": "true_false",
      "description": "Most of the water on Earth is fresh water.",
      "answers": [
        {
          "type": "text",
          "description": "True",
          "isCorrect": false
        },
        {
          "type": "text",
          "description": "False",
          "isCorrect": true
        }
      ]
    }
  ],
  "settings": {
    "maze_width": "wide",
    "maze_corridors": "short",
    "maze_seed": "water123",
    "maze_fog": "near"
  }
}'
Uspeh
{
  "success": true,
  "id": "-Nq8sample_activity_key",
  "url": "https://puzzel.org/en/maze/embed?p=-Nq8sample_activity_key",
  "message": "Maze created successfully"
}

Jeopardy

Plošča kot v televizijskem kvizu: kategorije na vrhu, pod njimi pa definicije, ki so vredne več, čim nižje so.

#
POST /api/public/v1/jeopardy Vsaj 2 v items
Vsebina

Niz kategorij, od leve proti desni. Vsaka ima ime in svoje definicije od zgornje vrstice navzdol.

Privzeto uporabi ime “Jeopardy API”

Vredno vedeti
  • Definicija je vprašanje, kot ga sprejme končna točka za kviz, open_answer, razen če piše drugače, s correct_answer in neobvezno z aliases. Lahko nosi tudi value (svojo vrednost) in daily_double. null pusti polje prazno.
Nastavitve, ki jih prebere
PoljeTipKaj počne
jeopardy_buzzer_mode
neobvezno znotraj settings
string
stringKdo igra kako: voditelj vodi igro iz konzole, igralci se javijo s telefonov ali pa vsak igralec rešuje ploščo sam.
Ena od hostphonessolo
Privzeto: "host"
jeopardy_contestants
neobvezno znotraj settings
string
stringAli konzola govori o ekipah ali o igralcih.
Ena od teamsplayers
Privzeto: "teams"
jeopardy_value_step
neobvezno znotraj settings
number
numberKoliko je vredna vrstica: definicija je vredna ta znesek krat številka njene vrstice. Od 50 do 500, v korakih po 50.
Privzeto: 100
jeopardy_answer_time
neobvezno znotraj settings
number
numberSekunde za odgovor, ko je definicija odprta, največ 300. 0 pomeni brez časovnika.
Privzeto: 20
jeopardy_wrong_answer_costs
neobvezno znotraj settings
boolean
booleanNapačen odgovor odšteje vrednost definicije od točk.
Privzeto: false
jeopardy_reveal_on_timeout
neobvezno znotraj settings
boolean
booleanPlošča sama prikaže odgovor, ko čas poteče.
Privzeto: false
jeopardy_require_question_form
neobvezno znotraj settings
boolean
booleanIgralce opomni, naj odgovorijo v obliki vprašanja.
Privzeto: false
Primer zahteve
POST jeopardy
curl -X POST https://puzzel.org/api/public/v1/jeopardy \
  -H "Content-Type: application/json" \
  -d '{
  "account_api_key": "YOUR_API_KEY",
  "email": "you@example.com",
  "title": "Jeopardy",
  "language": "sl",
  "items": [
    {
      "name": "Planets",
      "questions": [
        {
          "question_type": "open_answer",
          "description": "The planet closest to the Sun.",
          "correct_answer": "Mercury"
        },
        {
          "question_type": "open_answer",
          "description": "It is known as the red planet.",
          "correct_answer": "Mars",
          "explanation": "Iron oxide in its soil gives it the colour."
        },
        {
          "question_type": "multiple_choice",
          "description": "This planet has the most confirmed moons.",
          "answers": [
            {
              "description": "Jupiter",
              "isCorrect": false
            },
            {
              "description": "Saturn",
              "isCorrect": true
            },
            {
              "description": "Neptune",
              "isCorrect": false
            }
          ],
          "daily_double": true
        }
      ]
    },
    {
      "name": "Moons",
      "questions": [
        {
          "question_type": "open_answer",
          "description": "The only world besides Earth that people have walked on.",
          "correct_answer": "The Moon",
          "aliases": [
            "Luna"
          ]
        },
        null,
        {
          "question_type": "name_them_all",
          "description": "Name the four Galilean satellites.",
          "answers": [
            {
              "description": "Io"
            },
            {
              "description": "Europa"
            },
            {
              "description": "Ganymede",
              "aliases": [
                "Ganymedes"
              ]
            },
            {
              "description": "Callisto"
            }
          ],
          "required_count": 3,
          "value": 500
        }
      ]
    }
  ],
  "settings": {
    "jeopardy_buzzer_mode": "solo",
    "jeopardy_value_step": 200,
    "jeopardy_wrong_answer_costs": true
  }
}'
Uspeh
{
  "success": true,
  "id": "-Nq8sample_activity_key",
  "url": "https://puzzel.org/en/jeopardy/embed?p=-Nq8sample_activity_key",
  "message": "Jeopardy board created successfully"
}

Interaktivni video

api_e_interactive_video

#
POST /api/public/v1/interactive-video Od 1 do 50 v items
Vsebina

api_c_interactive_video

Privzeto uporabi ime “Interactive Video API”

Vredno vedeti
  • Pojavno okno je objekt s time (sekunde ali "1:23"), kind ("question", razen če piše "note", "think" ali "chapter") in description. Vprašanje je vprašanje, kot ga sprejme končna točka za kviz, in lahko nosi rewind_to: od kod se ob napačnem odgovoru video znova predvaja.
Nastavitve, ki jih prebere
PoljeTipKaj počne
video_url
obvezno znotraj settings
string
stringVideo: stran YouTube, Vimeo ali Bunny Stream ali neposredna povezava do datoteke mp4, webm ali mov.
video_duration
neobvezno znotraj settings
number
numberDolžina videa v sekundah. Če je podana, je pojavno okno za koncem videa zavrnjeno.
Primer zahteve
POST interactive-video
curl -X POST https://puzzel.org/api/public/v1/interactive-video \
  -H "Content-Type: application/json" \
  -d '{
  "account_api_key": "YOUR_API_KEY",
  "email": "you@example.com",
  "title": "Interactive Video",
  "language": "sl",
  "items": [
    {
      "time": 5,
      "kind": "chapter",
      "description": "Evaporation"
    },
    {
      "time": 42.5,
      "kind": "question",
      "question_type": "multiple_choice",
      "description": "What turns liquid water into vapour?",
      "answers": [
        {
          "type": "text",
          "description": "Heat from the sun",
          "isCorrect": true
        },
        {
          "type": "text",
          "description": "Wind from the north",
          "isCorrect": false
        },
        {
          "type": "text",
          "description": "Salt in the sea",
          "isCorrect": false
        }
      ],
      "explanation": "The sun warms the surface and the water evaporates.",
      "rewind_to": 20
    }
  ],
  "settings": {
    "video_url": "https://www.youtube.com/watch?v=al-do-HGuIk",
    "video_duration": 180,
    "video_allow_skipping": true
  }
}'
Uspeh
{
  "success": true,
  "id": "-Nq8sample_activity_key",
  "url": "https://puzzel.org/en/interactive-video/embed?p=-Nq8sample_activity_key",
  "message": "Interactive video created successfully"
}
Povedi in številke

Kriptogram

Poved spremeni v kodo za razvozlavanje, znak za znakom.

#
POST /api/public/v1/cryptogram Ne sprejme items
Vsebina

Ena poved, v polju sentence. Ta končna točka ne sprejme items.

Privzeto uporabi ime “Cryptogram API”

Vredno vedeti
  • Karkoli pošlješ v items, se prezre — uganka se zgradi samo iz povedi.
Nastavitve, ki jih prebere
PoljeTipKaj počne
sentence
obvezno
string
stringPoved, ki jo je treba šifrirati. Igralci jo dekodirajo znak za znakom.
helpers
neobvezno znotraj settings
string
stringKateri znaki so podarjeni brezplačno kot vstopna točka: nobeni, najpogostejši, samoglasniki ali tisti, ki jih navedeš sam.
Ena od nonemost_commonvowelscustom
Privzeto: "none"
character_list
neobvezno znotraj settings
string
stringAbeceda, iz katere je zgrajena šifra. Če pustiš prazno, si šifriranje izbere svojo.
extra_letters
neobvezno znotraj settings
string
stringZnaki, ki so podarjeni, ko je helpers nastavljen na "custom". Pri drugih načinih pomoči se prezrejo.
hide_unused_characters
neobvezno znotraj settings
boolean
booleanIz ključa izpusti znake, ki jih poved nikoli ne uporabi.
Privzeto: false
Primer zahteve
POST cryptogram
curl -X POST https://puzzel.org/api/public/v1/cryptogram \
  -H "Content-Type: application/json" \
  -d '{
  "account_api_key": "YOUR_API_KEY",
  "email": "you@example.com",
  "title": "Cryptogram",
  "language": "sl",
  "sentence": "An apple a day keeps the doctor away",
  "settings": {
    "helpers": "vowels",
    "hide_unused_characters": false
  }
}'
Uspeh
{
  "success": true,
  "id": "-Nq8sample_activity_key",
  "url": "https://puzzel.org/en/cryptogram/embed?p=-Nq8sample_activity_key",
  "message": "Cryptogram created successfully"
}

Računska vaja

Poved skrije za računi — reši račun, razkrij črko.

#
POST /api/public/v1/calculation Ne sprejme items
Vsebina

Ena poved, v polju sentence. Ta končna točka ne sprejme items.

Privzeto uporabi ime “Calculation Game API”

Vredno vedeti
  • Če so omejitve pretesne, da bi zakodirale poved, klic dobi odgovor 400 s pozivom, naj jih sprostiš, namesto da bi shranil delno uganko.
Nastavitve, ki jih prebere
PoljeTipKaj počne
sentence
obvezno
string
stringPoved, ki jo igralci odkrijejo z reševanjem računov.
difficulty_level
neobvezno znotraj settings
number
numberNajvišja dovoljena vrednost, ki jo sme imeti odgovor računa.
Ena od 20501001000
Privzeto: "100"
operators
neobvezno znotraj settings
string[]
string[]Katere operacije se lahko pojavijo. x pomeni množenje, : pomeni deljenje.
Ena od +-x:
Privzeto: ["+", "-", "x", ":"]
max_operations
neobvezno znotraj settings
number
numberKoliko operacij lahko en račun poveže skupaj.
Ena od 123
Privzeto: 1
number_difficulty
neobvezno znotraj settings
number
numberOmeji posamezna števila znotraj računa. Od 5 do 1000.
Privzeto: 100
Primer zahteve
POST calculation
curl -X POST https://puzzel.org/api/public/v1/calculation \
  -H "Content-Type: application/json" \
  -d '{
  "account_api_key": "YOUR_API_KEY",
  "email": "you@example.com",
  "title": "Calculation Game",
  "language": "sl",
  "sentence": "Fruit salad for everyone",
  "settings": {
    "difficulty_level": "100",
    "operators": [
      "+",
      "-",
      "x",
      ":"
    ],
    "max_operations": 1,
    "number_difficulty": 100
  }
}'
Uspeh
{
  "success": true,
  "id": "-Nq8sample_activity_key",
  "url": "https://puzzel.org/en/calculation/embed?p=-Nq8sample_activity_key",
  "message": "Calculation game created successfully"
}

Sudoku

Ustvari rešeno mrežo, nato pa iz nje znova vzame številke.

#
POST /api/public/v1/sudoku Ne sprejme items
Vsebina

Nič. Cela uganka nastane iz svojih dveh nastavitev.

Privzeto uporabi ime “Sudoku API”

Vredno vedeti
  • Ne pošlji items ne sentence — size in difficulty sta edini vhod.
  • Urejevalnik ponudi težavnost samo za 2x3, 3x3 in 3x4. API jo uporabi za vsako velikost, vključno z 2x2 in 4x4.
Nastavitve, ki jih prebere
PoljeTipKaj počne
size
neobvezno znotraj settings
string
stringVelikost enega bloka, zapisana kot vrstice krat stolpci — 3x3 da klasično mrežo 9x9. Končna točka le preveri, da se to razčleni kot dve številki, zato ostani pri velikostih, ki jih ponuja urejevalnik.
Ena od 2x22x33x33x44x4
Privzeto: "3x3"
difficulty_level
neobvezno znotraj settings
string
stringKoliko številk ostane na plošči za začetno stanje.
Ena od easynormalhard
Privzeto: "normal"
Primer zahteve
POST sudoku
curl -X POST https://puzzel.org/api/public/v1/sudoku \
  -H "Content-Type: application/json" \
  -d '{
  "account_api_key": "YOUR_API_KEY",
  "email": "you@example.com",
  "title": "Sudoku",
  "language": "sl",
  "settings": {
    "size": "3x3",
    "difficulty_level": "normal"
  }
}'
Uspeh
{
  "success": true,
  "id": "-Nq8sample_activity_key",
  "url": "https://puzzel.org/en/sudoku/embed?p=-Nq8sample_activity_key",
  "message": "Sudoku created successfully"
}

Padla poved

api_e_fallen_phrase

#
POST /api/public/v1/fallen-phrase Ne sprejme items
Vsebina

api_c_fallen_phrase

Privzeto uporabi ime “Fallen Phrase API”

Nastavitve, ki jih prebere
PoljeTipKaj počne
sentence
obvezno
string
stringPoved, ki jo je treba skriti: citat, pregovor, ključna poved. Največ 120 črk in številk.
columns
neobvezno znotraj settings
number
numberKako široka je plošča, od 8 do 18. Ožja plošča zloži več črk v vsak stolpec in je težja.
Privzeto: 14
helpers
neobvezno znotraj settings
string
stringKatere črke ostanejo v mreži kot vstopna točka: nobene, najpogostejše, samoglasniki ali tiste, ki jih navedeš sam.
Ena od nonemost_commonvowelscustom
Privzeto: "none"
extra_letters
neobvezno znotraj settings
string
stringČrke, ki so podarjene, ko je helpers nastavljen na "custom".
Primer zahteve
POST fallen-phrase
curl -X POST https://puzzel.org/api/public/v1/fallen-phrase \
  -H "Content-Type: application/json" \
  -d '{
  "account_api_key": "YOUR_API_KEY",
  "email": "you@example.com",
  "title": "Fallen Phrase",
  "language": "sl",
  "sentence": "Don't count your chickens before they hatch.",
  "settings": {
    "columns": 12,
    "helpers": "custom",
    "extra_letters": "ky"
  }
}'
Uspeh
{
  "success": true,
  "id": "-Nq8sample_activity_key",
  "url": "https://puzzel.org/en/fallen-phrase/embed?p=-Nq8sample_activity_key",
  "message": "Fallen phrase created successfully"
}

Poštevanka

api_e_times_tables

#
POST /api/public/v1/times-tables Ne sprejme items
Vsebina

api_c_times_tables

Privzeto uporabi ime “Times Tables API”

Nastavitve, ki jih prebere
PoljeTipKaj počne
tables
neobvezno znotraj settings
number[]
number[]Poštevanke za vajo. Če jih izpustiš, so od 1 do 10; z 11 ali 12 je mreža velika 12 krat 12.
Ena od 123456789101112
order
neobvezno znotraj settings
string
stringAli vrstice in stolpci tečejo po vrsti ali premešano.
Ena od ascendingshuffled
Privzeto: "ascending"
picture
neobvezno znotraj settings
string
stringSlika, ki jo pobarvajo pravilni odgovori.
Ena od sailboatheartrockettreecatfishflowerhouse
Privzeto: "sailboat"
players_choose_tables
neobvezno znotraj settings
boolean
booleanVsakemu igralcu omogoči, da sam izbere, katere poštevanke bo vadil.
Privzeto: false
fill_same_sums
neobvezno znotraj settings
boolean
booleanEn pravilen odgovor zapolni vsa polja z enakim računom.
Privzeto: true
Primer zahteve
POST times-tables
curl -X POST https://puzzel.org/api/public/v1/times-tables \
  -H "Content-Type: application/json" \
  -d '{
  "account_api_key": "YOUR_API_KEY",
  "email": "you@example.com",
  "title": "Times Tables",
  "language": "sl",
  "settings": {
    "tables": [
      7,
      3,
      4
    ],
    "order": "shuffled",
    "seed": "k3x9q2ab",
    "picture": "rocket",
    "players_choose_tables": true,
    "fill_same_sums": false
  }
}'
Uspeh
{
  "success": true,
  "id": "-Nq8sample_activity_key",
  "url": "https://puzzel.org/en/times-tables/embed?p=-Nq8sample_activity_key",
  "message": "Times tables created successfully"
}

Besedilo z vrzelmi

api_e_fill_in_the_gap

#
POST /api/public/v1/fill-in-the-gap Od 1 do 50 v items
Vsebina

api_c_fill_in_the_gap

Privzeto uporabi ime “Fill in the gap API”

Vredno vedeti
  • Napiši celotno poved in okoli vsake besede, ki jo želiš izpustiti, postavi zvezdici: "Water boils at *100* degrees." Več besed znotraj enega para je ena vrzel. Vnos lahko vsebuje tudi navodilo, prikazano nad povedjo.
Primer zahteve
POST fill-in-the-gap
curl -X POST https://puzzel.org/api/public/v1/fill-in-the-gap \
  -H "Content-Type: application/json" \
  -d '{
  "account_api_key": "YOUR_API_KEY",
  "email": "you@example.com",
  "title": "Fill in the gap",
  "language": "sl",
  "items": [
    {
      "sentence": "The capital of France is *Paris*, and the river that runs through it is the *Seine*."
    },
    {
      "sentence": "*Amsterdam* is the capital of the Netherlands, but the government sits in *The Hague*.",
      "instruction": "Two cities, one of them two words."
    },
    {
      "sentence": "The *Danube* flows through Vienna, Bratislava, *Budapest* and Belgrade."
    }
  ]
}'
Uspeh
{
  "success": true,
  "id": "-Nq8sample_activity_key",
  "url": "https://puzzel.org/en/fill-in-the-gap/embed?p=-Nq8sample_activity_key",
  "message": "Fill in the gap created successfully"
}

Stavčna analiza

Povedi, v katerih igralci označujejo besede: besedne vrste, stavčne člene ali tvoje lastne oznake.

#
POST /api/public/v1/deconstruct Od 1 do 50 v items
Vsebina

Niz povedi. Vsaka beseda, ki jo je treba označiti, je zapisana kot [word](label).

Privzeto uporabi ime “Sentence analysis API”

Vredno vedeti
  • Poved napiši takole: "The [dog](noun) [barks](verb)." Besede brez oznake so prikazane, a se ne sprašujejo. Oznake noun, verb, adjective in subject se vsakemu igralcu prikažejo v njegovem jeziku.
Nastavitve, ki jih prebere
PoljeTipKaj počne
categories
neobvezno znotraj settings
string[]
string[]Oznake, med katerimi igralci izbirajo, po vrsti. Če jih izpustiš, so to oznake, uporabljene v povedih. Pošlji jih, če želiš dodati oznako, ki je nobena beseda ne nosi, ali določiti vrstni red.
Primer zahteve
POST deconstruct
curl -X POST https://puzzel.org/api/public/v1/deconstruct \
  -H "Content-Type: application/json" \
  -d '{
  "account_api_key": "YOUR_API_KEY",
  "email": "you@example.com",
  "title": "Sentence analysis",
  "language": "sl",
  "items": [
    {
      "sentence": "The [old](adjective) [farmer](noun) [feeds](verb) the [hungry](adjective) [chickens](noun) [early](adverb).",
      "instruction": "Label the nouns, verbs, adjectives and adverbs."
    },
    {
      "sentence": "A [brown](adjective) [horse](noun) [jumped](verb) [quickly](adverb) over the [fence](noun)."
    },
    {
      "sentence": "[Two small lambs](subject) [sleep](verb) in the [barn](noun), and the [dog](noun) [watches](verb) [quietly](adverb)."
    }
  ],
  "settings": {
    "categories": [
      "noun",
      "verb",
      "adjective",
      "adverb",
      {
        "name": "subject",
        "color": "#224466"
      },
      "preposition"
    ]
  }
}'
Uspeh
{
  "success": true,
  "id": "-Nq8sample_activity_key",
  "url": "https://puzzel.org/en/deconstruct/embed?p=-Nq8sample_activity_key",
  "message": "Sentence analysis created successfully"
}

Logična uganka

api_e_logic_puzzle

#
POST /api/public/v1/logic-puzzle Vsaj 3 v items
Vsebina

api_c_logic_puzzle

Privzeto uporabi ime “Logic Puzzle API”

Vredno vedeti
  • Vsaka kategorija potrebuje enako število elementov, od 3 do 6, vsi različni. Ena kategorija je lahko označena kot urejena (cene, ure, starosti), neobvezno z enoto, kar generatorju omogoči pisanje opisov o več, manj in koliko.
Nastavitve, ki jih prebere
PoljeTipKaj počne
story
neobvezno znotraj settings
string
stringZgodba v ozadju, prikazana nad opisi.
difficulty
neobvezno znotraj settings
string
stringKatere vrste opisov sme uporabiti generator.
Ena od easymediumhard
Privzeto: "easy"
hints
neobvezno znotraj settings
boolean
booleanPonudi gumb, ki prikaže naslednji korak.
Privzeto: true
auto_cross
neobvezno znotraj settings
boolean
booleanKo označiš ujemanje, se prečrta preostanek njegove vrstice in stolpca.
Privzeto: true
clue_mode
neobvezno znotraj settings
string
stringKdo napiše opise, ki jih vidijo igralci: ustvarjeni iz tabele, tvoje lastne povedi v free_clues ali nobeni.
Ena od generatedfreenone
Privzeto: "generated"
free_clues
neobvezno znotraj settings
string[]
string[]Tvoje lastne povedi z opisi, prikazane tako, kot so napisane, z clue_mode "free". Nič jih ne preverja.
Primer zahteve
POST logic-puzzle
curl -X POST https://puzzel.org/api/public/v1/logic-puzzle \
  -H "Content-Type: application/json" \
  -d '{
  "account_api_key": "YOUR_API_KEY",
  "email": "you@example.com",
  "title": "Logic Puzzle",
  "language": "sl",
  "items": [
    {
      "name": "Baker",
      "items": [
        "Amira",
        "Jonas",
        "Priya",
        "Tobias"
      ]
    },
    {
      "name": "Cake",
      "items": [
        "Lemon drizzle",
        "Carrot cake",
        "Brownies",
        "Apple pie"
      ]
    },
    {
      "name": "Price",
      "items": [
        "$2",
        "$4",
        "$6",
        "$8"
      ],
      "ordered": true,
      "unit": "dollars"
    }
  ],
  "settings": {
    "story": "Four friends each baked one thing for the school bake sale and each set a different price. Who baked what, and what did it cost?",
    "difficulty": "medium"
  }
}'
Uspeh
{
  "success": true,
  "id": "-Nq8sample_activity_key",
  "url": "https://puzzel.org/en/logic-puzzle/embed?p=-Nq8sample_activity_key",
  "message": "Logic puzzle created successfully"
}

Lov na zaklad

api_e_scavenger_hunt

#
POST /api/public/v1/scavenger-hunt Od 1 do 50 v items
Vsebina

api_c_scavenger_hunt

Privzeto uporabi ime “Scavenger Hunt API”

Vredno vedeti
  • Korak je objekt s title, description, code in neobvezno z accepted_codes (drugi zapisi, ki se štejejo), url in link_text. Koda se preverja ne glede na velike črke in presledke. Zemljevid z žebljički je mogoče dodati samo v urejevalniku.
Primer zahteve
POST scavenger-hunt
curl -X POST https://puzzel.org/api/public/v1/scavenger-hunt \
  -H "Content-Type: application/json" \
  -d '{
  "account_api_key": "YOUR_API_KEY",
  "email": "you@example.com",
  "title": "Scavenger Hunt",
  "language": "sl",
  "items": [
    {
      "title": "Start at the front desk",
      "description": "Which year is carved above the entrance?",
      "code": "1897",
      "accepted_codes": [
        "eighteen ninety-seven"
      ]
    },
    {
      "title": "The quiet corner",
      "description": "Find the atlas shelf. What colour is the biggest atlas?",
      "code": "crimson",
      "accepted_codes": [
        "dark red"
      ]
    }
  ]
}'
Uspeh
{
  "success": true,
  "id": "-Nq8sample_activity_key",
  "url": "https://puzzel.org/en/scavenger-hunt/embed?p=-Nq8sample_activity_key",
  "message": "Scavenger hunt created successfully"
}

Prostorsko sklepanje

api_e_spatial_reasoning

#
POST /api/public/v1/spatial-reasoning Od 1 do 50 v items
Vsebina

api_c_spatial_reasoning

Privzeto uporabi ime “Spatial Reasoning API”

Vredno vedeti
  • Objekti in cilji so square, triangle, circle, hexagon, pentagon, star, diamond ali heart. Relacije so inside, outside, behind, in_front_of, right_of, left_of, above, below, same_color_as, different_color_from, larger_than in smaller_than. Pravilo, ki ga ni mogoče nikoli izpolniti, dobi odgovor 400.
Nastavitve, ki jih prebere
PoljeTipKaj počne
clue_mode
neobvezno znotraj settings
string
stringPravila, prikazana kot slike ali kot povedi.
Ena od visualtext
Privzeto: "visual"
unique_object_picks
neobvezno znotraj settings
boolean
booleanVsako obliko je mogoče postaviti samo enkrat.
Privzeto: false
hide_color_picker
neobvezno znotraj settings
boolean
booleanIgralci ne morejo prebarvati oblik.
Privzeto: false
Primer zahteve
POST spatial-reasoning
curl -X POST https://puzzel.org/api/public/v1/spatial-reasoning \
  -H "Content-Type: application/json" \
  -d '{
  "account_api_key": "YOUR_API_KEY",
  "email": "you@example.com",
  "title": "Spatial Reasoning",
  "language": "sl",
  "items": [
    {
      "rules": [
        {
          "object": "square",
          "relation": "inside",
          "target": "circle"
        }
      ]
    },
    {
      "rules": [
        {
          "object": "triangle",
          "relation": "above",
          "target": "square"
        },
        {
          "object": "star",
          "relation": "left_of",
          "target": "triangle"
        }
      ]
    }
  ],
  "settings": {
    "clue_mode": "text",
    "unique_object_picks": true,
    "hide_color_picker": false
  }
}'
Uspeh
{
  "success": true,
  "id": "-Nq8sample_activity_key",
  "url": "https://puzzel.org/en/spatial-reasoning/embed?p=-Nq8sample_activity_key",
  "message": "Spatial reasoning activity created successfully"
}

Rebus

Povedi, zapisane s slikami: igralci preberejo slike in spremembe črk spremenijo nazaj v besede.

#
POST /api/public/v1/rebus Od 1 do 30 v items
Vsebina

Niz povedi. Vsaka našteje besede, narisane kot slike; vsaka druga beseda ostane zapisana s črkami.

Privzeto uporabi ime “Rebus API”

Vredno vedeti
  • Beseda je narisana iz delov, ki skupaj tvorijo njen zapis. Del ima črke, ki jih nadomešča (text), emotikon (emoji) in shows: besedo za to, kar prikazuje slika ("broom" za sliko, ki stoji za "room"). Spremembe črk izračuna Puzzel. Del je lahko namesto tega simbol, na primer 4 za "for".
Nastavitve, ki jih prebere
PoljeTipKaj počne
rebus_commas
neobvezno znotraj settings
boolean
booleanIzpuščeno prvo ali zadnjo črko nariše kot vejico ob sliki.
Privzeto: false
Primer zahteve
POST rebus
curl -X POST https://puzzel.org/api/public/v1/rebus \
  -H "Content-Type: application/json" \
  -d '{
  "account_api_key": "YOUR_API_KEY",
  "email": "you@example.com",
  "title": "Rebus",
  "language": "sl",
  "items": [
    {
      "sentence": "I sweep the room before the sunflower wilts.",
      "words": [
        {
          "word": "I",
          "parts": [
            {
              "text": "I",
              "kind": "sound",
              "emoji": "👁️"
            }
          ]
        },
        {
          "word": "room",
          "parts": [
            {
              "text": "room",
              "kind": "picture",
              "shows": "broom",
              "emoji": "🧹"
            }
          ]
        },
        {
          "word": "before",
          "parts": [
            {
              "text": "be",
              "kind": "picture",
              "shows": "bee",
              "emoji": "🐝"
            },
            {
              "text": "for",
              "kind": "sound",
              "glyph": "4"
            },
            {
              "text": "e",
              "kind": "letters"
            }
          ]
        },
        {
          "word": "the",
          "position": 6,
          "parts": [
            {
              "text": "the",
              "kind": "picture",
              "shows": "tree",
              "emoji": "🌳"
            }
          ]
        },
        {
          "word": "sunflower",
          "parts": [
            {
              "text": "sun",
              "kind": "picture",
              "shows": "sun",
              "emoji": "☀️"
            },
            {
              "text": "flower",
              "kind": "picture",
              "shows": "flower",
              "emoji": "🌸"
            }
          ]
        }
      ]
    }
  ],
  "settings": {
    "rebus_commas": true
  }
}'
Uspeh
{
  "success": true,
  "id": "-Nq8sample_activity_key",
  "url": "https://puzzel.org/en/rebus/embed?p=-Nq8sample_activity_key",
  "message": "Rebus created successfully"
}
Slike

Sestavljanka

Sliko razreže na kose, ki jih znova sestaviš s povlečenjem.

#
POST /api/public/v1/jigsaw Ne sprejme items
Vsebina

En URL slike, v polju image. Ta končna točka ne sprejme items.

Privzeto uporabi ime “Jigsaw Game API”

Vredno vedeti
  • API vedno ustvari sestavljanko 4 krat 4. Število kosov, nepravilni kosi in ravni robovi so nastavitve urejevalnika — pošiljanje vrstic ali stolpcev tukaj ne naredi ničesar.
  • URL se shrani tak, kot si ga poslal, datoteka pa se nikoli ne kopira, zato mora ostati javno dosegljiv, dokler se dejavnost igra.
Nastavitve, ki jih prebere
PoljeTipKaj počne
image
obvezno
string
stringAbsolutni URL slike, ki jo je treba razrezati. Pošlje se na najvišji ravni, ne znotraj settings.
Primer zahteve
POST jigsaw
curl -X POST https://puzzel.org/api/public/v1/jigsaw \
  -H "Content-Type: application/json" \
  -d '{
  "account_api_key": "YOUR_API_KEY",
  "email": "you@example.com",
  "title": "Jigsaw Game",
  "language": "sl",
  "image": "https://example.com/orchard.jpg"
}'
Uspeh
{
  "success": true,
  "id": "-Nq8sample_activity_key",
  "url": "https://puzzel.org/en/jigsaw/embed?p=-Nq8sample_activity_key",
  "message": "Jigsaw game created successfully"
}

Drsna sestavljanka

Sliko premeša v ploščice, ki jih zdrsneš na mesto.

#
POST /api/public/v1/slidingpuzzle Ne sprejme items
Vsebina

En URL slike, znotraj settings. Ta končna točka ne sprejme items.

Privzeto uporabi ime “Sliding Puzzle API”

Vredno vedeti
  • Za razliko od sestavljanke ta končna točka sliko prebere iz settings.image. Polje image na najvišji ravni se prezre, klic pa dobi odgovor 400.
  • URL se shrani tak, kot si ga poslal, datoteka pa se nikoli ne kopira, zato mora ostati javno dosegljiv, dokler se dejavnost igra.
Nastavitve, ki jih prebere
PoljeTipKaj počne
image
obvezno znotraj settings
string
stringAbsolutni URL slike, ki jo je treba premešati. Za razliko od sestavljanke ta vrednost živi znotraj settings.
Primer zahteve
POST slidingpuzzle
curl -X POST https://puzzel.org/api/public/v1/slidingpuzzle \
  -H "Content-Type: application/json" \
  -d '{
  "account_api_key": "YOUR_API_KEY",
  "email": "you@example.com",
  "title": "Sliding Puzzle",
  "language": "sl",
  "settings": {
    "image": "https://example.com/orchard.jpg"
  }
}'
Uspeh
{
  "success": true,
  "id": "-Nq8sample_activity_key",
  "url": "https://puzzel.org/en/slidingpuzzle/embed?p=-Nq8sample_activity_key",
  "message": "Sliding puzzle created successfully"
}

Nekaj ne dela, kot bi moralo?

Pošlji zahtevo, ki si jo poskusil, in napako, ki si jo dobil nazaj, in dobil boš pravi odgovor osebe, ki je napisala končno točko.

Piši podpori po e-pošti