PĀRNESTS UZ HELP.MONEO.LV

REST API

REST pieprasījumi jāizpilda noteiktā secībā. Vispirms tiek veikta pieslēgšanās, pēc kuras tiek iegūts sesijas ID (sessionid). Šo sesijas id jāizmanto visos turpmākajos pieprasījumos kā parametrs. Tāpat līdzi pieprasījumiem iet kompānijas ID. Kompānijas ID nepieciešams, jo uz viena servera atrodas dažādas kompānijas, katram loginam ir savs “scope”, kura ietvaros var pieprasīt datus no viņam piesietas kompānijas.

Piemērs ar demo lietotāju. Jūsu vēlamai kompānijas id un pieslēgšanās parametriem sazinieties ar Moneo Latvia

- http://denali.moneo.lv:15000/api/login/ - struktūra ir JSON ar post pieprasījumu. compuid piemērā satur demo kompānijas ID

{
  "user":"demo",
  "passwd":"demo",
  "compuid":"53F98A26-041ECDF6-4CF71DCD-0474B2B3-B7C42FD6"
}

atbilde būs šāda:

{
  "id": null,
  "terminal": "",
  "contactname": "Jānis Bērziņš",
  "contactid": "1002",
  "jsonrpc": "2.0",
  "userid": 19,
  "sessionid": "07287ea7-f0a574c6-13f34bf1-cf0bea2e-3bc87e0b"
}

Atgrieztais sessionid ir jāsaglabā un jāizmanto turpmākajos pieprasījumos. Vecie session id tiek slēgti pēc 24 stundām.

- http://denali.moneo.lv:15000/api/logout/ - struktūra ir JSON ar post pieprasījumu

{
  "user":"demo",
  "sessionid":"07287ea7-f0a574c6-13f34bf1-cf0bea2e-3bc87e0b"
}

Pieprasījums arī POST ar json struktūru: http://denali.moneo.lv:15000/api/sales.invoices

{
  "filter":{"custcode":"1042"},
  "fieldlist":["custcode","custname","sernr"],
  "request":{
    "compuid":"53F98A26-041ECDF6-4CF71DCD-0474B2B3-B7C42FD6",
    "sessionid":"07287ea7-f0a574c6-13f34bf1-cf0bea2e-3bc87e0b"
  }
}

request tiek formēts vienādi - tas saturēs compuid un sessionid

fieldlist ļauj atlasīt tikai tos laukus, kurus vēlamies iegūt. Ja ir liels datu pieprasījums, vēlams samazināt lauku sarkastu izmatojot šo parametru. Ja parametru neizmanto, tiks nosūtīts pilns lauku saraksts, bet jāņem vērā, ka par katru apakštabulu (subtable) galvas rindu saraksts tiek daudzkāršots, tādēļ pieprasot piemēram rēķina rindas ar galvu vēlams norādīt, kuru subtable tieši nepieciešams, jo rēķinos ir vairāki subtable (artikuli, kredītrēķini, priekšapmaksas, aģenti)

filter ļauj filtrēt datus. Pamatpierakstā lauka un lauka vērtības key-value pāris.

Atbildes piemērs:

{
  "result": [
    [
      [
        "custcode",
        "custname",
        "sernr"
      ],
      [
        [
          "1042",
          "Diplomāts SIA",
          160001
        ],
        [
          "1042",
          "Diplomāts SIA",
          160002
        ]
      ],
      {
        "sernr": "int",
        "custname": "str",
        "custcode": "str"
      }
    ]
  ],
  "jsonrpc": "2.0",
  "trans_state": null,
  "id": "ba7c2783-c5c5c62f-b48b92aa-f5d2aaa1-32724d56"
}

result saturēs list elementu, kurā pirmais elements ir lauku saraksts, otrais ir lauku vērtības un trešais ir datu tipi laukiem. Svarīgais tur ir result, kurā ir trīs elementi - lauku saraksts, sekojoši dati pret lauku sarakstu un datu tipi priekš laukiem.

Pastāv iespēja izsaukt metodi, kas atgriež vērtības, kuras nav tiešs tabulas saturs. Metodes izsaukšana notiek ar sekojošu pieprasījumu: http://denali.moneo.lv:15000/api/method/[app_name].[method name]

{“params”:[“arg1”,“arg2”,“arg3”…], “request”:{“compuid”:[compuid], “sessionid”:[sessionid]}}

piemēram http://denali.moneo.lv:15000/api/method/stock.getstockquantforitemlist

{
  "params":[
    ["013G4155" ,"013G4156" ,"013G4190" ,"0600-02.000" ,"0600-02.553" ,"0600-03.000" ,"0600-03.553"],
    "MWH"
  ],
  "request":{
    "compuid":"130C0585-60605033-D3BEEE44-5505ECA5-2B107BD8",
    "sessionid":"d47076e0-200dc74d-fa76a618-dbc09703-8f451e2d"
  }
}

atbilde:

result":[
  ["12.00", "48.00", "0.00", …]
]

Šobrīd pieejamās metodes:

- stock.getStockQuantForItemList - noliktavas atlikums artikulu sarakstam. Parametri: artikulu saraksts (list elements) un noliktavas kods

- stock.getStockQuant - noliktavas atlikums vienam artikulam. Parametri: artikula kods (obligāts), partijas numurs (optional), noliktava (optional), datums (optional)

REST API ļauj veikt arī datu ierakstīšanu.

Pieprasījuma formāts ir sekojošs

http://denali.moneo.lv:15000/api/[table name]/create

{“data”:{“tablename”:{“fieldlist”:[“field1”,“field2”],“data”:[ [“value1,”value2“] ]}, “request”:{“compuid”:[compuid], “sessionid”:[sessionid]}}

Piemērs: http://denali.moneo.lv:15000/api/sorders.orders/create

{
  "data":{
    "sorders.orders":{
      "fieldlist":["custcode","pricelist","currency","comment"],
      "data":[ ["2001", "21", "EUR", "Test comment"] ]
    },
    "sorders.orders_items_rows":{
      "fieldlist":["itemcode","quant"],
      "data":[ ["001","13.1"] , ["101","10.99"]]
    }
  },
  "request":{
    "compuid":"130C0585-60605033-D3BEEE44-5505ECA5-2B107BD8",
    "sessionid":"d47076e0-200dc74d-fa76a618-dbc09703-8f451e2d"
  }
}
  • Last modified: 4 years ago