Anekdoodi API
Tasuta JSON-API, 59 576 eestikeelset anekdoodi. Võtit pole vaja. Piirangud IP kohta: 120 päringut minutis, 3000 päringut ja 300 anekdooti päevas (uus päev algab kell 00:00). Vastuses on päised X-RateLimit-Daily-Limit ja X-RateLimit-Daily-Remaining. Kõiki anekdoote korraga alla laadida ei saa. Kõik vastused on UTF-8, CORS on lubatud.
Otspunktid
| Päring | Kirjeldus |
|---|---|
GET /api/random | Juhuslik anekdoot. Parameetrid: cat, tag, len, q, adult, n (1-20). |
GET /api/anecdote/{id} | Üks anekdoot ID järgi. |
GET /api/search?q=... | Tekstiotsing (sõna osa sobib, mitu sõna on JA). Parameetrid: q, cat, tag, len, adult, page, per (1-20), lehitseda saab kuni 100. tulemuseni. |
GET /api/daily | Päeva anekdoot (sama terve päeva, ilma 18+ sisuta). |
GET /api/categories | Kategooriad ja nende anekdootide arv. |
GET /api/stats | Koondarvud. |
POST /api/vote/{id} | Hääl: JSON {"v":"up"} või {"v":"down"}. Üks hääl anekdoodi ja IP kohta. |
Filtrid
cat: kategooria slug (vt allpool), ntjuku-ja-vovotskatag: silt, üks neistdialoog,loend,lugu,kysimus-vastus,varsilinelen:lühike(kuni 140 märki),keskmine(kuni 450),pikkadult=1: lisab ka 18+ sisuga anekdoodid (vaikimisi need puuduvad)exact=1: otsing täpse sõnaosa järgi (vaikimisi lühendatakse pikemad sõnad, et leida ka käänded:jalgratasleiab kajalgrattaga)format=text:randomjaanecdotetagastavad tavalise teksti (sobib skriptidele)
Näited
curl https://onu.ee/anekdoot/api/random
curl "https://onu.ee/anekdoot/api/random?cat=loomad&len=lühike"
curl "https://onu.ee/anekdoot/api/search?q=tedrekana"
curl "https://onu.ee/anekdoot/api/random?format=text"
Vastuse kuju
{
"data": [{
"id": 12345,
"text": "Kaks vanaeite ...",
"categories": ["Alkohol"],
"tags": ["dialoog"],
"length": "keskmine",
"chars": 212,
"adult": false,
"source": null,
"votes": {"up": 3, "down": 0},
"url": "https://onu.ee/anekdoot/?id=12345"
}]
}
Vea korral on vastuses {"error": {"code": "...", "message": "..."}} ja HTTP-kood 400, 404, 405 või 429.
Kategooriad
| Slug | Nimi | Arv |
|---|---|---|
muu | Muu | 14532 |
seks-18 | Seks (18+) | 5880 |
loomad | Loomad | 5355 |
naised-ja-mehed | Naised ja mehed | 4917 |
arst-ja-haigla | Arst ja haigla | 4727 |
politsei-ja-oigus | Politsei ja õigus | 3534 |
autod-ja-liiklus | Autod ja liiklus | 3516 |
arimehed-ja-raha | Ärimehed ja raha | 3326 |
alkohol | Alkohol | 3287 |
kool-ja-opetajad | Kool ja õpetajad | 3191 |
abielu-ja-suhted | Abielu ja suhted | 2991 |
juku-ja-vovotska | Juku ja Vovotška | 2851 |
too-ja-ulemus | Töö ja ülemus | 2284 |
poliitika | Poliitika | 2035 |
restoran-ja-toit | Restoran ja toit | 1961 |
religioon | Religioon | 1895 |
blondiinid | Blondiinid | 1819 |
lapsed-ja-pere | Lapsed ja pere | 1642 |
eestlane-venelane-soomlane | Eestlane, venelane, soomlane | 1485 |
arvutid-ja-tehnika | Arvutid ja tehnika | 1455 |
sojavagi | Sõjavägi | 1432 |
nsvl-ja-ajalugu | NSVL ja ajalugu | 844 |
joulud-ja-puhad | Jõulud ja pühad | 614 |
armeenia-raadio | Armeenia raadio | 415 |
kosmos-ja-teadus | Kosmos ja teadus | 354 |
tsapajev-ja-petka | Tšapajev ja Petka | 324 |
chuck-norris | Chuck Norris | 78 |
Kategooriad on määratud märksõnade järgi automaatselt, seega kohati eksib. Vana kuju /?q=api&search=sõna töötab edasi.