Zum Inhalt springen

Cases

Teil der API-Referenz. Authentifizierung, Scopes, Anfragegrenzen und Fehler stehen im Überblick.

BitHive Reporting Desk API · 0.11.0

Cases

GET/v1/cases

CRA-Fälle auflisten

Gibt die Fälle des Kontos nach Artikel 14 der Cyberresilienz-Verordnung zurück, also zu einer aktiv ausgenutzten Schwachstelle oder einem schweren Vorfall, die neuesten zuerst, jeweils mit Stand, Produkt, Schwachstellenkennungen und der Stufe, deren gespeicherte Frist als Nächstes ansteht. Ein auf ein Produkt beschränktes Token listet nur die Fälle dieses Produkts. Fristen werden als Datum und Uhrzeit angegeben; ob eine Frist abgelaufen ist, sagt die Antwort nicht. Eine Seite enthält bis zu limit Fälle; mit next_cursor, gesendet als cursor mit denselben Filtern, wird die nächste Seite gelesen; auf der letzten Seite ist next_cursor null. Erfordert die Berechtigung cases:read.

Scope: cases:read

Parameter

ParameterWoTypBeschreibung
product_idquerystring (uuid)Nur die Fälle dieses Produkts. Mit einem auf ein anderes Produkt beschränkten Token ist die Liste leer.
closedquerybooleantrue listet nur die abgeschlossenen oder verworfenen Fälle, false nur die übrigen. Ohne diesen Parameter werden beide aufgelistet.
limitqueryintegerHöchstzahl der Fälle auf einer Seite.
cursorquerystringDer `next_cursor` der vorigen Seite.

Antworten

200 Eine Seite der Fälle, die das Token sieht. CaseList

{
  "cases": [
    {
      "id": "7b1c2e8a-4f0d-4c55-9a3e-2d6f1b0c9e41",
      "type": "exploited_vulnerability",
      "state": "early_warning_submitted",
      "product_id": "2d244e39-9353-4652-b8bb-fde203139229",
      "cve": "CVE-2026-12345",
      "euvd_id": null,
      "advisory_id": "GHSA-abcd-efgh-ijkl",
      "detected_at": "2026-10-12T06:25:31Z",
      "became_aware_at": "2026-10-12T06:25:31Z",
      "next_deadline": {
        "stage": "notification",
        "due_at": "2026-10-15T06:25:31Z"
      }
    }
  ],
  "next_cursor": "MTc2MDI1MDMzMTAwMDAwMC43YjFjMmU4YS00ZjBkLTRjNTUtOWEzZS0yZDZmMWIwYzllNDE"
}

400 Ein Abfrageparameter gehört nicht zu dieser Liste, oder der Cursor stammt nicht von dieser API. Problem

{
  "type": "about:blank",
  "title": "Bad Request",
  "status": 400,
  "detail": "limit is a whole number from 1 to 100."
}

Beispiel

curl --fail-with-body -sS \
  -H "Authorization: Bearer $BITHIVE_TOKEN" \
  "https://app.bithive-it.com/v1/cases"

GET/v1/cases/{caseId}

Einen CRA-Fall mit seinen Fristen und dem Stand seiner Meldungen lesen

Gibt den Fall mit den Zeitpunkten zurück, die seine Seite zeigt (erkannt, Kenntnis erlangt, erster Alarm zugestellt, erstmals bestätigt, Korrektur- oder Abhilfemaßnahme verfügbar, Vorfall eingetreten), jede gespeicherte Frist mit dem Zeitpunkt, ab dem sie zählt, der Regel, die sie berechnet hat, und der Angabe, ob ihre Meldung rechtzeitig eingereicht wurde, sowie je Stufe, ob ihre Meldung als Entwurf vorliegt oder als eingereicht erfasst ist, und wann. Was eine Person zu dem Fall oder einer Meldung geschrieben hat, steht nicht in der Antwort. Ein Fall eines anderen Kontos, eines Produkts, auf das das Token nicht beschränkt ist, und ein Datensatz anderer Art werden als nicht gefunden gemeldet. Erfordert die Berechtigung cases:read.

Scope: cases:read

Parameter

ParameterWoTypBeschreibung
caseId erforderlichpathstring (uuid)Kennung des CRA-Falls.

Antworten

200 Der Fall. Case

{
  "id": "7b1c2e8a-4f0d-4c55-9a3e-2d6f1b0c9e41",
  "type": "exploited_vulnerability",
  "state": "early_warning_submitted",
  "product_id": "2d244e39-9353-4652-b8bb-fde203139229",
  "cve": "CVE-2026-12345",
  "euvd_id": null,
  "advisory_id": "GHSA-abcd-efgh-ijkl",
  "detected_at": "2026-10-12T06:25:31Z",
  "became_aware_at": "2026-10-12T06:25:31Z",
  "next_deadline": {
    "stage": "notification",
    "due_at": "2026-10-15T06:25:31Z"
  },
  "first_notified_at": "2026-10-12T06:26:02Z",
  "first_acknowledged_at": "2026-10-12T07:03:40Z",
  "fix_available_at": null,
  "occurred_at": null,
  "deadlines": [
    {
      "stage": "early_warning",
      "due_at": "2026-10-13T06:25:31Z",
      "basis": "became_aware_at",
      "basis_at": "2026-10-12T06:25:31Z",
      "met_at": "2026-10-12T15:10:00Z",
      "on_time": true,
      "rule": "cra.aev.early_warning",
      "rule_version": 1
    },
    {
      "stage": "notification",
      "due_at": "2026-10-15T06:25:31Z",
      "basis": "became_aware_at",
      "basis_at": "2026-10-12T06:25:31Z",
      "met_at": null,
      "on_time": null,
      "rule": "cra.aev.notification",
      "rule_version": 1
    }
  ],
  "reports": [
    {
      "stage": "early_warning",
      "state": "submitted",
      "submitted_at": "2026-10-12T15:10:00Z",
      "recorded_at": "2026-10-12T15:12:44Z"
    },
    {
      "stage": "notification",
      "state": "draft",
      "submitted_at": null,
      "recorded_at": null
    },
    {
      "stage": "final_report",
      "state": "none",
      "submitted_at": null,
      "recorded_at": null
    }
  ]
}

Beispiel

curl --fail-with-body -sS \
  -H "Authorization: Bearer $BITHIVE_TOKEN" \
  "https://app.bithive-it.com/v1/cases/$CASEID"

Der Vertrag selbst. Diese Seite entsteht aus dem OpenAPI-Dokument des Dienstes. Es ist als Datei veröffentlicht, damit ein Client-Generator denselben Vertrag lesen kann, den diese Seite beschreibt. openapi.yaml herunterladen

Doku

14 Tage kostenlos testen