Verze 5 helpdesku - změny na API
Formuláře 2.0
Formulář může být vázán ke službě nebo k položce (hodnotě) kategorie. Nově tedy může nastat situace, že jeden formulář (předpis) bude existovat v rámci jednoho požadavku vícekrát, protože bude vázán na různé položky kategorie (a těch může být v požadavku více). Je proto nutné pracovat i s informací, k čemu je formulář vázán - ke službě nebo ke které hodnotě kategorie.
Před aktualizací na helpdesk verze 5, je potřeba upravit následující volání API!
- 1 Formuláře 2.0
- 1.1 Získání prázdných formulářů (předpisu) k požadavku
- 1.1.1 Pro nový požadavek
- 1.1.2 Pro existující požadavek
- 1.2 Získání vyplněných formulářů
- 1.3 Vložení nového požadavku s formulářem, aktualizace formuláře v požadavku
- 1.3.1 Endpointy
- 1.3.2 Doplnění údajů do requestu
- 1.3.3 Ukázky
- 1.3.3.1 1/ Nový požadavek pro službu api/Tickets/NewTicket
- 1.3.3.2 2/ Nový požadavek pro položku kategorie api/Tickets/NewTicket
- 1.3.3.3 3/ Aktualizace formuláře u tiketu pro službu api/Tickets/UpdateCustomForm
- 1.3.3.4 4/ Aktualizace formuláře u tiketu pro položku kategorie api/Tickets/UpdateCustomForm
- 1.1 Získání prázdných formulářů (předpisu) k požadavku
Získání prázdných formulářů (předpisu) k požadavku
U všech formulářů je nově vždy: serviceId nebo categoryitemid – podle toho, na co se váže.
Pro nový požadavek
Je potřeba zavolat api/CustomForms/GetCustomFormsForNewTicket, tato operace Vám vrátí prázdné formuláře k vyplnění, které jsou dostupné (dle nastavení) pro nový požadavek.
Pro existující požadavek
Při potřebě získat formuláře pro již existující požadavek, je potřeba zavolat api/CustomForms/GetCustomFormsForTicket/{id} , zde získáte prázdné formuláře k vyplnění pro již existující konkrétní požadavek.
Získání vyplněných formulářů
V případě, že získáváte požadavky a zpracováváte formulář, tak nově je v rámci formuláře vrácena i informace, na základě jaké vazby je formulář přítomen.
Endpointy
B. api/Tickets/GetTicket/{id}?plainTextOnly={plainTextOnly}
Ukázka
1/ Formulář vázaný na službu
……
"
CustomForms"
: [{
"
ServiceId"
: 1, // serviceId nebude nikdy vyplněn zároveň s categoryitemid
"
ServiceName"
: "
Služba"
}]
2/ Formulář vázaný na položku kategorie
"
CustomForms"
: [{
"
CategoryItemId"
: 1, // serviceid nebude nikdy vyplněn zároveň s categoryitemid "
CategorItemNamev: "
Položka kategorie"
}]
Vložení nového požadavku s formulářem, aktualizace formuláře v požadavku
Endpointy
B. api/Tickets/UpdateCustomForm
Je potřeba zde doplnit ServiceId nebo CategoryItemId. Kterou hodnotu máte doplnit, zjistíte z výsledku volání výše popsaných endpointů pro získání prázdných formulářů. Prázdný formulář obsahuje informaci Id formuláře (custom form Id) a ServiceId či CategoryItemId.
Doplnění údajů do requestu
(NewTicket) Nový požadavek s formulářem pro službu - do pole CustomForms pro každý formulář, který posíláte, doplníte ServiceId -> vzít z GetCustomFormsForNewTicket
(NewTicket) Nový požadavek s formulářem pro položku kategorie - do pole CustomForms pro každý formulář, který posíláte, doplníte CategoryItemId -> vzít z GetCustomFormsForNewTicket
(UpdateCustomForm) Pro aktualizaci formuláře u tiketu pro službu, je potřeba doplnit ServiceId -> vzít z GetCustomFormsForTicket
(UpdateCustomForm) Pro aktualizaci formuláře u tiketu pro položku kategorie, je potřeba doplnit CategoryItemId -> vzít z GetCustomFormsForTicket
Ukázky
1/ Nový požadavek pro službu api/Tickets/NewTicket
….
"
CustomForms"
: [{
"
CustomFormId"
: 1, //zde změna
"
ServiceId"
: 1, //zde změna
"
CustomFormFieldsData"
: […..]
}, …]
2/ Nový požadavek pro položku kategorie api/Tickets/NewTicket
….
"
CustomForms"
: [{
"
CustomFormId"
: 1, //zde změna
"
CategoryItemId"
: 1, //zde změna
"
CustomFormFieldsData"
: […..]
}, …]
3/ Aktualizace formuláře u tiketu pro službu api/Tickets/UpdateCustomForm
{
….
"
CustomFormId"
: 1, //zde změna
"
ServiceId"
: 1, //zde změna
"
CustomFormFieldsData"
: [….]
….
}
4/ Aktualizace formuláře u tiketu pro položku kategorie api/Tickets/UpdateCustomForm
{
….
"
CustomFormId"
: 1, //zde změna
"
CategoryItemId"
: 1, //zde změna
"
CustomFormFieldsData"
: [….]
….
}