Programsko sučelje aplikacije (API)

Informacije na ovoj stranici namijenjene su isključivo profesionalnim korisnicima, tj. onima koji svoje sustave za uređivanje tekstova namjeravaju opremiti mogućnošću ispravljanja pogrešaka koju nudimo.

Provjeru svog teksta možete obaviti na naslovnoj stranici usluge.

Hašek profesionalnim korisnicima omogućuje spajanje na jezgrenu uslugu putem aplikacijskog programskog sučelja. Zahtjev se šalje putem protokola HTTPS, metodom POST. Odgovor se šalje u tekstnom formatu JSON.

Format zahtjeva klijentske strane

POST zahtjev postavlja se na resurs https://ispravi.me/api/ispravi.pl. Zahtjev sadrži sljedeće parametre:

textarea=<tekst za provjeru>

Tekst za provjeru šalje se kodiran u formatu UTF-8.

context=(on|off)

on – tražena je kontekstna provjera teksta
off – tražena je standardna provjera teksta (default)

app=<identifikator korisnika>

Jedinstveni identifikator korisnika usluge – registrirajte svoj API-ključ.

Primjer zahtjeva:

POST /api/ispravi.pl HTTP/1.1
Host: ispravi.me
...
<prazni red>
textarea=pogrešon+napsiana+rijeć&context=on&app=ASDAAF-DAAA-AFASD-DAFDASA

Format odgovora poslužiteljske strane

Odgovor poslužitelja šalje se u formatu JSON. Odogovor je opisan u primjeru ispod:

{
   "request" : {
      "textlength" : <duljina obrađenog teksta>,
      "remoteip" : <ip_adresa_klijenta>,
      "key" : <identifikator korisnika>, 
      "newuser" : <true|false>,        # novi korisnik?
      "contextual" : <true|false>,     # tražena kontekstualna provjera?
      "from" : <mreža_korisnika>,
      "session" : <identifikator sjednice>,
      "contenttype" : <mime-type zadanog teksta> 
   },
   "status" : {
      "time" : <vrijeme obrade u sekundama>,
      "text" : <tekstni status obrade>,
      "href" : <URL na objašnjenje pogreške>,
      "code" : <brojčani status obrade>
   },
   "response" : {
      "errors" : <broj grešaka>,
      "error" : [
         {
            "suspicious" : <sumnjiva riječ>,
            "length" : <duljina pogrešne riječi>,
            "suggestions" : [
               <lista predloženih ispravaka>
            ],
            "occurrences" : <broj takvih pogrešaka>,
            "position" : [
               <indeksi na kojima se nalazi pogrešno napisana riječ, prvi znak je 0>
            ],
            "class" : (extreme|major|moderate|minor|unclassifiable|case-mix|alphanum-mix|grammar|pleonasm) 
         },
         {
            # ponavlja se za svaku pogrešku
         },
      ]
   }
}