Refinitiv Cases API

Case creation, screening, retrieval, update, and deletion operations for entity screening against the World-Check database.

Operations 4

POST /cases/screeningRequest Create Case with Synchronous Screening #
GET /cases/{caseSystemId} Get Case Details #
PUT /cases/{caseSystemId} Update an Existing Case #
DELETE /cases/{caseSystemId} Delete a Case #

Documentation

Specifications

Other Resources

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • 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.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/refinitiv-cases-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

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 Specification

refinitiv-cases-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Refinitiv World-Check One Cases API
  description: RESTful API for integrating LSEG World-Check screening capabilities into existing workflows and internal systems. It enables automated customer and third-party screening for onboarding, KYC, and due diligence processes against the World-Check risk intelligence database, supporting synchronous and asynchronous screening, ongoing monitoring, case management, and audit trail capabilities.
  version: 2.0.0
  contact:
    name: LSEG Developer Support
    url: https://developers.lseg.com/en/support
  termsOfService: https://developers.lseg.com/en/terms-and-conditions
servers:
- url: https://api-worldcheck.refinitiv.com/v2
  description: Production Server
security:
- hmacAuth: []
tags:
- name: Cases
  description: Case creation, screening, retrieval, update, and deletion operations for entity screening against the World-Check database.
paths:
  /cases/screeningRequest:
    post:
      operationId: createCaseAndScreen
      summary: Create Case with Synchronous Screening
      description: Creates a new case and performs synchronous screening in a single request. Returns all matched screening results within the response. Optionally enables ongoing screening by setting the caseScreeningState to WATCHLIST with ONGOING monitoring.
      tags:
      - Cases
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ScreeningRequest'
      responses:
        '200':
          description: Screening completed with results
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ScreeningResponse'
        '400':
          description: Invalid screening request
        '401':
          description: Unauthorized or invalid HMAC signature
        '403':
          description: Forbidden
  /cases/{caseSystemId}:
    get:
      operationId: getCase
      summary: Get Case Details
      description: Retrieves the details of an existing case including its current status, screening state, and metadata.
      tags:
      - Cases
      parameters:
      - $ref: '#/components/parameters/caseSystemId'
      responses:
        '200':
          description: Case details returned successfully
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Case'
        '401':
          description: Unauthorized
        '404':
          description: Case not found
    put:
      operationId: updateCase
      summary: Update an Existing Case
      description: Updates the details of an existing case such as name fields, custom data, and screening parameters.
      tags:
      - Cases
      parameters:
      - $ref: '#/components/parameters/caseSystemId'
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CaseUpdateRequest'
      responses:
        '200':
          description: Case updated successfully
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Case'
        '400':
          description: Invalid update request
        '401':
          description: Unauthorized
        '404':
          description: Case not found
    delete:
      operationId: deleteCase
      summary: Delete a Case
      description: Permanently deletes a case and all associated screening results and audit history.
      tags:
      - Cases
      parameters:
      - $ref: '#/components/parameters/caseSystemId'
      responses:
        '204':
          description: Case deleted successfully
        '401':
          description: Unauthorized
        '404':
          description: Case not found
