ComplyAdvantage Case Management API
Comments, tags, assignment, and match status workflow on searches.
Comments, tags, assignment, and match status workflow on searches.
Every API here is available over the APIs.io API and to AI agents over MCP.
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
find_apisBrowse and filter every API in the catalog.get_api_artifactsOne API's artifacts, grouped by type.get_openapiThe primary OpenAPI for this API.find_similar_apisAPIs that look like this one.apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.resolveTurn a domain, URL or GitHub org into the provider it belongs to.find_cohortsEvery scored population of providers in the catalog.curl "https://apis.io/api/v1/apis/complyadvantage-case-management-api"
curl "https://apis.io/api/v1/apis?limit=25"
Discovery needs no key. Ratings and market analysis are Pro.
Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.
A second provider on the same verified email joins the account you already have.
openapi: 3.2.0
info:
title: ComplyAdvantage Case Management API
description: 'The ComplyAdvantage REST API screens people and companies against sanctions and watchlists, warnings and fitness-probity lists, politically exposed persons (PEPs and RCAs), and adverse media, and keeps them under ongoing monitoring. It covers searches (create, list, retrieve, update, delete, certificates, entities), monitored searches (start/stop monitoring, differences, acknowledge), case management (assignment, match status, risk level, comments, tags), and account users. Authentication is an api key sent as "Authorization: Token YOUR_API_KEY"; keys are generated inside the ComplyAdvantage web platform, so an account is required. Standard contracts allow 600 API calls per minute (sandbox 300), with 429 responses requiring exponential backoff (start at 2 seconds, cap at 60). Webhook events match_status_updated, search_status_updated, and monitored_search_updated push changes to your systems. This document was modeled from the public API reference at docs.complyadvantage.com; the endpoint paths are documented publicly, while request/response schemas are summarized rather than exhaustive.'
version: '1.0'
contact:
name: ComplyAdvantage
url: https://complyadvantage.com
servers:
- url: https://api.complyadvantage.com
description: EU (default)
- url: https://api.us.complyadvantage.com
description: US
- url: https://api.ap.complyadvantage.com
description: APAC
security:
- apiKeyAuth: []
tags:
- name: Case Management
description: Comments, tags, assignment, and match status workflow on searches.
paths:
/searches/{id}:
patch:
operationId: updateSearch
tags:
- Case Management
summary: Update search details
description: Updates case-management details of a search - the assigned user, match status (no_match, false_positive, potential_match, true_positive, true_positive_approve, true_positive_reject), and risk level (low, medium, high, unknown).
parameters:
- $ref: '#/components/parameters/SearchId'
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
match_status:
type: string
risk_level:
type: string
assignee_id:
type: integer
responses:
'200':
description: The updated search.
content:
application/json:
schema:
$ref: '#/components/schemas/SearchEnvelope'
'404':
$ref: '#/components/responses/NotFound'
/searches/{id}/entities:
patch:
operationId: updateSearchEntities
tags:
- Case Management
summary: Update entity details on a search
description: Updates details of matched entities within a search - whitelist status (suppress recurring false positives), risk level, and per-entity match status.
parameters:
- $ref: '#/components/parameters/SearchId'
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
entities:
type: array
items:
type: string
is_whitelisted:
type: boolean
match_status:
type: string
risk_level:
type: string
responses:
'200':
description: The updated entities.
'404':
$ref: '#/components/responses/NotFound'
/searches/{id}/comments:
post:
operationId: createSearchComment
tags:
- Case Management
summary: Create a comment on a search
description: Adds an analyst comment to a search for case audit trails.
parameters:
- $ref: '#/components/parameters/SearchId'
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
comment:
type: string
responses:
'200':
description: The created comment.
'404':
$ref: '#/components/responses/NotFound'
get:
operationId: listSearchComments
tags:
- Case Management
summary: Retrieve comments on a search
description: Lists the comments attached to a search.
parameters:
- $ref: '#/components/parameters/SearchId'
responses:
'200':
description: The comments on the search.
'404':
$ref: '#/components/responses/NotFound'
/searches/{id}/tags/{tag_name}:
delete:
operationId: detachSearchTag
tags:
- Case Management
summary: Detach a tag from a search
description: Removes a key-value tag from a search.
parameters:
- $ref: '#/components/parameters/SearchId'
- name: tag_name
in: path
required: true
schema:
type: string
responses:
'200':
description: Tag removal confirmation.
'404':
$ref: '#/components/responses/NotFound'
components:
parameters:
SearchId:
name: id
in: path
required: true
schema:
type: string
description: The search ID or ref.
schemas:
Search:
type: object
properties:
id:
type: integer
ref:
type: string
search_term:
type: string
match_status:
type: string
risk_level:
type: string
total_hits:
type: integer
total_matches:
type: integer
created_at:
type: string
updated_at:
type: string
tags:
type: array
items:
type: object
share_url:
type: string
hits:
type: array
items:
$ref: '#/components/schemas/Hit'
Hit:
type: object
properties:
doc:
type: object
description: The matched entity - id, name, entity_type, aka, associates, sources, types, fields, and media references.
match_types:
type: array
items:
type: string
match_types_details:
type: object
score:
type: number
is_whitelisted:
type: boolean
match_status:
type: string
SearchEnvelope:
type: object
properties:
status:
type: string
content:
type: object
properties:
data:
$ref: '#/components/schemas/Search'
responses:
NotFound:
description: The search or resource was not found.
securitySchemes:
apiKeyAuth:
type: apiKey
in: header
name: Authorization
description: 'API key sent as: Authorization: Token YOUR_API_KEY. Keys are generated in the ComplyAdvantage web platform.'