Připravované změny ve Web API
Kapitola obsahuje stručný přehled připravovaných změn a úprav souvisejících se změnami v API, ke kterým dojde v budoucích verzích systému ABRA Gen. Současně zde zůstanou archivovány i změny, které již proběhly, aby bylo možné zpětně ověřit, ve které verzi byly konkrétní změny provedeny.


-
Bude zaveden nový parametr dotazů selectschema, který určuje množinu vracených polí, pokud není uvedený parametr select.
-
Bude zaveden nový parametr konfiguračního souboru apiserver.yaml s názvem minimalSelectSchema a hodnotami Ano/Ne, kterým se nastavuje chování, pokud v dotazu není uveden ani jeden z parametrů select a selectschema. Od verze 25.4 bude jeho výchozí hodnota Ano a dotazy s nedefinovanými návratovými poli budou vracet pouze pole ID.

Tyto endpointy budou v rámci verze 25.4 trvale odstraněny, protože nebyly využívány a jejich funkcionalita se v systému nepoužívala nebo byla zastaralá. Neexistuje za ně náhrada. Jejich odstranění nebude mít dopad na běžné používání API.
abrahelpdesksecusers, accaccruals, accdocqueueunusednumbers, appserverconnectionslogs, assetleasingcards, cdconfirmlinks, cdconfirmsettings, crashinfo, crmactivityforoverviews, crmactivityqueueunusednumbers, crpplansettings, crpplanvariants, crpvariantsflows, databoxmessreceivedcontents, databoxmessreceiveds, databoxmesssentcontents, databoxmesssents, devblobs, devices, docqueueunusednumbers, dualcurrencysettings, ecdfiscaltransactions, emailreceiveduidls, execcalccharts, firmmenuitemlinks, firmmenuitemlinks, mlbexcludedperiods, mlbrepeatedroutes, mossservices, msgredirections, namedmasks, payments, payremindersetexclusions, personmenuitemlinks, plmjooutputitems, plmoperationwsis, plmreqcostinginputitems, plmreqcostingoutputitems, plmreqinputitems, plmreqoutputitems, plmreqoutputitems, plmwsirelations, pmobjectstatehistories, poscashnotaccountedpaids, poscashnotaccountedreceiveds, postouchsets, productiontasks, relations, restrictiondispprops, restrictionusages, retirementreportuserdefrows, sitedatas, sourcegroupidenticals, sourcegroups, taskattachmentdata, taskattachments, taskchanges, taskcomments, tasknotifications, taskrelations, tasks, tasktags, usedsites, usedsitesactions, useremailhistories, usergridcolumnsdefs, userxlinks, vatclosingdocuments, wageimportrelationheaders, wageimportsabsences, wageimportssickbenefits, wagelistcommons, wageoperationimports, wagesettings, watchdogmessages, whispererdefautocompletes, whispererdeffastsearchs, whispererdeflikes

Tyto endpointy budou přesunuty pod jiné, nadřazené kontrolery, aby správně přebíraly oprávnění podle aktuální struktury systému. Z důvodu kompatibility bude volání původních adres přesměrováno automaticky na nové umístění, takže není nutné upravovat již existující klientská volání. Aby však API fungovalo korektně, je potřeba správně nastavit oprávnění k novému cílovému objektu.
Název endpointu | Nové umístění |
---|---|
accgroups
|
/bookentries/accgroups
|
actionstoreprices
|
/actionpricelists/actionstoreprices
|
addresses
|
/firms/addresses
|
annualclearingschildren
|
/annualclearings/annualclearingschildren
|
assetdeprecgroupshistories
|
/assetcards/assetdeprecgroupshistories
|
autoserverqueueitems
|
/autoserverscheduleritems/autoserverqueueitems
|
autoservertaskendlogs
|
/autoserverscheduleritems/autoservertaskendlogs
|
autoservertasklogs
|
/autoserverscheduleritems/autoservertasklogs
|
bankaccountexchangedifferences
|
/bankaccounts/bankaccountexchangedifferences
|
busorderfreals
|
/busorders/busorderfreals
|
busorderinvoicings
|
/busorders/busorderinvoicings
|
busprojectfreals
|
/busprojects/busprojectfreals
|
busprojectinvoicings
|
/busprojects/busprojectinvoicings
|
bustransactionfreals
|
/bustransactions/bustransactionfreals
|
bustransactioninvoicings
|
/bustransactions/bustransactioninvoicings
|
cashdeskexchangedifferences
|
/cashdesks/cashdeskexchangedifferences
|
crmcampaigntypefeedbacks
|
/crmcampaignfeedbacks/crmcampaigntypefeedbacks
|
crmiostateactivityprocesses
|
/crmactivityprocesses/crmiostateactivityprocesses
|
exchangeratehistories
|
/exchangerates/exchangeratehistories
|
intrastatexchangeratehistories
|
/intrastatexchangerates/intrastatexchangeratehistories
|
issueddepositusages
|
/issueddepositinvoices/issueddepositusages
|
issuedofferstatechanges
|
/issuedofferstates/issuedofferstatechanges
|
maininvprotocolpositions
|
/maininvprotocols/maininvprotocolpositions
|
maininvprotocolrows
|
/maininvprotocols/maininvprotocolrows
|
masteraccounts
|
/globdatas/masteraccounts
|
mlbbalances
|
/mlbjourneys/mlbbalances
|
partialinvprotocolpositions
|
/partialinvprotocols/partialinvprotocolpositions
|
partialinvprotocolrows
|
/partialinvprotocols/partialinvprotocolrows
|
receiveddepositusages
|
/receiveddepositinvoices/receiveddepositusages
|
securitytablerights
|
/securityroles/securitytablerights
|
securityuserallowedapps
|
/securityusers/securityuserallowedapps
|
storecardmenuitemlinks
|
/storemenuitems/storecardmenuitemlinks
|
storeprices
|
/pricelists/storeprices
|
storesdocqueues
|
/stores/storesdocqueues
|
subscribers
|
/storecards/subscribers
|
supplierpricelistrows
|
/supplierpricelists/supplierpricelistrows
|
suppliers
|
/storecards/suppliers
|

