bimetricsEntwickler
Belegpostfach

Mails suchen

Als Markdown ansehen

Benötigte Berechtigung:inbox:read(Postfach lesen)

Echte Wirkung

Dieser Aufruf ist nicht als rein lesend gekennzeichnet und kann echte Daten in der Firma anlegen oder ändern. Es gibt keine Testumgebung.
post/api/email/inbox/item/

Kein Testversand aus der Dokumentation: Dieser Aufruf ist nicht als rein lesend gekennzeichnet. Nutze das Codebeispiel.

Sucht Mails des Postfachs und liefert eine Seite der Treffer, ohne bodyText und bodyHtml: Den Text liefert GET /api/email/inbox/item/{id}. Unter „Offen“ stehen Mails mit archived = null, unter „Erledigt“ alle anderen.

Benötigt einen Schlüssel mit der Berechtigung inbox:read.

Authentifizierung

headerAuthentifizierungBearer <bm_…>

Empfohlen: Authorization: Bearer bm_…. Der Schlüssel wird nur einmal angezeigt; nie in URLs, Logs oder Frontend-Code ablegen.

Request-Body

Filter, Sortierung und Seite. Dokumentierte Filterattribute: x-bimetrics-filter.

application/json
  1. body

Suche mit Filter, Sortierung und Seiten. Der Filterausdruck steht auf oberster Ebene; {} liefert alle Einträge.

attribute?string

Filterattribut für eq, in, range und oneof, siehe x-bimetrics-filter der Operation. Groß-/Kleinschreibung und Punkte werden ignoriert.

children?array<>

Teilfilter für and, or und not.

direction?|array<>

Richtung je Eintrag in sort; Standard asc.

includeDeleted?boolean

true liefert auch gelöschte Einträge, erkennbar an deletedAt, aber nur bei Belegen, Kontakten, Bankkonten, Umsätzen und Buchungen; die übrigen Suchrouten ignorieren das Feld. Ohne das Feld oder mit false nur Einträge, die nicht gelöscht sind. Für Abgleiche von Löschungen mit range auf deletedAt, siehe Delta-Sync.

Standardfalse
kind?string

Art des Filters: and/or verknüpfen children, not verneint children, eq vergleicht attribute mit value (null prüft auf leer), in sucht value als Text im Attribut (enthält, ohne Groß-/Kleinschreibung), range prüft lower ≤ Attribut ≤ upper (eine Grenze genügt), oneof prüft, ob das Attribut einem Wert der Liste value entspricht. Leer: alle Einträge.

Wert in"""and""or""eq""not""in""range""oneof"
limit?integer

Treffer je Seite. Standard und Höchstwert 1000; größere Werte werden auf 1000 begrenzt.

Bereich0 <= value
Standard1000
lower?unknown

Untergrenze für range, einschließlich.

offset?integer

Anzahl übersprungener Treffer. Haben mehrere Treffer dieselben Werte in sort, ist ihre Reihenfolge nicht festgelegt, und sie können zwischen zwei Seiten doppelt kommen oder fehlen; id als letztes Attribut in sort oder ein Abgleich mit Überlappung (Delta-Sync) hilft dagegen.

Bereich0 <= value <= 1000000
Standard0
sort?|array<string>

Attribute, nach denen sortiert wird; nur sortierbare Attribute (sortable in x-bimetrics-filter). Ein Attribut mit sortable: false ergibt 400.

upper?unknown

Obergrenze für range, einschließlich.

value?unknown

Vergleichswert: für eq ein Wert oder null, für in ein Text, für oneof eine Liste.

Filterattribute

Dokumentiert sind diese Attribute für attribute; für sort nur die als sortierbar markierten. Aufbau des Filters: Filtern und Paginieren.

AttributTypSortierbarBeschreibung
iduuidjaID der Mail.
datedate-timejaDatum der Mail.
archiveddate-timejaSeit wann die Mail unter „Erledigt“ steht; `null` unter „Offen“.
senderstringjaAbsender.
subjectstringjaBetreff.
attachments.preselectedbooleanneinVorgeschlagener Anhang.
attachments.savedAsDocumentIduuidneinBeleg, der aus einem Anhang wurde; `null`, solange er nicht übernommen ist.

Antworten

Eine Seite der Treffer.

application/json
  1. response

Eine Seite gefundener Mails, ohne ihren Text.

items?array<>|

Die Treffer dieser Seite.

limit?|

Verwendetes limit.

offset?integer

Verwendetes offset.

total?integer

Anzahl aller Treffer des Filters.

Beispielanfrage
curl --fail-with-body "https://app.bimetrics.de/api/email/inbox/item/" \  -H "Authorization: Bearer $BIMETRICS_API_KEY" \  -H "Content-Type: application/json" \  -d '{"direction":["desc","asc"],"limit":100,"offset":0,"sort":["date","id"]}'
Beispielantwort
{  "items": [    {      "archived": null,      "attachments": [        {          "blob": {            "length": 48213,            "mime": "application/pdf",            "originalFilename": "RE-2026-0042.pdf"          },          "filename": "RE-2026-0042.pdf",          "id": "b84e27d1-5a90-4c63-8e1f-2c7a9d03f514",          "index": 0,          "preselected": true,          "savedAsDocumentId": null,          "valid": true        }      ],      "date": "2026-11-02T09:15:00Z",      "deliveredTo": "ab3xk9qr@inbox.example",      "id": "6c1f0a52-3d8e-4b7a-9f21-7e4b2d90c6a3",      "recipient": "ab3xk9qr@inbox.example",      "recipientName": "",      "sender": "Beispiel Lieferant GmbH <rechnung@lieferant.example>",      "senderName": "Beispiel Lieferant GmbH",      "subject": "Ihre Rechnung RE-2026-0042"    }  ],  "limit": 100,  "offset": 0,  "total": 1}