> ## Documentation Index
> Fetch the complete documentation index at: https://docs.didit.me/llms.txt
> Use this file to discover all available pages before exploring further.

# Verwandte Transaktionen auflisten API

> Didit listet andere Transaktionen Ihrer Anwendung mit gleichem vendor_data wie eine überwachte Transaktion auf, neueste zuerst und paginiert.



API-Prompt zum Auflisten verwandter Transaktionen
        Prompt in die Zwischenablage kopieren



      
      

\<pre>

\`List the transactions related to one Didit monitored transaction through the Management API.

Endpoint:
GET https://verification.didit.me/v3/transactions/{transaction_id}/related/

Authentication:
Use the x-api-key header with my Didit API key. A scoped key needs transactions: read. Keys limited to specific workflows or to approved sessions cannot call this endpoint.

Goal:
\- See the other transactions that involve the same people or companies as this one (same applicant, or this transaction's counterparty appearing elsewhere) so I can review a transaction in context.

Path parameter:
\- transaction_id: the Didit transaction uuid, not my own txn_id.

Behavior:
\- A transaction is related when one of its parties, in any role, has the same vendor_data as one of this transaction's parties. Matching uses vendor_data only, within my application.
\- The transaction itself is never returned. Parties without vendor_data are ignored, so if none of this transaction's parties has a vendor_data the result is always empty.
\- Ordered by txn_date, newest first, then created_at.
\- Paginated with limit (default 50) and offset. count is exact up to 100 and capped at 100 above that, so keep following next until it is null.

Example call:
curl -X GET "https://verification.didit.me/v3/transactions/{transaction_id}/related/?limit=50" \
-H "x-api-key: YOUR_API_KEY"

What to read from the response:
\- results[].uuid: use it with GET /v3/transactions/{transaction_id}/ for the full detail.
\- results[].txn_id, status, score, severity, amount, currency, txn_date: the summary of each related transaction.
\- results[].subject_vendor_data and counterparty_vendor_data: which party links it to this transaction.
\- next: URL of the next page, null on the last page.

Failure modes:
\- 400: limit or offset above 1000000.
\- 401: the API key has expired.
\- 403: missing API key (a wrong, revoked or expired key gets 401) ({"detail": "You do not have permission to perform this action."}), a scoped key without transactions: read, a key with workflow or status limits, or a request from outside the key's IP allowlist.
\- 404: no transaction with this uuid in my application ({"detail": "No Transaction matches the given query."}).
\- 429: more than 600 GET requests per minute with this key; wait Retry-After seconds and retry.

Side effects: none. This is a pure read.

For the full integration shape, see /integration/integration-prompt.`

\</pre>



      
      

Einfügen in

