> ## Documentation Index
> Fetch the complete documentation index at: https://doc.youverify.co/llms.txt
> Use this file to discover all available pages before exploring further.

# Create a Case

> Creates a new investigation case, linking it to an entity and related issues (activities, alerts, behavioural insights, or custom issues), with an assigned investigator and case stages/tasks.



## OpenAPI

````yaml /api-reference/specs/cowork.json post /v2/api/cases
openapi: 3.0.3
info:
  title: Youverify Cowork API
  version: 2.0.0
  description: >-
    Entity, Activity, Signal and Case Management endpoints — the core Cowork
    platform object model. Assembled from doc.youverify.co/api-reference-sdk,
    endpoints kept in the exact order they appear in the GitBook navigation.


    Account-wide error responses (401, 429, 500 on every endpoint; 402 on paid
    verification calls; 404 on lookup-by-ID calls) are sourced verbatim from
    Youverify's own "Youverify OS Error Codes" and "Response Codes" pages
    (doc.youverify.co/youverify-os-error-codes, /get-started/response-codes) and
    attached via components.responses, since those pages document them
    account-wide rather than per endpoint. Any error example that a specific
    endpoint's own page actually showed is kept exactly as documented there
    instead of being replaced by these.
  contact:
    name: Youverify Support
    email: support@youverify.co
servers:
  - url: https://api.youverify.co
    description: Production (live, billed)
  - url: https://api.sandbox.youverify.co
    description: Sandbox (test data, not billed)
security:
  - ApiKeyAuth: []
tags:
  - name: Entity Management
    description: >-
      Create, retrieve and verify entities (individuals or businesses) — the
      core object every check attaches to.
  - name: Activity Management
    description: Inspect the verification activities run against your account.
  - name: Signal Management
    description: Retrieve monitoring signals and their events, by entity or business.
  - name: Case Management
    description: Create and manage compliance cases, including AI-generated case summaries.
paths:
  /v2/api/cases:
    post:
      tags:
        - Case Management
      summary: Create a Case
      description: >-
        Creates a new investigation case, linking it to an entity and related
        issues (activities, alerts, behavioural insights, or custom issues),
        with an assigned investigator and case stages/tasks.
      operationId: createCase
      parameters:
        - name: token
          in: header
          required: true
          schema:
            type: string
          description: API secret token
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                caseTitle:
                  type: string
                  description: Title of the case
                caseType:
                  type: string
                  description: Type of case being created
                description:
                  type: string
                  description: Detailed reason or context for creating the case
                severity:
                  type: string
                  enum:
                    - High
                    - Medium
                    - Low
                entityId:
                  type: string
                  description: ID of the entity the case is associated with
                linkedIssues:
                  type: array
                  items:
                    type: object
                caseStage:
                  type: array
                  items:
                    type: object
                investigator:
                  type: object
              required:
                - caseTitle
                - caseType
                - description
                - severity
                - entityId
                - linkedIssues
                - caseStage
                - investigator
            example:
              caseTitle: KYC data Mismatch
              caseType: KYC
              description: >-
                The case was created because there's a complete mismatch between
                the NIN and BVN data of the client.
              severity: High
              entityId: 6880a452495dce07d2f7ff5a
              investigator:
                investigatorId: 681d7b32cd275833cb856fff
              linkedIssues:
                - issueId: 6880f7d527309cf76eb5db2e
                  issueType: Activity
                  status: Mismatch
              caseStage:
                - stage: Investigation
                  level: LV1
                  tasks:
                    - task: Investigate KYC verification
      responses:
        '201':
          description: Success
          content:
            application/json:
              example:
                success: true
                statusCode: 201
                message: Case created successfully!
        '401':
          $ref: '#/components/responses/Error401Unauthorized'
        '402':
          $ref: '#/components/responses/Error402PaymentRequired'
        '429':
          $ref: '#/components/responses/Error429TooManyRequests'
        '500':
          $ref: '#/components/responses/Error500ServerError'
components:
  responses:
    Error401Unauthorized:
      description: Unauthorized — the token header is missing or invalid.
      content:
        application/json:
          example:
            success: false
            statusCode: 401
            message: Permission denied
            name: UnauthorizedError
            data: {}
    Error402PaymentRequired:
      description: Payment Required — your account balance is too low to run this check.
      content:
        application/json:
          example:
            success: false
            statusCode: 402
            message: Insufficient fund
            name: PaymentRequiredError
            data: {}
    Error429TooManyRequests:
      description: Too Many Requests — you have exceeded the rate limit; wait and retry.
      content:
        application/json:
          example:
            success: false
            statusCode: 429
            message: Too many requests
            name: RateLimitError
            data: {}
    Error500ServerError:
      description: >-
        Internal Server Error — a rare, unexpected failure on Youverify's side.
        Contact support@youverify.co if it persists.
      content:
        application/json:
          example:
            success: false
            statusCode: 500
            message: Internal Server Error
            name: Error
            data: {}
  securitySchemes:
    ApiKeyAuth:
      type: apiKey
      in: header
      name: token
      description: Your Youverify API secret key. Never expose client-side.

````