Cene in pravica do uporabe

Dostop do API-ja je vezan na naročniško funkcijo ApiAccess. Ta funkcija je na voljo izključno s paketoma Enterprise in Custom. Klici, avtenticirani z API ključem, proti kateremu koli drugemu paketu vrnejo HTTP 402 s code: "API_ACCESS_NOT_ENABLED", preden pridejo do kontrolerja.

Ta stran je avtoritativen vir za to, kateri paket potrebuje stranka vašega partnerskega izdelka. Marketinške strani (getlocco.com/sl/cene) opisujejo pakete v poslovnih izrazih; spodnja matrica je tisto, kar runtime dejansko preverja.

Pravilo

  • ApiAccess je dodeljen paketoma Enterprise in Custom.
  • ApiAccess ni dodeljen paketom Free, Business, Plus in Professional.
  • Preverjanje se izvede enkrat na zahtevek, po avtentikaciji in po tem, ko je glava X-Company-Id razrešena na ciljno podjetje. Zahtevek, ki prestane preverjanje, porabi slot v oknih omejitve zahtevkov; zahtevek, ki ne prestane, ne porabi.

Preverjanje temelji na ciljnem podjetju, razrešenem iz X-Company-Id, ne na uporabniku, ki je lastnik ključa. Uporabnik, ki pripada dvema podjetjema (enemu Enterprise, enemu Business), bo z istim ključem uspel proti Enterprise najemniku in dobil 402 proti Business najemniku.

Matrica paketov

PaketAPI dostop
FreeNe
BusinessNe
PlusNe
ProfessionalNe
EnterpriseDa
CustomDa

Če je paket uporabnika pod ravnjo Enterprise, se nadgradnja izvede v locco spletni aplikaciji pod Nastavitve → Naročnina. Ne obstaja ločen paket “samo API”; ApiAccess vedno pride z ostalimi funkcijami paketa Enterprise.

Odgovor 402

Ko ključ zadene podjetje, ki nima ApiAccess, partnerski API vrne HTTP 402 s kanonično ovojnico napake:

json
{
"code": "API_ACCESS_NOT_ENABLED",
"type": "PaymentRequired",
"title": "<lokalizirano berljivo sporočilo>",
"status": 402
}
  • code: stabilno. Partnerji filtrirajo po tem nizu. Konstanta je v katalogu napak.
  • type: stara kategorija, ohranjena zaradi združljivosti s SPA aplikacijo. Ne pogojujte logike z njo.
  • title: lokalizirano glede na glavo Accept-Language zahtevka (privzeto hr). Nikoli ne razčlenjujte. Formulacija ni stabilna med izdajami, dejansko besedilo pa prihaja iz datotek z viri partnerskega API-ja (SharedResource.resx / SharedResource.hr.resx).
  • status: odraža HTTP status. 402 Payment Required je standardna koda za pomanjkanje pravice do uporabe. Isti status industrija uporablja za “poverilnice so veljavne, vendar paket ne vključuje te površine”.

Content-Type je application/json. Odgovor je kratek: brez slovarja errors, brez podrobnosti po polju. Partner nima česa poskusiti znova z drugačnim vnosom. Edina rešitev je, da uporabnik nadgradi paket.

Priporočeno ravnanje partnerja

402 z partnerskega API-ja je napaka stanja uporabnika, ne prehodna napaka. Ponovljen poskus istega ključa proti istemu podjetju bo še naprej vračal 402, dokler uporabnik ne nadgradi paketa.

Razumno ravnanje odjemalca:

  1. Ob 402 s code: "API_ACCESS_NOT_ENABLED" ustavite integracijsko zanko za to podjetje in v svojem vmesniku ali konzoli prikažite jasno sporočilo “locco paket tega uporabnika ne vključuje API dostopa”.
  2. Ne zakasnite in ponavljajte. Stanje ni prehodno.
  3. Če integracija pokriva več podjetij, izolirajte zid na neuspešno podjetje. Ostala podjetja na paketu Enterprise morajo še naprej delovati.

Za podroben opis vsake napake, ki jo lahko partnerski API odda, glejte katalog napak.

Povezano

  • Avtentikacija: bearer žetoni, glava X-Company-Id in rotacija ključev.
  • Napake: popoln katalog stabilnih strojno berljivih kod napak.
  • Omejitve zahtevkov: omejitve na sekundo, uro in dan na paketu Enterprise.