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.\nA list of \"imported\" case UUIDs will also be returned. This allows you to distinguish between cases that were imported and those that were deduplicated.\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: text/plain: schema: type: string example: "{\n \"id\": \"99cbb5f6-49a7-492c-a1de-92ff356d98d8\",\n \"totalJobs\": 1,\n \"pendingJobs\": 1,\n \"progress\": 0,\n \"createdAt\": \"2023-08-02T18:48:22.000000Z\",\n \"uuids\": [\n \"a2546955-de2d-4907-a533-0846ee46f719\",\n \"d6253422-5197-429c-a8eb-4af7f6f7fffc\",\n ],\n \"imported\": [\n \"a2546955-de2d-4907-a533-0846ee46f719\",\n ]\n}" 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 255.' 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 255.' 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 255.' 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 255.' example: - ejlzrltnhdpqbksimplwqnrq items: type: string sources: type: array description: 'If provided, will only enable these sources in the created case. Must be one or more of: sanctions, enforcements, peps, news, other. Sources that are not enabled in the organization will be skipped.' example: - sanctions 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] [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 255.' example: jfopsdrylyhh 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-02-17' 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: hevevq nullable: false givenNames: type: string description: 'This field is required when cases.passportVerificationForm is present. Must not be larger than 255.' example: qnpbngpkednmuwxumvissvjpf nullable: false lastName: type: string description: 'This field is required when cases.passportVerificationForm is present. Must not be larger than 255.' example: h 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: rqvczkliyvkxlx nullable: true company_number: type: string description: '[Business case] string of max 255 characters. Must not be larger than 255.' 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 255 characters. Must not be larger than 255.' 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 255 characters. Must not be larger than 255.' 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 update_duplicates_clients: type: boolean description: 'If a case with the same name already exists, its client(s) will be updated with the provided information.' 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: e19710b6-8eaf-3b37-8355-b87128891680 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: 31 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: desc 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: desc 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 255.' 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 255.' example: null nullable: true nationalities: type: array description: '' example: null items: type: string nullable: true 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 - 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 255.' 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: '0' nullable: true enum: - '0' - '1' - '7' - '28' - '90' - '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, 90, 365. If set to 0, the case will not be monitored for sanctions hits.' example: null nullable: true enum: - '0' - '1' - '7' - '28' - '90' - '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, 90, 365. If set to 0, the case will not be monitored for enforcement hits.' example: null nullable: true enum: - '0' - '1' - '7' - '28' - '90' - '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, 90, 365. If set to 0, the case will not be monitored for PEP hits.' example: null nullable: true enum: - '0' - '1' - '7' - '28' - '90' - '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, 90, 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' - '90' - '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, 90, 365. If set to 0, the case will not be monitored for media hits.' example: null nullable: true enum: - '0' - '1' - '7' - '28' - '90' - '365' name: type: string description: 'Must match the regex /[^'' '',\-\/\.]/. Must not be larger than 255.' example: null nullable: true aliases: type: array description: 'Must not be larger than 255.' 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 255.' example: null items: type: string sources: type: array description: 'If provided, will update the enabled case sources to the selection. Must be one or more of: sanctions, enforcements, peps, news, other.' 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 255.' example: sfwuyocjgunazemamijxxo nullable: false dateOfExpiry: type: string description: 'This field is required when cases.passportVerificationForm is present. Must not be larger than 255.' example: gjnjgiyrjrxpiqqvqrevsigj 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: ejw nullable: false givenNames: type: string description: 'This field is required when cases.passportVerificationForm is present. Must not be larger than 255.' example: reihmencpbirhrywsfan nullable: false lastName: type: string description: 'This field is required when cases.passportVerificationForm is present. Must not be larger than 255.' example: mmmfawbguhupxbeb nullable: false nationality: type: string description: 'This field is required when cases.passportVerificationForm is present. This field must be 3 characters.' example: lgk nullable: false optionalData: type: string description: 'Must not be larger than 14.' example: bwizlbeyliys nullable: true company_number: type: string description: '[Business case] string of max 255 characters. Must not be larger than 255.' 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 255 characters. Must not be larger than 255.' 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 255 characters. Must not be larger than 255.' 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: 2DF62d4e-85D5-aA8c-64fE-F6Fb7fCE4f98|2726854 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: BC6D188A-ECfc-2F91-5Fa4-51F77a010B43|4109 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 255.' example: lmuoazbheods nullable: false description: type: string description: 'Must not be larger than 2000.' example: 'Minus suscipit quo magnam cum facere ex voluptatum.' nullable: true assignee_user_id: type: integer description: '' example: 9 nullable: true collaborator_user_ids: type: array description: 'Must not be smaller than 1.' example: - 26 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: '77' 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: - 77 items: type: integer client_client_id: type: array description: 'Must not be smaller than 1.' example: - 7 items: type: integer not_client_client_id: type: array description: 'Must not be smaller than 1.' example: - 52 items: type: integer not_cases_id: type: array description: 'Must not be smaller than 1.' example: - 63 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: - 'in review' items: type: string enum: - 'waiting for client' - 'in review' - 'waiting for approval' - 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/clients/{id}/clients': post: summary: 'Link clients' operationId: linkClients description: 'This endpoint allows you to link a client to other clients.' parameters: [] responses: 204: description: 'Clients linked successfully.' tags: - Clients requestBody: required: true content: application/json: schema: type: object properties: client_ids: type: array description: "The list of client id's to link to the client." example: - 2 - 3 items: type: string required: - client_ids delete: summary: 'Unlink clients' operationId: unlinkClients description: 'This endpoint allows you to unlink a client from other clients.' parameters: [] responses: 204: description: 'Clients unlinked successfully.' tags: - Clients requestBody: required: true content: application/json: schema: type: object properties: client_ids: type: array description: "The list of client id's to unlink from the client." example: - 2 - 3 items: type: string required: - client_ids parameters: - in: path name: id description: 'The id of the client that you want to link to other clients.' example: 1 required: true schema: type: integer /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: - 38 items: type: integer client_id: type: array description: 'Must not be smaller than 1.' example: - 21 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 - questions 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.

\nThe parent_question_id field is used to retrieve a question's parent, enabling hierarchical organization of questions. This is particularly useful for groups of questions from repeatable entities, such as persons, businesses, or other repeaters.
\nFor example, in a form with questions about multiple individuals (e.g., Person 1, Person 2), the parent_question_id links each nested question (like \"First Name\" or \"Last Name\") to its corresponding parent entity. By querying with the parent_question_id, you can determine which person or entity a specific question belongs to within the form structure.
\nParent questions for repeatable entities will always have an empty answer field." parameters: - in: header name: OrganizationId description: '' example: 1 schema: type: string responses: 200: description: '' content: application/json: schema: type: object example: data: - id: 164 question_id: 2 parent_question_id: null 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 question_id: 3 parent_question_id: null 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 question_id: 4 parent_question_id: null 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 question_id: 5 parent_question_id: null 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 question_id: 6 parent_question_id: null 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 question_id: 7 parent_question_id: null 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 question_id: 8 parent_question_id: null title: Name answer: null type: text created_at: '2024-05-28T11:15:07.000000Z' updated_at: '2024-05-28T11:15:07.000000Z' - id: 170 question_id: 9 parent_question_id: null title: Website answer: null type: url created_at: '2024-04-18T10:01:46.000000Z' updated_at: '2024-05-07T07:39:07.000000Z' - id: 166 question_id: 10 parent_question_id: null 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 question_id: 11 parent_question_id: null 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 question_id: 12 parent_question_id: null 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 question_id: 13 parent_question_id: null 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 question_id: 14 parent_question_id: null 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: 189 question_id: 15 parent_question_id: null title: 'Persons to email' answer: null type: repeater created_at: '2024-04-22T08:11:43.000000Z' updated_at: '2024-04-23T14:28:48.000000Z' - id: 185 question_id: 16 parent_question_id: 15 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 question_id: 17 parent_question_id: null 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 question_id: 2 parent_question_id: null 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 question_id: 3 parent_question_id: null 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 question_id: 4 parent_question_id: null 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 question_id: 5 parent_question_id: null 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 question_id: 6 parent_question_id: null 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 question_id: 7 parent_question_id: null 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 question_id: 8 parent_question_id: null title: Name answer: null type: text created_at: '2024-05-28T11:15:07.000000Z' updated_at: '2024-05-28T11:15:07.000000Z' - id: 170 question_id: 9 parent_question_id: null title: Website answer: null type: url created_at: '2024-04-18T10:01:46.000000Z' updated_at: '2024-05-07T07:39:07.000000Z' - id: 166 question_id: 10 parent_question_id: null 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 question_id: 11 parent_question_id: null 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 question_id: 12 parent_question_id: null 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 question_id: 13 parent_question_id: null 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 question_id: 14 parent_question_id: null 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: 189 question_id: 15 parent_question_id: null title: 'Persons to email' answer: null type: repeater created_at: '2024-04-22T08:11:43.000000Z' updated_at: '2024-04-23T14:28:48.000000Z' - id: 185 question_id: 16 parent_question_id: 15 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 question_id: 17 parent_question_id: null 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 question_id: type: integer example: 2 parent_question_id: type: string example: null 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: batch_name: type: string description: 'Must not be larger than 255.' example: eckkhxea nullable: true filename: type: string description: 'Must not be larger than 255.' example: wpu nullable: true detailed: type: boolean description: '' example: false 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: es 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 255.' 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: - 62 items: type: integer nullable: true exclude_transaction_id: type: array description: 'Must not be smaller than 1.' example: - 25 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 255.' example: null nullable: true nationalities: type: array description: '' example: null items: type: string nullable: true 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: 7Fbe36cF-a60C-1faf-178c-ce7FCEBdD41a|44121166 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: []