Prikazane so razlike med izbrano in trenutno različico strani.
Both sides previous revision Prejšnja revizija Naslednja revizija | Prejšnja revizija | ||
nabisrestapi-document-v1-7a04stt [2017/08/24 12:30] rok-navodila |
nabisrestapi-document-v1-7a04stt [2017/10/05 14:53] (Trenutna) |
||
---|---|---|---|
Vrstica 1: | Vrstica 1: | ||
===== Izvoz naročil (JSON, v1) ===== | ===== Izvoz naročil (JSON, v1) ===== | ||
+ | |||
+ | ==== Obvezni parametri za vsako zahtevo ==== | ||
+ | * Client-Id: UUID stranke | ||
+ | * Application-Id: UUID vaše aplikacije | ||
+ | |||
+ | ==== getDocumentHeaders (GET) ==== | ||
+ | Izvoz glav naročil. Brez dodatnih parametrov se izvozi zadnjih 10 novih naročil. | ||
+ | === Parametri === | ||
+ | * page: celo število večje od 0, privzeto: 1 | ||
+ | * flags: ena ali več oznak naročil ločenih z vejico (privzeto: new): | ||
+ | * read: naročilo je bilo prebrano z getDocument zahtevo | ||
+ | * hidden: naročilo ste ročno označili kot skrito s setDocumentFlags | ||
+ | * processed: naročilo ste ročno označili kot obdelano s setDocumentFlags | ||
+ | * //new//: nova naročila (niso označena z nebeno od zgornjih oznak) (privzeto) | ||
+ | * //any//: vsa naročila, ne glede na oznake | ||
+ | === Primer === | ||
+ | * URL/getDocumentHeaders?Client-Id=//<UUID1>//&Application-Id=//<UUID2>// | ||
+ | * URL/getDocumentHeaders?Client-Id=//<UUID1>//&Application-Id=//<UUID2>//&page=2 | ||
+ | * URL/getDocumentHeaders?Client-Id=//<UUID1>//&Application-Id=//<UUID2>//&flags=read,new | ||
+ | |||
+ | Odgovor: | ||
+ | [ | ||
+ | { | ||
+ | "documentID": 10060, | ||
+ | "documentName": "2016\/9", | ||
+ | "documentDate": "2016-06-06 12:50:26", | ||
+ | "deliveryNoteID": null, | ||
+ | "supplierName": "DOBAVITELJ 1234", | ||
+ | "supplierVATID": "SI12345678", | ||
+ | "deliveryDate": "2016-06-07", | ||
+ | "orderValue": "10.51840000", | ||
+ | "orderItemCount": 1, | ||
+ | "flags": [] | ||
+ | }, | ||
+ | ... | ||
+ | ] | ||
+ | |||
+ | === Polja === | ||
+ | * documentID(int): ID naročila (uporabno npr. pri zahtevi getDocument) | ||
+ | * documentName(string): Nabis naziv naročila | ||
+ | * documentDate(datetime): datum in čas oddaje naročila (YYYY-MM-DD hh:mm:ss) | ||
+ | * deliveryNoteID(string|null): Številka dobavnice (ali NULL v primeru da dobavitelj ni podal podatka) | ||
+ | * supplierName(string): Naziv dobavitelja | ||
+ | * supplierVATID(string): ID za DDV s predpono (SI, AT, ...) ali davčna številka | ||
+ | * deliveryDate(date): datum dobave ki ga je izbrala stranka (YYYY-MM-DD) | ||
+ | * orderValue(decimal): vrednost naročila, brez DDV | ||
+ | * orderItemCount(int): število postavk na naročilu | ||
+ | * flags(string[]): kombinacija sledečih oznak (lahko nobena): | ||
+ | * read | ||
+ | * hidden | ||
+ | * processed | ||
+ | |||
+ | ==== getDocument (GET) ==== | ||
+ | Izvoz posameznega naročila. | ||
+ | === Parametri === | ||
+ | * documentID: ID naročila (obveznen parameter) | ||
+ | === Primer === | ||
+ | * URL/getDocument?Client-Id=//<UUID1>//&Application-Id=//<UUID2>//&documentID=10060 | ||
+ | |||
+ | Odgovor: | ||
{ | { | ||
- | "documentNumber" : "ID Naročila", | + | "documentID": 10060, |
- | "documentDate" : "Datum naročila (YYYY-MM-DD hh:mm:ss)", | + | "documentName": "2016\/9", |
- | "supplierName" : "Naziv - dobavitelj", | + | "documentDate": "2016-06-06 12:50:26", |
- | "supplierTaxNumber" : "Davčna številka - dobavitelj", | + | "deliveryNoteID": null, |
- | "city": "Kraj - dobavitelj", | + | "supplierName": "Dobavitelj 1234", |
- | "address" : "Naslov - dobavitelj", | + | "supplierVATID": "SI12345678", |
- | "zipCode" : "Poštna številka - dobavitelj", | + | "deliveryDate": "2016-06-07", |
- | "comment" : "Opombe naročila", | + | "flags": [], |
- | "items" : [ | + | "supplierAddress": "NAVADNA ULICA 15", |
- | { | + | "supplierZipCode": "1000", |
- | "eanCode" : "EAN koda artikla", | + | "supplierCity": "LJUBLJANA", |
- | "code" : "Dobaviteljeva šifra artikla", | + | "supplierOrderNotes": "", |
- | "productName" : "Naziv artikla", | + | "items": [ |
- | "metric" : "Enota mere", | + | { |
- | "amount" : "Naročena količina", | + | "eanCode": "1234567890123", |
- | "salesGrossPrice" : "Osnovna cena", | + | "code": "1234", |
- | "discountPercentage" : "Rabat %", | + | "productName": "BELA \u0160TRUCA 1,00 KG", |
- | "netPrice": "Neto cena", | + | "unit": "KOS", |
- | "taxPercentage" : "Davek %", | + | "amount": "5", |
- | "salesTaxPercentage": "" | + | "salesGrossPrice": "0.82366666", |
- | } | + | "discountPercentage": "10", |
+ | "netPrice": "0.7413", | ||
+ | "taxPercentage": "9.5", | ||
+ | "salesTaxPercentage": null | ||
+ | }, | ||
+ | { | ||
+ | "eanCode": null, | ||
+ | "code": "5678", | ||
+ | "productName": "POLBELA \u0160TRUCA 1,00 KG", | ||
+ | "unit": "KOS", | ||
+ | "amount": "5", | ||
+ | "salesGrossPrice": "0.87844444", | ||
+ | "discountPercentage": "10", | ||
+ | "netPrice": "0.7906", | ||
+ | "taxPercentage": "9.5", | ||
+ | "salesTaxPercentage": null | ||
+ | }, | ||
+ | ... | ||
] | ] | ||
} | } | ||
+ | | ||
+ | === Polja === | ||
+ | * Polja ki so identična s polji iz getDocumentHeaders imajo enako vsebino in tip | ||
+ | * supplierAddress(string): naslov dobavitelja | ||
+ | * supplierZipCode(string): poštna številka dobavitelja | ||
+ | * supplierCity(string): kraj dobavitelja | ||
+ | * supplierOrderNotes(string): opombe naročila ki jih je vpisal dobavitelj. Lahko več vrstic, ločilo: //\n// | ||
+ | * items: seznam postavk naročila: | ||
+ | * eanCode: EAN šifra ali NULL | ||
+ | * code(string): dobaviteljeva šifra artikla | ||
+ | * productName(string): naziv artikla | ||
+ | * unit(string): enota mere | ||
+ | * amount(decimal): naročena količina | ||
+ | * salesGrossPrice(decimal|null): cena brez rabata in brez DDV ali NULL | ||
+ | * discountPercentage(decimal|null): rabat % ali NULL | ||
+ | * netPrice(decimal|null): neto cena ali NULL | ||
+ | * taxPercentage(decimal|null): DDV % ali NULL | ||
+ | |||
+ | |||
+ | ==== setDocumentFlags (POST) ==== | ||
+ | Nastavi ali doda oznake naročil. | ||
+ | === Parametri === | ||
+ | * documentID: ID naročila (obveznen parameter) | ||
+ | * flags: kombinacija sledečih oznak (lahko nobena) ločenih z vejico (obvezen parameter): | ||
+ | * read | ||
+ | * hidden | ||
+ | * processed | ||
+ | * mode: način spreminjanja (privzeto: add): | ||
+ | * add: doda k že obstoječim oznakam | ||
+ | * set: odstrani obstoječe oznake in nastavi na podane | ||
+ | === Primer === | ||
+ | * URL/setDocumentFlags?Client-Id=//<UUID1>//&Application-Id=//<UUID2>//&documentID=10060&flags=processed | ||
+ | * Doda oznako "obdelano" | ||
+ | * URL/setDocumentFlags?Client-Id=//<UUID1>//&Application-Id=//<UUID2>//&documentID=10060&mode=set&flags= | ||
+ | * Odstrani vse obstoječe oznake | ||
+ | * URL/setDocumentFlags?Client-Id=//<UUID1>//&Application-Id=//<UUID2>//&documentID=10060&mode=set&flags=read,hidden | ||
+ | * Odstrani vse obstoječe oznake in nastavi oznaki "prebrano" in "skrito" | ||
+ | |||
+ | Odgovor: | ||
+ | { | ||
+ | "documentID": 10060, | ||
+ | "flags": ["read", "processed"] | ||
+ | } | ||
+ | |||
+ | === Polja === | ||
+ | * documentID: ID naročila | ||
+ | * flags: novo stanje po spremembi | ||
+ | ==== Napake ==== | ||
+ | * Vsaka pravilna zahteva ima HTTP status 200 | ||
+ | * V primeru napačne metode (GET, POST) je status 405 | ||
+ | * V primeru napak v parametrih je status 400, ter dodan HTTP header REST-Errors s kratkim opisom napake | ||