Hoppa till innehållet
ShopentlyLearn

Felkoder

Om ett anrop misslyckas, kontrollera felkoden i svaret. Fäll ut koden i listan nedan för att se vad som hände och vad du kan göra. Varje fel innehåller även ett svarsexempel och råd om när du kan försöka igen.

400request.malformedBegäran kan inte tolkas.
Åtgärd
Kontrollera JSON-syntax, URL-kodning och begärans struktur.
Regler för nya försök
Försök igen efter att begäran korrigerats.
Svar
{
  "error": {
    "code": "request.malformed",
    "fields": null,
    "message": "The request could not be read."
  },
  "meta": {
    "request_id": "example-request"
  }
}

401authentication.invalid_credentialsAPI-nyckeln eller åtkomsttoken är ogiltig, utgången eller återkallad.
Åtgärd
Kontrollera butikens URL och autentiseringsuppgiften. Hämta en ny token med en aktiv API-nyckel.
Regler för nya försök
Försök igen efter att autentiseringen korrigerats. Undvik upprepade begäranden med ogiltiga uppgifter.
Svar
{
  "error": {
    "code": "authentication.invalid_credentials",
    "fields": null,
    "message": "The credentials are invalid."
  },
  "meta": {
    "request_id": "example-request"
  }
}

401authentication.requiredDet obligatoriska HTTP-huvudet Authorization saknas eller använder fel schema.
Åtgärd
För att utfärda eller återkalla en token använder du API-nyckeln med ApiKey i Authorization-headern. För andra anrop använder du åtkomsttoken med Bearer.
Regler för nya försök
Försök igen med korrekt HTTP-huvud.
Svar
{
  "error": {
    "code": "authentication.required",
    "fields": null,
    "message": "Authentication is required."
  },
  "meta": {
    "request_id": "example-request"
  }
}

