POST/v1/finance/report
Gauti finansų suvestinės ataskaitą
finance_report
Grąžina organizacijos sąskaitų faktūrų arba mokėjimų sumas, sugrupuotas pagal iki trijų dimensijų (kategorija, grupė, tiekėjo veiklos tipas, tiekėjas, pirkėjas, kontrahentas, kryptis, valiuta, mėnuo, ketvirtis, metai), su matais invoiced, paid, unpaid ir tax. Į sumas įtraukiami tik naudotojui matomi dokumentai (jo duomenų profilio rinkiniai ir kategorijos bei nustatymas „answer only from verified cards“ – atsakyti tik remiantis patikrintomis kortelėmis); užklausos filtrai šią sritį susiaurina, bet niekada neišplečia.
Režimu reporting (numatytasis) sumos perskaičiuojamos į organizacijos ataskaitų valiutą pagal dokumento datos kursą, o sumos be kurso išvardijamos lauke conversion.unconverted. Režimu original skirtingų valiutų sumos nesudedamos, o valiuta tampa eilutės dimensija. Jei eilučių daugiau nei limit, truncated yra true, o totals vis tiek apima visas eilutes. Reikia duomenų profilio su prieiga prie finansinių duomenų (finance.forbidden).
Ataskaita, sąskaitų faktūrų ir mokėjimų sąrašai bei jų eksportas yra skaitymo operacijos, nors ir naudoja POST: jos prieinamos režimu „View as“ ir API raktams su apimtimi read (ir, kaip anksčiau, raktams su apimtimi write).
Autentifikavimas
Siųskite API raktą antraštėje Authorization: Authorization: Bearer <raktas>.
Antraštės parametrai
X-View-AsstringTik API raktams su vaidmeniu
admin. Užklausa vykdoma duomenų profilio<profile>[:viewer|verifier|editor]vardu, pvz.,employee:viewer. Diegimo raktas šios antraštės naudoti negali (403).
Slapuko parametrai
kb_view_asstringRežimo „View as“ (žiūrėti kaip) sesijos slapukas.
POST /auth/view-asjį nustato, oDELETE /auth/view-asišvalo.
Užklausos turinys
application/json
Objektas: FinanceReportRequest
basisstringinvoices: sąskaitos faktūros, kreditinės sąskaitos faktūros ir kvitai.payments: mokėjimų žurnalas (pinigų srautai). Supaymentsvienintelis matas yrapaid, o dimensijadirectionir bendra suma rodo pinigų judėjimą –inarbaout, o pervedimas tarp jūsų pačių juridinių asmenų žymimasinternal.Leidžiamos reikšmės:
invoicespaymentsNumatytoji reikšmė: "invoices"
group_byarray of FinanceDimensionitems ≤ 3
measuresarray of FinanceMeasureNumatytoji reikšmė –
invoiced(paymentsatveju –paid).currency_modeFinanceCurrencyModedate_basisstringKuri data nustato laikotarpį ir filtrą
from/to: dokumento data ar mokėjimo data.Leidžiamos reikšmės:
documentpaymentNumatytoji reikšmė: "document"
filtersFinanceFilterorder_bystringMatas arba dimensija rūšiavimui. Numatytai rūšiuojama pagal pirmąjį matą mažėjimo tvarka.
order_descbooleanNumatytoji reikšmė: true
limitintegerNumatytoji reikšmė: 1000≥ 1, ≤ 10000
languagestringKategorijų ir grupių pavadinimų kalba,
en|ru. Numatytoji –en.
Atsakai
200Ataskaita
Atsako antraštės
RateLimit-PolicyGaliojantys limitai IETF juodraščio
draft-ietf-httpapi-ratelimit-headersformatu: kableliais atskirti elementai"<name>";q=<quota>;w=<window in seconds>.key– API rakto užklausų dažnis (kvota – pliūpsnis, laiko langas – laikas, per kurį kvota visiškai atsistato; sesijai taiuser, be prisijungimo duomenų –ip);minute,dayirmonth– organizacijos kvotos kalendorinei minutei, dienai ir mėnesiui pagal UTC.RateLimitKiek liko kiekvieno
RateLimit-Policylimito:"<name>";r=<remaining>;t=<seconds until reset>.X-RateLimit-LimitGriežčiausio
RateLimit-Policyįrašo (kuriame liko mažiausiai užklausų) limitas.X-RateLimit-RemainingLikusių užklausų skaičius pagal griežčiausią limitą.
X-RateLimit-ResetSekundės iki griežčiausio limito atsistatymo.
application/json
currencystringAtaskaitos valiuta (režimas
reporting).Visų eilučių sumos prieš sutrumpinimą, po vieną įrašą kiekvienai valiutai (ataskaitoje, suskaidytoje pagal kryptį, – kiekvienai valiutai ir krypčiai,
FinanceReportTotal.direction).truncatedbooleanprivalomaslimitintegerprivalomastotal_rowsintegerprivalomasSugrupuotų eilučių skaičius prieš sutrumpinimą.
conversionFinanceConversionwarningsarray of stringĮspėjimų kodai:
profile_missing– organizacijos įmonės rekvizitai nenurodyti, todėl sąskaitų faktūrų kryptis numatytai yrain;catalog_missing– įmonių registras neįkeltas;fx_rate_missing– kai kurioms sumoms nėra valiutos kurso (conversion.unconverted);fx_rate_stale– kai kurie kursai pasenę;enrichment_pending– kai kurie dokumentai dar apdorojami ir neįtraukti į sumas. Nežinomą kodą rodykite su bendru pranešimu.
400Užklausa netinkama: parametro reikšmė arba objekto būsena neleidžia atlikti veiksmo (`detail` – pranešimas).
Atsako antraštės
RateLimit-PolicyGaliojantys limitai IETF juodraščio
draft-ietf-httpapi-ratelimit-headersformatu: kableliais atskirti elementai"<name>";q=<quota>;w=<window in seconds>.key– API rakto užklausų dažnis (kvota – pliūpsnis, laiko langas – laikas, per kurį kvota visiškai atsistato; sesijai taiuser, be prisijungimo duomenų –ip);minute,dayirmonth– organizacijos kvotos kalendorinei minutei, dienai ir mėnesiui pagal UTC.RateLimitKiek liko kiekvieno
RateLimit-Policylimito:"<name>";r=<remaining>;t=<seconds until reset>.X-RateLimit-LimitGriežčiausio
RateLimit-Policyįrašo (kuriame liko mažiausiai užklausų) limitas.X-RateLimit-RemainingLikusių užklausų skaičius pagal griežčiausią limitą.
X-RateLimit-ResetSekundės iki griežčiausio limito atsistatymo.
application/json
401Prisijungimo duomenys neišsiųsti (nei sesijos slapukas, nei API raktas) arba raktas nerastas.
Atsako antraštės
RateLimit-PolicyGaliojantys limitai IETF juodraščio
draft-ietf-httpapi-ratelimit-headersformatu: kableliais atskirti elementai"<name>";q=<quota>;w=<window in seconds>.key– API rakto užklausų dažnis (kvota – pliūpsnis, laiko langas – laikas, per kurį kvota visiškai atsistato; sesijai taiuser, be prisijungimo duomenų –ip);minute,dayirmonth– organizacijos kvotos kalendorinei minutei, dienai ir mėnesiui pagal UTC.RateLimitKiek liko kiekvieno
RateLimit-Policylimito:"<name>";r=<remaining>;t=<seconds until reset>.X-RateLimit-LimitGriežčiausio
RateLimit-Policyįrašo (kuriame liko mažiausiai užklausų) limitas.X-RateLimit-RemainingLikusių užklausų skaičius pagal griežčiausią limitą.
X-RateLimit-ResetSekundės iki griežčiausio limito atsistatymo.
application/json
403Veiksmas neleidžiamas: vaidmuo nesuteikia reikiamų teisių, nėra prieigos prie rinkinio ar kortelės, užklausa vykdoma režimu „View as“ arba organizacijos veikla sustabdyta ar organizacija ištrinta (`detail` – objektas su `code: org_suspended | org_deleted`).
Atsako antraštės
RateLimit-PolicyGaliojantys limitai IETF juodraščio
draft-ietf-httpapi-ratelimit-headersformatu: kableliais atskirti elementai"<name>";q=<quota>;w=<window in seconds>.key– API rakto užklausų dažnis (kvota – pliūpsnis, laiko langas – laikas, per kurį kvota visiškai atsistato; sesijai taiuser, be prisijungimo duomenų –ip);minute,dayirmonth– organizacijos kvotos kalendorinei minutei, dienai ir mėnesiui pagal UTC.RateLimitKiek liko kiekvieno
RateLimit-Policylimito:"<name>";r=<remaining>;t=<seconds until reset>.X-RateLimit-LimitGriežčiausio
RateLimit-Policyįrašo (kuriame liko mažiausiai užklausų) limitas.X-RateLimit-RemainingLikusių užklausų skaičius pagal griežčiausią limitą.
X-RateLimit-ResetSekundės iki griežčiausio limito atsistatymo.
application/json
429Per daug užklausų (`api.rate_limited`), išnaudota organizacijos minutės, dienos ar mėnesio kvota (`api.quota_exceeded`; `error.details` pateikia `quota`, `limit` ir `reset_at`), pasiektas organizacijos limitas arba atsakymų paslauga užimta (`answers.engine_busy`). Palaukite tiek, kiek nurodyta antraštėje `Retry-After`.
Atsako antraštės
Retry-AfterKiek sekundžių palaukti prieš kartojant užklausą.
RateLimit-PolicyGaliojantys limitai IETF juodraščio
draft-ietf-httpapi-ratelimit-headersformatu: kableliais atskirti elementai"<name>";q=<quota>;w=<window in seconds>.key– API rakto užklausų dažnis (kvota – pliūpsnis, laiko langas – laikas, per kurį kvota visiškai atsistato; sesijai taiuser, be prisijungimo duomenų –ip);minute,dayirmonth– organizacijos kvotos kalendorinei minutei, dienai ir mėnesiui pagal UTC.RateLimitKiek liko kiekvieno
RateLimit-Policylimito:"<name>";r=<remaining>;t=<seconds until reset>.X-RateLimit-LimitGriežčiausio
RateLimit-Policyįrašo (kuriame liko mažiausiai užklausų) limitas.X-RateLimit-RemainingLikusių užklausų skaičius pagal griežčiausią limitą.
X-RateLimit-ResetSekundės iki griežčiausio limito atsistatymo.
application/json
503Paslauga, nuo kurios priklauso ši užklausa, laikinai nepasiekiama. Pakartokite vėliau.
Atsako antraštės
RateLimit-PolicyGaliojantys limitai IETF juodraščio
draft-ietf-httpapi-ratelimit-headersformatu: kableliais atskirti elementai"<name>";q=<quota>;w=<window in seconds>.key– API rakto užklausų dažnis (kvota – pliūpsnis, laiko langas – laikas, per kurį kvota visiškai atsistato; sesijai taiuser, be prisijungimo duomenų –ip);minute,dayirmonth– organizacijos kvotos kalendorinei minutei, dienai ir mėnesiui pagal UTC.RateLimitKiek liko kiekvieno
RateLimit-Policylimito:"<name>";r=<remaining>;t=<seconds until reset>.X-RateLimit-LimitGriežčiausio
RateLimit-Policyįrašo (kuriame liko mažiausiai užklausų) limitas.X-RateLimit-RemainingLikusių užklausų skaičius pagal griežčiausią limitą.
X-RateLimit-ResetSekundės iki griežčiausio limito atsistatymo.
application/json
Klaidų kodai
Kodai, kuriuos ši operacija gali grąžinti lauke error.code, be bendrųjų kodų, galimų bet kuriai užklausai.
Saugūs pakartojimai
Su kiekviena POST ir PATCH užklausa siųskite antraštę Idempotency-Key (pavyzdžiui, UUID). Pakartojus užklausą su tuo pačiu raktu per 24 valandas, grąžinamas išsaugotas atsakas, o užklausa iš naujo nevykdoma.
Užklausų dažnio limitai
Atsakuose yra antraštės RateLimit ir RateLimit-Policy bei ankstesnės X-RateLimit-Limit, X-RateLimit-Remaining ir X-RateLimit-Reset. Atsake 429 yra antraštė Retry-After sekundėmis: palaukite ir pakartokite užklausą.