POST/v1/finance/report
Hent en økonomisk oversigtsrapport
finance_report
Returnerer totaler for organisationens fakturaer eller betalinger, grupperet efter op til tre dimensioner (kategori, gruppe, leverandørens branche, leverandør, køber, modpart, retning, valuta, måned, kvartal, år), med nøgletallene invoiced, paid, unpaid og tax. Totalerne omfatter kun dokumenter, der er synlige for brugeren: samlingerne og kategorierne i vedkommendes dataprofil og indstillingen »answer only from verified cards« (svar kun ud fra verificerede kort). Anmodningens filtre indsnævrer dette omfang, men udvider det aldrig.
I tilstanden reporting (standard) omregnes beløb til organisationens rapporteringsvaluta til kursen på dokumentets dato, og beløb uden kurs vises i conversion.unconverted. I tilstanden original lægges beløb i forskellige valutaer ikke sammen, og valutaen bliver en dimension i rækken. Er der flere rækker end limit, er truncated true, og totals dækker stadig alle rækker. Kræver en dataprofil med adgang til økonomiske data (finance.forbidden).
Rapporten, listerne over fakturaer og betalinger og eksporten af dem er læseoperationer, selv om de bruger POST: de er tilgængelige i tilstanden »View as« og for API-nøgler med scopet read (og som hidtil for nøgler med scopet write).
Autentificering
Send en API-nøgle i headeren Authorization: Authorization: Bearer <nøgle>.
Headerparametre
X-View-AsstringKun for API-nøgler med rollen
admin. Udfører anmodningen som dataprofilen<profile>[:viewer|verifier|editor], fxemployee:viewer. Installationsnøglen kan ikke bruge denne header (403).
Cookieparametre
kb_view_asstringCookie for tilstanden »View as« i en session.
POST /auth/view-assætter den, ogDELETE /auth/view-asfjerner den.
Anmodningens brødtekst
application/json
basisstringinvoices: fakturaer, kreditnotaer og kvitteringer.payments: betalingsloggen (pengestrømme). Medpaymentser det eneste nøgletalpaid, og dimensionendirectionog totalen viser pengenes bevægelse,inellerout, mens en overførsel mellem dine egne juridiske enheder erinternal.Tilladte værdier:
invoicespaymentsStandard: "invoices"
group_byarray of FinanceDimensionitems ≤ 3
measuresarray of FinanceMeasureStandard er
invoiced(paidforpayments).currency_modeFinanceCurrencyModedate_basisstringHvilken dato der bestemmer perioden og filteret
from/to: dokumentets dato eller betalingsdatoen.Tilladte værdier:
documentpaymentStandard: "document"
filtersFinanceFilterorder_bystringNøgletal eller dimension, der sorteres efter. Som standard det første nøgletal i faldende rækkefølge.
order_descbooleanStandard: true
limitintegerStandard: 1000≥ 1, ≤ 10000
languagestringSprog for etiketterne på kategorier og grupper,
en|ru. Standard eren.
Svar
200Rapporten
Svarets headere
RateLimit-PolicyGældende grænser i formatet fra IETF-udkastet
draft-ietf-httpapi-ratelimit-headers: kommaseparerede elementer"<name>";q=<quota>;w=<window in seconds>.keyer API-nøglens anmodningshastighed (kvoten er burst, vinduet er tiden til fuld genopfyldning; for en session er detuser, uden legitimationsoplysningerip);minute,dayogmonther organisationens kvoter for kalenderminuttet, kalenderdagen og kalendermåneden i UTC.RateLimitHvad der er tilbage af hver grænse i
RateLimit-Policy:"<name>";r=<remaining>;t=<seconds until reset>.X-RateLimit-LimitGrænsen for den strengeste post i
RateLimit-Policy(den med færrest resterende anmodninger).X-RateLimit-RemainingResterende anmodninger under den strengeste grænse.
X-RateLimit-ResetSekunder, til den strengeste grænse nulstilles.
application/json
currencystringRapporteringsvaluta (tilstanden
reporting).Totaler over alle rækker før afkortning, én post pr. valuta (for en rapport opdelt efter retning pr. valuta og retning,
FinanceReportTotal.direction).truncatedbooleanpåkrævetlimitintegerpåkrævettotal_rowsintegerpåkrævetAntal grupperede rækker før afkortning.
conversionFinanceConversionwarningsarray of stringAdvarselskoder:
profile_missing, organisationens virksomhedsoplysninger er ikke angivet, så fakturaens retning er som standardin;catalog_missing, registret over virksomheder er ikke indlæst;fx_rate_missing, nogle beløb har ingen valutakurs (conversion.unconverted);fx_rate_stale, nogle kurser er forældede;enrichment_pending, nogle dokumenter er stadig under behandling og indgår ikke i totalerne. Vis en ukendt kode med en generel meddelelse.
400Anmodningen er ugyldig: en parameterværdi eller objektets tilstand tillader ikke handlingen (`detail` er en meddelelse).
Svarets headere
RateLimit-PolicyGældende grænser i formatet fra IETF-udkastet
draft-ietf-httpapi-ratelimit-headers: kommaseparerede elementer"<name>";q=<quota>;w=<window in seconds>.keyer API-nøglens anmodningshastighed (kvoten er burst, vinduet er tiden til fuld genopfyldning; for en session er detuser, uden legitimationsoplysningerip);minute,dayogmonther organisationens kvoter for kalenderminuttet, kalenderdagen og kalendermåneden i UTC.RateLimitHvad der er tilbage af hver grænse i
RateLimit-Policy:"<name>";r=<remaining>;t=<seconds until reset>.X-RateLimit-LimitGrænsen for den strengeste post i
RateLimit-Policy(den med færrest resterende anmodninger).X-RateLimit-RemainingResterende anmodninger under den strengeste grænse.
X-RateLimit-ResetSekunder, til den strengeste grænse nulstilles.
application/json
401Der blev ikke sendt legitimationsoplysninger (hverken en sessionscookie eller en API-nøgle), eller nøglen blev ikke fundet.
Svarets headere
RateLimit-PolicyGældende grænser i formatet fra IETF-udkastet
draft-ietf-httpapi-ratelimit-headers: kommaseparerede elementer"<name>";q=<quota>;w=<window in seconds>.keyer API-nøglens anmodningshastighed (kvoten er burst, vinduet er tiden til fuld genopfyldning; for en session er detuser, uden legitimationsoplysningerip);minute,dayogmonther organisationens kvoter for kalenderminuttet, kalenderdagen og kalendermåneden i UTC.RateLimitHvad der er tilbage af hver grænse i
RateLimit-Policy:"<name>";r=<remaining>;t=<seconds until reset>.X-RateLimit-LimitGrænsen for den strengeste post i
RateLimit-Policy(den med færrest resterende anmodninger).X-RateLimit-RemainingResterende anmodninger under den strengeste grænse.
X-RateLimit-ResetSekunder, til den strengeste grænse nulstilles.
application/json
403Handlingen er ikke tilladt: rollen er utilstrækkelig, der er ingen adgang til samlingen eller kortet, anmodningen kører i tilstanden »View as«, eller organisationen er suspenderet eller slettet (`detail` er et objekt med `code: org_suspended | org_deleted`).
Svarets headere
RateLimit-PolicyGældende grænser i formatet fra IETF-udkastet
draft-ietf-httpapi-ratelimit-headers: kommaseparerede elementer"<name>";q=<quota>;w=<window in seconds>.keyer API-nøglens anmodningshastighed (kvoten er burst, vinduet er tiden til fuld genopfyldning; for en session er detuser, uden legitimationsoplysningerip);minute,dayogmonther organisationens kvoter for kalenderminuttet, kalenderdagen og kalendermåneden i UTC.RateLimitHvad der er tilbage af hver grænse i
RateLimit-Policy:"<name>";r=<remaining>;t=<seconds until reset>.X-RateLimit-LimitGrænsen for den strengeste post i
RateLimit-Policy(den med færrest resterende anmodninger).X-RateLimit-RemainingResterende anmodninger under den strengeste grænse.
X-RateLimit-ResetSekunder, til den strengeste grænse nulstilles.
application/json
429For mange anmodninger (`api.rate_limited`), organisationens kvote for minuttet, dagen eller måneden er brugt op (`api.quota_exceeded`; `error.details` indeholder `quota`, `limit` og `reset_at`), organisationens grænse er nået, eller svartjenesten er optaget (`answers.engine_busy`). Vent den tid, der står i headeren `Retry-After`.
Svarets headere
Retry-AfterAntal sekunder, du skal vente, før du prøver anmodningen igen.
RateLimit-PolicyGældende grænser i formatet fra IETF-udkastet
draft-ietf-httpapi-ratelimit-headers: kommaseparerede elementer"<name>";q=<quota>;w=<window in seconds>.keyer API-nøglens anmodningshastighed (kvoten er burst, vinduet er tiden til fuld genopfyldning; for en session er detuser, uden legitimationsoplysningerip);minute,dayogmonther organisationens kvoter for kalenderminuttet, kalenderdagen og kalendermåneden i UTC.RateLimitHvad der er tilbage af hver grænse i
RateLimit-Policy:"<name>";r=<remaining>;t=<seconds until reset>.X-RateLimit-LimitGrænsen for den strengeste post i
RateLimit-Policy(den med færrest resterende anmodninger).X-RateLimit-RemainingResterende anmodninger under den strengeste grænse.
X-RateLimit-ResetSekunder, til den strengeste grænse nulstilles.
application/json
503En tjeneste, som denne anmodning afhænger af, er midlertidigt utilgængelig. Prøv igen senere.
Svarets headere
RateLimit-PolicyGældende grænser i formatet fra IETF-udkastet
draft-ietf-httpapi-ratelimit-headers: kommaseparerede elementer"<name>";q=<quota>;w=<window in seconds>.keyer API-nøglens anmodningshastighed (kvoten er burst, vinduet er tiden til fuld genopfyldning; for en session er detuser, uden legitimationsoplysningerip);minute,dayogmonther organisationens kvoter for kalenderminuttet, kalenderdagen og kalendermåneden i UTC.RateLimitHvad der er tilbage af hver grænse i
RateLimit-Policy:"<name>";r=<remaining>;t=<seconds until reset>.X-RateLimit-LimitGrænsen for den strengeste post i
RateLimit-Policy(den med færrest resterende anmodninger).X-RateLimit-RemainingResterende anmodninger under den strengeste grænse.
X-RateLimit-ResetSekunder, til den strengeste grænse nulstilles.
application/json
Fejlkoder
Koder, som denne operation kan returnere i error.code, ud over de generelle koder for alle anmodninger.
Sikre nye forsøg
Send en Idempotency-Key-header (fx et UUID) med hver POST og PATCH. Et nyt forsøg med den samme nøgle inden for 24 timer returnerer det gemte svar i stedet for at køre anmodningen igen.
Hastighedsgrænser
Svarene har headerne RateLimit og RateLimit-Policy samt de tidligere X-RateLimit-Limit, X-RateLimit-Remaining og X-RateLimit-Reset. Et 429-svar har Retry-After i sekunder: Vent, og forsøg igen.