Přejít na obsah
ShopentlyLearn

Kódy chyb

Pokud požadavek selže, podívejte se na kód chyby v odpovědi. Rozbalte ho v seznamu níže a zjistěte, co se stalo a jak postupovat. U každé chyby najdete také příklad odpovědi a doporučení pro opakování požadavku.

400request.malformedPožadavek nelze zpracovat kvůli nesprávné syntaxi.
Jak postupovat
Zkontrolujte syntaxi JSON, kódování URL a strukturu požadavku.
Pravidla opakování
Opakujte po opravě požadavku.
Odpověď
{
  "error": {
    "code": "request.malformed",
    "fields": null,
    "message": "The request could not be read."
  },
  "meta": {
    "request_id": "example-request"
  }
}

401authentication.invalid_credentialsKlíč API nebo přístupový token je neplatný, vypršel nebo byl odvolán.
Jak postupovat
Zkontrolujte URL obchodu a přístupový údaj. Pomocí aktivního klíče API získejte nový token.
Pravidla opakování
Opakujte až po opravě ověření; neposílejte opakovaně požadavky s neplatným tokenem.
Odpověď
{
  "error": {
    "code": "authentication.invalid_credentials",
    "fields": null,
    "message": "The credentials are invalid."
  },
  "meta": {
    "request_id": "example-request"
  }
}

401authentication.requiredChybí požadovaná hlavička Authorization nebo používá nesprávný způsob ověření.
Jak postupovat
Pro vydání nebo zrušení tokenu použijte klíč API s ApiKey v hlavičce Authorization. Pro ostatní požadavky použijte přístupový token s Bearer.
Pravidla opakování
Opakujte po doplnění správné hlavičky.
Odpověď
{
  "error": {
    "code": "authentication.required",
    "fields": null,
    "message": "Authentication is required."
  },
  "meta": {
    "request_id": "example-request"
  }
}

403authorization.client_ip_unverifiedSlužba nedokázala spolehlivě určit IP adresu klienta.
Jak postupovat
Zkontrolujte, ze které IP adresy se integrace připojuje k API. Pokud chyba trvá, obraťte se na technickou podporu Shopently.
Pravidla opakování
Zkuste to znovu po vyřešení problému s určením IP adresy.
Odpověď
{
  "error": {
    "code": "authorization.client_ip_unverified",
    "fields": null,
    "message": "The client IP address could not be verified."
  },
  "meta": {
    "request_id": "example-request"
  }
}

403authorization.ip_not_allowedZdrojová IP adresa není v seznamu adres povolených pro tento klíč.
Jak postupovat
Použijte schválenou zdrojovou adresu nebo požádejte oprávněného správce o úpravu seznamu IP adres klíče.
Pravidla opakování
Opakujte až po povolení adresy.
Odpověď
{
  "error": {
    "code": "authorization.ip_not_allowed",
    "fields": null,
    "message": "Access from this IP address is not allowed."
  },
  "meta": {
    "request_id": "example-request"
  }
}

403authorization.scope_deniedKlíč nemá účinné oprávnění vyžadované pro tuto operaci.
Jak postupovat
Zkontrolujte požadovaná a podmíněná oprávnění operace, oprávnění klíče a přístup jeho vydavatele.
Pravidla opakování
Opakujte, až oprávněný správce udělí potřebný přístup.
Odpověď
{
  "error": {
    "code": "authorization.scope_denied",
    "fields": null,
    "message": "The required permission has not been granted."
  },
  "meta": {
    "request_id": "example-request"
  }
}

403entitlements.api_disabledPřístup k API je pro tento obchod vypnutý.
Jak postupovat
Požádejte vlastníka obchodu o kontrolu aktivního tarifu a dostupnosti API.
Pravidla opakování
Neopakujte, dokud nebude přístup k API zapnutý.
Odpověď
{
  "error": {
    "code": "entitlements.api_disabled",
    "fields": null,
    "message": "API access is disabled for this store."
  },
  "meta": {
    "request_id": "example-request"
  }
}

