# Transaktionen filtern

### Matching Endpunkt für Transaktionserkennung

Neben der regulären Freitext-Suche Endpunkte (.../search) verfügt die Kontoflux.io API über einen Endpunkt der speziell für Transaktionserkennung trainiert ist. (...*/match)*&#x20;

{% hint style="info" %}
Die **/match** Endpunkte suchen nur im Verwendungszweck, während **/search** auch in weiteren Feldern, wie Absendername etc. sucht.&#x20;
{% endhint %}

Die Matching Endpunkte geben dir für Ergebnis ein Score zwischen 0.0 und 1.0. Wobei ein Score von 1.0 einen direkten Treffer entspricht und alles darunter eine Wahrscheinlichkeit angibt, wie sehr der Verwendungszweck zur Suche passt. Die verwendeten Suchalgorithmen sind hier speziell für Fälle wie Rechnungserkennung, Mietererkennung, Zahlungsreferenzen oder jegliche Information, du die möglichst exakt über den query Parameter übergibst übereinstimmen sollten.

<table><thead><tr><th>Funktion</th><th data-type="checkbox">/search</th><th data-type="checkbox">/match</th></tr></thead><tbody><tr><td>Freitext Suche </td><td>true</td><td>true</td></tr><tr><td>Findet bei direkter Übereinstimmung</td><td>true</td><td>true</td></tr><tr><td>Groß und Kleinschreibung macht kein Unterschied</td><td>true</td><td>true</td></tr><tr><td>Resistent gegenüber Tippfehler</td><td>false</td><td>true</td></tr><tr><td>Synonym-Erkennung</td><td>false</td><td>true</td></tr><tr><td>Wort-Ähnlichkeit</td><td>false</td><td>true</td></tr><tr><td>Vektor-Ähnlichkeit</td><td>false</td><td>true</td></tr><tr><td>Übergibt Score <br><em>= Wie wahrscheinlich die Transaktion zur Suche passt</em></td><td>false</td><td>true</td></tr></tbody></table>

### Transaktionen mit der KI-Kategorisierung filtern

Jeder der Transaktions-Endpunkte ist in der Lage über die Parameter <mark style="background-color:purple;">`category`</mark> und <mark style="background-color:orange;">`parentCategory`</mark> deine Transaktionen zu filtern. Hierdurch ergeben sich besonders praktische Kombinationen.\
\
Es muss die **Category ID** übergeben werden **ODER der exakte Name** der Kategorie.

`GET https://api.kontoflux.io/<workspaceId>/transactions?parentCategory=Einnahmen`\
Alle Einnahmen, auch die wo category etwas detailierteres Beschreibt, also zB. auch Mieteinahmen. Also wo category=Mieteinnahmen & parentCategory=Einnahmen sind.

`GET https://api.kontoflux.io/<workspaceId>/transactions?category=325`\
Kategorie 325 = Mieteinahmen. Gibt nur Transaktionen zurück die eindeutig Mieteinahmen sind.\
\
`GET https://api.kontoflux.io/<workspaceId>/transactions/match?query=Mustermann&category=325`\
Gibt alle Transaktionen die eindeutig Mieteinahmen sind und im Verwendungszweck in irgendeiner Weise (Auch Tippfehler-Resistent) was mit "Mustermann" zu tun hat. zB. zum Matchen ob Herr Mustermann seine Miete bezahlt hat.

{% hint style="info" %}
Das **Kategorie**-Feld gibt eine sehr detailierte Eingliederung der Transaktion vor.\
Das **Eltern-Kategorie**-Feld, oder auch **Hauptkategorie** ist eine breitere, gröberer gefächerte Einordnung der Transaktion.\
\
Ist keine passende "Unterkategorie" einer Transaktion gefunden, bleibt parentCategory leer und die gröbere Kategorie rutscht in die category spalte der Transaktion.&#x20;
{% endhint %}

#### Zusammenspiel der <mark style="background-color:purple;">category</mark> und <mark style="background-color:orange;">parentCategory</mark> Parameter in der API

| Nur "category" übergeben                                                                                                                                                                                      | Nur "parentCategory" übergeben                                                                                                                                                                                                                                                                                                                                                                                                    | "category" + "parentCategory" übergeben                                                                                                                                                                                                                                                    |
| ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| <mark style="color:purple;">Kategorie</mark> kommt exakt als *"<mark style="color:purple;">category</mark>"* der Transaktion vor. *"<mark style="color:orange;">parentCategory</mark>"* hat keine Auswirkung. | <mark style="color:purple;">Kategorie</mark> kommt entweder als *"<mark style="color:purple;">category</mark>"* oder *"<mark style="color:orange;">parentCategory</mark>"* für die Transaktion vor.                                                                                                                                                                                                                               | <mark style="color:purple;">Kategorie</mark> muss exakt mit *"<mark style="color:purple;">category</mark>"* UND *"<mark style="color:orange;">parentCategory</mark>"* muss ebenfalls mit der übergebenen <mark style="color:orange;">Hauptkategorie</mark> der Transaktion übereinstimmen. |
| Ziel: Nach detailierteren Kategorien suchen. (zB. ist *<mark style="color:purple;">Hotel & Übernachtung</mark>* eine Unterkategorie von *<mark style="color:orange;">Reisen</mark>*)                          | Ziel: Überfassende a.k.a. <mark style="color:orange;">parentCategories</mark> nutzen um eine breitere Auswahl an Transaktionen zu erhalten.                                                                                                                                                                                                                                                                                       | Ziel: Innerhalb der <mark style="color:orange;">Elternkategorie / Hauptkategorie</mark> nach der <mark style="color:purple;">detailierteren Kategorie</mark> suchen.                                                                                                                       |
|                                                                                                                                                                                                               | Ist keine <mark style="color:purple;">detailiertere Kategorie</mark> für eine Transaktion gefunden, wird die breiter gefächerte <mark style="color:orange;">Elternkategorie</mark> in das <mark style="color:purple;">category</mark> Feld geschrieben und <mark style="color:orange;">parentCategory</mark> bleibt leer. Daher wird bei übergebener <mark style="color:orange;">parentCategory</mark> in beiden Feldern gesucht. |                                                                                                                                                                                                                                                                                            |


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.kontoflux.io/api/transaktionen-filtern.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
