POST/v1/finance/report
Добијање финансијског збирног извештаја
finance_report
Враћа збирове фактура или плаћања организације, груписане по највише три димензије (категорија, група, делатност добављача, добављач, купац, пословни партнер, смер, валута, месец, квартал, година), са показатељима invoiced, paid, unpaid и tax. Збирови обухватају само документе видљиве кориснику (колекције и категорије његовог профила приступа и подешавање „одговор само из проверених картица“); филтери захтева сужавају овај опсег, али га никада не проширују.
У режиму reporting (подразумевано) износи се претварају у извештајну валуту организације по курсу на датум документа, а износи без курса наводе се у conversion.unconverted. У режиму original износи у различитим валутама се не сабирају, а валута постаје димензија реда. Ако има више редова од limit, truncated је true, а totals и даље обухватају све редове. Захтева профил приступа са приступом финансијским подацима (finance.forbidden).
Извештај, листе фактура и плаћања и њихови извози су операције читања иако користе POST: доступни су у режиму „View as“ и API кључевима са опсегом read (и, као и раније, кључевима са опсегом write).
Аутентификација
Пошаљите API кључ у заглављу Authorization: Authorization: Bearer <кључ>.
Параметри заглавља
X-View-AsstringСамо за API кључеве са улогом
admin. Извршава захтев у име профила приступа<profile>[:viewer|verifier|editor], на примерemployee:viewer. Кључ инсталације не може да користи ово заглавље (403).
Параметри колачића
kb_view_asstringКолачић режима „View as“ за сесију.
POST /auth/view-asга поставља, аDELETE /auth/view-asбрише.
Тело захтева
application/json
basisstringinvoices: фактуре, књижна одобрења и признанице.payments: дневник плаћања (новчани ток). Узpaymentsједини показатељ јеpaid, а димензијаdirectionи укупни износ приказују кретање новца,inилиout, док је пренос између ваших сопствених правних лицаinternal.Дозвољене вредности:
invoicespaymentsПодразумевано: "invoices"
group_byarray of FinanceDimensionitems ≤ 3
measuresarray of FinanceMeasureПодразумевано
invoiced(paidзаpayments).currency_modeFinanceCurrencyModedate_basisstringКоји датум одређује период и филтер
from/to: датум документа или датум плаћања.Дозвољене вредности:
documentpaymentПодразумевано: "document"
filtersFinanceFilterorder_bystringПоказатељ или димензија за сортирање. Подразумевано – први показатељ, опадајућим редоследом.
order_descbooleanПодразумевано: true
limitintegerПодразумевано: 1000≥ 1, ≤ 10000
languagestringЈезик назива категорија и група,
en|ru. Подразумеваноen.
Одговори
200Извештај
Заглавља одговора
RateLimit-PolicyОграничења која важе, у формату IETF нацрта
draft-ietf-httpapi-ratelimit-headers: ставке раздвојене зарезима"<name>";q=<quota>;w=<window in seconds>.keyје учесталост захтева API кључа (квота је налет, прозор је време за потпуно обнављање; за сесију то јеuser, без акредитива –ip);minute,dayиmonthсу квоте организације за календарски минут, дан и месец по UTC.RateLimitКолико је преостало од сваког ограничења из
RateLimit-Policy:"<name>";r=<remaining>;t=<seconds until reset>.X-RateLimit-LimitОграничење најстроже ставке у
RateLimit-Policy(оне са најмање преосталих захтева).X-RateLimit-RemainingБрој преосталих захтева по најстрожем ограничењу.
X-RateLimit-ResetБрој секунди до ресетовања најстрожег ограничења.
application/json
currencystringИзвештајна валута (режим
reporting).Укупни износи по свим редовима пре скраћивања, један запис по валути (за извештај подељен по смеру – по валути и смеру,
FinanceReportTotal.direction).truncatedbooleanобавезноlimitintegerобавезноtotal_rowsintegerобавезноБрој груписаних редова пре скраћивања.
conversionFinanceConversionwarningsarray of stringКодови упозорења:
profile_missing– подаци о компанији организације нису подешени, па је смер фактуре подразумеваноin;catalog_missing– именик компанија није учитан;fx_rate_missing– за неке износе нема девизног курса (conversion.unconverted);fx_rate_stale– неки курсеви су застарели;enrichment_pending– неки документи се још обрађују и нису укључени у укупне износе. Непознат код прикажите уз општу поруку.
400Захтев није исправан: вредност параметра или стање објекта не дозвољава радњу (`detail` је порука).
Заглавља одговора
RateLimit-PolicyОграничења која важе, у формату IETF нацрта
draft-ietf-httpapi-ratelimit-headers: ставке раздвојене зарезима"<name>";q=<quota>;w=<window in seconds>.keyје учесталост захтева API кључа (квота је налет, прозор је време за потпуно обнављање; за сесију то јеuser, без акредитива –ip);minute,dayиmonthсу квоте организације за календарски минут, дан и месец по UTC.RateLimitКолико је преостало од сваког ограничења из
RateLimit-Policy:"<name>";r=<remaining>;t=<seconds until reset>.X-RateLimit-LimitОграничење најстроже ставке у
RateLimit-Policy(оне са најмање преосталих захтева).X-RateLimit-RemainingБрој преосталих захтева по најстрожем ограничењу.
X-RateLimit-ResetБрој секунди до ресетовања најстрожег ограничења.
application/json
401Акредитиви нису послати (ни колачић сесије ни API кључ) или кључ није пронађен.
Заглавља одговора
RateLimit-PolicyОграничења која важе, у формату IETF нацрта
draft-ietf-httpapi-ratelimit-headers: ставке раздвојене зарезима"<name>";q=<quota>;w=<window in seconds>.keyје учесталост захтева API кључа (квота је налет, прозор је време за потпуно обнављање; за сесију то јеuser, без акредитива –ip);minute,dayиmonthсу квоте организације за календарски минут, дан и месец по UTC.RateLimitКолико је преостало од сваког ограничења из
RateLimit-Policy:"<name>";r=<remaining>;t=<seconds until reset>.X-RateLimit-LimitОграничење најстроже ставке у
RateLimit-Policy(оне са најмање преосталих захтева).X-RateLimit-RemainingБрој преосталих захтева по најстрожем ограничењу.
X-RateLimit-ResetБрој секунди до ресетовања најстрожег ограничења.
application/json
403Радња није дозвољена: улога није довољна, нема приступа колекцији или картици, захтев се извршава у режиму „View as“ или је организација суспендована или обрисана (`detail` је објекат са `code: org_suspended | org_deleted`).
Заглавља одговора
RateLimit-PolicyОграничења која важе, у формату IETF нацрта
draft-ietf-httpapi-ratelimit-headers: ставке раздвојене зарезима"<name>";q=<quota>;w=<window in seconds>.keyје учесталост захтева API кључа (квота је налет, прозор је време за потпуно обнављање; за сесију то јеuser, без акредитива –ip);minute,dayиmonthсу квоте организације за календарски минут, дан и месец по UTC.RateLimitКолико је преостало од сваког ограничења из
RateLimit-Policy:"<name>";r=<remaining>;t=<seconds until reset>.X-RateLimit-LimitОграничење најстроже ставке у
RateLimit-Policy(оне са најмање преосталих захтева).X-RateLimit-RemainingБрој преосталих захтева по најстрожем ограничењу.
X-RateLimit-ResetБрој секунди до ресетовања најстрожег ограничења.
application/json
429Превише захтева (`api.rate_limited`), квота организације за минут, дан или месец је потрошена (`api.quota_exceeded`; `error.details` садржи `quota`, `limit` и `reset_at`), достигнуто је ограничење организације или је сервис за одговоре заузет (`answers.engine_busy`). Сачекајте време наведено у заглављу `Retry-After`.
Заглавља одговора
Retry-AfterБрој секунди које треба сачекати пре поновног покушаја захтева.
RateLimit-PolicyОграничења која важе, у формату IETF нацрта
draft-ietf-httpapi-ratelimit-headers: ставке раздвојене зарезима"<name>";q=<quota>;w=<window in seconds>.keyје учесталост захтева API кључа (квота је налет, прозор је време за потпуно обнављање; за сесију то јеuser, без акредитива –ip);minute,dayиmonthсу квоте организације за календарски минут, дан и месец по UTC.RateLimitКолико је преостало од сваког ограничења из
RateLimit-Policy:"<name>";r=<remaining>;t=<seconds until reset>.X-RateLimit-LimitОграничење најстроже ставке у
RateLimit-Policy(оне са најмање преосталих захтева).X-RateLimit-RemainingБрој преосталих захтева по најстрожем ограничењу.
X-RateLimit-ResetБрој секунди до ресетовања најстрожег ограничења.
application/json
503Сервис од кога овај захтев зависи привремено није доступан. Покушајте поново касније.
Заглавља одговора
RateLimit-PolicyОграничења која важе, у формату IETF нацрта
draft-ietf-httpapi-ratelimit-headers: ставке раздвојене зарезима"<name>";q=<quota>;w=<window in seconds>.keyје учесталост захтева API кључа (квота је налет, прозор је време за потпуно обнављање; за сесију то јеuser, без акредитива –ip);minute,dayиmonthсу квоте организације за календарски минут, дан и месец по UTC.RateLimitКолико је преостало од сваког ограничења из
RateLimit-Policy:"<name>";r=<remaining>;t=<seconds until reset>.X-RateLimit-LimitОграничење најстроже ставке у
RateLimit-Policy(оне са најмање преосталих захтева).X-RateLimit-RemainingБрој преосталих захтева по најстрожем ограничењу.
X-RateLimit-ResetБрој секунди до ресетовања најстрожег ограничења.
application/json
Кодови грешака
Кодови које ова операција може да врати у error.code, поред општих кодова сваког захтева.
Безбедни поновни покушаји
Уз сваки POST и PATCH захтев пошаљите заглавље Idempotency-Key (на пример UUID). Поновни покушај са истим кључем у року од 24 сата враћа сачувани одговор уместо да поново изврши захтев.
Ограничења учесталости
Одговори садрже заглавља RateLimit и RateLimit-Policy, као и старија X-RateLimit-Limit, X-RateLimit-Remaining и X-RateLimit-Reset. Одговор 429 садржи заглавље Retry-After у секундама: сачекајте и поновите захтев.