403authorization.client_ip_unverifiedTjänsten kunde inte fastställa en betrodd klient-IP-adress.
Åtgärd
Kontrollera vilken IP-adress integrationen ansluter till API:et från. Om felet kvarstår, kontakta Shopentlys tekniska support.
Regler för nya försök
Försök igen när problemet med att identifiera IP-adressen har lösts.
Svar
{
  "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_allowedKällans IP-adress finns inte i nyckelns lista över tillåtna adresser.
Åtgärd
Använd en godkänd källadress eller be en behörig administratör redigera nyckelns IP-lista.
Regler för nya försök
Försök igen först när adressen är tillåten.
Svar
{
  "error": {
    "code": "authorization.ip_not_allowed",
    "fields": null,
    "message": "Access from this IP address is not allowed."
  },
  "meta": {
    "request_id": "example-request"
  }
}

403authorization.scope_deniedNyckeln saknar en gällande behörighet som operationen kräver.
Åtgärd
Kontrollera operationens obligatoriska och villkorliga behörigheter, nyckelns behörigheter och utfärdarens åtkomst.
Regler för nya försök
Försök igen när en behörig administratör har gett nödvändig åtkomst.
Svar
{
  "error": {
    "code": "authorization.scope_denied",
    "fields": null,
    "message": "The required permission has not been granted."
  },
  "meta": {
    "request_id": "example-request"
  }
}

403entitlements.api_disabledAPI-åtkomst är inaktiverad för butiken.
Åtgärd
Be butikens ägare kontrollera aktuellt abonnemang och API-tillgänglighet.
Regler för nya försök
Försök inte igen förrän API-åtkomst har aktiverats.
Svar
{
  "error": {
    "code": "entitlements.api_disabled",
    "fields": null,
    "message": "API access is disabled for this store."
  },
  "meta": {
    "request_id": "example-request"
  }
}

403entitlements.limit_exceededÄndringen skulle överskrida en gräns i aktuellt abonnemang.
Åtgärd
Kontrollera tillämplig resursgräns och anpassa ändringen eller abonnemanget.
Regler för nya försök
Försök igen när begränsningen har lösts. Använd en ny idempotensnyckel om begäran ändras.
Svar
{
  "error": {
    "code": "entitlements.limit_exceeded",
    "fields": null,
    "message": "The operation exceeds a plan limit."
  },
  "meta": {
    "request_id": "example-request"
  }
}

403entitlements.operation_disabledAktuellt abonnemang omfattar inte operationen.
Åtgärd
Kontrollera det lägsta abonnemang som anges för operationen.
Regler för nya försök
Försök igen när abonnemanget tillåter operationen och nyckeln har nödvändiga behörigheter.
Svar
{
  "error": {
    "code": "entitlements.operation_disabled",
    "fields": null,
    "message": "The current plan does not allow this operation."
  },
  "meta": {
    "request_id": "example-request"
  }
}

403entitlements.resource_blockedEn abonnemangsgräns blockerar den här resursen.
Åtgärd
Be ägaren åtgärda resursens abonnemangsbegränsning.
Regler för nya försök
Upprepa inte samma begäran så länge resursen är blockerad.
Svar
{
  "error": {
    "code": "entitlements.resource_blocked",
    "fields": null,
    "message": "A plan limit blocks access to this resource."
  },
  "meta": {
    "request_id": "example-request"
  }
}

404resource.not_foundResursen saknas, är borttagen eller är inte tillgänglig under angiven identifierare.
Åtgärd
Kontrollera butik, resurssökväg och identifierare. Använd identifierare som returnerats av den här butiken.
Regler för nya försök
Försök igen först när målet har korrigerats eller dess existens har bekräftats.
Svar
{
  "error": {
    "code": "resource.not_found",
    "fields": null,
    "message": "The resource was not found."
  },
  "meta": {
    "request_id": "example-request"
  }
}

405request.method_not_allowedEndpointen stöder inte den här HTTP-metoden.
Åtgärd
Använd den dokumenterade metoden. HTTP-huvudet Allow anger vilka metoder som stöds.
Regler för nya försök
Försök inte igen med en metod som inte stöds.
Svar
{
  "error": {
    "code": "request.method_not_allowed",
    "fields": null,
    "message": "This method is not supported for this resource."
  },
  "meta": {
    "request_id": "example-request"
  }
}

409idempotency.key_reusedIdempotensnyckeln hör till en annan begäran.
Åtgärd
Hitta den ursprungliga operationen. Använd en ny nyckel endast för en avsiktligt ny logisk operation.
Regler för nya försök
Försök inte skicka ändrat innehåll med den motstridiga nyckeln.
Svar
{
  "error": {
    "code": "idempotency.key_reused",
    "fields": null,
    "message": "This idempotency key was used with a different request."
  },
  "meta": {
    "request_id": "example-request"
  }
}

409resource.already_existsEtt unikt värde krockar med en befintlig resurs.
Åtgärd
Läs den befintliga resursen och avgör om den ska användas eller om ett annat unikt värde ska väljas.
Regler för nya försök
Upprepa inte samma skapande som orsakar konflikten.
Svar
{
  "error": {
    "code": "resource.already_exists",
    "fields": null,
    "message": "A resource with these unique values already exists."
  },
  "meta": {
    "request_id": "example-request"
  }
}

409resource.in_useAndra resurser är fortfarande beroende av resursen.
Åtgärd
Granska beroendena och ta bort eller ändra dem genom operationer som stöds innan du tar bort resursen.
Regler för nya försök
Försök igen när beroendena har lösts.
Svar
{
  "error": {
    "code": "resource.in_use",
    "fields": null,
    "message": "The resource is still in use."
  },
  "meta": {
    "request_id": "example-request"
  }
}

409resource.state_conflictAktuellt affärstillstånd förhindrar ändringen.
Åtgärd
Läs aktuellt tillstånd och välj en tillåten övergång.
Regler för nya försök
Tvinga inte automatiskt igenom ändringen och skicka inte samma motstridiga ändring upprepade gånger.
Svar
{
  "error": {
    "code": "resource.state_conflict",
    "fields": null,
    "message": "The current resource state does not allow this operation."
  },
  "meta": {
    "request_id": "example-request"
  }
}

409resource.version_conflictEn annan skrivning ändrade resursen efter den version du läste.
Åtgärd
Läs aktuella uppgifter, anpassa ändringen och skicka den nya expected_version.
Regler för nya försök
Använd en ny idempotensnyckel för den reviderade operationen. Skriv inte över utan kontroll.
Svar
{
  "error": {
    "code": "resource.version_conflict",
    "fields": null,
    "message": "The resource version has changed."
  },
  "meta": {
    "request_id": "example-request"
  }
}

409storage.limit_reachedLagringsgränsen för bilder och filer har nåtts. Frigör utrymme eller höj gränsen.
Åtgärd
Lagringsgränsen för bilder och filer har nåtts. Frigör utrymme eller höj gränsen.
Regler för nya försök
Skicka mindre, giltiga operationer med egna idempotensnycklar.
Svar
{
  "error": {
    "code": "storage.limit_reached",
    "fields": null,
    "message": "The upload storage limit is reached."
  },
  "meta": {
    "request_id": "example-request"
  }
}

413request.too_largeBegäran överskrider storleksgränsen.
Åtgärd
Minska innehållet eller dela upp arbetet i enskilda operationer som stöds.
Regler för nya försök
Skicka mindre, giltiga operationer med egna idempotensnycklar.
Svar
{
  "error": {
    "code": "request.too_large",
    "fields": null,
    "message": "The request exceeds the size limit."
  },
  "meta": {
    "request_id": "example-request"
  }
}

415request.unsupported_media_typeMedietypen eller innehållskodningen stöds inte.
Åtgärd
För JSON-skrivningar använder du Content-Type: application/json och okomprimerat innehåll som stöds.
Regler för nya försök
Försök igen efter att medietyp eller kodning korrigerats.
Svar
{
  "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_satisfiableBegränsningar: Range
Åtgärd
Range: bytes=0-(size_bytes-1)
Regler för nya försök
Försök igen efter att begäran korrigerats.
Svar
{
  "error": {
    "code": "request.range_not_satisfiable",
    "fields": null,
    "message": "The requested byte range is unavailable."
  },
  "meta": {
    "request_id": "example-request"
  }
}

422request.validation_failedEtt eller flera fält eller parametrar klarar inte valideringen.
Åtgärd
Granska error.fields och kontrollera obligatoriska fält, tillåtna null-värden, identifierare och tillåtna värden.
Regler för nya försök
Skicka en korrigerad begäran. En ändrad skrivning är en ny logisk operation.
Svar
{
  "error": {
    "code": "request.validation_failed",
    "fields": null,
    "message": "Some request parameters are invalid."
  },
  "meta": {
    "request_id": "example-request"
  }
}

429capacity.queue_fullAPI:ets korta kö är full; begäran har inte börjat köras.
Åtgärd
Lägg begäranden i kö och följ HTTP-huvudet Retry-After i svaret.
Regler för nya försök
Vänta minst det antal sekunder som anges i Retry-After. Om du upprepar en skrivning, behåll samma innehåll och samma värde för Idempotency-Key.
Svar
{
  "error": {
    "code": "capacity.queue_full",
    "fields": null,
    "message": "The API is busy. Please retry shortly."
  },
  "meta": {
    "request_id": "example-request"
  }
}

429capacity.wait_timeoutVäntetiden i API-kön har gått ut; begäran har inte börjat köras.
Åtgärd
Lägg begäranden i kö och följ HTTP-huvudet Retry-After i svaret.
Regler för nya försök
Vänta minst det antal sekunder som anges i Retry-After. Om du upprepar en skrivning, behåll samma innehåll och samma värde för Idempotency-Key.
Svar
{
  "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.exceededAnropsfrekvensen överskrider den tillämpliga gränsen.
Åtgärd
Lägg begäranden i kö och följ HTTP-huvudet Retry-After i svaret.
Regler för nya försök
Vänta minst det antal sekunder som anges i Retry-After. Om du upprepar en skrivning, behåll samma innehåll och samma värde för Idempotency-Key.
Svar
{
  "error": {
    "code": "rate_limit.exceeded",
    "fields": null,
    "message": "The request rate limit has been exceeded."
  },
  "meta": {
    "request_id": "example-request"
  }
}

500internal.errorEtt oväntat tjänstefel inträffade.
Åtgärd
Vänta en stund innan du skickar anropet igen. Om fel 500 återkommer, kontakta Shopentlys tekniska support och ange anropets ID.
Regler för nya försök
Du kan försöka hämta data igen efter en kort paus. När du upprepar en skrivning, använd samma värde för Idempotency-Key och behåll anropets innehåll oförändrat.
Svar
{
  "error": {
    "code": "internal.error",
    "fields": null,
    "message": "An unexpected error occurred."
  },
  "meta": {
    "request_id": "example-request"
  }
}

502gateway.bad_responseGatewayen fick inget giltigt API-svar.
Åtgärd
Spara begärans identifierare. Ett misslyckat svar bevisar inte att skrivningen uteblev.
Regler för nya försök
Använd begränsade nya försök med ökande väntetid. Upprepa samma logiska skrivning med ursprunglig Idempotency-Key och oförändrat innehåll.
Svar
{
  "error": {
    "code": "gateway.bad_response",
    "fields": null,
    "message": "The API gateway could not obtain a valid response."
  },
  "meta": {
    "request_id": "example-request"
  }
}

503service.unavailableAPI:et kan tillfälligt inte hantera begäran.
Åtgärd
Om svaret innehåller en Retry-After-header, vänta det angivna antalet sekunder innan du försöker igen. Vänta annars en stund. Om felet fortsätter, kontakta Shopentlys tekniska support och ange anropets ID.
Regler för nya försök
Försök igen efter att ha väntat enligt anvisningen ovan. När du upprepar en skrivning, använd samma värde för Idempotency-Key och behåll anropets innehåll oförändrat.
Svar
{
  "error": {
    "code": "service.unavailable",
    "fields": null,
    "message": "The API is temporarily unavailable."
  },
  "meta": {
    "request_id": "example-request"
  }
}

504gateway.timeoutGatewayens tidsgräns överskreds medan den väntade på API:et.
Åtgärd
Om anropet ändrade data, kontrollera om ändringarna sparades i butiken. Ett uteblivet svar betyder inte att skrivningen misslyckades. Om felet fortsätter, kontakta Shopentlys tekniska support och ange anropets ID.
Regler för nya försök
Du kan försöka hämta data igen efter en kort paus. När du upprepar en skrivning, använd samma värde för Idempotency-Key och behåll anropets innehåll oförändrat.
Svar
{
  "error": {
    "code": "gateway.timeout",
    "fields": null,
    "message": "The API gateway timed out."
  },
  "meta": {
    "request_id": "example-request"
  }
}