Verwandte Transaktionen werden über die `vendor_data` verknüpft, die Sie bei jeder Partei übermitteln, wenn Sie eine [Transaktion einreichen](https://docs.didit.me/de/transaction-monitoring/transactions.md#subjekt-und-gegenpartei). Senden Sie für dieselbe Person oder dasselbe Unternehmen jedes Mal dieselbe `vendor_data`. Dieser Endpoint gibt dann deren vollständige Historie rund um eine beliebige Transaktion zurück, also dieselbe Liste, die Prüfer in der Konsole unter **Verwandte Transaktionen** in den [Transaktionsdetails](https://docs.didit.me/de/transaction-monitoring/console.md#transaktionsdetails) sehen.Jedes Ergebnis hat dieselbe Zusammenfassungsstruktur wie [Transaktionen auflisten](https://docs.didit.me/de/management-api/transactions/list.md). Rufen Sie [Transaktion abrufen](https://docs.didit.me/de/management-api/transactions/get.md) mit der `uuid` eines Ergebnisses auf, um dessen Parteien, Alerts und Regelausführungen zu erhalten.


## OpenAPI

````yaml de/openapi-25.json GET /v3/transactions/{transaction_id}/related/
openapi: 3.0.0
info:
  version: 3.0.0
  title: Didit Verification API
  description: API für Ausweisverifizierung. Authentifizierung über den x-api-key-Header.
servers:
  - url: https://verification.didit.me
security: []
tags: []
paths:
  /v3/transactions/{transaction_id}/related/:
    get:
      tags:
        - Transactions
      summary: Zugehörige Transaktionen auflisten
      description: >-
        Listet die anderen Transaktionen in Ihrer Anwendung auf, an denen
        dieselben Personen oder Unternehmen wie an dieser beteiligt sind. Eine
        Transaktion gilt als verwandt, wenn eine ihrer Parteien, in beliebiger
        Rolle, denselben `vendor_data`-Wert wie eine der Parteien dieser
        Transaktion aufweist. Die Transaktion selbst wird nie zurückgegeben, und
        Parteien ohne `vendor_data` werden ignoriert: Wenn keine der Parteien
        dieser Transaktion einen solchen Wert hat, ist das Ergebnis immer leer.


        Die Ergebnisse verwenden die Übersichtsstruktur von `GET
        /v3/transactions/`, die neuesten zuerst (`txn_date`, dann `created_at`).
        Paginierung über `limit` und `offset`; `count` ist bis 100 exakt und
        darüber auf 100 begrenzt, folgen Sie also `next`, bis der Wert `null`
        ist.


        Ein bereichsgebundener API-Schlüssel benötigt `transactions: read`; ein
        Schlüssel, der auf bestimmte Workflows oder genehmigte Sitzungen
        beschränkt ist, kann diesen Endpoint nicht aufrufen. Senden Sie bei
        jeder
        [Transaktion](https://docs.didit.me/de/transaction-monitoring/transactions#subjekt-und-gegenpartei)
        denselben `vendor_data`-Wert für dieselbe Person oder dasselbe
        Unternehmen, um diese Liste vollständig zu halten.
      operationId: list_related_transactions
      parameters:
        - name: transaction_id
          in: path
          required: true
          description: >-
            Didit-Transaktions-UUID: die von `POST /v3/transactions/` und `GET
            /v3/transactions/` zurückgegebene `uuid`. Ihre eigene `txn_id` wird
            nicht akzeptiert.
          schema:
            type: string
            format: uuid
          example: abcdef12-3456-7890-abcd-ef1234567890
        - name: limit
          in: query
          required: false
          schema:
            type: integer
            default: 50
            minimum: 1
            maximum: 1000000
          description: >-
            Anzahl der Transaktionen pro Seite. Standardmäßig 50. Ein Wert, der
            keine positive Ganzzahl ist, fällt auf 50 zurück; ein Wert über
            1000000 gibt `400` zurück.
        - name: offset
          in: query
          required: false
          schema:
            type: integer
            maximum: 1000000
            minimum: 0
            default: 0
          description: >-
            Nullbasierte Position der ersten zurückzugebenden Transaktion.
            Folgen Sie vorzugsweise `next`. Ein Wert, der keine ganze Zahl ist,
            fällt auf 0 zurück; ein Wert über 1000000 gibt `400` zurück.
      responses:
        '200':
          description: Eine Seite mit verknüpften Transaktionen, neueste zuerst.
          content:
            application/json:
              schema:
                type: object
                required:
                  - count
                  - next
                  - previous
                  - results
                properties:
                  count:
                    type: integer
                    description: >-
                      Anzahl zugehöriger Transaktionen: exakt bis 100, darüber
                      auf 100 begrenzt. Folgen Sie `next`, anstatt daraus Seiten
                      zu berechnen.
                  next:
                    type: string
                    format: uri
                    nullable: true
                    description: >-
                      Absolute URL der nächsten Seite oder `null` auf der
                      letzten Seite.
                  previous:
                    type: string
                    format: uri
                    nullable: true
                    description: >-
                      Absolute URL der vorherigen Seite oder `null` auf der
                      ersten Seite.
                  results:
                    type: array
                    items:
                      $ref: '#/components/schemas/TransactionSummary'
              examples:
                One related transaction:
                  value:
                    count: 1
                    next: null
                    previous: null
                    results:
                      - uuid: abcdef99-3456-4890-abcd-ef1234567890
                        transaction_number: 4087
                        txn_id: your-txn-2026-10-02-017
                        transaction_type: finance
                        action_type: deposit
                        status: APPROVED
                        source: LIVE
                        direction: INBOUND
                        amount: '250'
                        currency: EUR
                        currency_type: fiat
                        preferred_currency_amount: '270.08'
                        preferred_currency_code: USD
                        payment_details: Card top-up
                        txn_date: '2026-10-02T14:10:00Z'
                        created_at: '2026-10-02T14:10:03.512244Z'
                        score: 12
                        severity: LOW
                        decision_reason_code: null
                        decision_reason_label: null
                        tags: []
                        subject_name: Maria Garcia
                        subject_vendor_data: user-12345
                        subject_type: user
                        subject_uuid: e1111111-2222-4333-8444-555555555555
                        counterparty_name: null
                        counterparty_vendor_data: null
                        counterparty_country: null
                        subject_country: ESP
                        assigned_to_name: null
                        travel_rule_status: null
                        application_id: aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee
                        application_name: Production app
                        organization_id: 11111111-2222-3333-4444-555555555555
                        organization_name: Example Org
                No party has vendor_data:
                  value:
                    count: 0
                    next: null
                    previous: null
                    results: []
        '400':
          description: >-
            `limit` oder `offset` liegt über 1000000. Der Body ist ein
            JSON-Array von Nachrichten, kein Objekt.
          content:
            application/json:
              schema:
                type: array
                items:
                  type: string
              examples:
                Limit too large:
                  value:
                    - limit must not exceed 1000000.
                Offset too large:
                  value:
                    - offset must not exceed 1000000.
        '401':
          description: >-
            Der API-Schlüssel ist abgelaufen. Nur ein Schlüssel, der mit einem
            Ablaufdatum erstellt wurde, kann ablaufen; nach diesem Datum
            antwortet jede Anfrage damit mit `401`.
          content:
            application/json:
              schema:
                type: object
                properties:
                  detail:
                    type: string
              examples:
                Expired key:
                  value:
                    detail: This API key has expired.
        '403':
          description: >-
            Die Anfrage ist nicht zulässig. Bei einem fehlenden Schlüssel wird
            die generische Nachricht zurückgegeben; ein falscher, widerrufener
            oder abgelaufener Schlüssel erhält `401`.
          content:
            application/json:
              schema:
                type: object
                properties:
                  detail:
                    type: string
              examples:
                Missing or invalid key:
                  value:
                    detail: You do not have permission to perform this action.
                Scoped key without transactions read:
                  value:
                    detail: This API key has no read access to transactions.
                Key limited to workflows or approved sessions:
                  value:
                    detail: >-
                      This API key only reaches sessions inside its workflow or
                      status limits, so it can't use this endpoint.
                Outside the key's IP list:
                  value:
                    detail: This API key can't be used from this IP address.
        '404':
          description: >-
            In der Anwendung existiert keine Transaktion mit dieser UUID (nie
            erstellt, gelöscht oder gehört einer anderen Anwendung). Eine
            `transaction_id`, die keine UUID ist, erreicht die API nicht: Sie
            gibt stattdessen eine `404`-HTML-Seite anstelle dieses JSON-Bodys
            zurück.
          content:
            application/json:
              schema:
                type: object
                properties:
                  detail:
                    type: string
              examples:
                Not found:
                  value:
                    detail: No Transaction matches the given query.
        '429':
          description: >-
            Mehr als 600 GET-Anfragen pro Minute mit diesem API-Schlüssel.
            Warten Sie die Anzahl der Sekunden in `Retry-After` ab und führen
            Sie dann einen Wiederholungsversuch durch.
          content:
            application/json:
              schema:
                type: object
                properties:
                  detail:
                    type: string
              examples:
                Throttled:
                  value:
                    detail: >-
                      GET request rate limit exceeded. You can make up to 600
                      requests per minute.
          headers:
            Retry-After:
              description: >-
                Sekunden bis zum Zurücksetzen des aktuellen
                Ein-Minuten-Fensters.
              schema:
                type: integer
                example: 23
            X-RateLimit-Limit:
              description: Pro Minute in diesem Budget zulässige Anfragen.
              schema:
                type: integer
            X-RateLimit-Remaining:
              description: Im aktuellen Zeitfenster verbleibende Anfragen.
              schema:
                type: integer
            X-RateLimit-Reset:
              description: Unix-Zeit, zu der das Zeitfenster zurückgesetzt wird.
              schema:
                type: integer
      security:
        - ApiKeyAuth: []
      x-codeSamples:
        - lang: curl
          label: curl
          source: >-
            curl -X GET
            'https://verification.didit.me/v3/transactions/abcdef12-3456-7890-abcd-ef1234567890/related/?limit=50'
            \
              -H 'x-api-key: YOUR_API_KEY'
        - lang: python
          label: Python
          source: |-
            from didit import Didit

            # Reads DIDIT_API_KEY.
            client = Didit()

            for item in client.transactions.list_related(
                "abcdef12-3456-7890-abcd-ef1234567890",
            ):
                print(item)
        - lang: javascript
          label: Node.js
          source: >-
            import Didit from "@didit-protocol/sdk-node";


            // Reads DIDIT_API_KEY.

            const didit = new Didit();


            for await (const item of
            didit.transactions.listRelated("abcdef12-3456-7890-abcd-ef1234567890"))
            {
              console.log(item);
            }
        - lang: go
          label: Go
          source: "ctx := context.Background()\n// Reads DIDIT_API_KEY.\nclient := didit.NewClient()\n\niter := client.Transactions.ListRelatedAutoPaging(ctx, \"abcdef12-3456-7890-abcd-ef1234567890\", didit.TransactionsListRelatedParams{})\nfor iter.Next() {\n\tfmt.Printf(\"%+v\\n\", iter.Current())\n}\nif err := iter.Err(); err != nil {\n\tlog.Fatal(err)\n}"
        - lang: java
          label: Java
          source: >-
            import me.didit.Didit;


            // Reads DIDIT_API_KEY.

            Didit client = new Didit();


            for (var item :
            client.transactions().listRelated("abcdef12-3456-7890-abcd-ef1234567890"))
            {
                System.out.println(item);
            }
        - lang: php
          label: PHP
          source: >-
            <?php


            require 'vendor/autoload.php';


            use Didit\DiditClient;


            // Reads DIDIT_API_KEY.

            $didit = new DiditClient();


            foreach
            ($didit->transactions->listRelated('abcdef12-3456-7890-abcd-ef1234567890')
            as $item) {
                print_r($item->toArray());
            }
        - lang: ruby
          label: Ruby
          source: >-
            require "didit"


            # Reads DIDIT_API_KEY.

            didit = Didit::Client.new


            didit.transactions.list_related("abcdef12-3456-7890-abcd-ef1234567890").auto_paging_each
            do |item|
              puts item.to_h
            end
        - lang: csharp
          label: .NET
          source: >-
            using System;

            using System.Text.Json;

            using Didit;


            // Reads DIDIT_API_KEY.

            using var client = new DiditClient();


            await foreach (var item in await
            client.Transactions.ListRelatedAsync("abcdef12-3456-7890-abcd-ef1234567890"))

            {
                Console.WriteLine(JsonSerializer.Serialize(item));
            }
components:
  schemas:
    TransactionSummary:
      type: object
      description: >-
        Zusammenfassung einer überwachten Transaktion in der Form, die `GET
        /v3/transactions/` auflistet. Rufen Sie `GET
        /v3/transactions/{transaction_id}/` mit `uuid` für Beteiligte, Alerts
        und Regelausführungen auf.
      properties:
        uuid:
          type: string
          format: uuid
          description: >-
            Didit-Transaktions-UUID. Verwenden Sie sie als `{transaction_id}` an
            den Transaktions-Endpoints.
        transaction_number:
          type: integer
          nullable: true
          description: >-
            Fortlaufende Nummer innerhalb der Anwendung, wie in der Console
            angezeigt.
        txn_id:
          type: string
          nullable: true
          description: >-
            Ihre eigene Kennung aus dem Aufruf zur Erstellung. Eindeutig pro
            Anwendung.
        transaction_type:
          type: string
          description: >-
            Kategorie wie gespeichert: `finance`, `kyc`, `travelRule`,
            `userPlatformEvent`, `gamblingBet`, `gamblingLimitChange`,
            `gamblingBonusChange` oder `auditTrailEvent`.
        action_type:
          type: string
          description: Untertyp innerhalb der Kategorie, zum Beispiel `withdrawal`.
        status:
          type: string
          enum:
            - APPROVED
            - IN_REVIEW
            - DECLINED
            - AWAITING_USER
          description: Aktuelles Überwachungsergebnis.
        source:
          type: string
          enum:
            - LIVE
            - IMPORTED
          description: >-
            `LIVE` für Transaktionen, die zur Überwachung übermittelt wurden,
            `IMPORTED` für historische Importe.
        direction:
          type: string
          enum:
            - INBOUND
            - OUTBOUND
          description: Richtung relativ zur betreffenden Entität.
        amount:
          type: string
          description: >-
            Betrag als Dezimal-String ohne nachgestellte Nullen (bis zu 18
            Nachkommastellen).
        currency:
          type: string
          description: Währungscode oder Krypto-Asset-Symbol von `amount`.
        currency_type:
          type: string
          nullable: true
          description: '`fiat` oder `crypto`, sofern bekannt.'
        preferred_currency_amount:
          type: string
          nullable: true
          description: >-
            `amount` umgerechnet in die bevorzugte Währung der Anwendung, sofern
            ein Wechselkurs verfügbar war.
        preferred_currency_code:
          type: string
          nullable: true
          description: Währung von `preferred_currency_amount`.
        payment_details:
          type: string
          nullable: true
          description: Freitext-Zahlungsreferenz.
        txn_date:
          type: string
          format: date-time
          description: Wann die Transaktion stattgefunden hat.
        created_at:
          type: string
          format: date-time
          description: Wann Didit dies aufgezeichnet hat.
        score:
          type: integer
          description: Risiko-Score. Höher ist riskanter.
        severity:
          type: string
          nullable: true
          enum:
            - UNKNOWN
            - LOW
            - MEDIUM
            - HIGH
            - CRITICAL
            - null
          description: Risiko-Schweregrad, `null`, bis ein Wert festgelegt wird.
        decision_reason_code:
          type: string
          nullable: true
          description: Maschinenlesbarer Grund für den aktuellen `status`.
        decision_reason_label:
          type: string
          nullable: true
          description: Lesbare Bezeichnung für `decision_reason_code`.
        tags:
          type: array
          description: Tags für die Transaktion.
          items:
            type: object
            properties:
              uuid:
                type: string
                format: uuid
              name:
                type: string
              color:
                type: string
                description: Hex-Farbe, zum Beispiel `#F59E0B`.
              description:
                type: string
                nullable: true
              source:
                type: string
                enum:
                  - didit
                  - custom
                description: Vordefiniertes Didit- oder benutzerdefiniertes Tag.
        subject_name:
          type: string
          nullable: true
          description: Vollständiger Name der Partei `APPLICANT`.
        subject_vendor_data:
          type: string
          nullable: true
          description: Ihre `vendor_data` für den Antragsteller.
        subject_type:
          type: string
          nullable: true
          enum:
            - user
            - business
            - null
          description: >-
            Gibt an, ob der Antragsteller mit einem Didit-Benutzer oder
            -Unternehmen verknüpft ist; `null`, wenn er mit keinem von beidem
            verknüpft ist.
        subject_uuid:
          type: string
          format: uuid
          nullable: true
          description: >-
            UUID des Didit-Benutzers oder -Unternehmens, mit dem der
            Antragsteller verknüpft ist.
        subject_country:
          type: string
          nullable: true
          description: Ländercode des Antragstellers.
        counterparty_name:
          type: string
          nullable: true
          description: Vollständiger Name der Partei `COUNTERPARTY`, falls vorhanden.
        counterparty_vendor_data:
          type: string
          nullable: true
          description: Ihre `vendor_data` für die Gegenpartei.
        counterparty_country:
          type: string
          nullable: true
          description: Ländercode der Gegenpartei.
        assigned_to_name:
          type: string
          nullable: true
          description: Name des Console-Prüfers, der der Transaktion zugewiesen ist.
        travel_rule_status:
          type: string
          nullable: true
          description: >-
            Status des Travel-Rule-Transfers der Transaktion oder `null`, wenn
            keiner vorhanden ist.
        application_id:
          type: string
          format: uuid
          description: Anwendung, zu der die Transaktion gehört.
        application_name:
          type: string
          nullable: true
          description: Name dieser Anwendung.
        organization_id:
          type: string
          format: uuid
          description: Organisation, der die Anwendung gehört.
        organization_name:
          type: string
          nullable: true
          description: Name dieser Organisation.
  securitySchemes:
    ApiKeyAuth:
      type: apiKey
      in: header
      name: x-api-key
      description: >-
        Der API-Schlüssel Ihrer Anwendung, aus Entwickler -> API-Schlüssel in
        der Business Console. Der Primärschlüssel hat Vollzugriff. Ein benannter
        Schlüssel kann im Geltungsbereich eingeschränkt werden: keine, Lese-
        oder Schreibberechtigung pro Ressource, beschränkt auf bestimmte
        Workflows oder genehmigte Sitzungen, auf eine Liste von IP-Adressen und
        auf ein Ablaufdatum. 401 bedeutet, dass der Schlüssel falsch, widerrufen
        oder abgelaufen ist; 403 bedeutet, dass kein Schlüssel gesendet wurde,
        der Schlüssel keinen Zugriff auf diese Ressource oder Aktion hat oder
        die Anfrage von einer Adresse außerhalb seiner IP-Liste stammte; 404 bei
        einer Sitzungsroute bedeutet, dass die Sitzung außerhalb der Workflows
        oder Status des Schlüssels liegt. Ein Schlüssel ohne Medienzugriff
        erhält Bild-, Video- und PDF-URLs als null, und ein Schlüssel ohne
        Schreibberechtigung für Sitzungen erhält Sitzungslinks und Token als
        null. Siehe https://docs.didit.me/console/api-keys.

````

This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.