Skip to content

Honorarnoten abrufen ​

Gibt eine paginierte Liste aller Honorarnoten des Unternehmens zurück.

Breaking Change: createdAt ist jetzt ein Zeitstempel

createdAt liefert jetzt einen vollständigen ISO-8601-Zeitstempel mit Offset (2026-06-01T09:30:00+02:00) statt eines reinen Datums (2026-06-01). Wer den Wert als Datum weiterverarbeitet, muss den Zeitanteil abschneiden.

Request ​

GET /api/oauth/v2/resource/fee-notes

HeaderWert
AuthorizationBearer {access_token}

Query-Parameter ​

ParameterTypPflichtBeschreibung
offsetintegerNeinStartposition (Standard: 0, Min: 0)
limitintegerNeinAnzahl Ergebnisse (Standard: 50, Min: 1, Max: 200)
createdSincestring (ISO 8601)NeinNur Honorarnoten, die ab diesem Zeitpunkt angelegt wurden (createdAt >=)
createdUntilstring (ISO 8601)NeinNur Honorarnoten, die bis zu diesem Zeitpunkt angelegt wurden (createdAt <=)
statusstringNeinKommaseparierte Liste (Standard: all). Erlaubte Werte: active, deleted. Ungültiger Wert → 400 validation_error. Details siehe Konventionen.

Hinweis: Formate, Zeitzonen-Verhalten, Sortierung im Filter-Modus, Cursor-Strategie und die meta.total-Falle gelten für alle Zeitstempel-Filter gleich – siehe Inkrementeller Abgleich. Bei Honorarnoten zählt dort überall der Erstellungszeitpunkt statt des Änderungszeitpunkts.

Das Restrisiko der Paginierung tritt hier auf, wenn eine Honorarnote während des Durchlaufs gelöscht wird. Details dazu im Hinweis zu Löschungen unten.

Hinweis zu Änderungen und Löschungen: Honorarnoten führen weder einen Änderungs- noch einen Löschzeitpunkt. Deshalb gibt es hier nur createdSince und createdUntil. Über den Erstellungszeitpunkt sind ein Storno, eine nachträgliche Rechnungszuordnung und die Löschung der zugehörigen Rechnung nicht erkennbar.

Eine Honorarnote wird zusammen mit ihrer Rechnung gelöscht. Sie bleibt über status=deleted sichtbar (Feld data[].deleted = true), ohne dass der createdSince-Abgleich davon erfährt.

Wer Löschungen braucht, kommt an einem periodischen Vollabgleich mit status=deleted nicht vorbei. Der inkrementelle Abgleich über createdSince ersetzt das hier also nicht.

Response ​

Erfolg (200 OK) ​

json
{
  "data": [
    {
      "id": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
      "sequence": 12,
      "formattedSequence": "HN-2026-0012",
      "stornoReason": null,
      "deleted": false,
      "createdAt": "2026-06-01T09:30:00+02:00",
      "customer": {
        "id": "f0e1d2c3-b4a5-6789-fedc-ba9876543210",
        "firstName": "Anna",
        "lastName": "Muster"
      },
      "invoice": {
        "id": "b2c3d4e5-f6a7-8901-bcde-f12345678901"
      }
    }
  ],
  "meta": {
    "total": 30,
    "offset": 0,
    "limit": 50
  }
}

Response-Felder ​

FeldTypBeschreibung
dataArrayListe der Honorarnoten
data[].idstring (UUID)Eindeutige ID der Honorarnote
data[].sequenceinteger | nullLaufende Nummer der Honorarnote
data[].formattedSequencestring | nullFormatierte Nummer der Honorarnote
data[].stornoReasonstring | nullStornobegründung
data[].deletedbooleantrue wenn die Honorarnote gelöscht ist (zusammen mit ihrer Rechnung)
data[].createdAtstring (ISO 8601) | nullErstellungszeitpunkt
data[].customerobject | nullZugeordnete:r Kunde/Kundin
data[].customer.idstring (UUID)Kunden-ID
data[].customer.firstNamestringVorname
data[].customer.lastNamestringNachname
data[].invoiceobject | nullVerknüpfte Rechnung (nur UUID-Referenz)
data[].invoice.idstring (UUID)UUID der verknüpften Rechnung
meta.totalintegerGesamtanzahl der Honorarnoten
meta.offsetintegerAktuelle Startposition
meta.limitintegerAnzahl der zurückgegebenen Einträge

Hinweis zu Mandanten: Arbeitet dein Unternehmen mit dem Add-on Mandanten, liefert die Liste nur Honorarnoten aus Mandanten, auf die der Besitzer-Benutzer deines API-Zugangs Zugriff hat und in denen er das Recht Rechnungen: Anzeigen hat. meta.total zählt nur diese Datensätze. Details: Konventionen.

Beispiele
bash
curl -X GET "https://my.offisy.at/api/oauth/v2/resource/fee-notes?offset=0&limit=50&createdSince=beispiel&createdUntil=beispiel&status=all" \
  -H "Authorization: Bearer {access_token}"
Parameter
Zuerst Token anfordern

Mögliche Fehler ​

StatusCodeBeschreibung
400validation_errorEin Zeitstempel-Filter enthält einen ungültigen Wert
400validation_errorstatus enthält einen ungültigen Wert
401invalid_clientUngültiger oder fehlender Access Token
403insufficient_scopeScope invoices nicht vorhanden

Offisy GmbH