REST API - PUT /api/orders/1 - nicht alle Properties werden gespeichert/not all properties are saved

Hallo zusammen,

vielleicht kennt sich ja jemand mit der REST API aus. Ich setze per REST API Bestellungen auf versandt und hinterlege einen trackingCode:

PUT /api/orders/1 

{
    "trackingCode": "https://nolp.dhl.de/nextt-online-public/set_identcodes.do?lang=de&idc=123",
    "orderStatusId": "2"
}

Bisher lief alles wunderbar. Seit ein paar Tagen wird manchmal nur der Bestellstatus geändert, aber der trackingCode bleibt leer.
Ich verarbeite mehrere Bestellungen hintereinander, vielleicht 2 bis 3 Bestellungen pro Sekunde. Bei 20 Bestellungen tritt das Problem bei 0 bis 90% derFälle auf.

Gibt es eine Grenze bei der Anzahl der Requests pro Sekunde? Gibt es sonst etwas zu beachten?

Danke schonmal für euren Input!


Hi there,

is there someone who can help me with the REST API? I put orders to state dilevered and set a trackingCode via REST API:

PUT /api/orders/1 

{
    "trackingCode": "https://nolp.dhl.de/nextt-online-public/set_identcodes.do?lang=de&idc=123",
    "orderStatusId": "2"
}

Everything went fine for a year. Since a couple of days sometimes only the orderStatusId changes but the trackingCode stays empty.
There are some orders processed one after another, maybe 2 to 3 orders per second. Sometimes every order is updated correctly but sometimes there are 18 orders wrong out of 20 orders.

Is there a limitation for requests that can be made per second? Is there something else I am missing?

Thank you for responding!

URLs müssen in JSON encoded werden (also mit Escape-Character), aus / musst Du also z.B. \/ machen, vgl. https://www.json.org/.
In PHP z.B. gibt es dafür eine eigene Funktion: json_encode

LG Phil

Hallo Phil,

danke für deinen Vorschlag. Ich bin darüber auch schon gestolpert, aber laut json.org wird aus „\/“ eh wieder „/“.

Ich habe es mal mit Postman ausprobiert. Es mach keinen Unterschied, ob ich die URL als
"https:\/\/nolp.dhl.de\/nextt-online-public\/set_identcodes.do?lang=de&idc=123"
oder als
"https://nolp.dhl.de/nextt-online-public/set_identcodes.do?lang=de&idc=123"
abschicke. Beides funktioniert. :woman_shrugging:

Ich nutze in C# Newtonsoft, um mein Model in einen JSON string zu serialisieren:
Newtonsoft.Json.JsonConvert.SerializeObject(order);

LG Manuela

wird ?useNumberAsId=true genutzt?