openapi: 3.0.3
info:
title: 'Pascal API documentation'
description: ''
version: 1.0.0
servers:
-
url: 'http://localhost'
paths:
/api/v1/cases/import:
post:
summary: 'Import cases'
operationId: importCases
description: "This endpoint allows you to import and search a list of new cases asynchronously.\nAfter making a request, a list of case UUIDs will be returned in the same order as your request.\nYou can use the case search API to check the status of the imported cases.\n"
parameters:
-
in: header
name: OrganizationId
description: ''
example: 1
schema:
type: string
responses:
200:
description: ''
content:
application/json:
schema:
type: object
example:
id: 99cbb5f6-49a7-492c-a1de-92ff356d98d8
totalJobs: 1
pendingJobs: 1
progress: 0
createdAt: '2023-08-02T18:48:22.000000Z'
uuids:
- a2546955-de2d-4907-a533-0846ee46f719
properties:
id:
type: string
example: 99cbb5f6-49a7-492c-a1de-92ff356d98d8
totalJobs:
type: integer
example: 1
pendingJobs:
type: integer
example: 1
progress:
type: integer
example: 0
createdAt:
type: string
example: '2023-08-02T18:48:22.000000Z'
uuids:
type: array
example:
- a2546955-de2d-4907-a533-0846ee46f719
items:
type: string
tags:
- Cases
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
cases:
type: array
description: 'An array of cases to be imported. You can import up to 200 cases per request.'
example:
- []
items:
type: object
properties:
type:
type: string
description: 'Must be one of Person, Business, or Asset.'
example: Person
nullable: false
enum:
- Person
- Business
- Asset
status:
type: string
description: 'Must be one of: Preview or In review.'
example: 'In review'
nullable: false
enum:
- 'In review'
- Preview
name:
type: string
description: 'The name to be checked. Must match the regex /[^'' '',\-\/\.]/. Must not be smaller than 2. Must not be larger than 190.'
example: 'John Doe'
nullable: false
confidence:
type: string
description: ''
example: Relative
nullable: false
enum:
- Relative
- Exact
aliases:
type: array
description: 'A list of additional name variations to be checked. Must not be larger than 190.'
example:
- 'J. Doe'
items:
type: string
additional_terms:
type: array
description: 'A list words that boost confidence if present in any visible text field. Must not be larger than 190.'
example:
- CEO
items:
type: string
description:
type: string
description: 'Additional information to be displayed in the case.'
example: 'Relation of a high risk client'
nullable: true
clients:
type: array
description: 'Must not be larger than 190.'
example:
- viqpbyipplxeymwhme
items:
type: string
gender:
type: string
description: '[Person case] Must be one of Male or Female. This field is required when cases.passportVerificationForm is present.'
example: Male
nullable: true
enum:
- Female
- Male
nationalities:
type: array
description: '[Person case][Asset case] array of max 10 nationalities, nationality SO 3166-1 alpha-2 or alpha-3 country code string.'
example:
- NLD
items:
type: string
country_of_birth:
type: string
description: '[Person case] ISO 3166-1 alpha-2 or alpha-3 country code string.'
example: NLD
nullable: true
country_of_residence:
type: string
description: '[Person case] ISO 3166-1 alpha-2 or alpha-3 country code string.'
example: NLD
nullable: true
date_of_birth:
type: string
description: '[Person case] ISO date string. Must be a valid date in the format Y-m-d.'
example: '2000-01-31'
nullable: true
passportVerificationForm:
type: object
description: '[Person case] Optional passport check information to be added to the case. This field must contain 7 items.'
example: null
nullable: true
properties:
country:
type: string
description: 'This field is required when cases.passportVerificationForm is present. Must not be larger than 190.'
example: ayob
nullable: false
dateOfExpiry:
type: string
description: 'Must be a valid date in the format Y-m-d. This field is required when cases.passportVerificationForm is present.'
example: '2025-01-15'
nullable: false
documentNumber:
type: string
description: 'This field is required when cases.passportVerificationForm is present. Must not be smaller than 6. Must not be larger than 9.'
example: mmukjywq
nullable: false
givenNames:
type: string
description: 'This field is required when cases.passportVerificationForm is present. Must not be larger than 190.'
example: xgdu
nullable: false
lastName:
type: string
description: 'This field is required when cases.passportVerificationForm is present. Must not be larger than 190.'
example: dltixvfklucvigwdssufqjucw
nullable: false
nationality:
type: string
description: 'This field is required when cases.passportVerificationForm is present.'
example: null
nullable: false
optionalData:
type: string
description: 'Must not be larger than 14.'
example: fapdpfugum
nullable: true
company_number:
type: string
description: '[Business case] string of max 190 characters. Must not be larger than 190.'
example: NL123
nullable: true
country:
type: string
description: '[Business case] ISO 3166-1 alpha-2 or alpha-3 country code string.'
example: NL
nullable: false
address:
type: string
description: '[Business case] string of max 190 characters. Must not be larger than 190.'
example: '3721 West Fork Street, Montana'
nullable: true
asset_type:
type: string
description: '[Asset case] Must be one of vessel or aircraft.'
example: vessel
nullable: true
enum:
- vessel
- aircraft
identifier:
type: string
description: '[Asset case] string of max 190 characters. Must not be larger than 190.'
example: '123456'
nullable: true
user_id:
type: integer
description: 'The assignee of the case. If both this and group_id are missing, the case is assigned to the default assignee specified in the organisation policies. If either is provided but neither specifies an id, the case is unassigned.'
example: null
nullable: true
group_id:
type: integer
description: 'The assigned group of the case. If both this and user_id are missing, the case is assigned to the default assignee specified in the organisation policies. If either is provided but neither specifies an id, the case is unassigned.'
example: null
nullable: true
required:
- type
- name
- confidence
- nationalities
deduplicate:
type: boolean
description: 'Whether or not to skip any cases that already exist in the organisation. A case is considered a duplicate if all of the following fields are an exact match (case insensitive): name, aliases, additional_terms, gender, date_of_birth, nationalities, country_of_birth, country_of_residence, address, country, company_number, asset_type, and identifier.'
example: false
nullable: true
update_duplicates:
type: boolean
description: "When a duplicate case is found, perform a new search.\nIf the existing case is 'archived', its status will be changed to 'in review'.\nSearch is skipped if the case is already monitored."
example: false
nullable: true
batch_id:
type: string
description: 'Because each import request is limited to 200 cases, you can use this parameter to add more cases to an existing batch. If the batch does not exist or is already finished, a 404 response will be returned. This field must be a valid UUID.'
example: 6661a00e-9d1b-3f48-b715-bb00367c083e
nullable: true
count:
type: integer
description: 'When you want to import using multiple requests in a single batch, you should provide the total number of cases to import in your first request (without a batch_id). When the total number of cases has not been processed and the batch has nothing to process, it will remain active for 1 minute, allowing you to add more cases to it. When the total number of cases has been processed, the batch will be marked as finished. Must not be smaller than 1.'
example: 15
nullable: true
required:
- cases
/api/v1/cases/searches:
post:
summary: 'Search cases'
operationId: searchCases
description: "This endpoint allows you to search for cases using filters.\nReturning basic information on a list of cases.\nPaginating through results is possible using the per_page and page parameters."
parameters:
-
in: header
name: OrganizationId
description: ''
example: 1
schema:
type: string
responses:
200:
description: ''
content:
application/json:
schema:
type: object
example:
data:
-
additional_terms: null
address: null
aliases: null
case_groups: []
case_users: []
clients: []
company_number: null
confidence: Relative
country_of_birth: null
country_of_residence: null
created_at: '2023-08-02T18:48:22.000000Z'
date_of_birth: null
deleted_at: null
description: 'Voluptas ad rem illum est dignissimos aut provident vitae.'
excluded_terms: []
gender: null
group: null
group_id: null
hit_counts:
negative:
enforcements: 0
news: 0
other: 0
peps: 0
sanctions: 0
positive:
enforcements: 0
news: 0
other: 0
peps: 0
sanctions: 0
unresolved:
enforcements: 0
news: 0
other: 0
peps: 0
sanctions: 0
hits_unresolved_count: 0
id: 2049050
country: null
monitoring_frequency: 28
name: 'My test case'
nationalities: null
organization_id: 19
origin: import
resolve_progress: 100
risk: 0
searched_at: '2023-08-02T18:48:32.000000Z'
sources:
-
active: true
case_id: 2049050
data_source:
active: true
deactivated_at: '2023-02-21T12:57:31.000000Z'
id: 409
source: peps
vendor: default
data_source_id: 409
id: 18320030
searched_at: '2023-08-02T18:48:22.000000Z'
succeeded: true
-
active: true
case_id: 2049050
data_source:
active: true
deactivated_at: '2023-02-21T12:57:31.000000Z'
id: 413
source: news
vendor: default
data_source_id: 413
id: 18320031
searched_at: '2023-08-02T18:48:22.000000Z'
succeeded: true
status: 'In review'
type: Person
unresolved_risk: 0
updated_at: '2023-08-02T18:48:22.000000Z'
user: null
user_id: null
uuid: a2546955-de2d-4907-a533-0846ee46f719
meta:
current_page: 1
from: 1
last_page: 1
path: 'http://pascal.vartion.com/api/v1/cases/searches'
per_page: 10
to: 1
total: 1
properties:
data:
type: array
example:
-
additional_terms: null
address: null
aliases: null
case_groups: []
case_users: []
clients: []
company_number: null
confidence: Relative
country_of_birth: null
country_of_residence: null
created_at: '2023-08-02T18:48:22.000000Z'
date_of_birth: null
deleted_at: null
description: 'Voluptas ad rem illum est dignissimos aut provident vitae.'
excluded_terms: []
gender: null
group: null
group_id: null
hit_counts:
negative:
enforcements: 0
news: 0
other: 0
peps: 0
sanctions: 0
positive:
enforcements: 0
news: 0
other: 0
peps: 0
sanctions: 0
unresolved:
enforcements: 0
news: 0
other: 0
peps: 0
sanctions: 0
hits_unresolved_count: 0
id: 2049050
country: null
monitoring_frequency: 28
name: 'My test case'
nationalities: null
organization_id: 19
origin: import
resolve_progress: 100
risk: 0
searched_at: '2023-08-02T18:48:32.000000Z'
sources:
-
active: true
case_id: 2049050
data_source:
active: true
deactivated_at: '2023-02-21T12:57:31.000000Z'
id: 409
source: peps
vendor: default
data_source_id: 409
id: 18320030
searched_at: '2023-08-02T18:48:22.000000Z'
succeeded: true
-
active: true
case_id: 2049050
data_source:
active: true
deactivated_at: '2023-02-21T12:57:31.000000Z'
id: 413
source: news
vendor: default
data_source_id: 413
id: 18320031
searched_at: '2023-08-02T18:48:22.000000Z'
succeeded: true
status: 'In review'
type: Person
unresolved_risk: 0
updated_at: '2023-08-02T18:48:22.000000Z'
user: null
user_id: null
uuid: a2546955-de2d-4907-a533-0846ee46f719
items:
type: object
properties:
additional_terms:
type: string
example: null
address:
type: string
example: null
aliases:
type: string
example: null
case_groups:
type: array
example: []
case_users:
type: array
example: []
clients:
type: array
example: []
company_number:
type: string
example: null
confidence:
type: string
example: Relative
country_of_birth:
type: string
example: null
country_of_residence:
type: string
example: null
created_at:
type: string
example: '2023-08-02T18:48:22.000000Z'
date_of_birth:
type: string
example: null
deleted_at:
type: string
example: null
description:
type: string
example: 'Voluptas ad rem illum est dignissimos aut provident vitae.'
excluded_terms:
type: array
example: []
gender:
type: string
example: null
group:
type: string
example: null
group_id:
type: string
example: null
hit_counts:
type: object
properties:
negative:
type: object
properties:
enforcements:
type: integer
example: 0
news:
type: integer
example: 0
other:
type: integer
example: 0
peps:
type: integer
example: 0
sanctions:
type: integer
example: 0
positive:
type: object
properties:
enforcements:
type: integer
example: 0
news:
type: integer
example: 0
other:
type: integer
example: 0
peps:
type: integer
example: 0
sanctions:
type: integer
example: 0
unresolved:
type: object
properties:
enforcements:
type: integer
example: 0
news:
type: integer
example: 0
other:
type: integer
example: 0
peps:
type: integer
example: 0
sanctions:
type: integer
example: 0
hits_unresolved_count:
type: integer
example: 0
id:
type: integer
example: 2049050
country:
type: string
example: null
monitoring_frequency:
type: integer
example: 28
name:
type: string
example: 'My test case'
nationalities:
type: string
example: null
organization_id:
type: integer
example: 19
origin:
type: string
example: import
resolve_progress:
type: integer
example: 100
risk:
type: integer
example: 0
searched_at:
type: string
example: '2023-08-02T18:48:32.000000Z'
sources:
type: array
example:
-
active: true
case_id: 2049050
data_source:
active: true
deactivated_at: '2023-02-21T12:57:31.000000Z'
id: 409
source: peps
vendor: default
data_source_id: 409
id: 18320030
searched_at: '2023-08-02T18:48:22.000000Z'
succeeded: true
-
active: true
case_id: 2049050
data_source:
active: true
deactivated_at: '2023-02-21T12:57:31.000000Z'
id: 413
source: news
vendor: default
data_source_id: 413
id: 18320031
searched_at: '2023-08-02T18:48:22.000000Z'
succeeded: true
items:
type: object
properties:
active:
type: boolean
example: true
case_id:
type: integer
example: 2049050
data_source:
type: object
properties:
active:
type: boolean
example: true
deactivated_at:
type: string
example: '2023-02-21T12:57:31.000000Z'
id:
type: integer
example: 409
source:
type: string
example: peps
vendor:
type: string
example: default
data_source_id:
type: integer
example: 409
id:
type: integer
example: 18320030
searched_at:
type: string
example: '2023-08-02T18:48:22.000000Z'
succeeded:
type: boolean
example: true
status:
type: string
example: 'In review'
type:
type: string
example: Person
unresolved_risk:
type: integer
example: 0
updated_at:
type: string
example: '2023-08-02T18:48:22.000000Z'
user:
type: string
example: null
user_id:
type: string
example: null
uuid:
type: string
example: a2546955-de2d-4907-a533-0846ee46f719
meta:
type: object
properties:
current_page:
type: integer
example: 1
from:
type: integer
example: 1
last_page:
type: integer
example: 1
path:
type: string
example: 'http://pascal.vartion.com/api/v1/cases/searches'
per_page:
type: integer
example: 10
to:
type: integer
example: 1
total:
type: integer
example: 1
tags:
- Cases
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
per_page:
type: integer
description: 'number between 1 and 1000. Must not be smaller than 1. Must not be larger than 1000.'
example: 10
nullable: false
page:
type: integer
description: 'Page to be returned. Must not be smaller than 1.'
example: 1
nullable: false
sort_by:
type: string
description: ''
example: updated_at
nullable: true
enum:
- updated_at
- status
- uuid
- name
- type
- confidence
- assignee
- hits_unresolved_count
- resolve_progress
- risk
- unresolved_risk
- searched_at
- passport_expiry_date
- organization_name
sort_order:
type: string
description: ''
example: asc
nullable: true
enum:
- asc
- desc
secondary_sort_by:
type: string
description: ''
example: null
nullable: true
enum:
- updated_at
- status
- uuid
- name
- type
- confidence
- assignee
- hits_unresolved_count
- resolve_progress
- risk
- unresolved_risk
- searched_at
- passport_expiry_date
- organization_name
secondary_sort_order:
type: string
description: ''
example: asc
nullable: true
enum:
- asc
- desc
with:
type: array
description: 'Adds additional values to the results. Must be one of: hitCounts, hitCountsPerSource.'
example:
- hitCountsPerSource
items:
type: string
enum:
- hitCounts
- hitCountsPerSource
- passportVerification
id:
type: array
description: 'Case IDs to be filtered on. Must not be smaller than 1.'
example: null
items:
type: integer
type:
type: array
description: 'Must be one of Person, Business, or Asset.'
example: null
items:
type: string
enum:
- Person
- Business
- Asset
status:
type: array
description: ''
example: null
items:
type: string
enum:
- Preview
- 'In review'
- Archived
- Monitored
user_id:
type: array
description: 'Filter on case assignees using user ids.'
example: null
items:
type: integer
nullable: true
group_id:
type: array
description: 'Filter on case assigned to groups using group ids.'
example: null
items:
type: integer
nullable: true
organization_id:
type: array
description: 'Filter on cases from a specific organization (if token has access to multiple organizations).'
example: null
items:
type: integer
origin:
type: array
description: ''
example: null
items:
type: string
enum:
- person-check
- business-check
- hyperlink
confidence:
type: array
description: ''
example: null
items:
type: string
enum:
- Exact
- Relative
created_at:
type: string
description: ''
example: null
nullable: true
updated_at:
type: string
description: ''
example: null
nullable: true
hit_time_range:
type: string
description: ''
example: null
nullable: true
name:
type: string
description: 'Full text search on case names. Must not be larger than 190.'
example: null
nullable: true
client_id:
type: array
description: 'Cases associated to a list of clients. Must not be smaller than 1.'
example: null
items:
type: integer
nullable: true
exclude_client_id:
type: array
description: 'Exclude cases associated to any of a list of clients. Must not be smaller than 1.'
example: null
items:
type: integer
nullable: true
transaction_id:
type: array
description: 'Must not be smaller than 1.'
example:
- 36
items:
type: integer
nullable: true
exclude_transaction_id:
type: array
description: 'Must not be smaller than 1.'
example:
- 35
items:
type: integer
nullable: true
deleted:
type: boolean
description: ''
example: false
nullable: false
uuid:
type: array
description: 'Case UUIDs to be filtered on. Must not be larger than 36.'
example:
- a2546955-de2d-4907-a533-0846ee46f719
items:
type: string
query:
type: string
description: 'Must not be larger than 190.'
example: null
nullable: true
nationalities:
type: array
description: ''
example: null
items:
type: string
country:
type: array
description: ''
example: null
items:
type: string
risk:
type: array
description: ''
example: null
items:
type: string
enum:
- 'very low'
- low
- moderate
- high
- 'very high'
- 'no risk'
custom_filters:
type: array
description: ''
example: null
items:
type: string
required:
- with
- nationalities
- country
'/api/v1/cases/{id}':
patch:
summary: 'Update case'
operationId: updateCase
description: "This endpoint allows you to edit the specifications or status of an existing case.\nOnly fields provided will be updated, fields that are not provided will remain in the current state.\nWill return the updated case information.\n"
parameters:
-
in: header
name: OrganizationId
description: ''
example: 1
schema:
type: string
responses:
200:
description: ''
content:
application/json:
schema:
type: object
example:
additional_terms: null
address: null
aliases: null
case_groups: []
case_users: []
clients: []
company_number: null
confidence: Relative
country_of_birth: null
country_of_residence: null
created_at: '2023-08-02T18:48:22.000000Z'
date_of_birth: null
deleted_at: null
description: 'Voluptas ad rem illum est dignissimos aut provident vitae.'
excluded_terms: []
gender: null
group: null
group_id: null
id: 2049050
country: null
monitoring_frequency: 28
name: 'My test case'
nationalities: null
organization_id: 19
origin: import
risk: 0
searched_at: '2023-08-02T18:48:32.000000Z'
sources:
-
active: true
case_id: 2049050
data_source:
active: true
deactivated_at: '2023-02-21T12:57:31.000000Z'
id: 409
source: peps
vendor: default
data_source_id: 409
id: 18320030
searched_at: '2023-08-02T18:48:22.000000Z'
succeeded: true
-
active: true
case_id: 2049050
data_source:
active: true
deactivated_at: '2023-02-21T12:57:31.000000Z'
id: 413
source: news
vendor: default
data_source_id: 413
id: 18320031
searched_at: '2023-08-02T18:48:22.000000Z'
succeeded: true
status: Monitored
type: Person
unresolved_risk: 0
updated_at: '2023-08-02T18:48:22.000000Z'
user: null
user_id: null
uuid: a2546955-de2d-4907-a533-0846ee46f719
properties:
additional_terms:
type: string
example: null
address:
type: string
example: null
aliases:
type: string
example: null
case_groups:
type: array
example: []
case_users:
type: array
example: []
clients:
type: array
example: []
company_number:
type: string
example: null
confidence:
type: string
example: Relative
country_of_birth:
type: string
example: null
country_of_residence:
type: string
example: null
created_at:
type: string
example: '2023-08-02T18:48:22.000000Z'
date_of_birth:
type: string
example: null
deleted_at:
type: string
example: null
description:
type: string
example: 'Voluptas ad rem illum est dignissimos aut provident vitae.'
excluded_terms:
type: array
example: []
gender:
type: string
example: null
group:
type: string
example: null
group_id:
type: string
example: null
id:
type: integer
example: 2049050
country:
type: string
example: null
monitoring_frequency:
type: integer
example: 28
name:
type: string
example: 'My test case'
nationalities:
type: string
example: null
organization_id:
type: integer
example: 19
origin:
type: string
example: import
risk:
type: integer
example: 0
searched_at:
type: string
example: '2023-08-02T18:48:32.000000Z'
sources:
type: array
example:
-
active: true
case_id: 2049050
data_source:
active: true
deactivated_at: '2023-02-21T12:57:31.000000Z'
id: 409
source: peps
vendor: default
data_source_id: 409
id: 18320030
searched_at: '2023-08-02T18:48:22.000000Z'
succeeded: true
-
active: true
case_id: 2049050
data_source:
active: true
deactivated_at: '2023-02-21T12:57:31.000000Z'
id: 413
source: news
vendor: default
data_source_id: 413
id: 18320031
searched_at: '2023-08-02T18:48:22.000000Z'
succeeded: true
items:
type: object
properties:
active:
type: boolean
example: true
case_id:
type: integer
example: 2049050
data_source:
type: object
properties:
active:
type: boolean
example: true
deactivated_at:
type: string
example: '2023-02-21T12:57:31.000000Z'
id:
type: integer
example: 409
source:
type: string
example: peps
vendor:
type: string
example: default
data_source_id:
type: integer
example: 409
id:
type: integer
example: 18320030
searched_at:
type: string
example: '2023-08-02T18:48:22.000000Z'
succeeded:
type: boolean
example: true
status:
type: string
example: Monitored
type:
type: string
example: Person
unresolved_risk:
type: integer
example: 0
updated_at:
type: string
example: '2023-08-02T18:48:22.000000Z'
user:
type: string
example: null
user_id:
type: string
example: null
uuid:
type: string
example: a2546955-de2d-4907-a533-0846ee46f719
tags:
- Cases
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
clients:
type: array
description: "List of clients to link this case to. Each item can be either a number (client id) or string (client name). If a client with the given name doesn't exist, it will be created. Any previously linked clients that are not in this list will be unlinked. If you don't provide this parameter, the linked clients will not change. Must match the regex /^[a-z0-9 ]*$/i."
example: null
items:
type: string
excluded_terms:
type: array
description: 'List terms that should not be matched on when searching for new hits in this case. Must not be larger than 190.'
example: null
items:
type: string
status:
type: string
description: ''
example: Monitored
nullable: false
enum:
- 'In review'
- Archived
- Monitored
description:
type: string
description: 'Additional information to be displayed in the case.'
example: null
nullable: true
monitoring_frequency:
type: integer
description: ''
example: '1'
nullable: true
enum:
- '0'
- '1'
- '7'
- '28'
- '365'
monitoring_frequency_sanctions:
type: integer
description: 'The frequency in days that the case should be monitored for new sanctions hits. Must be one of 0, 1, 7, 28, 365. If set to 0, the case will not be monitored for sanctions hits.'
example: null
nullable: true
enum:
- '0'
- '1'
- '7'
- '28'
- '365'
monitoring_frequency_enforcements:
type: integer
description: 'The frequency in days that the case should be monitored for new enforcement hits. Must be one of 0, 1, 7, 28, 365. If set to 0, the case will not be monitored for enforcement hits.'
example: null
nullable: true
enum:
- '0'
- '1'
- '7'
- '28'
- '365'
monitoring_frequency_peps:
type: integer
description: 'The frequency in days that the case should be monitored for new PEP hits. Must be one of 0, 1, 7, 28, 365. If set to 0, the case will not be monitored for PEP hits.'
example: null
nullable: true
enum:
- '0'
- '1'
- '7'
- '28'
- '365'
monitoring_frequency_other:
type: integer
description: 'The frequency in days that the case should be monitored for new hits from other sources. Must be one of 0, 1, 7, 28, 365. If set to 0, the case will not be monitored for hits from other sources.'
example: null
nullable: true
enum:
- '0'
- '1'
- '7'
- '28'
- '365'
monitoring_frequency_news:
type: integer
description: 'The frequency in days that the case should be monitored for new media hits. Must be one of 0, 1, 7, 28, 365. If set to 0, the case will not be monitored for media hits.'
example: null
nullable: true
enum:
- '0'
- '1'
- '7'
- '28'
- '365'
name:
type: string
description: 'Must match the regex /[^'' '',\-\/\.]/. Must not be larger than 190.'
example: null
nullable: true
aliases:
type: array
description: 'Must not be larger than 190.'
example: null
items:
type: string
confidence:
type: string
description: ''
example: null
nullable: true
enum:
- Relative
- Exact
additional_terms:
type: array
description: 'Must not be larger than 190.'
example: null
items:
type: string
sources:
type: array
description: ''
example: null
items:
type: string
enum:
- sanctions
- enforcements
- peps
- news
- other
gender:
type: string
description: '[Person case] Must be one of Male or Female. This field is required when cases.passportVerificationForm is present.'
example: Male
nullable: true
enum:
- Female
- Male
nationalities:
type: array
description: '[Person case] array of max 10 nationalities, nationality ISO 3166-1 alpha-2 or alpha-3 country code string.'
example:
- NLD
items:
type: string
country_of_birth:
type: string
description: '[Person case] ISO 3166-1 alpha-2 or alpha-3 country code string.'
example: NLD
nullable: true
country_of_residence:
type: string
description: '[Person case] ISO 3166-1 alpha-2 or alpha-3 country code string.'
example: NLD
nullable: true
date_of_birth:
type: string
description: '[Person case] ISO date string. Must be a valid date in the format Y-m-d.'
example: '2000-01-31'
nullable: true
passportVerificationForm:
type: object
description: '[Person case] Optional passport check information to be added to the case.'
example: null
nullable: true
properties:
country:
type: string
description: 'This field is required when cases.passportVerificationForm is present. Must not be larger than 190.'
example: lenynwoqiefdflj
nullable: false
dateOfExpiry:
type: string
description: 'This field is required when cases.passportVerificationForm is present. Must not be larger than 190.'
example: nry
nullable: false
documentNumber:
type: string
description: 'This field is required when cases.passportVerificationForm is present. Must not be smaller than 6. Must not be larger than 9.'
example: eqb
nullable: false
givenNames:
type: string
description: 'This field is required when cases.passportVerificationForm is present. Must not be larger than 190.'
example: vigmpasxpsy
nullable: false
lastName:
type: string
description: 'This field is required when cases.passportVerificationForm is present. Must not be larger than 190.'
example: xvzuqommuklmhegap
nullable: false
nationality:
type: string
description: 'This field is required when cases.passportVerificationForm is present. This field must be 3 characters.'
example: trl
nullable: false
optionalData:
type: string
description: 'Must not be larger than 14.'
example: kmffyj
nullable: true
company_number:
type: string
description: '[Business case] string of max 190 characters. Must not be larger than 190.'
example: NL123
nullable: true
country:
type: string
description: '[Business case] ISO 3166-1 alpha-2 or alpha-3 country code string.'
example: NL
nullable: false
address:
type: string
description: '[Business case] string of max 190 characters. Must not be larger than 190.'
example: '3721 West Fork Street, Montana'
nullable: true
asset_type:
type: string
description: '[Asset case] Must be one of vessel or aircraft.'
example: vessel
nullable: true
enum:
- vessel
- aircraft
identifier:
type: string
description: '[Asset case] string of max 190 characters. Must not be larger than 190.'
example: '123456'
nullable: true
search:
type: boolean
description: "Controls whether or not to initiate a new search after updating the case. By default, this parameter is set to false.\n\nWhen search is set to false (the default), the operation will not trigger a new search on the case. This means that no changes will be made to the existing hits, resolved or unresolved.\nHowever, when you set search to true, the API will perform a new search on the case. Here's what happens when you initiate a new search:\n\nUnresolved Hits: Will be deleted. \nResolved Hits: Any existing resolved hits, regardless of their current state, will not be deleted.\n\nPossible refound hits: It is possible that some hits that were previously unresolved might be refound during the new search. These hits will reappear as unresolved items. \nPossible new hits: The new search might also discover new hits that were not present in the previous search. These hits will be added as unresolved items."
example: null
nullable: true
required:
- nationalities
parameters:
-
in: path
name: id
description: 'The ID of the case.'
example: 4C37Afb8-476b-Becb-a17f-7c22DeC8ebd7|77432
required: true
schema:
type: string
'/api/v1/cases/{id}/hits-key-information':
get:
summary: 'Case hits key information'
operationId: caseHitsKeyInformation
description: "This endpoint allows you to get the key information of a case's hits."
parameters:
-
in: header
name: OrganizationId
description: ''
example: 1
schema:
type: string
responses:
200:
description: ''
content:
application/json:
schema:
type: object
example:
unresolved:
enforcements:
-
data:
birth_dates: null
connections: null
name: 'John Doe'
nationalities:
-
country: 'United States of America'
resolution: unresolved
source: enforcements
properties:
unresolved:
type: object
properties:
enforcements:
type: array
example:
-
data:
birth_dates: null
connections: null
name: 'John Doe'
nationalities:
-
country: 'United States of America'
resolution: unresolved
source: enforcements
items:
type: object
properties:
data:
type: object
properties:
birth_dates:
type: string
example: null
connections:
type: string
example: null
name:
type: string
example: 'John Doe'
nationalities:
type: array
example:
-
country: 'United States of America'
items:
type: object
properties:
country: { type: string, example: 'United States of America' }
resolution:
type: string
example: unresolved
source:
type: string
example: enforcements
tags:
- Cases
parameters:
-
in: path
name: id
description: 'The ID of the case.'
example: 171689E2-dbCF-FE4c-A703-1baD2A5875bd|86334
required: true
schema:
type: string
/api/v1/clients:
post:
summary: 'Create client'
operationId: createClient
description: 'This endpoint allows you to create a new client.'
parameters:
-
in: header
name: OrganizationId
description: ''
example: 1
schema:
type: string
responses: { }
tags:
- Clients
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
name:
type: string
description: 'Must not be larger than 190.'
example: uphkaxwoeaidocq
nullable: false
description:
type: string
description: 'Must not be larger than 2000.'
example: 'Reprehenderit ratione ipsam mollitia sed sit.'
nullable: true
assignee_user_id:
type: integer
description: ''
example: 2
nullable: true
collaborator_user_ids:
type: array
description: 'Must not be smaller than 1.'
example:
- 38
items:
type: integer
required:
- name
'/api/v1/clients/{id}':
get:
summary: 'Get client'
operationId: getClient
description: 'This endpoint allows you to get detailed information on a specific client.'
parameters:
-
in: header
name: OrganizationId
description: ''
example: 1
schema:
type: string
responses: { }
tags:
- Clients
parameters:
-
in: path
name: id
description: 'The ID of the client.'
example: '4'
required: true
schema:
type: string
/api/v1/clients/searches:
post:
summary: 'Search clients'
operationId: searchClients
description: "This endpoint allows you to search for clients using filters.\nReturning basic information on a list of clients.\nPaginating through results is possible using the per_page and page parameters."
parameters:
-
in: header
name: OrganizationId
description: ''
example: 1
schema:
type: string
responses: { }
tags:
- Clients
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
custom_filters:
type: array
description: "Specific filters: - 'has_onboarding_forms': Filter clients that have at least one onboarding form."
example:
- has_onboarding_forms
items:
type: string
enum:
- assigned
- has_onboarding_forms
id:
type: array
description: 'Client IDs to be filtered on. Must not be smaller than 1.'
example: null
items:
type: integer
not_id:
type: array
description: 'Must not be smaller than 1.'
example:
- 53
items:
type: integer
client_client_id:
type: array
description: 'Must not be smaller than 1.'
example:
- 57
items:
type: integer
not_client_client_id:
type: array
description: 'Must not be smaller than 1.'
example:
- 10
items:
type: integer
not_cases_id:
type: array
description: 'Must not be smaller than 1.'
example:
- 69
items:
type: integer
name:
type: string
description: 'Search on client names. Supports SQL LIKE wildcards.'
example: null
nullable: true
onboarding_status:
type: array
description: ''
example:
- completed
items:
type: string
enum:
- 'in progress'
- 'submitted by client'
- completed
- declined
organization_id:
type: array
description: 'Filter on clients from a specific organization (if token has access to multiple organizations). Must not be smaller than 1.'
example: null
items:
type: integer
page:
type: integer
description: 'Page to be returned. Must not be smaller than 1.'
example: 1
nullable: false
per_page:
type: integer
description: 'number between 1 and 1000. Must not be smaller than 1. Must not be larger than 1000.'
example: 10
nullable: false
sort_by:
type: string
description: ''
example: updated_at
nullable: true
enum:
- updated_at
- name
- risk
- resolve_progress
- status
- onboarding_status
sort_order:
type: string
description: ''
example: asc
nullable: true
enum:
- asc
- desc
status:
type: array
description: ''
example: null
items:
type: string
enum:
- Active
- Archived
updated_at:
type: string
description: ''
example: null
nullable: true
required:
- id
- not_id
- client_client_id
- not_client_client_id
- not_cases_id
- organization_id
/api/v1/onboarding-forms/searches:
post:
summary: 'Search onboarding forms'
operationId: searchOnboardingForms
description: "This endpoint allows you to search for onboarding forms using filters.\nReturning basic information on a list of onboarding forms.\nPaginating through results is possible using the per_page and page parameters."
parameters:
-
in: header
name: OrganizationId
description: ''
example: 1
schema:
type: string
responses: { }
tags:
- 'Onboarding forms'
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
id:
type: array
description: 'Onboarding form IDs to be filtered on. Must not be smaller than 1.'
example: null
items:
type: integer
page:
type: integer
description: 'Page to be returned. Must not be smaller than 1.'
example: 1
nullable: false
per_page:
type: integer
description: 'number between 1 and 1000. Must not be smaller than 1. Must not be larger than 1000.'
example: 10
nullable: false
updated_at:
type: string
description: ''
example: null
nullable: true
sort_by:
type: string
description: ''
example: created_at
nullable: true
enum:
- created_at
- updated_at
- name
sort_order:
type: string
description: ''
example: asc
nullable: true
enum:
- asc
- desc
organization_id:
type: array
description: 'Filter on onboarding forms from a specific organization (if token has access to multiple organizations). Must not be smaller than 1.'
example: null
items:
type: integer
external_user_ids:
type: array
description: 'Must not be smaller than 1.'
example:
- 46
items:
type: integer
client_id:
type: array
description: 'Must not be smaller than 1.'
example:
- 61
items:
type: integer
with:
type: array
description: 'Additional information to include with the onboarding forms. Must be one of: user, externalUsers, organizationTheme.'
example:
- user
items:
type: string
enum:
- user
- externalUsers
- organizationTheme
required:
- external_user_ids
- with
/api/v1/onboarding-form-questions/searches:
post:
summary: 'Search onboarding form questions'
operationId: searchOnboardingFormQuestions
description: 'This endpoint allows you to search for onboarding form questions using filters.'
parameters:
-
in: header
name: OrganizationId
description: ''
example: 1
schema:
type: string
responses:
200:
description: ''
content:
application/json:
schema:
type: object
example:
data:
-
id: 164
title: 'Yes / No'
answer: 'Yes'
type: true_false
created_at: '2024-04-18T09:55:40.000000Z'
updated_at: '2024-04-18T09:55:48.000000Z'
-
id: 178
title: 'Date of birth'
answer: '2024-04-02'
type: datepicker
created_at: '2024-04-19T07:47:24.000000Z'
updated_at: '2024-04-19T07:58:17.000000Z'
-
id: 168
title: 'True or false'
answer: 'Yes'
type: true_false
created_at: '2024-04-18T10:01:46.000000Z'
updated_at: '2024-04-18T10:01:54.000000Z'
-
id: 173
title: 'Yes / No'
answer: 'Yes'
type: true_false
created_at: '2024-04-18T11:40:29.000000Z'
updated_at: '2024-04-18T11:51:59.000000Z'
-
id: 175
title: Name
answer: 'John Doe'
type: text
created_at: '2024-04-18T11:51:56.000000Z'
updated_at: '2024-04-18T11:52:01.000000Z'
-
id: 176
title: E-mail
answer: john.doe@vartion.com
type: text
created_at: '2024-04-18T11:51:56.000000Z'
updated_at: '2024-04-18T11:52:04.000000Z'
-
id: 548
title: Name
answer: null
type: text
created_at: '2024-05-28T11:15:07.000000Z'
updated_at: '2024-05-28T11:15:07.000000Z'
-
id: 170
title: Website
answer: null
type: url
created_at: '2024-04-18T10:01:46.000000Z'
updated_at: '2024-05-07T07:39:07.000000Z'
-
id: 166
title: 'Please give a number'
answer: '2'
type: number
created_at: '2024-04-18T10:01:46.000000Z'
updated_at: '2024-04-23T12:42:32.000000Z'
-
id: 167
title: Website
answer: 'http://example.com'
type: url
created_at: '2024-04-18T10:01:46.000000Z'
updated_at: '2024-04-23T12:42:38.000000Z'
-
id: 171
title: 'Choose a fruit'
answer: null
type: dropdown
created_at: '2024-04-18T10:01:46.000000Z'
updated_at: '2024-05-07T07:39:10.000000Z'
-
id: 172
title: 'Choose another fruit'
answer: a
type: dropdown
created_at: '2024-04-18T10:01:46.000000Z'
updated_at: '2024-04-23T12:42:40.000000Z'
-
id: 177
title: 'Please upload your document'
answer: null
type: upload
created_at: '2024-04-18T11:51:56.000000Z'
updated_at: '2024-04-18T11:51:56.000000Z'
-
id: 185
title: E-mail
answer: null
type: text
created_at: '2024-04-22T08:11:43.000000Z'
updated_at: '2024-04-23T14:28:48.000000Z'
-
id: 169
title: 'Please choose another number'
answer: '2'
type: number
created_at: '2024-04-18T10:01:46.000000Z'
updated_at: '2024-04-23T12:43:29.000000Z'
meta:
current_page: 1
from: 1
last_page: 13
per_page: 15
to: 15
total: 187
properties:
data:
type: array
example:
-
id: 164
title: 'Yes / No'
answer: 'Yes'
type: true_false
created_at: '2024-04-18T09:55:40.000000Z'
updated_at: '2024-04-18T09:55:48.000000Z'
-
id: 178
title: 'Date of birth'
answer: '2024-04-02'
type: datepicker
created_at: '2024-04-19T07:47:24.000000Z'
updated_at: '2024-04-19T07:58:17.000000Z'
-
id: 168
title: 'True or false'
answer: 'Yes'
type: true_false
created_at: '2024-04-18T10:01:46.000000Z'
updated_at: '2024-04-18T10:01:54.000000Z'
-
id: 173
title: 'Yes / No'
answer: 'Yes'
type: true_false
created_at: '2024-04-18T11:40:29.000000Z'
updated_at: '2024-04-18T11:51:59.000000Z'
-
id: 175
title: Name
answer: 'John Doe'
type: text
created_at: '2024-04-18T11:51:56.000000Z'
updated_at: '2024-04-18T11:52:01.000000Z'
-
id: 176
title: E-mail
answer: john.doe@vartion.com
type: text
created_at: '2024-04-18T11:51:56.000000Z'
updated_at: '2024-04-18T11:52:04.000000Z'
-
id: 548
title: Name
answer: null
type: text
created_at: '2024-05-28T11:15:07.000000Z'
updated_at: '2024-05-28T11:15:07.000000Z'
-
id: 170
title: Website
answer: null
type: url
created_at: '2024-04-18T10:01:46.000000Z'
updated_at: '2024-05-07T07:39:07.000000Z'
-
id: 166
title: 'Please give a number'
answer: '2'
type: number
created_at: '2024-04-18T10:01:46.000000Z'
updated_at: '2024-04-23T12:42:32.000000Z'
-
id: 167
title: Website
answer: 'http://example.com'
type: url
created_at: '2024-04-18T10:01:46.000000Z'
updated_at: '2024-04-23T12:42:38.000000Z'
-
id: 171
title: 'Choose a fruit'
answer: null
type: dropdown
created_at: '2024-04-18T10:01:46.000000Z'
updated_at: '2024-05-07T07:39:10.000000Z'
-
id: 172
title: 'Choose another fruit'
answer: a
type: dropdown
created_at: '2024-04-18T10:01:46.000000Z'
updated_at: '2024-04-23T12:42:40.000000Z'
-
id: 177
title: 'Please upload your document'
answer: null
type: upload
created_at: '2024-04-18T11:51:56.000000Z'
updated_at: '2024-04-18T11:51:56.000000Z'
-
id: 185
title: E-mail
answer: null
type: text
created_at: '2024-04-22T08:11:43.000000Z'
updated_at: '2024-04-23T14:28:48.000000Z'
-
id: 169
title: 'Please choose another number'
answer: '2'
type: number
created_at: '2024-04-18T10:01:46.000000Z'
updated_at: '2024-04-23T12:43:29.000000Z'
items:
type: object
properties:
id:
type: integer
example: 164
title:
type: string
example: 'Yes / No'
answer:
type: string
example: 'Yes'
type:
type: string
example: true_false
created_at:
type: string
example: '2024-04-18T09:55:40.000000Z'
updated_at:
type: string
example: '2024-04-18T09:55:48.000000Z'
meta:
type: object
properties:
current_page:
type: integer
example: 1
from:
type: integer
example: 1
last_page:
type: integer
example: 13
per_page:
type: integer
example: 15
to:
type: integer
example: 15
total:
type: integer
example: 187
tags:
- 'Onboarding forms'
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
page:
type: integer
description: 'Page to be returned. Must not be smaller than 1.'
example: 1
nullable: true
per_page:
type: integer
description: 'number between 1 and 1000. Must not be smaller than 1. Must not be larger than 1000.'
example: 10
nullable: true
onboarding_form_ids:
type: array
description: 'Filter on specific onboarding forms. Must not be smaller than 1.'
example: null
items:
type: integer
required:
- onboarding_form_ids
'/api/v1/onboarding-form-question-uploads/{id}':
get:
summary: 'Download `upload` question file'
operationId: downloaduploadQuestionFile
description: 'This endpoint allows you to download an uploaded file for a question in an onboarding form.'
parameters:
-
in: header
name: OrganizationId
description: ''
example: 1
schema:
type: string
responses:
200:
description: application/pdf
content:
text/plain:
schema:
type: string
example: ''
tags:
- 'Onboarding forms'
parameters:
-
in: path
name: id
description: 'The ID of the onboarding form question.'
example: 1
required: true
schema:
type: integer
/api/v1/one-time-case-links:
post:
summary: 'Create one time case links'
operationId: createOneTimeCaseLinks
description: 'This endpoint allows you to create one time case links. '
parameters:
-
in: header
name: OrganizationId
description: ''
example: 1
schema:
type: string
responses:
200:
description: ''
content:
application/json:
schema:
type: object
example:
case_uuid: ac6962da-4ff0-42ad-b5ee-35153d15e924
created_at: '2023-08-14T10:50:25.000000Z'
created_by_id: 4
expires_at: '2099-01-31T23:00:00.000000Z'
id: 11
return_url: 'https://localhost'
token: ehgwKBKPPubqQ7CC
updated_at: '2023-08-14T10:50:25.000000Z'
user_id: 13989
properties:
case_uuid:
type: string
example: ac6962da-4ff0-42ad-b5ee-35153d15e924
created_at:
type: string
example: '2023-08-14T10:50:25.000000Z'
created_by_id:
type: integer
example: 4
expires_at:
type: string
example: '2099-01-31T23:00:00.000000Z'
id:
type: integer
example: 11
return_url:
type: string
example: 'https://localhost'
token:
type: string
example: ehgwKBKPPubqQ7CC
updated_at:
type: string
example: '2023-08-14T10:50:25.000000Z'
user_id:
type: integer
example: 13989
tags:
- 'One time case links'
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
case_uuid:
type: uuid
description: 'The uuid of the case.'
example: ac6962da-4ff0-42ad-b5ee-35153d15e924
nullable: false
user_email:
type: email
description: 'The email address of the user that will use the link.'
example: example@vartion.com
nullable: false
return_url:
type: url
description: 'The url that the user will be redirected to when they finish resolving the case. If no return_url is supplied, the window is closed instead. (this only works when the page is opened in a new tab)'
example: 'https://localhost'
nullable: false
expires_at:
type: datetime
description: 'When the link should expire. This needs to be later than "now" and less than 31 days from now.'
example: '1970-01-31 23:00:00'
nullable: false
interface_language:
type: string
description: 'The language that the user interface should be displayed in. Must be one of: en-gb, en, nl, fr, ru, or es.'
example: en-gb
nullable: false
required:
- case_uuid
- user_email
- expires_at
'/api/v1/one-time-case-links/{id}':
get:
summary: 'View a one time case link'
operationId: viewAOneTimeCaseLink
description: 'This endpoint allows you to view a one time case link. '
parameters:
-
in: header
name: OrganizationId
description: ''
example: 1
schema:
type: string
responses:
200:
description: ''
content:
application/json:
schema:
type: object
example:
case_uuid: ac6962da-4ff0-42ad-b5ee-35153d15e924
created_at: '2023-08-14T10:50:25.000000Z'
created_by_id: 4
expires_at: '2099-01-31T23:00:00.000000Z'
id: 11
return_url: 'https://localhost'
updated_at: '2023-08-14T10:50:25.000000Z'
used_at: null
user_id: 13989
properties:
case_uuid:
type: string
example: ac6962da-4ff0-42ad-b5ee-35153d15e924
created_at:
type: string
example: '2023-08-14T10:50:25.000000Z'
created_by_id:
type: integer
example: 4
expires_at:
type: string
example: '2099-01-31T23:00:00.000000Z'
id:
type: integer
example: 11
return_url:
type: string
example: 'https://localhost'
updated_at:
type: string
example: '2023-08-14T10:50:25.000000Z'
used_at:
type: string
example: null
user_id:
type: integer
example: 13989
tags:
- 'One time case links'
delete:
summary: 'Delete a one time case link'
operationId: deleteAOneTimeCaseLink
description: 'This endpoint allows you to delete a one time case link. '
parameters:
-
in: header
name: OrganizationId
description: ''
example: 1
schema:
type: string
responses: { }
tags:
- 'One time case links'
parameters:
-
in: path
name: id
description: 'The id of the one time case link.'
example: 1
required: true
schema:
type: integer
/v1/one-time-case-link-authentication:
get:
summary: 'Authenticate using a one time case link'
operationId: authenticateUsingAOneTimeCaseLink
description: "This endpoint allows you to authenticate using a one time case link. \nWhen successful, the user will be redirected to the page where they can resolve the linked case."
parameters: []
responses:
200:
description: ''
content:
text/plain:
schema:
type: string
example: "\n\n...\n\n"
422:
description: ''
content:
application/json:
schema:
type: object
example:
message: 'Incorrect id or token.'
errors:
authentication:
- 'Incorrect id or token.'
properties:
message:
type: string
example: 'Incorrect id or token.'
errors:
type: object
properties:
authentication:
type: array
example:
- 'Incorrect id or token.'
items:
type: string
tags:
- 'One time case links'
requestBody:
required: true
content:
application/x-www-form-urlencoded:
schema:
type: object
properties:
id:
type: integer
description: 'The one time case link ID.'
example: 1
nullable: false
token:
type: 'The one time case link token.'
description: ''
example: fpncIktnu0GfUKJl
nullable: false
required:
- id
- token
security: []
post:
summary: 'Authenticate using a one time case link'
operationId: authenticateUsingAOneTimeCaseLink
description: "This endpoint allows you to authenticate using a one time case link. \nWhen successful, the user will be redirected to the page where they can resolve the linked case."
parameters: []
responses:
200:
description: ''
content:
text/plain:
schema:
type: string
example: "\n\n...\n\n"
422:
description: ''
content:
application/json:
schema:
type: object
example:
message: 'Incorrect id or token.'
errors:
authentication:
- 'Incorrect id or token.'
properties:
message:
type: string
example: 'Incorrect id or token.'
errors:
type: object
properties:
authentication:
type: array
example:
- 'Incorrect id or token.'
items:
type: string
tags:
- 'One time case links'
requestBody:
required: true
content:
application/x-www-form-urlencoded:
schema:
type: object
properties:
id:
type: integer
description: 'The one time case link ID.'
example: 1
nullable: false
token:
type: 'The one time case link token.'
description: ''
example: fpncIktnu0GfUKJl
nullable: false
required:
- id
- token
security: []
/api/v1/pdf/case:
post:
summary: 'Generate case reports'
operationId: generateCaseReports
description: "This endpoint allows you to start the generation of one or more PDF case reports.\nCases to be used are selected using the filter parameter.\nAn id is returned which can be used to check if the download is finished and download the PDF when it is finished."
parameters:
-
in: header
name: OrganizationId
description: ''
example: 1
schema:
type: string
responses:
200:
description: ''
content:
text/plain:
schema:
type: string
example: "{\n \"id\": \"99d92417-1264-4cce-9e86-e71a8357e044\",\n \"name\": \"Generating case reports...\",\n \"totalJobs\": 1,\n \"pendingJobs\": 1,\n \"progress\": 0,\n \"createdAt\": \"2023-08-09T11:02:04.000000Z\",\n}"
tags:
- Reports
requestBody:
required: false
content:
application/json:
schema:
type: object
properties:
filename:
type: string
description: 'Must not be larger than 190.'
example: fiphukrvsk
nullable: true
detailed:
type: boolean
description: ''
example: true
nullable: false
language:
type: string
description: 'The language that the report should be generated in. Must be one of: en-gb, en, nl, fr, ru, or es.'
example: ru
nullable: true
enum:
- en-gb
- en
- nl
- fr
- ru
- es
pages:
type: array
description: 'Pages to include in the report. Must be one or more of: overview, input, policies, passport_verification, key_findings, audit, comments, unresolved, positive, negative.'
example:
- overview
items:
type: string
enum:
- overview
- input
- policies
- passport_verification
- key_findings
- audit
- comments
- unresolved
- positive
- negative
comment:
type: string
description: 'An additional comment to be displayed in the report.'
example: 'Automatically generated from the Pascal API'
nullable: true
to_email:
type: boolean
description: 'whether or not to send the report as an email to the API user.'
example: false
nullable: false
filters:
type: object
description: ''
example: []
nullable: false
properties:
id:
type: array
description: 'Case IDs to be filtered on. Must not be smaller than 1.'
example: null
items:
type: integer
type:
type: array
description: 'Must be one of Person, Business, or Asset.'
example: null
items:
type: string
enum:
- Person
- Business
- Asset
status:
type: array
description: ''
example: null
items:
type: string
enum:
- Preview
- 'In review'
- Archived
- Monitored
user_id:
type: array
description: 'Filter on case assignees using user ids.'
example: null
items:
type: integer
nullable: true
group_id:
type: array
description: 'Filter on case assigned to groups using group ids.'
example: null
items:
type: integer
nullable: true
organization_id:
type: array
description: 'Filter on cases from a specific organization (if token has access to multiple organizations).'
example: null
items:
type: integer
origin:
type: array
description: ''
example: null
items:
type: string
enum:
- person-check
- business-check
- hyperlink
confidence:
type: array
description: ''
example: null
items:
type: string
enum:
- Exact
- Relative
created_at:
type: string
description: ''
example: null
nullable: true
updated_at:
type: string
description: ''
example: null
nullable: true
hit_time_range:
type: string
description: ''
example: null
nullable: true
name:
type: string
description: 'Full text search on case names. Must not be larger than 190.'
example: null
nullable: true
client_id:
type: array
description: 'Cases associated to a list of clients. Must not be smaller than 1.'
example: null
items:
type: integer
nullable: true
exclude_client_id:
type: array
description: 'Exclude cases associated to any of a list of clients. Must not be smaller than 1.'
example: null
items:
type: integer
nullable: true
transaction_id:
type: array
description: 'Must not be smaller than 1.'
example:
- 13
items:
type: integer
nullable: true
exclude_transaction_id:
type: array
description: 'Must not be smaller than 1.'
example:
- 13
items:
type: integer
nullable: true
deleted:
type: boolean
description: ''
example: false
nullable: false
uuid:
type: array
description: 'Case UUIDs to be filtered on. Must not be larger than 36.'
example:
- a2546955-de2d-4907-a533-0846ee46f719
items:
type: string
query:
type: string
description: 'Must not be larger than 190.'
example: null
nullable: true
nationalities:
type: array
description: ''
example: null
items:
type: string
country:
type: array
description: ''
example: null
items:
type: string
risk:
type: array
description: ''
example: null
items:
type: string
enum:
- 'very low'
- low
- moderate
- high
- 'very high'
- 'no risk'
custom_filters:
type: array
description: ''
example: null
items:
type: string
'/api/v1/reports/{id}/download':
get:
summary: 'Download reports'
operationId: downloadReports
description: 'This endpoint allows you to download a previously generated report, using a report id or a report job id.'
parameters:
-
in: header
name: OrganizationId
description: ''
example: 1
schema:
type: string
responses:
200:
description: File
content:
text/plain:
schema:
type: string
example: 'PDF report file'
404:
description: ''
content:
text/plain:
schema:
type: string
example: 'Report is not (yet) generated'
tags:
- Reports
parameters:
-
in: path
name: id
description: 'The ID of the report.'
example: 757E06f8-3B6d-1c0c-d68c-3aA0dceB14bc|1
required: true
schema:
type: string
tags:
-
name: Cases
description: ''
-
name: Clients
description: ''
-
name: 'Onboarding forms'
description: ''
-
name: 'One time case links'
description: "The usual flow for a one time case link is as follows:\n1. Create a one time case link using your personal access token.\n2. Store the generated one time case link id and token somewhere secure.\n3. Use a one time case link (this is done by your user). See: Authenticate using a one time case link"
-
name: Reports
description: ''
components:
securitySchemes:
default:
type: http
scheme: bearer
description: 'You can retrieve your token by visiting your personal settings page and clicking Add API token.'
security:
-
default: []