components:
  parameters:
    caseSystemId:
      name: caseSystemId
      in: path
      required: true
      description: The system-generated unique identifier for the case.
      schema:
        type: string
  schemas:
    Case:
      type: object
      properties:
        caseSystemId:
          type: string
          description: The system-generated case identifier.
        caseId:
          type: string
          description: The client-defined case identifier.
        groupId:
          type: string
          description: The group the case belongs to.
        entityType:
          type: string
          description: The entity type of the case.
        name:
          type: object
          properties:
            firstName:
              type: string
            middleName:
              type: string
            lastName:
              type: string
            fullName:
              type: string
        caseScreeningState:
          type: object
          description: The current screening state for each provider type.
        creationDate:
          type: string
          format: date-time
          description: The date and time the case was created.
        modificationDate:
          type: string
          format: date-time
          description: The date and time the case was last modified.
    CaseUpdateRequest:
      type: object
      properties:
        name:
          type: object
          properties:
            firstName:
              type: string
            middleName:
              type: string
            lastName:
              type: string
            fullName:
              type: string
        secondaryFields:
          type: object
          description: Updated secondary screening fields.
        customFields:
          type: array
          items:
            type: object
            properties:
              typeId:
                type: string
              value:
                type: string
    ScreeningResponse:
      type: object
      properties:
        caseSystemId:
          type: string
          description: The system-generated case identifier.
        caseId:
          type: string
          description: The client-defined case identifier.
        results:
          type: array
          items:
            $ref: '#/components/schemas/ScreeningResult'
    ScreeningResult:
      type: object
      properties:
        resultId:
          type: string
          description: The unique identifier of the screening result.
        referenceId:
          type: string
          description: The World-Check reference profile identifier.
        matchStrength:
          type: string
          description: The strength of the match, such as EXACT, STRONG, MEDIUM, or WEAK.
        matchedTerm:
          type: string
          description: The name or term that was matched.
        submittedTerm:
          type: string
          description: The original term submitted for screening.
        matchedNameType:
          type: string
          description: The type of name matched, such as PRIMARY or ALIAS.
        categories:
          type: array
          items:
            type: string
          description: Categories assigned to the matched profile such as PEP, Sanctions, or Adverse Media.
        resolution:
          type: object
          description: The current resolution status of the result, null if unresolved.
          properties:
            statusId:
              type: string
              description: The resolution status identifier.
            riskId:
              type: string
              description: The risk level identifier.
            reasonId:
              type: string
              description: The resolution reason identifier.
    ScreeningRequest:
      type: object
      required:
      - groupId
      - entityType
      - providerTypes
      - name
      properties:
        groupId:
          type: string
          description: The group under which to create the case.
        entityType:
          type: string
          description: The type of entity being screened.
          enum:
          - INDIVIDUAL
          - ORGANISATION
          - VESSEL
        caseId:
          type: string
          description: A client-defined case identifier for tracking purposes.
        providerTypes:
          type: array
          items:
            type: string
            enum:
            - WATCHLIST
            - CLIENT_WATCHLIST
            - MEDIA_CHECK
            - PASSPORT_CHECK
          description: The provider types to screen against, such as WATCHLIST for World-Check risk intelligence data.
        caseScreeningState:
          type: object
          properties:
            WATCHLIST:
              type: string
              description: Set to ONGOING to enable continuous monitoring.
              enum:
              - INITIAL
              - ONGOING
        name:
          type: object
          properties:
            firstName:
              type: string
              description: First name of the individual being screened.
            middleName:
              type: string
              description: Middle name of the individual being screened.
            lastName:
              type: string
              description: Last name of the individual being screened.
            fullName:
              type: string
              description: Full name, used when individual name parts are not available, or the organization name when screening organizations.
        secondaryFields:
          type: object
          properties:
            dateOfBirth:
              type: string
              format: date
              description: Date of birth for individual screening.
            countryLocation:
              type: string
              description: Country of location, ISO 3166-1 alpha-2 code.
            nationality:
              type: string
              description: Nationality, ISO 3166-1 alpha-2 code.
            gender:
              type: string
              description: Gender of the individual.
              enum:
              - MALE
              - FEMALE
              - UNSPECIFIED
        customFields:
          type: array
          items:
            type: object
            properties:
              typeId:
                type: string
                description: The custom field type identifier.
              value:
                type: string
                description: The custom field value.
  securitySchemes:
    hmacAuth:
      type: apiKey
      in: header
      name: Authorization
      description: HMAC-SHA256 authentication. All requests must include the API key and be signed with the API secret using HMAC-SHA256. The signature is computed over the request method, path, date, and body content, and included in the Authorization header as a base64-encoded value.
externalDocs:
  description: World-Check One API Documentation
  url: https://developers.lseg.com/en/api-catalog/customer-and-third-party-screening/world-check-one-api/documentation