403entitlements.limit_exceededZměna by překročila limit aktuálního tarifu.
Jak postupovat
Zkontrolujte příslušný limit zdroje a upravte zamýšlenou změnu nebo tarif.
Pravidla opakování
Opakujte po vyřešení limitu; při změně požadavku použijte nový klíč idempotence.
Odpověď
{
  "error": {
    "code": "entitlements.limit_exceeded",
    "fields": null,
    "message": "The operation exceeds a plan limit."
  },
  "meta": {
    "request_id": "example-request"
  }
}

403entitlements.operation_disabledAktuální tarif tuto operaci nezahrnuje.
Jak postupovat
Zkontrolujte minimální tarif uvedený u operace.
Pravidla opakování
Opakujte, až tarif operaci umožní a klíč získá potřebná oprávnění.
Odpověď
{
  "error": {
    "code": "entitlements.operation_disabled",
    "fields": null,
    "message": "The current plan does not allow this operation."
  },
  "meta": {
    "request_id": "example-request"
  }
}

403entitlements.resource_blockedTento konkrétní zdroj blokuje limit tarifu.
Jak postupovat
Požádejte vlastníka o vyřešení omezení zdroje vyplývajícího z tarifu.
Pravidla opakování
Stejný požadavek neopakujte, dokud zdroj zůstává blokovaný.
Odpověď
{
  "error": {
    "code": "entitlements.resource_blocked",
    "fields": null,
    "message": "A plan limit blocks access to this resource."
  },
  "meta": {
    "request_id": "example-request"
  }
}

404resource.not_foundZdroj chybí, byl smazán nebo není dostupný pod zadaným identifikátorem.
Jak postupovat
Zkontrolujte obchod, cestu zdroje a identifikátor. Používejte identifikátory vrácené tímto obchodem.
Pravidla opakování
Opakujte až po opravě cíle nebo ověření jeho existence.
Odpověď
{
  "error": {
    "code": "resource.not_found",
    "fields": null,
    "message": "The resource was not found."
  },
  "meta": {
    "request_id": "example-request"
  }
}

405request.method_not_allowedKoncový bod nepodporuje tuto metodu HTTP.
Jak postupovat
Použijte dokumentovanou metodu; hlavička Allow uvádí podporované metody.
Pravidla opakování
Nepodporovanou metodu neopakujte.
Odpověď
{
  "error": {
    "code": "request.method_not_allowed",
    "fields": null,
    "message": "This method is not supported for this resource."
  },
  "meta": {
    "request_id": "example-request"
  }
}

409idempotency.key_reusedTento klíč idempotence patří jinému požadavku.
Jak postupovat
Vyhledejte původní operaci. Nový klíč použijte pouze pro záměrně novou logickou operaci.
Pravidla opakování
Neopakujte změněný obsah požadavku s konfliktním klíčem.
Odpověď
{
  "error": {
    "code": "idempotency.key_reused",
    "fields": null,
    "message": "This idempotency key was used with a different request."
  },
  "meta": {
    "request_id": "example-request"
  }
}

409resource.already_existsJedinečná hodnota je v konfliktu s existujícím zdrojem.
Jak postupovat
Načtěte existující zdroj a rozhodněte, zda jej použít, nebo zvolit jinou jedinečnou hodnotu.
Pravidla opakování
Neopakujte stejné konfliktní vytvoření.
Odpověď
{
  "error": {
    "code": "resource.already_exists",
    "fields": null,
    "message": "A resource with these unique values already exists."
  },
  "meta": {
    "request_id": "example-request"
  }
}

409resource.in_useNa tomto zdroji stále závisejí jiné zdroje.
Jak postupovat
Zkontrolujte závislosti a před smazáním je odstraňte nebo změňte pomocí podporovaných operací.
Pravidla opakování
Opakujte po vyřešení závislostí.
Odpověď
{
  "error": {
    "code": "resource.in_use",
    "fields": null,
    "message": "The resource is still in use."
  },
  "meta": {
    "request_id": "example-request"
  }
}

