API-Fehler
Jeder Fehler der fremforge-API ist RFC 9457 application/problem+json und trägt eine type-URI, die den konkreten Fehler benennt:
{
"type": "https://docs.frem.sh/reference/api/errors/seat-cap-reached",
"title": "Seat cap reached",
"status": 409,
"detail": "Your org has 10 of 10 contracted seats in use. Buy more seats from the billing page before provisioning new users."
}Werte type aus. title und detail sind für Menschen gedacht und können umformuliert werden; type zusammen mit status ist der stabile Vertrag.
Die Tabellen unten führen 259 Fehlertypen auf.
400 Bad Request
Die Anfrage war fehlerhaft, oder ein Feld hat die Validierung nicht bestanden.
| Fehlertyp | |
|---|---|
confirm-mismatch | Bestätigung stimmt nicht überein |
create-failed | Anlegen fehlgeschlagen |
css-too-large | CSS zu groß |
digest-mismatch | Digest stimmt nicht überein |
empty-update | Leere Aktualisierung |
format-mismatch | Format stimmt nicht überein |
group-team-map-foreign-org | Gruppen-Team-Zuordnung nennt eine andere Organisation |
group-team-map-unknown-team | Gruppen-Team-Zuordnung nennt ein Team, das es nicht gibt |
ids-required | IDs erforderlich |
invalid-access | Ungültiger Zugriffswert |
invalid-allowed-audiences | Ungültige erlaubte Audiences |
invalid-allowlist | Ungültige Allowlist |
invalid-api-key | Ungültiger API-Schlüssel |
invalid-artifact-name | Ungültiger Artefaktname |
invalid-artifact-version | Ungültige Artefaktversion |
invalid-attestation-format | Ungültiges Attestierungsformat |
invalid-audiences | Ungültige Audiences |
invalid-azure-deployment | Ungültiges Azure-Deployment |
invalid-base-url | Ungültige Basis-URL |
invalid-billing-emails | Ungültige Rechnungs-E-Mail-Adressen |
invalid-block-action | Ungültige Blockieraktion |
invalid-block-severity | Ungültiger Schweregrad für das Blockieren |
invalid-body | Ungültiger Body |
invalid-ca-keys | Ungültige CA-Schlüssel |
invalid-cidr | Ungültiger CIDR-Bereich |
invalid-client-id | Ungültige Client-ID |
invalid-commit-sha | Ungültiger Commit-SHA |
invalid-content | Ungültiger Inhalt |
invalid-css | Ungültiges CSS |
invalid-cursor | Ungültiger Cursor |
invalid-days | Ungültige Anzahl Tage |
invalid-digest | Ungültiger Digest |
invalid-domain | Ungültige Domain |
invalid-email | Ungültige E-Mail-Adresse |
invalid-enabled | Ungültiger Wert für enabled |
invalid-environment | Ungültige Umgebung |
invalid-expected-current-seat-cap | Ungültiges erwartetes aktuelles Nutzerlimit |
invalid-expires-at | Ungültiger Ablaufzeitpunkt |
invalid-feature | Ungültige Funktion |
invalid-field | Ungültiges Feld |
invalid-format | Ungültiges Format |
invalid-gates | Ungültige Gates |
invalid-git-ref | Ungültige Git-Referenz |
invalid-group-team-map | Ungültige Gruppen-Team-Zuordnung |
invalid-input | Ungültige Eingabe |
invalid-json | Ungültiges JSON |
invalid-label | Ungültiges Label |
invalid-max-tokens | Ungültige Höchstzahl an Tokens |
invalid-messages | Ungültige Nachrichten |
invalid-mode | Ungültiger Modus |
invalid-model | Ungültiges Modell |
invalid-multipart | Ungültiger Multipart-Body |
invalid-name | Ungültiger Name |
invalid-pattern | Ungültiges Muster |
invalid-pr-number | Ungültige Pull-Request-Nummer |
invalid-provider | Ungültiger Anbieter |
invalid-purpose | Ungültiger Zweck |
invalid-repo | Ungültiges Repository |
invalid-repo-filter | Ungültiger Repository-Filter |
invalid-repo-full-name | Ungültiger vollständiger Repository-Name |
invalid-request | Ungültige Anfrage |
invalid-require-cert | Ungültiger Wert für require_cert |
invalid-role | Ungültige Rolle |
invalid-rules-url | Ungültige Regel-URL |
invalid-run-id | Ungültige Run-ID |
invalid-scope | Ungültiger Scope |
invalid-scopes | Ungültige Scopes |
invalid-seat-cap | Ungültiges Nutzerlimit |
invalid-seats | Ungültige Nutzerzahl |
invalid-secret | Ungültiges Secret |
invalid-since | Ungültiger since-Wert |
invalid-sla | Ungültiges SLA |
invalid-slug | Ungültiger Slug |
invalid-source-repo | Ungültiges Quell-Repository |
invalid-status | Ungültiger Status |
invalid-sub-template | Ungültige sub-Vorlage |
invalid-target-url | Ungültige Ziel-URL |
invalid-team | Ungültiges Team |
invalid-technical-admin-email | Ungültige E-Mail-Adresse des technischen Admins |
invalid-temperature | Ungültige Temperatur |
invalid-tenant-slug | Ungültiger Mandanten-Slug |
invalid-term | Ungültige Laufzeit |
invalid-ttl | Ungültige TTL |
invalid-type | Ungültiger Typ |
invalid-url | Ungültige URL |
invalid-username | Ungültiger Benutzername |
invalid-value | Ungültiger Wert |
invalid-vendor | Ungültiger Hersteller |
missing-assertion | Assertion fehlt |
missing-params | Parameter fehlen |
missing-sbom | SBOM fehlt |
no-fields | Keine Felder |
no-scopes | Keine Scopes |
pause-failed | Pausieren fehlgeschlagen |
reason-required | Begründung erforderlich |
reason-too-long | Begründung zu lang |
removed-setting | Entfernte Einstellung |
reserved-prefix | Reserviertes Präfix |
saml-not-offered | SAML wird nicht angeboten |
seat-change-failed | Änderung der Nutzerzahl fehlgeschlagen |
too-many-events | Zu viele Ereignisse |
too-many-ids | Zu viele IDs |
too-many-messages | Zu viele Nachrichten |
too-many-teams | Zu viele Teams |
unknown-scope | Unbekannter Scope |
unsupported-grant-type | Nicht unterstützter Grant-Typ |
unsupported-spec-version | Nicht unterstützte Spezifikationsversion |
value-too-large | Wert zu groß |
401 Unauthorized
Die Authentifizierung fehlt, oder die Zugangsdaten wurden abgelehnt.
| Fehlertyp | |
|---|---|
authentication-required | Authentifizierung erforderlich |
invalid-client | Ungültiger Client |
invalid-token | Ungültiges Token |
403 Forbidden
Die Zugangsdaten sind gültig, dürfen das aber nicht.
| Fehlertyp | |
|---|---|
auditor-read-only | Auditor mit Lesezugriff |
console-only | Nur in der Konsole |
cross-tenant | Mandantenübergreifend |
insufficient-scope | Unzureichender Scope |
not-in-allowlist | Nicht in der Allowlist |
oauth-session-pat-mint-forbidden | PAT-Erzeugung aus einer OAuth-Sitzung verboten |
protected-account | Geschütztes Konto |
repo-owner-mismatch | Repository-Inhaber stimmt nicht überein |
scope-escalation | Scope-Eskalation |
step-up-required | Step-up erforderlich |
tenant-scope-required | Mandanten-Scope erforderlich |
user-identity-required | Benutzeridentität erforderlich |
wildcard-mint-refused | Wildcard-Token-Erzeugung abgelehnt |
404 Not Found
Die Ressource existiert nicht – oder dein Token kann sie nicht sehen.
| Fehlertyp | |
|---|---|
attempt-not-found | Versuch nicht gefunden |
no-active-approval | Keine aktive Genehmigung |
no-findings | Keine Befunde |
not-found | Nicht gefunden |
rule-fix-not-found | Regelbasierte Korrektur: Den Befund gibt es nicht |
tenant-not-found | Mandant nicht gefunden |
409 Conflict
Die Anfrage steht im Konflikt mit dem aktuellen Zustand der Ressource.
| Fehlertyp | |
|---|---|
already-accepted | Bereits angenommen |
already-cancelled | Bereits abgebrochen |
already-disabled | Bereits deaktiviert |
already-paused | Bereits pausiert |
already-resolved | Bereits gelöst |
checkout-in-flight | Checkout läuft bereits |
domain-verification-required | Domainverifizierung erforderlich |
dry-run-expired | Testlauf abgelaufen |
duplicate-grant | Doppelte Berechtigung |
duplicate-key | Doppelter Schlüssel |
duplicate-name | Doppelter Name |
duplicate-pattern | Doppeltes Muster |
duplicate-pending | Bereits eine ausstehende Anfrage |
internal-tenant | Interner Mandant |
last-owner | Letzter Owner |
name-conflict | Namenskonflikt |
no-ca-keys | Keine CA-Schlüssel |
no-rewrites | Keine Umschreibungen |
no-seats-available | Keine Nutzer mehr verfügbar |
not-cancelled | Nicht abgebrochen |
not-cancelling | Wird nicht abgebrochen |
not-enabled | Nicht aktiviert |
not-enrolled | Nicht angemeldet |
not-pending | Nicht ausstehend |
not-removed | Nicht entfernt |
operator-managed | Vom Operator verwaltet |
overage-frozen | Überschreitung eingefroren |
overage-paid-plan-only | Überschreitung nur in bezahlten Tarifen |
refund-unavailable | Erstattung nicht verfügbar |
rescan-skipped | Erneuter Scan übersprungen |
rule-fix-already-proposed | Regelbasierte Korrektur: Eine Korrektur läuft bereits oder ist offen |
rule-fix-disabled | Regelbasierte Korrektur: AutoFix ist für die Organisation ausgeschaltet |
rule-fix-not-open | Regelbasierte Korrektur: Der Befund wurde verworfen |
seat-cap-reached | Nutzerlimit erreicht |
self-approve | Eigene Genehmigung |
send-in-progress | Versand läuft bereits |
stale-seat-cap | Veraltetes Nutzerlimit |
tenant-not-accepting | Mandant nimmt nichts an |
410 Gone
Die Ressource hat existiert und ist endgültig weg.
| Fehlertyp | |
|---|---|
challenge-expired | Challenge abgelaufen |
logs-purged | Logs gelöscht |
413 Payload Too Large
Der Body ist größer, als dieser Endpunkt annimmt.
| Fehlertyp | |
|---|---|
payload-too-large | Payload zu groß |
too-many-rows | Zu viele Zeilen |
415 Unsupported Media Type
Der Content-Type der Anfrage wird nicht unterstützt.
| Fehlertyp | |
|---|---|
unsupported-media-type | Nicht unterstützter Medientyp |
422 Unprocessable Content
Die Anfrage war korrekt aufgebaut, aber die Ressource lässt sich so nicht verarbeiten.
| Fehlertyp | |
|---|---|
rule-fix-check-not-supported | Regelbasierte Korrektur: Für die IaC-Prüfung gibt es keine regelbasierte Korrektur |
rule-fix-language-not-supported | Regelbasierte Korrektur: Die Sprache der Datei wird nicht unterstützt |
rule-fix-path-refused | Regelbasierte Korrektur: AutoFix ändert diese Datei nie |
rule-fix-pr-finding | Regelbasierte Korrektur: Der Befund stammt aus einem Pull Request |
429 Too Many Requests
Du hast ein Rate-Limit überschritten.
| Fehlertyp | |
|---|---|
rate-limited | Rate-Limit erreicht |
rate-limited-global | Globales Rate-Limit erreicht |
rule-fix-org-daily-limit | Regelbasierte Korrektur: Die Organisation hat ihr tägliches AutoFix-Limit erreicht |
rule-fix-rate-limited | Regelbasierte Korrektur: Eine Korrektur wurde kürzlich versucht |
rule-fix-repo-limit | Regelbasierte Korrektur: Das Repository hat zu viele offene AutoFix-Pull-Requests |
500 Internal Server Error
Auf unserer Seite ist etwas fehlgeschlagen.
| Fehlertyp | |
|---|---|
db-error | Datenbankfehler |
insert-failed | Einfügen fehlgeschlagen |
internal | Intern |
internal-error | Interner Fehler |
rate-limit-misconfigured | Rate-Limit falsch konfiguriert |
sign-failed | Signieren fehlgeschlagen |
501 Not Implemented
Noch nicht implementiert.
| Fehlertyp | |
|---|---|
not-implemented-yet | Noch nicht implementiert |
502 Bad Gateway
Eine Upstream-Abhängigkeit hat einen Fehler zurückgegeben.
| Fehlertyp | |
|---|---|
approve-failed | Genehmigung fehlgeschlagen |
ci-bot-mint-failed | Token für CI-Bot konnte nicht erzeugt werden |
ci-bot-revoke-failed | Widerruf des CI-Bots fehlgeschlagen |
forgejo-error | Forgejo-Fehler |
forgejo-failed | Forgejo-Aufruf fehlgeschlagen |
forgejo-upstream-error | Upstream-Fehler bei Forgejo |
install-failed | Installation fehlgeschlagen |
mollie-error | Mollie-Fehler |
mollie-unavailable | Mollie nicht verfügbar |
obs-put-failed | Upload nach OBS fehlgeschlagen |
pr-open-failed | Öffnen des Pull Requests fehlgeschlagen |
provisioning-failed | Bereitstellung fehlgeschlagen |
remove-failed | Entfernen fehlgeschlagen |
revoke-failed | Widerruf fehlgeschlagen |
test-failed | Test fehlgeschlagen |
upstream-auth-failed | Upstream-Authentifizierung fehlgeschlagen |
upstream-error | Upstream-Fehler |
upstream-unreachable | Upstream nicht erreichbar |
503 Service Unavailable
Eine Abhängigkeit ist vorübergehend nicht verfügbar.
| Fehlertyp | |
|---|---|
ai-disabled | KI deaktiviert |
attestations-disabled | Attestierungen deaktiviert |
billing-unavailable | Abrechnung nicht verfügbar |
ci-bots-unavailable | CI-Bots nicht verfügbar |
forgejo-not-configured | Forgejo nicht konfiguriert |
forgejo-proxy-disabled | Forgejo-Proxy deaktiviert |
forgejo-unavailable | Forgejo nicht verfügbar |
forgejo-unreachable | Forgejo nicht erreichbar |
invitations-unavailable | Einladungen nicht verfügbar |
not-configured | Nicht konfiguriert |
ownership-unverifiable | Eigentum nicht überprüfbar |
renovate-disabled | Renovate deaktiviert |
rule-fix-unavailable | Regelbasierte Korrektur: Regelbasierte Korrekturen sind nicht konfiguriert |
sbom-ingest-unavailable | SBOM-Import nicht verfügbar |
seat-change-unavailable | Änderung der Nutzerzahl nicht verfügbar |
seat-holds-unavailable | Nutzerreservierungen nicht verfügbar |
secrets-unavailable | Secrets nicht verfügbar |
siem-unavailable | SIEM nicht verfügbar |
token-exchange-disabled | Token-Austausch deaktiviert |
Ablehnungen von Sicherheits- und KI-Korrekturen
Seit dem 14.10.2026 beantwortet POST /orgs/{org}/dependency-updates/security-fixes/requests diese Fälle als security-fix-<reason> und POST /orgs/{org}/code-security/sast/findings/{id}/ai-fix als ai-fix-<reason>; jede der folgenden Seiten deckt beide Schreibweisen ab. Die veralteten Pfade antworten bis zum 15.10.2027 weiterhin mit autofix-<reason>. Zurückgegeben von POST /orgs/{org}/code-security/deps/findings/{id}/autofix, POST /orgs/{org}/code-security/deps/repos/{repo}/autofix, POST /orgs/{org}/code-security/images/findings/{id}/autofix und POST /orgs/{org}/code-security/sast/findings/{id}/autofix, wenn kein Pull Request angefordert wird. Siehe Sicherheitskorrekturen.
Ablehnungen beim Wechsel der Sicherheitsspur
Zurückgegeben von PUT /orgs/{org}/dependency-updates/security-fixes/lane, wenn die Spur für Sicherheitskorrekturen die Aufgabe nicht vom gehosteten Renovate übernehmen kann. Siehe Übernahme von Renovate.
| Fehlertyp | Status |
|---|---|
security-lane-lane-off | 409 |
security-lane-unsupported-ecosystems | 409 |