Upozornění

Již nepodporováno, funkční do 31.3.2019, bude nahrazeno novým API

Popis API

POST požadavkem stačí poslat JSON na adresu:
https://NAZEV-PROJEKTU.admin.SERVER.upgates.com/api/orders/state/update
API vrací opět JSON s informací o úspěšném nebo neúspěšném zpracování s příslušným stavovým kódem HTTP protokolu.

  • apiKey - povinný, klíč z administrace projektu, najdete ho v administraci v Nastavení / Import/Export / Ostatní
  • sendEmails - nepovinný, příznak zda posílat automatický email (při změně stavu). Výchozí hodnota je true
  • orders- jednotlivé objednávky
    • order_number - povinný, číslo objednávky v administraci, objednávka musí existovat, jinak vrací chybu
    • status - nepovinný, název stavu objednávky, stav musí být v administraci vytvořen, jinak vrací chybu
    • paid_date - datum zaplacení objednávky ve formátu ISO 8601. Když bude datum vyplněno objednávka se označí jako zaplacena a zapíše se datum. Když bude datum prázdné objednávka se označí jako nezaplacena a datum se zmaže. Pokud se paid_date vůbec neuvede neuděla se nic.
    • resolved_yn - nepovinný, hodnota je typu boolean. Označení objednávky jako vyřešené (vlaječky v administraci) 
    • tracking_code - nepovinný, sledovací kód objednávky (pro dopravu)
    • metas - vlastní pole
      • key - povinné, klíč vlastního pole. Pouze vlastní pole vytvořené v administraci, neexistující pole se přeskočí a vrátí se varovná zpráva, ostatní data z objednávky se zpracují
      • value - hodnota vlastního pole, uvádí se pokud je stejná pro všechny jazykové mutace
      • values - hodnoty vlastního pole pro jednotlivé jazyky, klíč je kód jazyka podle ISO 639-1
      • uvádí se pouze jedno z value nebo values, pokud uvedete obě, vezme se hodnota z value

Požadavek

{
    "apiKey": "0123456789",
    "sendEmails": true,
    "orders": [
        {
            "order_number": "000001",
            "status": "Vyřízená",
            "paid_date": "2017-06-05",
            "resolved_yn": "1",
            "tracking_code": "00112233",
            "metas": [
                {
                    "key": "invoice_note",
                    "value": "poznámka",
                    "values": {
                        "cz": "poznámka",
                        "en": "note"
                    }
                }
            ]
        }
    ]
}

Odpověď

Úspěšné zpracování

V případě uspěšného zpracování požadavku API vrátí JSON:

{
    "success": true
}

Neúspěšné zpracování

V případě chyby vrací jednu nebo více chybových hlášek:

[
	{
	    "order_number": "000025",
	    "error": true,
	    "message": "Order with this number doesn't exists."
	},
	{
	    "order_number": "000025",
	    "error": true,
	    "message": "Order status 'Odeslaná' not defined."
	},
	{
	    "order_number": "000025",
	    "error": false,
	    "message" : "Meta with key 'invoice_note' has no option 'value' or 'values'."
	}
]