409resource.state_conflictAktuální obchodní stav tuto změnu neumožňuje.
Jak postupovat
Načtěte aktuální stav a zvolte platný přechod mezi stavy.
Pravidla opakování
Konfliktní změnu automaticky nevynucujte ani opakovaně neodesílejte.
Odpověď
{
  "error": {
    "code": "resource.state_conflict",
    "fields": null,
    "message": "The current resource state does not allow this operation."
  },
  "meta": {
    "request_id": "example-request"
  }
}

409resource.version_conflictPo načtení vaší verze zdroj změnil jiný zápis.
Jak postupovat
Načtěte nejnovější stav, slaďte s ním svou změnu a odešlete novou expected_version.
Pravidla opakování
Pro upravenou operaci použijte nový klíč idempotence; data slepě nepřepisujte.
Odpověď
{
  "error": {
    "code": "resource.version_conflict",
    "fields": null,
    "message": "The resource version has changed."
  },
  "meta": {
    "request_id": "example-request"
  }
}

409storage.limit_reachedLimit úložiště obrázků a souborů byl vyčerpán. Uvolněte místo nebo zvyšte limit.
Jak postupovat
Limit úložiště obrázků a souborů byl vyčerpán. Uvolněte místo nebo zvyšte limit.
Pravidla opakování
Opakujte menší platné operace s jejich vlastními klíči idempotence.
Odpověď
{
  "error": {
    "code": "storage.limit_reached",
    "fields": null,
    "message": "The upload storage limit is reached."
  },
  "meta": {
    "request_id": "example-request"
  }
}

413request.too_largePožadavek překračuje limit velikosti.
Jak postupovat
Zmenšete obsah nebo rozdělte práci do podporovaných samostatných operací.
Pravidla opakování
Opakujte menší platné operace s jejich vlastními klíči idempotence.
Odpověď
{
  "error": {
    "code": "request.too_large",
    "fields": null,
    "message": "The request exceeds the size limit."
  },
  "meta": {
    "request_id": "example-request"
  }
}

415request.unsupported_media_typeTyp média nebo kódování obsahu není podporováno.
Jak postupovat
Pro zápisy JSON použijte Content-Type: application/json a podporované nekomprimované tělo.
Pravidla opakování
Opakujte po opravě typu média nebo kódování.
Odpověď
{
  "error": {
    "code": "request.unsupported_media_type",
    "fields": null,
    "message": "The request media type or encoding is not supported."
  },
  "meta": {
    "request_id": "example-request"
  }
}

416request.range_not_satisfiableOmezení: Range
Jak postupovat
Range: bytes=0-(size_bytes-1)
Pravidla opakování
Opakujte po opravě požadavku.
Odpověď
{
  "error": {
    "code": "request.range_not_satisfiable",
    "fields": null,
    "message": "The requested byte range is unavailable."
  },
  "meta": {
    "request_id": "example-request"
  }
}

422request.validation_failedJedno nebo více polí či parametrů neprošlo validací.
Jak postupovat
Prohlédněte error.fields a poté zkontrolujte povinná pole, možnost null, identifikátory a povolené hodnoty.
Pravidla opakování
Opakujte opravený požadavek; změněný zápis je nová logická operace.
Odpověď
{
  "error": {
    "code": "request.validation_failed",
    "fields": null,
    "message": "Some request parameters are invalid."
  },
  "meta": {
    "request_id": "example-request"
  }
}

429capacity.queue_fullKrátká fronta API je plná; požadavek se ještě nezačal provádět.
Jak postupovat
Zařaďte požadavky do fronty a respektujte hlavičku odpovědi Retry-After.
Pravidla opakování
Počkejte alespoň počet sekund uvedený v Retry-After. Pokud opakujete zápis, zachovejte stejné tělo požadavku i hodnotu Idempotency-Key.
Odpověď
{
  "error": {
    "code": "capacity.queue_full",
    "fields": null,
    "message": "The API is busy. Please retry shortly."
  },
  "meta": {
    "request_id": "example-request"
  }
}

