POSTOpdatér en ordre
Starter en opdatering af ordrens indhold. En indholdsændring registrerer 2 øre ekskl. moms.
Endpoint
https://www.tcgm.dk/api/v1/webshop/orders/{orderid}Autorisation
Bearer-nøgle medwebshop:orders:update
Path-parametre
orderidstring · påkrævet- TCGM-ordrens id fra oprettelsessvaret eller et ordreopslag (wshop_o_…). Brug ikke externalId, providerOrderId eller orderNumber.
Headers
Authorizationstring · påkrævet- Bearer <api-nøgle>. Nøglen oprettes af en owner/admin på organisationens API-side.
Gemmes kun i denne sides hukommelse.
Idempotency-Keystring · påkrævet- 1–200 synlige ASCII-tegn uden mellemrum. Genbrug ved genforsøg; ny nøgle til en ny handling. Mindst 1 tegn. Højst 200 tegn. Mønster: ^[\x21-\x7e]+$
Genbrug nøglen ved genforsøg. “Ny handling” opretter en ny nøgle.
Content-Typestring · påkrævet- JSON-body, højst 256 KiB. Fast værdi: "application/json".
Request-body
application/json · påkrævet
Ukendte felter afvises.
organizationstring · påkrævet- Trimmes før validering. Mindst 1 tegn. Højst 200 tegn.
webshopstring · påkrævet- Trimmes før validering. Mindst 1 tegn. Højst 200 tegn.
dataobject · påkrævet- Mindst 1 felt. Ukendte felter afvises.
data.displayNamestring · valgfri- Trimmes før validering. Mindst 1 tegn. Højst 500 tegn.
data.customerNamestring · valgfri- Trimmes før validering. Mindst 1 tegn. Højst 500 tegn.
data.orderNumberstring | null · valgfri- Trimmes før validering. Mindst 1 tegn. Højst 200 tegn.
data.linesarray · valgfri- externalId skal være unik blandt linjerne. Tom liste accepteres. Højst 250 elementer.
data.lines[].externalIdstring · påkrævet- Trimmes før validering. Mindst 1 tegn. Højst 200 tegn.
data.lines[].productIdstring · påkrævet- Trimmes før validering. Mindst 1 tegn. Højst 200 tegn.
data.lines[].variantIdstring | null · valgfri- Trimmes før validering. Standard: null. Mindst 1 tegn. Højst 200 tegn.
data.lines[].itemNamestring · påkrævet- Trimmes før validering. Mindst 1 tegn. Højst 500 tegn.
data.lines[].quantitynumber · påkrævet- Endeligt tal med højst to decimaler. Minimum: 0. Maksimum: 90071992547409.9. Trin: 0.01.
Underfelter kræves kun, når det overordnede objekt sendes.
Response · 202
Accepteret; følg eventId for resultatet.
Cache-Control: no-store
{
eventId: string;
}Statuskoder
- 202
- Accepteret; følg eventId for resultatet.
- 400
- Ugyldigt input: invalid_request.
- 401
- Manglende eller ugyldig Bearer-nøgle: invalid_credential.
- 403
- Adgang nægtet: nøgle, scope, ejerskab eller godkendelse er ikke længere gyldig.
- 404
- Ressourcen findes ikke eller er ikke tilgængelig.
- 409
- Konflikt: fx idempotency_conflict, external_id_conflict eller order_closed. Samme nøgle med andet valideret indhold afvises.
- 413
- JSON-body overstiger 256 KiB.
- 415
- Content-Type skal være application/json.
- 503
- Lager eller behandling er utilgængelig. Ingen interne fejl eller skemadetaljer udleveres i produktion.
- 405
- HTTP-metoden understøttes ikke.
Headers og fejlfelter
Cache-Control: no-store
{
error: string;
}Cache-Control: no-store
WWW-Authenticate: Bearer
{
error: string;
}Adfærd og genforsøg
JSON-body må højst fylde 256 KiB. Ukendte bodyfelter afvises. Identiske genforsøg med samme Idempotency-Key returnerer det oprindelige resultat; ændret indhold giver 409. Genbrug nøglen ved usikkert udfald.
Adgang og ejerskab kontrolleres også ved genforsøg og før beskyttet baggrundsarbejde. En senere fejl fortryder ikke automatisk allerede gennemførte ændringer.
Udeladte felter bevares; orderNumber: null rydder nummeret. lines erstatter linjesættet og bevarer ID'er og skjult-status for eksisterende eksterne linjereferencer.
Afsluttede ordrer kan ikke ændres. Indholdsændringer registrerer 2 øre under ordrens låste pris og loft. Opdateringen kan følge eksisterende aktive Shopify-indstillinger for annoncering; den skriver ikke tilbage til Shopify.