Unbekanntes Feld
type | https://docs.frem.sh/reference/api/errors/unknown-field |
| HTTP-Status | 400 Bad Request |
Was das bedeutet
Der Body der Anfrage enthielt ein Feld, das der Endpunkt nicht kennt, daher wurde sie abgewiesen statt das Feld zu ignorieren.
Endpunkte, die teilweise Aktualisierungen annehmen, behandeln ein fehlendes Feld als „nicht ändern“. Ein unbekannter Feldname ist von einem fehlenden nicht zu unterscheiden, und ihn stillschweigend zu ignorieren, würde 200 für eine Änderung zurückgeben, die nie stattgefunden hat. Diese Endpunkte lehnen deshalb stattdessen die ganze Anfrage ab.
Beispiele für detail-Meldungen, die mit diesem Fehler zurückkommen:
- Unrecognised field(s): “securityAutomerge” (did you mean “security_automerge”?). Accepted fields are: enabled, automerge_patch, automerge_minor, major_approval, security_automerge, schedule, pr_hourly_limit, pr_concurrent_limit.
- Unrecognised field(s): “automerge_everything”. Accepted fields are: enabled, automerge_patch, automerge_minor, major_approval, security_automerge, schedule, pr_hourly_limit, pr_concurrent_limit.
Was du tun kannst
Lies detail: Es nennt jedes nicht erkannte Feld und listet die Felder auf, die der Endpunkt annimmt.
Prüfe zuerst die Schreibweise. Felder in Anfragen sind snake_case, passend zu den zugrunde liegenden Spaltennamen. Mehrere Endpunkte serialisieren ihre Antworten in camelCase, daher ist es die häufigste Ursache dieses Fehlers, einen Feldnamen aus einem Antwort-Body zu kopieren und zurückzusenden. Ist das gesendete Feld die camelCase-Schreibweise eines echten Felds, nennt detail die richtige Schreibweise.
// rejected - camelCase, as returned in a response body
{ "securityAutomerge": true }
// accepted
{ "security_automerge": true }Andernfalls vergleiche den Body mit dem Anfrageschema in der OpenAPI-Spezifikation.
Form der Antwort
Alle Fehler der fremforge-API sind RFC 9457 problem+json:
{
"type": "https://docs.frem.sh/reference/api/errors/unknown-field",
"title": "Bad Request",
"status": 400,
"detail": "..."
}Werte type aus, nicht title oder detail – diese sind für Menschen gedacht und können umformuliert werden.