429capacity.wait_timeoutVypršela doba čekání ve frontě API; požadavek se ještě nezačal provádět.
Jak postupovat
Zařaďte požadavky do fronty a respektujte hlavičku odpovědi Retry-After.
Pravidla opakování
Počkejte alespoň počet sekund uvedený v Retry-After. Pokud opakujete zápis, zachovejte stejné tělo požadavku i hodnotu Idempotency-Key.
Odpověď
{
  "error": {
    "code": "capacity.wait_timeout",
    "fields": null,
    "message": "The API could not start this request in time. Please retry shortly."
  },
  "meta": {
    "request_id": "example-request"
  }
}

429rate_limit.exceededČetnost požadavků překračuje platný limit.
Jak postupovat
Zařaďte požadavky do fronty a respektujte hlavičku odpovědi Retry-After.
Pravidla opakování
Počkejte alespoň počet sekund uvedený v Retry-After. Pokud opakujete zápis, zachovejte stejné tělo požadavku i hodnotu Idempotency-Key.
Odpověď
{
  "error": {
    "code": "rate_limit.exceeded",
    "fields": null,
    "message": "The request rate limit has been exceeded."
  },
  "meta": {
    "request_id": "example-request"
  }
}

500internal.errorDošlo k neočekávané chybě služby.
Jak postupovat
Před opakováním požadavku chvíli počkejte. Pokud se chyba 500 objeví znovu, obraťte se na technickou podporu Shopently a přiložte identifikátor požadavku.
Pravidla opakování
Načtení dat můžete zkusit znovu po krátké pauze. Při opakování zápisu použijte stejnou hodnotu Idempotency-Key a neměňte tělo požadavku.
Odpověď
{
  "error": {
    "code": "internal.error",
    "fields": null,
    "message": "An unexpected error occurred."
  },
  "meta": {
    "request_id": "example-request"
  }
}

502gateway.bad_responseBrána neobdržela platnou odpověď API.
Jak postupovat
Uchovejte identifikátor požadavku. Chybná odpověď nedokazuje, že zápis nebyl proveden.
Pravidla opakování
Použijte omezený počet opakování s rostoucí prodlevou; stejný logický zápis opakujte s původním Idempotency-Key a obsahem požadavku.
Odpověď
{
  "error": {
    "code": "gateway.bad_response",
    "fields": null,
    "message": "The API gateway could not obtain a valid response."
  },
  "meta": {
    "request_id": "example-request"
  }
}

503service.unavailableAPI dočasně nemůže požadavek obsloužit.
Jak postupovat
Pokud odpověď obsahuje hlavičku Retry-After, před dalším pokusem počkejte uvedený počet sekund. Jinak to zkuste za chvíli. Pokud chyba trvá, obraťte se na technickou podporu Shopently a přiložte identifikátor požadavku.
Pravidla opakování
Zkuste to znovu po čekání uvedeném výše. Při opakování zápisu použijte stejnou hodnotu Idempotency-Key a neměňte tělo požadavku.
Odpověď
{
  "error": {
    "code": "service.unavailable",
    "fields": null,
    "message": "The API is temporarily unavailable."
  },
  "meta": {
    "request_id": "example-request"
  }
}

504gateway.timeoutBráně při čekání na API vypršel časový limit.
Jak postupovat
Pokud požadavek měnil data, zkontrolujte, zda se změny v obchodě uložily. Chybějící odpověď neznamená, že zápis selhal. Pokud chyba trvá, obraťte se na technickou podporu Shopently a přiložte identifikátor požadavku.
Pravidla opakování
Načtení dat můžete zkusit znovu po krátké pauze. Při opakování zápisu použijte stejnou hodnotu Idempotency-Key a neměňte tělo požadavku.
Odpověď
{
  "error": {
    "code": "gateway.timeout",
    "fields": null,
    "message": "The API gateway timed out."
  },
  "meta": {
    "request_id": "example-request"
  }
}