Tyto endpointy projdou výraznou změnou struktury nebo logiky. Původní způsob volání již nebude podporován a bude nutné upravit implementaci podle nových pravidel. V některých případech dojde k nahrazení přímého volání Web API za přístup přes vlastněné objekty, sjednocený dotazovací mechanismus nebo budou tyto endpointy sloučeny s jinými funkcionalitami. Klientské aplikace musí být upraveny podle aktuálních příkladů a dokumentace.

/accaccacruals
Endpoint:
GET {server-api}:{port}/{spojeni}/accaccacruals
Bude nahrazen:
POST {server-api}:{port}/{spojeni}/query
Tělo požadavku:
{
"class": "PZAO2GUZ40WOBGCOAMMJDJZEM0"
}

/accdocqueueperiods
, /crmactivityqueueperiods
, /docqueueperiods
Budou vlastněným objektem kolekce lastnumbers na BO accdocqueues, crmactivitydocqueues a docqueues.
Vrácení účetní řada dokladů - období pro zvolenou účetní řadu:
GET {server-api}:{port}/{spojeni}/accdocqueues/3600000101?expand=lastnumbers
Nebo je možné vrátit účetní řada dokladů - období napříč všemi účetními řadami:
POST {server-api}:{port}/{spojeni}/query
Tělo požadavku:
{
"class": "CRTZCFMM53D133N2010DELDFKK"
}

/additionalcosts
S tímto objektem se bude pracovat přes řádek příjemky. Pole AdditionalCosts_ID bude vlastněný objekt.
Původní endpoint:
POST {server-api}:{port}/{spojeni}/additionalcosts
Tělo požadavku:
{
"transportationamount": 42
}
Bude nutné realizovat takto:
PUT {server-api}:{port}/{spojeni}/receiptcards/19R1000101
Tělo požadavku:
{
"rows": [
{
"id": "1BE1000101",
"additionalcosts_id": {
"transportationamount": 42
}
}
]
}

/languagetranslations
Jazykový překlad bude aktualizován tak, aby pracoval přímo s objektem, ke kterému náleží. Více viz Jazykové překlady.

/payments
Endpoint /payments
, který byl dříve dostupný pouze jako abstraktní rozhraní pro čtení, bude integrován přímo na objekt, ke kterému náleží.
GET {server-api}:{port}/{spojeni}/issuedinvoices/2400000101/docpaymentsources

/relations
, /userxlinks
Z důvodu zajištění bezpečnosti a integrity systému bude implementován nový, uživatelsky přívětivý způsob přístupu. Více viz X-vazby.

/userparamvalues
Způsob práce s hodnotami uživatelských parametrů bude aktualizován. Zůstane zachován původní endpoint {controller}/{ID}/userparameters
, avšak dojde ke změně struktury těla requestu při zápisu hodnot. Získávání hodnot pomocí GET zůstane beze změny. Více viz Uživatelské parametry.