Fehler
Fehler
Jeder Fehlschlag trägt einen stabilen Code. Verzweigen Sie auf den Code und niemals auf die Meldung: der Wortlaut kann sich jederzeit ändern, der Code nicht.
Pfade, Methoden, Scopes, Feldnamen, Fehlercodes und Namen von Validierungsregeln erscheinen auf Englisch, denn Englisch ist die Sprache der Schnittstelle selbst — es ist das, was ein Aufrufer eintippt oder abgleicht. Ebenso jedes Codebeispiel, jede JSON-Nutzlast und der exakte Satz, den eine Fehlerantwort mitführt: /v1 wertet Accept-Language nicht aus, und eine Übersetzung dessen, was die API tatsächlich sendet, würde sie falsch beschreiben. Alles, was darüber geschrieben steht, folgt der Sprache dieser Seite.
Die Fehlerhülle
Jede Antwort außerhalb von 2xx hat dieselbe Form. documentation_url zeigt direkt auf den passenden Eintrag weiter unten, und request_id ist der Wert, den man in einer Supportanfrage nennt. details trägt maschinenlesbaren Kontext — bei einem abgelehnten Körper sind das die issues, jede davon ein JSON Pointer auf das beanstandete Feld.
{
"error": {
"code": "validation_failed",
"message": "The request body failed validation.",
"documentation_url": "https://passportcraft.com/docs/api/errors#validation_failed",
"request_id": "req_9Fv2KpQ0aXbT4Lmn",
"details": {
"issues": [
{ "source": { "pointer": "/data/product_name" }, "rule": "required" }
]
}
}
}Codes
Jeder Code ist aus der Antwort verlinkt, die ihn trägt; diese Seite wird also meist direkt beim benötigten Eintrag betreten.
invalid_key
401Der übergebene Zugangsschlüssel ist ungültig.
API sendetThe API key provided is not valid.
Jeder Endpunkt kann das zurückgeben.
key_revoked
401Dieser Zugangsschlüssel wurde widerrufen.
API sendetThis API key has been revoked.
Jeder Endpunkt kann das zurückgeben.
key_expired
401Dieser Zugangsschlüssel ist abgelaufen.
API sendetThis API key has expired.
Jeder Endpunkt kann das zurückgeben.
key_rotated
401Dieser Zugangsschlüssel wurde im Zuge einer Rotation ersetzt, und sein Überlappungsfenster ist inzwischen geschlossen.
API sendetThis API key was replaced by a rotation and its overlap window has closed.
Jeder Endpunkt kann das zurückgeben.
mode_mismatch
400Das Präfix des Schlüssels passt nicht zu den Zugangsdaten. Prüfen Sie, ob Sie einen Test- oder einen Live-Schlüssel meinten.
API sendetThe key prefix does not match the credential. Check whether you meant a test or a live key.
Jeder Endpunkt kann das zurückgeben.
insufficient_scope
403Diese Zugangsdaten tragen nicht den Scope, den diese Operation verlangt.
API sendetThis credential does not carry the scope required for this operation.
Welche Endpunkte das zurückgeben
- post
/organizations/{organization}/grants - delete
/organizations/{organization}/grants/{keyId} - get
/organizations/{organization}/capabilities - get
/organizations/{organization}/events - get
/organizations/{organization}/passports - post
/organizations/{organization}/passports - get
/organizations/{organization}/publish-approvals/{id} - get
/organizations/{organization}/passports/{id} - patch
/organizations/{organization}/passports/{id} - post
/organizations/{organization}/passports/{id}/publish - post
/organizations/{organization}/passports/{id}/unpublish - post
/organizations/{organization}/passports/{id}/trash - post
/organizations/{organization}/passports/{id}/restore - post
/organizations/{organization}/passports/{id}/validate - get
/organizations/{organization}/passports/{id}/links - get
/organizations/{organization}/passports/{id}/affichage - post
/organizations/{organization}/passports/{id}/affichage - get
/organizations/{organization}/passports/{id}/variants - post
/organizations/{organization}/passports/{id}/variants - delete
/organizations/{organization}/passports/{id}/variants/{variantId} - post
/organizations/{organization}/passports/{id}/variants/remove - get
/organizations/{organization}/passports/{id}/variants/review - get
/organizations/{organization}/passports/{id}/units - post
/organizations/{organization}/passports/{id}/units - get
/organizations/{organization}/passports/{id}/units/{unitId}/readings - post
/organizations/{organization}/passports/{id}/units/{unitId}/readings - get
/organizations/{organization}/documents - get
/organizations/{organization}/passports/{id}/documents - post
/organizations/{organization}/passports/{id}/documents - delete
/organizations/{organization}/passports/{id}/documents/{documentId} - post
/organizations/{organization}/imports - get
/organizations/{organization}/imports - get
/organizations/{organization}/imports/{id}
organization_not_found_or_not_granted
404Eine solche Organisation gibt es nicht, oder dieser Schlüssel hat dafür keine Freigabe. Eine Freigabe endet, wenn jemand sie widerruft oder wenn die Zusammenarbeit der Organisation mit ihrem Partner endet; die Organisation verschwindet dann aus GET /organizations.
API sendetNo such organization.
Welche Endpunkte das zurückgeben
- post
/organizations/{organization}/grants - delete
/organizations/{organization}/grants/{keyId} - get
/organizations/{organization}/capabilities - get
/organizations/{organization}/events - get
/organizations/{organization}/passports - post
/organizations/{organization}/passports - get
/organizations/{organization}/publish-approvals/{id} - get
/organizations/{organization}/passports/{id} - patch
/organizations/{organization}/passports/{id} - post
/organizations/{organization}/passports/{id}/publish - post
/organizations/{organization}/passports/{id}/unpublish - post
/organizations/{organization}/passports/{id}/trash - post
/organizations/{organization}/passports/{id}/restore - post
/organizations/{organization}/passports/{id}/validate - get
/organizations/{organization}/passports/{id}/links - get
/organizations/{organization}/passports/{id}/affichage - post
/organizations/{organization}/passports/{id}/affichage - get
/organizations/{organization}/passports/{id}/variants - post
/organizations/{organization}/passports/{id}/variants - delete
/organizations/{organization}/passports/{id}/variants/{variantId} - post
/organizations/{organization}/passports/{id}/variants/remove - get
/organizations/{organization}/passports/{id}/variants/review - get
/organizations/{organization}/passports/{id}/units - post
/organizations/{organization}/passports/{id}/units - get
/organizations/{organization}/passports/{id}/units/{unitId}/readings - post
/organizations/{organization}/passports/{id}/units/{unitId}/readings - get
/organizations/{organization}/documents - get
/organizations/{organization}/passports/{id}/documents - post
/organizations/{organization}/passports/{id}/documents - delete
/organizations/{organization}/passports/{id}/documents/{documentId} - post
/organizations/{organization}/imports - get
/organizations/{organization}/imports - get
/organizations/{organization}/imports/{id}
resource_not_found
404Eine solche Ressource gibt es nicht.
API sendetNo such resource.
Welche Endpunkte das zurückgeben
- get
/categories/{category}/schema - post
/organizations/{organization}/grants - delete
/organizations/{organization}/grants/{keyId} - get
/organizations/{organization}/publish-approvals/{id} - get
/organizations/{organization}/passports/{id} - patch
/organizations/{organization}/passports/{id} - post
/organizations/{organization}/passports/{id}/publish - post
/organizations/{organization}/passports/{id}/unpublish - post
/organizations/{organization}/passports/{id}/trash - post
/organizations/{organization}/passports/{id}/restore - post
/organizations/{organization}/passports/{id}/validate - get
/organizations/{organization}/passports/{id}/links - get
/organizations/{organization}/passports/{id}/affichage - post
/organizations/{organization}/passports/{id}/affichage - get
/organizations/{organization}/passports/{id}/variants - post
/organizations/{organization}/passports/{id}/variants - delete
/organizations/{organization}/passports/{id}/variants/{variantId} - post
/organizations/{organization}/passports/{id}/variants/remove - get
/organizations/{organization}/passports/{id}/variants/review - get
/organizations/{organization}/passports/{id}/units - post
/organizations/{organization}/passports/{id}/units - get
/organizations/{organization}/passports/{id}/units/{unitId}/readings - post
/organizations/{organization}/passports/{id}/units/{unitId}/readings - get
/organizations/{organization}/passports/{id}/documents - post
/organizations/{organization}/passports/{id}/documents - delete
/organizations/{organization}/passports/{id}/documents/{documentId} - get
/organizations/{organization}/imports/{id}
wildcard_not_supported
400Die Organisations-Wildcard „-“ ist reserviert und wird noch nicht unterstützt.
API sendetThe "-" organization wildcard is reserved and not yet supported.
Welche Endpunkte das zurückgeben
- post
/organizations/{organization}/grants - delete
/organizations/{organization}/grants/{keyId} - get
/organizations/{organization}/capabilities - get
/organizations/{organization}/events - get
/organizations/{organization}/passports - post
/organizations/{organization}/passports - get
/organizations/{organization}/publish-approvals/{id} - get
/organizations/{organization}/passports/{id} - patch
/organizations/{organization}/passports/{id} - post
/organizations/{organization}/passports/{id}/publish - post
/organizations/{organization}/passports/{id}/unpublish - post
/organizations/{organization}/passports/{id}/trash - post
/organizations/{organization}/passports/{id}/restore - post
/organizations/{organization}/passports/{id}/validate - get
/organizations/{organization}/passports/{id}/links - get
/organizations/{organization}/passports/{id}/affichage - post
/organizations/{organization}/passports/{id}/affichage - get
/organizations/{organization}/passports/{id}/variants - post
/organizations/{organization}/passports/{id}/variants - delete
/organizations/{organization}/passports/{id}/variants/{variantId} - post
/organizations/{organization}/passports/{id}/variants/remove - get
/organizations/{organization}/passports/{id}/variants/review - get
/organizations/{organization}/passports/{id}/units - post
/organizations/{organization}/passports/{id}/units - get
/organizations/{organization}/passports/{id}/units/{unitId}/readings - post
/organizations/{organization}/passports/{id}/units/{unitId}/readings - get
/organizations/{organization}/documents - get
/organizations/{organization}/passports/{id}/documents - post
/organizations/{organization}/passports/{id}/documents - delete
/organizations/{organization}/passports/{id}/documents/{documentId} - post
/organizations/{organization}/imports - get
/organizations/{organization}/imports - get
/organizations/{organization}/imports/{id}
validation_failed
422Der Anfragekörper hat die Validierung nicht bestanden.
API sendetThe request body failed validation.
Welche Endpunkte das zurückgeben
- post
/organizations/{organization}/grants - post
/organizations/{organization}/passports - patch
/organizations/{organization}/passports/{id} - post
/organizations/{organization}/passports/{id}/publish - post
/organizations/{organization}/passports/{id}/unpublish - post
/organizations/{organization}/passports/{id}/trash - post
/organizations/{organization}/passports/{id}/restore - post
/organizations/{organization}/passports/{id}/validate - post
/organizations/{organization}/passports/{id}/affichage - post
/organizations/{organization}/passports/{id}/variants - post
/organizations/{organization}/passports/{id}/variants/remove - post
/organizations/{organization}/passports/{id}/units - post
/organizations/{organization}/passports/{id}/units/{unitId}/readings - post
/organizations/{organization}/passports/{id}/documents - post
/organizations/{organization}/imports
invalid_request
400Die Anfrage konnte nicht verstanden werden.
API sendetThe request could not be understood.
Jeder Endpunkt kann das zurückgeben.
method_not_allowed
405Den Endpunkt gibt es, aber er beantwortet diese HTTP-Methode nicht. Der Allow-Header der Ablehnung nennt die Methoden, die er beantwortet.
API sendetThis endpoint does not support that HTTP method. The Allow header lists the ones it does.
payload_too_large
413Der Anfragekörper ist größer, als dieser Endpunkt annimmt. details.limit_bytes nennt die angewandte Obergrenze.
API sendetThe request body is larger than this endpoint accepts.
Jeder Endpunkt kann das zurückgeben.
unsupported_media_type
415Der Anfragekörper kam nicht als application/json an.
API sendetThe request body must be sent as application/json.
Welche Endpunkte das zurückgeben
- post
/organizations/{organization}/grants - post
/organizations/{organization}/passports - patch
/organizations/{organization}/passports/{id} - post
/organizations/{organization}/passports/{id}/publish - post
/organizations/{organization}/passports/{id}/unpublish - post
/organizations/{organization}/passports/{id}/trash - post
/organizations/{organization}/passports/{id}/restore - post
/organizations/{organization}/passports/{id}/validate - post
/organizations/{organization}/passports/{id}/affichage - post
/organizations/{organization}/passports/{id}/variants - post
/organizations/{organization}/passports/{id}/variants/remove - post
/organizations/{organization}/passports/{id}/units - post
/organizations/{organization}/passports/{id}/units/{unitId}/readings - post
/organizations/{organization}/passports/{id}/documents - post
/organizations/{organization}/imports
idempotency_conflict
409Dieser Idempotency-Key wurde bereits mit einem anderen Anfragekörper verwendet.
API sendetThis Idempotency-Key was already used with a different request body.
Welche Endpunkte das zurückgeben
- post
/organizations/{organization}/passports - patch
/organizations/{organization}/passports/{id} - post
/organizations/{organization}/passports/{id}/publish - post
/organizations/{organization}/passports/{id}/unpublish - post
/organizations/{organization}/passports/{id}/trash - post
/organizations/{organization}/passports/{id}/restore - post
/organizations/{organization}/passports/{id}/affichage - post
/organizations/{organization}/passports/{id}/variants - delete
/organizations/{organization}/passports/{id}/variants/{variantId} - post
/organizations/{organization}/passports/{id}/variants/remove - post
/organizations/{organization}/passports/{id}/units - post
/organizations/{organization}/passports/{id}/units/{unitId}/readings - post
/organizations/{organization}/passports/{id}/documents - post
/organizations/{organization}/imports
already_exists
409Eine Ressource mit dieser Kennung besteht bereits.
API sendetA resource with this identifier already exists.
gtin_in_use
409Diese GTIN gehört zu einem anderen Produktpass. details nennt passport, product_name und role (lead oder variant). Verwenden Sie diesen Pass oder eine andere GTIN.
API sendetThis GTIN belongs to another passport. Use that passport or choose a different GTIN.
variant_limit_reached
422Dieser Produktpass hat sein Variantenlimit erreicht. details enthält limit, current und requested. Erstellen Sie einen zweiten Pass für weitere Varianten. Das Limit ist tarifunabhängig.
API sendetThis passport has reached its variant limit. Create a second passport to add more.
Welche Endpunkte das zurückgeben
variant_review_required
409Dieser Produktpass enthält Größen und Farben, die ein Assistent eingetragen hat. Eine Person prüft sie zuerst: Lesen Sie GET …/variants/review und veröffentlichen Sie anschließend mit dessen Fingerabdruck. details enthält agent_written_count und die URL der Prüfung.
API sendetThis passport carries sizes and colours an assistant wrote. A person reviews them first: read the review, then publish with its fingerprint.
Welche Endpunkte das zurückgeben
variant_review_changed
409Die Größen und Farben haben sich nach der Prüfung geändert, die dieser Fingerabdruck bezeichnet. Lesen Sie die Prüfung erneut und veröffentlichen Sie mit dem aktuellen Fingerabdruck. details enthält agent_written_count.
API sendetThe sizes and colours changed after the review this fingerprint names. Read the review again and publish with its current fingerprint.
Welche Endpunkte das zurückgeben
precondition_failed
412Die Ressource hat sich geändert — entweder seit der von Ihnen angegebenen Version oder während Ihre Anfrage lief. Das gemeldete current_version ist die von uns gelesene Version, nicht zwingend die jetzt gespeicherte — lesen Sie den Produktpass neu, statt daraus zu rechnen.
API sendetThe resource changed since the version you supplied.
resource_busy
409Eine andere Anfrage bearbeitet diese Ressource gerade. Warten Sie die im Retry-After-Header angegebene Zeit ab und versuchen Sie es dann erneut.
API sendetAnother request is modifying this resource. Wait for the Retry-After header, then retry.
Welche Endpunkte das zurückgeben
cursor_invalid
400Der Cursor zum Blättern ist ungültig, abgelaufen oder wurde mit anderen Filtern gesendet.
API sendetThe pagination cursor is invalid, expired, or was sent with different filters.
Welche Endpunkte das zurückgeben
- get
/organizations/{organization}/events - get
/organizations/{organization}/passports - get
/organizations/{organization}/passports/{id}/variants - get
/organizations/{organization}/passports/{id}/units - get
/organizations/{organization}/passports/{id}/units/{unitId}/readings - get
/organizations/{organization}/documents - get
/organizations/{organization}/passports/{id}/documents - get
/organizations/{organization}/imports
no_subscription
402Diese Organisation hat kein aktives Abonnement.
API sendetThis organization has no active subscription.
Welche Endpunkte das zurückgeben
- post
/organizations/{organization}/passports - patch
/organizations/{organization}/passports/{id} - post
/organizations/{organization}/passports/{id}/publish - post
/organizations/{organization}/passports/{id}/unpublish - post
/organizations/{organization}/passports/{id}/trash - post
/organizations/{organization}/passports/{id}/restore - post
/organizations/{organization}/passports/{id}/affichage - post
/organizations/{organization}/passports/{id}/variants - delete
/organizations/{organization}/passports/{id}/variants/{variantId} - post
/organizations/{organization}/passports/{id}/variants/remove - post
/organizations/{organization}/passports/{id}/units - post
/organizations/{organization}/passports/{id}/units/{unitId}/readings - post
/organizations/{organization}/passports/{id}/documents - delete
/organizations/{organization}/passports/{id}/documents/{documentId} - post
/organizations/{organization}/imports
plan_required
402Der Tarif dieser Organisation umfasst diesen Vorgang nicht.
API sendetThis organization’s plan does not include this operation.
Welche Endpunkte das zurückgeben
- post
/organizations/{organization}/passports - patch
/organizations/{organization}/passports/{id} - post
/organizations/{organization}/passports/{id}/publish - post
/organizations/{organization}/passports/{id}/unpublish - post
/organizations/{organization}/passports/{id}/trash - post
/organizations/{organization}/passports/{id}/restore - post
/organizations/{organization}/passports/{id}/affichage - post
/organizations/{organization}/passports/{id}/variants - delete
/organizations/{organization}/passports/{id}/variants/{variantId} - post
/organizations/{organization}/passports/{id}/variants/remove - post
/organizations/{organization}/passports/{id}/units - post
/organizations/{organization}/passports/{id}/units/{unitId}/readings - post
/organizations/{organization}/passports/{id}/documents - delete
/organizations/{organization}/passports/{id}/documents/{documentId} - post
/organizations/{organization}/imports
payment_overdue
402Das Veröffentlichen ist gesperrt, solange eine Zahlung offen ist.
API sendetPublishing is disabled while payment is overdue.
Welche Endpunkte das zurückgeben
- post
/organizations/{organization}/passports - patch
/organizations/{organization}/passports/{id} - post
/organizations/{organization}/passports/{id}/publish - post
/organizations/{organization}/passports/{id}/unpublish - post
/organizations/{organization}/passports/{id}/trash - post
/organizations/{organization}/passports/{id}/restore - post
/organizations/{organization}/passports/{id}/affichage - post
/organizations/{organization}/passports/{id}/variants - delete
/organizations/{organization}/passports/{id}/variants/{variantId} - post
/organizations/{organization}/passports/{id}/variants/remove - post
/organizations/{organization}/passports/{id}/units - post
/organizations/{organization}/passports/{id}/units/{unitId}/readings - post
/organizations/{organization}/passports/{id}/documents - delete
/organizations/{organization}/passports/{id}/documents/{documentId} - post
/organizations/{organization}/imports
gtin_required
422Vor der Veröffentlichung dieses Produktpasses ist eine GTIN erforderlich.
API sendetA GTIN is required before this passport can be published.
Welche Endpunkte das zurückgeben
wrong_status
409Der Produktpass ist nicht in einem Status, der diese Operation zulässt.
API sendetThe passport is not in a status that allows this operation.
Welche Endpunkte das zurückgeben
not_trashed
409Nur ein Produktpass im Papierkorb lässt sich wiederherstellen.
API sendetOnly a trashed passport can be restored.
Welche Endpunkte das zurückgeben
publish_limit_reached
402Diese Organisation hat alle Veröffentlichungsplätze belegt, die ihr Tarif zulässt.
API sendetThis organization has used every publish slot its plan allows.
Welche Endpunkte das zurückgeben
unit_limit_reached
402Dieser Produktpass trägt mehr Einheiten, als der Tarif zulässt.
API sendetThis passport carries more units than the plan allows.
Welche Endpunkte das zurückgeben
document_missing
422Ein Pflichtfeld wird allein durch ein Dokument erfüllt, das nicht mehr angehängt ist.
API sendetA required field is satisfied only by a document that is no longer attached.
Welche Endpunkte das zurückgeben
document_feeds_extraction
409Dieses Dokument ist der Nachweis, woher die Werte eines Produktpasses stammen; es bleibt daher bestehen, solange dieser Produktpass existiert. Es wurde nichts gelöst.
API sendetThis document is the record of where a passport’s values came from, so it stays while that passport exists. Nothing was detached.
Welche Endpunkte das zurückgeben
document_feeds_reading
409Dieses Dokument belegt aufgezeichnete Batteriewerte und kann nicht gelöscht werden, solange diese Batterieeinträge bestehen. Öffnen Sie das Batteriemodell, um die Einträge zu prüfen.
API sendetThis document supports recorded battery values and cannot be deleted while those battery records exist. Open the battery model to review those records.
invalid_input
400Der Anfragekörper hat die Validierung nicht bestanden.
API sendetThe request body failed validation.
Welche Endpunkte das zurückgeben
invalid_observed_on
400Der Anfragekörper hat die Validierung nicht bestanden.
API sendetThe request body failed validation.
Welche Endpunkte das zurückgeben
invalid_source
400Der Anfragekörper hat die Validierung nicht bestanden.
API sendetThe request body failed validation.
Welche Endpunkte das zurückgeben
invalid_field
400Der Anfragekörper hat die Validierung nicht bestanden.
API sendetThe request body failed validation.
invalid_note
400Der Anfragekörper hat die Validierung nicht bestanden.
API sendetThe request body failed validation.
Welche Endpunkte das zurückgeben
invalid_value
400Der Anfragekörper hat die Validierung nicht bestanden.
API sendetThe request body failed validation.
Welche Endpunkte das zurückgeben
invalid_document_id
400Der Anfragekörper hat die Validierung nicht bestanden.
API sendetThe request body failed validation.
Welche Endpunkte das zurückgeben
unit_status_required
400Diese Batterie hat bereits einen Status. Wählen Sie einen Status, statt ihn zu löschen.
API sendetThis battery already has a status. Choose a status instead of clearing it.
Welche Endpunkte das zurückgeben
unit_status_transition_forbidden
409Eine Batterie kann nach einem anderen Status nicht zu Original zurückkehren und nach Abfall ihren Status nicht mehr ändern.
API sendetThis battery’s status cannot return to Original or change after Waste.
Welche Endpunkte das zurückgeben
unit_status_history_conflict
409Dieser Status würde dem aufgezeichneten Verlauf der Batterie widersprechen. Prüfen Sie Datum und Status.
API sendetThis status would conflict with the battery’s recorded history. Check the date and status.
Welche Endpunkte das zurückgeben
delegation_required
403Die Hinterlegung setzt eine aktive Delegation voraus, die zum Zeitpunkt des Aufrufs gegen das Portal geprüft wird.
API sendetFiling requires an active delegation, verified against the portal at call time.
Welche Endpunkte das zurückgeben
attestation_required
403Diese Operation setzt eine Bestätigung voraus, die eine namentlich benannte Person der Marke angenommen hat.
API sendetThis operation requires an attestation accepted by a named person at the brand.
Welche Endpunkte das zurückgeben
test_mode_refused
403Mit Zugangsdaten im Testmodus lässt sich diese Operation nicht ausführen.
API sendetTest-mode credentials cannot perform this operation.
Welche Endpunkte das zurückgeben
human_approval_required
202Der Connector hat eine Veröffentlichung angefragt. Eine Person in der Organisation muss sie freigeben, und es wurde nichts veröffentlicht.
API sendetA person at your organization must approve this publish. The request was recorded and is waiting for them — give them the link in `details.review_url`. Nothing has been published.
connector_writes_drafts_only
409Der Agent-Connector darf nur einen Entwurf ändern. Ein Produktpass, den die Öffentlichkeit schon sieht, erfordert eine Person.
API sendetThis product is already visible to the public, so an assistant cannot change it. A person has to make the change — give them the editor link in `details.review_url`.
unit_status_not_allowed
422Wählen Sie einen der fünf zulässigen Batteriestatus aus den Details.
API sendetChoose one of the five permitted battery statuses in `details.allowed`, or leave the status empty.
scope_exceeds_key
422Die angefragte Freigabe enthält einen Scope, den der Schlüssel in seiner eigenen Organisation nicht besitzt. Eine Freigabe für einen Kunden reicht nie weiter als die des Schlüssels selbst.
API sendetA grant cannot carry a scope the key does not hold on its own organization
Welche Endpunkte das zurückgeben
france_mandate_required
403filings:write kann für diesen Kunden noch nicht freigegeben werden. Zuerst muss eine Person Ihrer Organisation im Arbeitsbereich des Kunden bestätigen, dass Ihnen seine schriftliche Vollmacht für Einreichungen in Frankreich vorliegt.
API sendetfilings:write needs the client's written authorisation, affirmed in its workspace, before it can be granted
Welche Endpunkte das zurückgeben
grantor_not_seated
403Die Person, die den aufrufenden Schlüssel erstellt hat, ist im Arbeitsbereich dieses Kunden nicht mehr Mitglied. Daher lässt sich niemand als die Person festhalten, die die Freigabe erteilt. Erstellen Sie in den Einstellungen einen neuen Schlüssel.
API sendetThe person who created this key no longer holds a seat in this organization
Welche Endpunkte das zurückgeben
key_not_grantable
409Der in key_id genannte Schlüssel ist widerrufen oder abgelaufen, wird gerade ersetzt oder ist die Verbindung eines Assistenten. Keiner dieser Schlüssel kann freigegeben werden.
API sendetThis key cannot be granted: it is revoked, expired, being replaced, or an assistant connection
Welche Endpunkte das zurückgeben
grant_conflict
409Der Schlüssel hat hier bereits eine Freigabe mit anderen Scopes. Widerrufen Sie diese Freigabe und erteilen Sie danach eine neue mit den gewünschten Scopes.
API sendetThis key already holds a grant here with different scopes; revoke it, then grant again
Welche Endpunkte das zurückgeben
rate_limited
429Zu viele Anfragen.
API sendetToo many requests in a short time. Wait a moment, then try again.
Jeder Endpunkt kann das zurückgeben.
internal_error
500Auf unserer Seite ist etwas schiefgegangen.
API sendetSomething went wrong on our side.
Jeder Endpunkt kann das zurückgeben.
configuration_error
500Der Dienst ist fehlerhaft konfiguriert. Das liegt nicht an Ihrer Anfrage.
API sendetThe service is misconfigured. This is not a problem with your request.
Jeder Endpunkt kann das zurückgeben.
Ablehnungen aus der PassportCraft-App
Die App, in der Sie angemeldet sind, ruft ihre eigenen Routen auf, und diese Routen lehnen mit den folgenden Codes ab. Sie gehören nicht zum /v1-Vertrag und können sich jederzeit ändern. Sie stehen hier, damit eine Meldung in der App oder ein Hilfeartikel auf etwas verweisen kann.
billing_managed_by_partner
Der Partner des Arbeitsbereichs verwaltet dessen Abrechnung. Der Bezahlvorgang, das Abrechnungsportal und Tarifwechsel werden alle mit diesem Code abgelehnt.
API sendetBilling for this workspace is managed by the partner that pays for it
partner_role_fixed
Diese Person arbeitet für den Partner des Arbeitsbereichs. Ihre Rolle hier richtet sich nach ihrer Rolle beim Partner und kann nicht geändert werden; ein Inhaber oder Administrator kann sie entfernen.
API sendetA partner member's role follows their role at the partner
home_members_only
Das kann nur der eigene Inhaber oder ein Administrator des Arbeitsbereichs tun, etwa einen Partner annehmen, ablehnen oder beenden. Die Mitarbeiter eines Partners können das nicht, unabhängig von ihrer Rolle. Einen Schlüssel rotieren können sie nur, wenn die Mitarbeiter ihres Partners ihn in diesem Arbeitsbereich erstellt haben und er sich ausschließlich auf diesen Arbeitsbereich auswirkt.
API sendetOnly the workspace's own owner or administrator can do this
client_already_linked
Dieser Arbeitsbereich hat bereits einen Partner oder eine Partneranfrage, die noch nicht beantwortet wurde.
API sendetThis workspace already has a partner, or a request it has not answered
partner_chain_not_allowed
Der Arbeitsbereich verwaltet bereits Kunden oder wird bereits von einem Partner verwaltet. Eine Organisation kann entweder Partner oder Kunde eines Partners sein, niemals beides. Daher kann diese Zusammenarbeit nicht beginnen.
API sendetAn organization can manage clients or be managed by a partner, not both
not_a_partner
Die in X-Organization genannte Organisation verwaltet keinen Kunden.
API sendetThis organization does not manage clients
partner_staff_only
Das können nur die eigenen Mitarbeiter des verwaltenden Partners, etwa um die schriftliche Vollmacht eines Kunden für französische coût environnemental-Erklärungen zu bestätigen.
API sendetOnly the partner's staff can do this
link_not_found
Für diesen Arbeitsbereich besteht unter dieser ID keine Partnerschaft.
API sendetLink not found
link_not_pending
Diese Anfrage wurde bereits beantwortet.
API sendetThis request has already been answered
link_not_accepted
Die Partnerschaft ist nicht aktiv: Sie wartet noch auf eine Antwort oder ist bereits beendet.
API sendetThis link is not active
same_organization
Eine Organisation kann sich nicht selbst verwalten.
API sendetAn organization cannot manage itself
organization_not_found
Kein Arbeitsbereich passt zur angegebenen Adresse oder E-Mail-Adresse.
API sendetOrganization not found
organization_header_required
Die Anfrage hat keinen Arbeitsbereich angegeben. Senden Sie den Slug des Arbeitsbereichs im Header X-Organization.
API sendetThe X-Organization header is required
organization_not_a_member
Die angemeldete Person ist kein Mitglied des in X-Organization genannten Arbeitsbereichs.
API sendetNot a member of this organization
continuity_pending
Der vom Partner bezahlte Tarif läuft noch. Die Abrechnung für diesen Arbeitsbereich ändert sich zu dem Datum, bis zu dem bezahlt wurde.
API sendetThe current plan runs to the date it was paid to; billing for this workspace changes after that
partner_terms_missing
Für diesen Partner sind noch keine Abrechnungsbedingungen hinterlegt, daher kann auf seinem Konto noch kein Tarif eröffnet werden.
API sendetThis partner has no billing terms recorded
partner_customer_missing
Der Partner hat noch kein Zahlungskonto.
API sendetThis partner has no payment account yet
partner_card_missing
Für den Partner ist keine Zahlungsmethode hinterlegt. Er fügt eine auf seiner eigenen Abrechnungsseite hinzu.
API sendetThis partner organization has no payment method on file
client_already_subscribed
Dieser Arbeitsbereich bezahlt bereits für ein eigenes Abonnement.
API sendetThis workspace already has its own subscription
plan_below_current
Der gewählte Tarif ist kleiner als der aktuelle Tarif dieses Arbeitsbereichs.
API sendetThat plan is smaller than the one this workspace is on
continuity_not_available
Es gibt keinen bezahlten Zeitraum eines früheren Partners, der für diesen Arbeitsbereich fortgeführt werden könnte.
API sendetThere is nothing to continue on this workspace
yearly_not_accepted
Für einen jährlichen Tarif auf dem Konto eines Partners muss zuerst dessen schriftliche Annahme der Jahreslaufzeit erfasst werden.
API sendetThis partner has not accepted the annual term in writing; record it before opening a yearly plan
stripe_refused
Der Zahlungsanbieter hat die Anfrage abgelehnt.
API sendetStripe refused the request
payment_pending
Das Zahlungsergebnis steht noch nicht fest. Prüfen Sie den Status der bestehenden Anfrage; legen Sie keinen weiteren Kunden an und senden Sie keine weitere Zahlung.
API sendetThe payment result is not yet known. Check its status before starting another payment.
price_changed
Der bestätigte Preis weicht von der neuesten Vorschau ab. Prüfen Sie den aktualisierten Preis vor dem erneuten Absenden. Es wurde kein Kunde angelegt.
API sendetThe price changed. Review the current amount before creating the client.
price_changed_after_create
Der Kunde wurde im kostenlosen Tarif angelegt. Der Preis hat sich geändert und der unbezahlte Zahlungsversuch wurde sicher geschlossen. Kontaktieren Sie den Support zur Tarifaktivierung; legen Sie den Kunden nicht erneut an.
API sendetThe client was added on Free. The reviewed payment did not proceed. Contact support to activate the plan.
creation_token_invalid
Diese Prüfung passt nicht zu Nutzer, Arbeitsbereich oder Kundendaten. Prüfen Sie die richtigen Angaben erneut. Wurde bereits eine Erstellungsanfrage gesendet und ist ihr Ergebnis unbekannt, kontaktieren Sie den Support, statt neu zu beginnen.
API sendetThis creation review is invalid. If creation has already started, check its status or contact support.
creation_token_expired
Die Berechtigung zur Erstellung ist abgelaufen. Prüfen Sie zuerst eine bestehende Erstellungsanfrage; wurde keine gesendet, prüfen Sie die Zahlung erneut.
API sendetThis creation review expired. Check any existing operation before reviewing a new creation.
creation_operation_expired
Der gespeicherte Status dieser Erstellungsanfrage ist nicht mehr verfügbar. Kontaktieren Sie den Support, bevor Sie fortfahren; legen Sie den Kunden nicht erneut an.
API sendetThis operation status is no longer available. Contact support before creating another client.
creation_conflict
Diese Erstellungsanfrage ist bereits mit anderen Angaben verknüpft. Prüfen Sie die ursprüngliche Anfrage oder kontaktieren Sie den Support; starten Sie keine weitere Erstellung.
API sendetThis operation belongs to different creation details. Check the original operation or contact support.
client_not_managed
Die genannte Organisation ist kein Kunde, den Ihre Organisation verwaltet.
API sendetThat organization is not a client your organization manages
keys_admin_partner_only
keys:admin kann nur einem Schlüssel gegeben werden, der zu einer Organisation gehört, die Kunden verwaltet.
API sendetkeys:admin can only be granted on the own keys of an organization that manages clients
grant_not_found
Kein Schlüssel einer anderen Organisation hat unter dieser ID Zugriff auf diesen Arbeitsbereich.
API sendetNo key from another organization holds a grant here under that id
Validierungsregeln
Diese Regeln kann der Inhalt eines Produktpasses selbst verletzen, in jeder Kategorie. Ein Regelname erreicht Sie an drei Stellen: unter error.details.issues in einer 422, unter issues in der 200 des Validierungs-Endpunkts und unter error.detail.issues an einer Zeile des Sammelimports. Anlegen, Ändern und Import lehnen einen Wert in data nur bei den zwei ab, die als beim Speichern abgelehnt gekennzeichnet sind — das Anlegen gibt zusätzlich required für eine nicht bediente Kategorie zurück. Die übrigen kommen von der Veröffentlichung oder vom Validierungs-Endpunkt. Die Veröffentlichung gibt die vollständige Liste zurück, Hinweise eingeschlossen, und nennt daher auch Regeln, die die Ablehnung nicht verursacht haben. Werten Sie die Regel aus, niemals die Meldung.
required
verhindert die VeröffentlichungDas Feld ist für diese Kategorie erforderlich und kam leer, gar nicht oder als leere Liste an. Wenn Sie einen Produktpass unter einer Kategorie anlegen, die wir nicht bedienen, kommt ebenfalls diese Regel zurück, auf dem JSON Pointer /category.
So beheben Sie dasSenden Sie einen Wert. Ein url-Feld, das eine Datei dokumentiert, wird auch erfüllt, indem Sie stattdessen dieses Dokument anhängen.
type_array
verhindert die Veröffentlichungwird auch beim Speichern abgelehntDas Feld enthält eine Liste, der Wert war aber keine — meist eine Liste, die als JSON-Zeichenkette gesendet wurde.
So beheben Sie dasSenden Sie ein echtes JSON-Array, keine Zeichenkette, die eines enthält.
type_array_items
verhindert die Veröffentlichungwird auch beim Speichern abgelehntDas Feld enthält eine Liste einfacher Textwerte, und mindestens ein Eintrag war ein Objekt, eine Zahl oder ein Wahrheitswert.
So beheben Sie dasSenden Sie jeden Eintrag als Zeichenkette. Das Feld führt im Kategorieschema item_type, wenn es das verlangt.
type_number
verhindert die VeröffentlichungDas Feld enthält eine Zahl, der Wert war aber keine — meist eine Zahl, die als Zeichenkette gesendet wurde.
So beheben Sie dasSenden Sie eine JSON-Zahl ohne Anführungszeichen.
type_text
verhindert die VeröffentlichungDas Feld enthält Text, und der Wert war kein Text — meist eine Zahl, ein boolescher Wert oder eine Liste für ein Feld, das das Kategorieschema als Text deklariert, oder für ein Auswahlfeld, das auch eine freie Eingabe zulässt.
So beheben Sie dasSenden Sie den Wert als JSON-Zeichenkette. Lesen Sie type am Feld im Kategorieschema. Auch ein select mit einer Option other nimmt eine freie Eingabe als Zeichenkette entgegen.
number_min
verhindert die VeröffentlichungDer Wert liegt unter der kleinsten Zahl, die das Feld annimmt.
So beheben Sie dasLesen Sie min am Feld im Kategorieschema und senden Sie einen Wert ab dieser Grenze.
number_max
verhindert die VeröffentlichungDer Wert liegt über der größten Zahl, die das Feld annimmt.
So beheben Sie dasLesen Sie max am Feld im Kategorieschema und senden Sie einen Wert bis zu dieser Grenze.
format_date
verhindert die VeröffentlichungDer Wert ist kein gültiges Datum nach ISO 8601. Ein Datum, das es nicht gibt, etwa 2025-02-30, wird hier abgelehnt.
So beheben Sie dasSenden Sie YYYY-MM-DD oder einen Zeitstempel nach ISO 8601 in UTC, der auf Z endet. Ein Zeitzonenversatz, der den Zeitstempel auf ein anderes Datum legt, wird abgelehnt.
format_url
verhindert die VeröffentlichungDer Wert ist keine gültige URL.
So beheben Sie dasSenden Sie eine absolute URL mit https:// oder http://.
invalid_option
verhindert die VeröffentlichungDas Feld nimmt eine feste Menge von Werten an, und der Wert gehörte nicht dazu. Ein Feld mit einer Option other ist ausgenommen: Es speichert stattdessen freien Text.
So beheben Sie dasLesen Sie options am Feld im Kategorieschema und senden Sie einen der dort aufgeführten value-Einträge.
format_gtin
verhindert die VeröffentlichungDie GTIN ist keine echte: Sie kam als leere Zeichenkette an, enthält Zeichen, die keine Ziffern sind, hat die falsche Länge, hat eine Prüfziffer, die nicht stimmt, oder ist ein Dokumentationsbeispiel.
So beheben Sie dasSenden Sie eine GTIN-8, GTIN-12, GTIN-13 oder GTIN-14, die GS1 Ihnen zugeteilt hat. Die Meldung nennt, welches Problem vorliegt.
format_eori
verhindert die VeröffentlichungDie EORI-Nummer entspricht nicht dem Format, das das Feld annimmt.
So beheben Sie dasSenden Sie zwei Großbuchstaben für das Land, dann 1 bis 15 Großbuchstaben oder Ziffern. Kleinbuchstaben werden abgelehnt.
format_country_code
verhindert die VeröffentlichungDas Land besteht nicht aus zwei Großbuchstaben. Ein Code in Kleinbuchstaben wie de wird abgelehnt.
So beheben Sie dasSenden Sie einen Großbuchstaben-Code nach ISO 3166-1 alpha-2, zum Beispiel DE.
format_commodity_code
HinweisDie Warennummer entspricht nicht dem Format von HS, KN oder TARIC.
So beheben Sie dasSenden Sie 6, 8 oder 10 Ziffern. Sie können den Produktpass auch mit dem Wert veröffentlichen, wie er ist.
format_email
verhindert die VeröffentlichungDer Wert ist keine gültige E-Mail-Adresse.
So beheben Sie dasSenden Sie eine vollständige Adresse.
category_exists
verhindert die VeröffentlichungDer Produktpass nennt eine Produktkategorie, die diese API nicht bedient.
So beheben Sie dasEine andere Kategorie zu senden behebt das nicht: Der gespeicherte Produktpass nennt eine Kategorie, die wir nicht mehr bedienen. Legen Sie ihn unter einer Kategorie neu an, die der Endpunkt mit der Kategorienliste zurückgibt.
Drei weitere Dinge tragen einen Regelnamen. Eine Produktkategorie ergänzt eigene Regeln, die mehrere Felder zusammen prüfen — etwa Materialanteile, die zusammen 100 ergeben müssen. Ein Endpunkt meldet ein Problem mit der Anfrage selbst auf dieselbe Weise, unter Namen wie not_writable. Und die Veröffentlichungsprüfung verwendet required erneut für einen Wert, den die Veröffentlichung braucht, etwa eine GTIN, an einem Feld, das die Kategorie selbst nicht verlangt. In jedem Fall erklärt die Meldung in der Antwort die Regel.
Warnungen
Eine Warnung ist keine Ablehnung. Sie kommt neben einer 200 an, bei einem gelungenen Aufruf, und benennt etwas, das Beachtung verdient.
environmental_claim_detected
200Der Produktpass enthält Umweltaussagen – in seinen Formulierungen oder in Feldern, die die Marke als Umweltinformationen gekennzeichnet hat. Die Veröffentlichung war erfolgreich und der Produktpass ist live. Ab dem 27. September 2026 verlangt die Richtlinie (EU) 2024/825, dass der Händler, der das Produkt in Verkehr bringt, solche Aussagen belegen kann.