> ## 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.

# Ottieni screening VASP controparte: API Travel Rule

> Con Didit leggi se lo screening della controparte è attivo, il costo di uno screening e l'ultimo screening sulle sanzioni di un VASP.

Ottieni un prompt per l'API di Screening VASP
Copia il prompt negli appunti

<pre>
  \`Read my application's sanctions and adverse-media screening of a Travel Rule counterparty VASP, and whether I can run one.

  Endpoint:
  GET [https://verification.didit.me/v3/travel-rule/vasps/\{vasp\_id}/screening/](https://verification.didit.me/v3/travel-rule/vasps/\{vasp_id}/screening/)

  Authentication:
  Use the x-api-key header with my Didit API key. Reading is free.

  vasp\_id is the id GET /v3/travel-rule/vasps/ returns for a directory entry or a Didit network member.

  What to read from the response:

  * enabled - my counterparty\_screening\_enabled Travel Rule setting. Off by default: nothing is screened or billed while it is off.
  * price - decimal string in USD: what one screening costs my organization (the Company AML Screening price).
  * fresh\_days - how long a screening stays fresh and is reused instead of billed again (30).
  * screening - null when I never screened this counterparty; otherwise {id, status, total_hits, score, screened_at, fresh, flagged}.
  * screening.status - Approved (no possible match needs attention), In Review or Declined (a possible sanctions or adverse-media match).
  * screening.flagged - true while the screening is fresh and In Review or Declined. While my latest screening is flagged and screening stays on, my rules read counterparty\_risk\_level as HIGH for this counterparty.

  The screening is private to my application: no other Didit customer sees it, and it never changes the shared directory entry.

  Failure modes:

  * 403 - my organization's contract has no rate configured for counterparty screening.
  * 404 - no directory entry or listed Didit network member has this id, or the id is my own VASP profile.

  Full guide: /transaction-monitoring/travel-rule#counterparty-screening.\`
</pre>

Incolla in


## OpenAPI

````yaml it/openapi-25.json GET /v3/travel-rule/vasps/{vasp_id}/screening/
openapi: 3.0.0
info:
  version: 3.0.0
  title: Didit Verification API
  description: API di verifica dell'identità. Autenticati con l'intestazione x-api-key.
servers:
  - url: https://verification.didit.me
security: []
tags: []
paths:
  /v3/travel-rule/vasps/{vasp_id}/screening/:
    get:
      tags:
        - Travel Rule
      summary: Recupera lo screening dell'entità di un VASP
      description: >-
        Indica se lo screening della controparte è attivo per la tua
        applicazione, quanto costa un singolo screening alla tua organizzazione,
        per quanto tempo un risultato rimane valido e il tuo screening più
        recente della controparte per sanzioni e notizie negative. La lettura è
        gratuita.
      operationId: getTravelRuleVaspScreening
      parameters:
        - name: vasp_id
          in: path
          required: true
          schema:
            type: string
            format: uuid
          description: >-
            L'id di una riga di GET /v3/travel-rule/vasps/: una voce della
            directory o un membro della rete Didit.
      responses:
        '200':
          description: >-
            La tua impostazione di screening, il relativo prezzo e il tuo ultimo
            screening.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TravelRuleCounterpartyScreeningStatus'
              example:
                enabled: true
                price: '0.20'
                fresh_days: 30
                screening:
                  id: 7a1d2c3b-4e5f-4a6b-8c7d-9e0f1a2b3c4d
                  status: Approved
                  total_hits: 0
                  score: null
                  screened_at: '2026-10-14T09:58:00Z'
                  fresh: true
                  flagged: false
        '403':
          description: >-
            Il contratto della tua organizzazione non prevede una tariffa
            configurata per lo screening delle controparti.
          content:
            application/json:
              schema:
                type: object
                properties:
                  detail:
                    type: string
              example:
                detail: No contract rate is configured for this usage type.
        '404':
          description: >-
            Nessuna voce della directory o membro elencato della rete Didit ha
            questo id. Il tuo profilo VASP non è mai una tua controparte.
          content:
            application/json:
              schema:
                type: object
                properties:
                  detail:
                    type: string
              example:
                detail: No directory entry or Didit network member has this id.
      security:
        - ApiKeyAuth: []
      x-codeSamples:
        - lang: curl
          label: curl
          source: >-
            curl -X GET
            https://verification.didit.me/v3/travel-rule/vasps/{vasp_id}/screening/
            \
              -H 'x-api-key: YOUR_API_KEY'
        - lang: python
          label: Python
          source: |-
            from didit import Didit

            # Reads DIDIT_API_KEY.
            client = Didit()

            result = client.travel_rule.retrieve_vasp_screening(
                "11111111-2222-3333-4444-555555555555",
            )
            print(result)
        - lang: javascript
          label: Node.js
          source: >-
            import Didit from "@didit-protocol/sdk-node";


            // Reads DIDIT_API_KEY.

            const didit = new Didit();


            const result = await
            didit.travelRule.retrieveVaspScreening("11111111-2222-3333-4444-555555555555");

            console.log(result);
        - lang: go
          label: Go
          source: "ctx := context.Background()\n// Reads DIDIT_API_KEY.\nclient := didit.NewClient()\n\nresult, err := client.TravelRule.RetrieveVASPScreening(ctx, \"11111111-2222-3333-4444-555555555555\")\nif err != nil {\n\tlog.Fatal(err)\n}\nfmt.Printf(\"%+v\\n\", result)"
        - lang: java
          label: Java
          source: >-
            import me.didit.Didit;


            // Reads DIDIT_API_KEY.

            Didit client = new Didit();


            var result =
            client.travelRule().retrieveVaspScreening("11111111-2222-3333-4444-555555555555");

            System.out.println(result);
        - lang: php
          label: PHP
          source: >-
            <?php


            require 'vendor/autoload.php';


            use Didit\DiditClient;


            // Reads DIDIT_API_KEY.

            $didit = new DiditClient();


            $result =
            $didit->travelRule->retrieveVaspScreening('11111111-2222-3333-4444-555555555555');

            print_r($result->toArray());
        - lang: ruby
          label: Ruby
          source: >-
            require "didit"


            # Reads DIDIT_API_KEY.

            didit = Didit::Client.new


            result =
            didit.travel_rule.retrieve_vasp_screening("11111111-2222-3333-4444-555555555555")

            puts result.to_h
        - lang: csharp
          label: .NET
          source: >-
            using System;

            using System.Text.Json;

            using Didit;


            // Reads DIDIT_API_KEY.

            using var client = new DiditClient();


            var result = await
            client.TravelRule.RetrieveVaspScreeningAsync("11111111-2222-3333-4444-555555555555");

            Console.WriteLine(JsonSerializer.Serialize(result));
components:
  schemas:
    TravelRuleCounterpartyScreeningStatus:
      type: object
      properties:
        enabled:
          type: boolean
          description: >-
            L'impostazione Travel Rule counterparty_screening_enabled.
            Disattivata per impostazione predefinita; finché è disattivata non
            viene eseguito alcuno screening né addebitato alcun costo.
        price:
          type: string
          description: >-
            Stringa decimale, in USD: il costo di un singolo screening per la
            tua organizzazione, ovvero il prezzo di Screening AML per aziende.
        fresh_days:
          type: integer
          description: Quanti giorni uno screening rimane valido e viene riutilizzato.
        screening:
          allOf:
            - $ref: '#/components/schemas/TravelRuleCounterpartyScreening'
          nullable: true
          description: >-
            Il tuo ultimo screening della controparte. Null se non è mai stato
            eseguito.
    TravelRuleCounterpartyScreening:
      type: object
      description: >-
        Uno screening per sanzioni e notizie negative dell'entità della
        controparte, eseguito e fatturato per la tua applicazione. Riservato
        alla tua applicazione: nessun altro cliente potrà mai vederlo.
      properties:
        id:
          type: string
          format: uuid
        status:
          type: string
          enum:
            - Approved
            - In Review
            - Declined
          description: >-
            Approvata: nessuna possibile corrispondenza richiede attenzione. In
            revisione o Rifiutata: una possibile corrispondenza con liste di
            sanzioni o notizie negative.
        total_hits:
          type: integer
          description: Quante corrispondenze potenziali ha restituito lo screening.
        score:
          type: number
          nullable: true
          description: >-
            Il punteggio di rischio più elevato tra le possibili corrispondenze.
            Null quando non c'è stata alcuna corrispondenza.
        screened_at:
          type: string
          format: date-time
        fresh:
          type: boolean
          description: >-
            Indica se lo screening è più recente di fresh_days (30 giorni). Uno
            screening recente viene riutilizzato anziché fatturato nuovamente.
        flagged:
          type: boolean
          description: >-
            true mentre lo screening è recente e il suo stato è In Review o
            Declined. Quando l'ultimo screening è segnalato e lo screening della
            controparte rimane attivo, counterparty_risk_level è HIGH nelle tue
            regole.
  securitySchemes:
    ApiKeyAuth:
      type: apiKey
      in: header
      name: x-api-key
      description: >-
        La chiave API della tua applicazione, da Developers -> API keys nella
        Business Console. La chiave primaria ha accesso completo. Una chiave con
        nome può avere un ambito definito: nessuno, lettura o scrittura per
        risorsa, limitata ad alcuni workflow o a sessioni approvate, a un elenco
        di indirizzi IP e a una data di scadenza. 401 indica che la chiave è
        errata, revocata o scaduta; 403 indica che non è stata inviata alcuna
        chiave, che la chiave non ha accesso a questa risorsa o azione, oppure
        che la richiesta proviene da un indirizzo non incluso nel suo elenco IP;
        404 su una route di sessione indica che la sessione non rientra nei
        workflow o negli stati previsti dalla chiave. Una chiave senza accesso
        ai media riceve gli URL di immagini, video e PDF come null, e una chiave
        senza permessi di scrittura sulle sessioni riceve link e token di
        sessione come null. Consulta https://docs.didit.me/console/api-keys.

````

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