---
title: "Get a screening of the wallet by ID"
method: GET
path: "/wallet/{wallet_analysis_id}/screenings/{screening_id}"
tags: ["Wallet Analyses"]
---

# Get a screening of the wallet by ID

`GET /wallet/{wallet_analysis_id}/screenings/{screening_id}`

## Request

- Base URL: `https://aml-api.elliptic.co/v2`
- URL: `https://aml-api.elliptic.co/v2/wallet/{wallet_analysis_id}/screenings/{screening_id}`
- Auth: one of:
  - HTTP bearer
  - API key in header `x-access-key` and API key in header `x-access-sign` and API key in header `x-access-timestamp`

Given a screening ID, return the screening of the wallet

## Path parameters

- `wallet_analysis_id` string, UUIDv4, required
- `screening_id` string, required

## Response `200`

Successful wallet analysis response

- WalletAnalysisResponse: Response for Wallet Analysis. Represents the full result of a holistic wallet analysis, including metadata, risk scores, and contributing entities.
  - `id` string, uuid, required: Unique identifier of the wallet analysis
  - `type` 'wallet_exposure', required: The type of analysis. Currently it is wallet_exposure
  - `subject` object, required: Information describing the subject of the analysis
    - `asset` string, required: The asset involved in the event
    - `type` string, required: The type of subject. Currently, only 'address' is supported
    - `hash` string, required: The address hash when using type 'address'
    - `blockchain` string: The blockchain the asset/address belongs to (optional)
  - `customer` object, required: The customer that submitted the request
    - `id` string, uuid, nullable: The UUIDv4 of the customer this analysis is associated with
    - `reference` string: The string reference that has been given to this customer. Can be empty
  - `blockchain_info` object, required: The relevant blockchain data related to the subject's hash
    - `cluster` object
      - `inflow_value` object: Value of cluster's inflowing funds
        - `usd` number, nullable: Transaction amount expressed in US dollars of the blockchain it has occurred in the most precise unit possible, e.g. satoshis for bitcoin
      - `outflow_value` object: Value of cluster's outflowing funds
        - `usd` number, nullable
  - `created_at` string, date-time, required: ISO datetime (UTC) when the analysis was first analysed
  - `updated_at` string, date-time, required: ISO datetime (UTC) when the wallet analysis was last updated
  - `analysed_at` string, date-time, required: ISO datetime (UTC) when this analysis was completed
  - `analysed_by` object, nullable: The actor who executed the analysis
    - `id` string, UUIDv4: Team User's UUIDv4 (unique for team & user)
    - `email` string: the email address of the User
    - `first_name` string: the first name of the User
    - `last_name` string: the last name of the User
    - `type` string: Type of actor (e.g. user, system, api_key). Only present for analysed_by.
  - `asset_tier` 'full' | 'sanctions': The asset tier
  - `cluster_entities` WalletAssertedLabel[], required: An Elliptic-created, wallet asserted label to be attached to a cluster
    - `name` string, nullable, required: A real-world description of the labelled cluster, derived from the assertions associated to this label.
    - `category` string, nullable, required: A categorical description of the real-world entity controlling the labelled cluster
    - `category_id` string, uuid: UUID identifier of the category
    - `entity_id` string, uuid: UUIDv4 identifier of the entity
    - `actor_id` integer: Internal numeric ID of the actor
    - `is_primary_entity` boolean, required: A flag that shows if the entity is primary or not. Only one in the whole array of labels
    - `is_vasp` boolean, nullable: True if this entity is a Virtual Asset Service Provider, false if not, null if unknown
    - `is_after_sanction_date` boolean, nullable: True if the entity’s activity or transaction occurred after the date it was officially sanctioned, enabling accurate time-bound sanction screening
  - `team_id` string, uuid, required: UUIDv4 identifier of the team the user belongs to
  - `risk_score` number, float, nullable: The risk score calculated as an aggregation from all the rules. If null is returned, no risk rules have been triggered. If 0 is returned, risk rules were triggered and the calculated score was 0.
  - `risk_score_detail` object: Details on the risk scores of the source and destination of funds
    - `source` number, float, nullable
    - `destination` number, float, nullable
  - `error` object, nullable: Property containing information about a failed screening, null unless process_status = 'error'
    - `message` string: Error message
  - `evaluation_detail` object: Details of risk rule evaluations for both source and destination of funds
    - `source` EvaluationDetail[]
      - `rule_id` string, uuid, required: The Id of the rule that triggered
      - `rule_name` string: The name of the triggered rule
      - `risk_score` number, float, required: The risk score calculated for this rule evaluation
      - `matched_elements` MatchedElement[]: Array of entities matched by this rule
        - `category` string, required: category of the risk rule's subject that has been triggered by one or more elements. The name can change so advisable to use identifier for matching purposes
        - `category_id` string, uuid: UUID identifying the entity's category
        - `contribution_percentage` number, float, required: Aggregated percentage of value attributed to this matched category
        - `contribution_value` object, required: Aggregated USD value attributed to this matched entity category
          - `usd` number, float
        - `counterparty_percentage` number, float: Percentage of contribution from one-hop counterparties
        - `counterparty_value` object: Value from one-hop counterparties (USD only)
          - `usd` number, float
        - `indirect_percentage` number, float: Percentage of contribution from indirect (multi-hop) relationships
        - `indirect_value` object: Value from indirect (multi-hop) sources (USD only)
          - `usd` number, float
        - `contributions` object[], required: Array of contributing entities that led to the match
          - `contribution_percentage` number, float: Percentage of this contribution
          - `counterparty_percentage` number, float: One-hop contribution percentage
          - `indirect_percentage` number, float: Multi-hop contribution percentage
          - `entity` string, required: Name of the contributing entity
          - `entity_id` string, uuid, required: ID of the entity; use with entity_details to look up extended entity data
          - `risk_triggers` object: Metadata indicating why the entity was considered risky
            - `name` string: Trigger entity name
            - `category` string: Trigger category
            - `is_sanctioned` boolean: Indicates if a sanction-based risk was involved
            - `country` string[]: List of country codes associated with the risk trigger
          - `contribution_value` object: Contribution amount from this entity (USD only)
            - `usd` number, float
          - `counterparty_value` object: Counterparty contribution value (USD only)
            - `usd` number, float
          - `indirect_value` object: Indirect (multi-hop) value (USD only)
            - `usd` number, float
          - `is_screened_address` boolean: Flag indicating whether address was directly screened
          - `min_number_of_hops` integer: Shortest path in hops to the entity
      - `matched_behaviors` object[]: Array of behaviors matched by this rule (mutually exclusive with matched_elements)
        - `behavior_type` string, required: Type of the Behavioral pattern detected of potential suspicious activity
        - `length` number, required: Length associated with the Behavior detected
        - `usd_value` number, float, required: aggregated value (sum) associated with the behavior detected
      - `rule_history_id` string, uuid: The unique identifier that links all versions of a risk rule
      - `mc_analysis_id` string, uuid: Id of the analysis performed
      - `rule_type` 'exposure' | 'behavior': Type of the rule evaluated
    - `destination` EvaluationDetail[]
      - `rule_id` string, uuid, required: The Id of the rule that triggered
      - `rule_name` string: The name of the triggered rule
      - `risk_score` number, float, required: The risk score calculated for this rule evaluation
      - `matched_elements` MatchedElement[]: Array of entities matched by this rule
        - `category` string, required: category of the risk rule's subject that has been triggered by one or more elements. The name can change so advisable to use identifier for matching purposes
        - `category_id` string, uuid: UUID identifying the entity's category
        - `contribution_percentage` number, float, required: Aggregated percentage of value attributed to this matched category
        - `contribution_value` object, required: Aggregated USD value attributed to this matched entity category
          - `usd` number, float
        - `counterparty_percentage` number, float: Percentage of contribution from one-hop counterparties
        - `counterparty_value` object: Value from one-hop counterparties (USD only)
          - `usd` number, float
        - `indirect_percentage` number, float: Percentage of contribution from indirect (multi-hop) relationships
        - `indirect_value` object: Value from indirect (multi-hop) sources (USD only)
          - `usd` number, float
        - `contributions` object[], required: Array of contributing entities that led to the match
          - `contribution_percentage` number, float: Percentage of this contribution
          - `counterparty_percentage` number, float: One-hop contribution percentage
          - `indirect_percentage` number, float: Multi-hop contribution percentage
          - `entity` string, required: Name of the contributing entity
          - `entity_id` string, uuid, required: ID of the entity; use with entity_details to look up extended entity data
          - `risk_triggers` object: Metadata indicating why the entity was considered risky
            - `name` string: Trigger entity name
            - `category` string: Trigger category
            - `is_sanctioned` boolean: Indicates if a sanction-based risk was involved
            - `country` string[]: List of country codes associated with the risk trigger
          - `contribution_value` object: Contribution amount from this entity (USD only)
            - `usd` number, float
          - `counterparty_value` object: Counterparty contribution value (USD only)
            - `usd` number, float
          - `indirect_value` object: Indirect (multi-hop) value (USD only)
            - `usd` number, float
          - `is_screened_address` boolean: Flag indicating whether address was directly screened
          - `min_number_of_hops` integer: Shortest path in hops to the entity
      - `matched_behaviors` object[]: Array of behaviors matched by this rule (mutually exclusive with matched_elements)
        - `behavior_type` string, required: Type of the Behavioral pattern detected of potential suspicious activity
        - `length` number, required: Length associated with the Behavior detected
        - `usd_value` number, float, required: aggregated value (sum) associated with the behavior detected
      - `rule_history_id` string, uuid: The unique identifier that links all versions of a risk rule
      - `mc_analysis_id` string, uuid: Id of the analysis performed
      - `rule_type` 'exposure' | 'behavior': Type of the rule evaluated
  - `contributions` object: Array of contributions for the analysis subject retrieved
    - `source` Contribution[]
      - `entities` object[], required: Entities (labels) associated with this contribution
        - `name` string: Name of the entity
        - `category` string: Category of the entity
        - `category_id` string, uuid: UUID of category
        - `entity_id` string, uuid: UUID of entity
        - `actor_id` integer: Internal actor ID or numeric identifier that related to the identified entity
        - `is_primary_entity` boolean: Whether this is the primary entity in the group (one per list)
        - `is_vasp` boolean, nullable: True if VASP (Virtual Asset Service Provider), false if not, null if unknown
      - `contribution_percentage` number, float, required: Percentage of value contributed by this entity
      - `contribution_value` object, required: Value contributed by this entry
        - `usd` number, float
      - `counterparty_percentage` number, float: The percentage of the total contribution that is attributed to labelled entities that are one hop away from the screened_address.
      - `counterparty_value` object: Value from counterparties (1-hop entities)
        - `usd` number, float: The contribution between the screened_address and labelled entities that are one hop away, expressed in US dollars.
      - `indirect_percentage` number, float: The percentage of the total contribution that is attributed to labelled entities that are more than one hop away from the screened_address.
      - `indirect_value` object: USD value from indirect flow
        - `usd` number, float: The contribution between the screened_address and labelled entities that are more than one hop away, expressed in US dollars.
      - `is_screened_address` boolean: A boolean displaying whether the input address of a deposit or the output address of a withdrawal that is screened belongs to a labelled entity for transaction monitoring or the address that is screened belongs to a labelled entity for wallet screening
      - `min_number_of_hops` integer: Minimum number of hops between the subject and the labelled entity
    - `destination` Contribution[]
      - `entities` object[], required: Entities (labels) associated with this contribution
        - `name` string: Name of the entity
        - `category` string: Category of the entity
        - `category_id` string, uuid: UUID of category
        - `entity_id` string, uuid: UUID of entity
        - `actor_id` integer: Internal actor ID or numeric identifier that related to the identified entity
        - `is_primary_entity` boolean: Whether this is the primary entity in the group (one per list)
        - `is_vasp` boolean, nullable: True if VASP (Virtual Asset Service Provider), false if not, null if unknown
      - `contribution_percentage` number, float, required: Percentage of value contributed by this entity
      - `contribution_value` object, required: Value contributed by this entry
        - `usd` number, float
      - `counterparty_percentage` number, float: The percentage of the total contribution that is attributed to labelled entities that are one hop away from the screened_address.
      - `counterparty_value` object: Value from counterparties (1-hop entities)
        - `usd` number, float: The contribution between the screened_address and labelled entities that are one hop away, expressed in US dollars.
      - `indirect_percentage` number, float: The percentage of the total contribution that is attributed to labelled entities that are more than one hop away from the screened_address.
      - `indirect_value` object: USD value from indirect flow
        - `usd` number, float: The contribution between the screened_address and labelled entities that are more than one hop away, expressed in US dollars.
      - `is_screened_address` boolean: A boolean displaying whether the input address of a deposit or the output address of a withdrawal that is screened belongs to a labelled entity for transaction monitoring or the address that is screened belongs to a labelled entity for wallet screening
      - `min_number_of_hops` integer: Minimum number of hops between the subject and the labelled entity
  - `detected_behaviors` object[]: Array of detected behaviors for the analysis subject retrieved from the graph server
    - `behavior_type` string, required: Type of the Behavioral pattern detected of potential suspicious activity
    - `length` number, required: Length associated with the Behavior detected
    - `usd_value` number, float, required: aggregated value (sum) associated with the behavior detected
  - `changes` object: Changes compared to previous screening of analysis
    - `risk_score_change` number, float: Change in risk score compared to previous screening of analysis. - A positive number means the risk score has increased. - A negative number means it has decreased. - Zero means it remained unchanged.
  - `workflow_status` WorkflowStatus, required (unresolved $ref)
  - `workflow_status_id` 1 | 2 | 3 | 4: A number representation of the status of an analysis. "archived" is deprecated and you should use "closed" instead. - 1 = active - 2 = archived (deprecated) - 3 = escalated - 4 = closed
  - `assigned_team_user` AnalysedBy (unresolved $ref)
  - `process_status` 'running' | 'complete' | 'error', required: The process status ('running','complete','error')
  - `process_status_id` 1 | 2 | 3: The screening process status. - 1 = running - 2 = completed - 3 = error
  - `triggered_rules` unknown[]: Deprecated. This property is retained for backward compatibility and is always an empty array in this response. To see the set of rules that were triggered, use `evaluation_detail` instead.
    - unknown
  - `screening_id` string, uuid: The identifier of the specific screening in the analysis
  - `screening_source` 'sync' | 'async' | 'system_rescreen' | 'automatic_rescreen' | 'continuous_monitoring': Indicates whether the screening was done via the Synchronous endpoint, Asynchronous endpoint, system rescreen, automatic rescreen, or continuous monitoring.
  - `entity_details` EntityDetails: Extended data for entities referenced elsewhere in the response (for example, contributions[].entity_id), grouped by the kind of detail. Each kind is a map keyed by entity UUID, so callers can resolve an entity id to its data. A missing entry means the entity has no data of that kind (e.g. is not sanctioned). Only present on single-analysis responses.
    - `sanctions` object, required: Sanctions listings per entity, keyed by entity UUID. Only entities that are sanctioned appear here.

## Other responses

- `400`: Bad Request
- `401`: Not authenticated
- `403`: Not authorized
- `404`: Resource item not found
- `500`: Server Error

---

[API](https://skmtc.dev/elliptic/apis/aml-api-v2.md) - [All operations](https://skmtc.dev/elliptic/apis/aml-api-v2/llms.txt) - [OpenAPI document](https://skmtc.dev/elliptic/apis/aml-api-v2/revisions/e0bcbfe65e14?raw)
