Bankkonten suchen
Benötigte Berechtigung:read(Daten lesen)
Sucht die verbundenen Bankkonten der Firma mit einem Filter und liefert eine Seite der Treffer. accountOwner nennt nur die Mitgliedschaft des Kontoinhabers, keine Personendaten.
Benötigt einen Schlüssel mit der Berechtigung read.
AuthentifizierungBearer <bm_…>Empfohlen: Authorization: Bearer bm_…. Der Schlüssel wird nur einmal angezeigt; nie in URLs, Logs oder Frontend-Code ablegen.
Filter, Sortierung und Seite. Dokumentierte Filterattribute: x-bimetrics-filter.
application/json- body
Suche mit Filter, Sortierung und Seiten. Der Filterausdruck steht auf oberster Ebene; {} liefert alle Einträge.
attribute?stringFilterattribut 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?booleantrue 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.
falsekind?stringArt 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.
"""and""or""eq""not""in""range""oneof"limit?integerTreffer je Seite. Standard und Höchstwert 1000; größere Werte werden auf 1000 begrenzt.
0 <= value1000lower?unknownUntergrenze für range, einschließlich.
offset?integerAnzahl ü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.
0 <= value <= 10000000sort?|array<string>Attribute, nach denen sortiert wird; nur sortierbare Attribute (sortable in x-bimetrics-filter). Ein Attribut mit sortable: false ergibt 400.
upper?unknownObergrenze für range, einschließlich.
value?unknownVergleichswert: 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.
| Attribut | Typ | Sortierbar | Beschreibung |
|---|---|---|---|
id | uuid | ja | ID des Bankkontos. |
iban | string | ja | IBAN des Kontos. |
bankName | string | ja | Name der Bank. |
ownerName | string | ja | Name des Kontoinhabers laut Bank. |
currency | string | ja | Kontowährung (ISO 4217). |
disabled | boolean | ja | Konto ist deaktiviert. |
updatedAt | date-time | ja | Zeitpunkt der letzten Änderung. |
deletedAt | date-time | ja | Zeitpunkt, seit dem der Eintrag als gelöscht gilt; `null`, solange er nicht gelöscht ist. Gelöschte Einträge liefert die Suche nur mit `includeDeleted`. Für Abgleiche per Polling: `includeDeleted` und `range` mit `lower` = `deletedAt` des zuletzt gelesenen gelöschten Eintrags minus 5 Minuten Überlappung, sortiert nach `deletedAt`. |
Eine Seite der Treffer.
application/json- response
Eine Seite gefundener Bankkonten.
items?array<>|Die Treffer dieser Seite.
limit?|Verwendetes limit.
offset?integerVerwendetes offset.
total?integerAnzahl aller Treffer des Filters.
curl --fail-with-body "https://app.bimetrics.de/api/bankaccount/filter" \ -H "Authorization: Bearer $BIMETRICS_API_KEY" \ -H "Content-Type: application/json" \ -d '{"direction":["asc","asc"],"limit":100,"offset":0,"sort":["bankName","id"]}'{ "items": [ { "IBAN": "DE89370400440532013000", "accountOwner": { "companyId": "9c388e1f-04a6-4770-80bd-66cd98dd00d5", "createdAt": "2026-03-02T11:20:05Z", "id": "53cd10a9-c864-4dc3-a777-9860d59efe6c", "mcpAccess": "", "role": "owner", "status": "active", "updatedAt": "2026-03-02T11:20:05Z", "userId": "3ea56d84-7ca1-4a4f-88d4-428c62c8aee5" }, "accountOwnerId": "53cd10a9-c864-4dc3-a777-9860d59efe6c", "balance": 2465032, "balanceAvailable": true, "balanceCurrency": "EUR", "balanceDate": "2026-09-27T05:00:12Z", "bankName": "Commerzbank", "companyId": "9c388e1f-04a6-4770-80bd-66cd98dd00d5", "connected": true, "createdAt": "2026-03-02T11:48:30Z", "currency": "EUR", "deletedAt": null, "disabled": false, "displayName": "Geschäftskonto", "id": "8faaa132-ef45-4af2-8dbb-a139b051f10f", "ownerName": "Hansen & Kowalski Werbetechnik GmbH", "productName": "Geschäftskonto", "updatedAt": "2026-09-27T05:00:12Z" } ], "limit": 100, "offset": 0, "total": 1}Bankzugänge lesen GET
Liefert je Bankkonto den Stand des Bankzugangs, über den seine Umsätze kommen, wie die App unter Einstellungen › Bank. Läuft er ab (`validUntil`) oder steht er auf `reconnect_required` oder `expired`, kommen keine neuen Umsätze, bis jemand ihn in der App erneuert. Bankkonten ohne Bankzugang fehlen. Benötigt einen Schlüssel mit der Berechtigung `read`.
Bankkonto lesen GET
Liefert ein verbundenes Bankkonto mit Saldo. Benötigt einen Schlüssel mit der Berechtigung `read`.