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

# Update case status

> Updates the status of a case (and optionally the assignee). Only certain status transitions are allowed depending on the case’s current status.



## OpenAPI

````yaml openapi/case-service/update-assign-case.json patch /customers/{customerID}/cases/{caseID}
openapi: 3.1.0
info:
  title: Case Management API
  description: Endpoints for managing cases, including updating case status.
  version: '1.0'
servers:
  - url: https://api.joinworth.com/case/api/v1
security: []
tags:
  - name: Cases
    description: Case management endpoints.
paths:
  /customers/{customerID}/cases/{caseID}:
    patch:
      tags:
        - Cases
      summary: Update case status
      description: >-
        Updates the status of a case (and optionally the assignee). Only certain
        status transitions are allowed depending on the case’s current status.
      operationId: UpdateCaseStatus
      parameters:
        - name: customerID
          in: path
          description: ID of the customer that owns the case.
          required: true
          style: simple
          schema:
            type: string
            format: uuid
            examples:
              - 550e8400-e29b-41d4-a716-446655440000
        - name: caseID
          in: path
          description: ID of the case to update.
          required: true
          style: simple
          schema:
            type: string
            format: uuid
            examples:
              - 6ba7b810-9dad-11d1-80b4-00c04fd430c8
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/UpdateCaseStatusRequest'
            examples:
              UpdateStatusAndAssignee:
                value:
                  status: UNDER_MANUAL_REVIEW
                  assignee: 7c9e6679-7425-40de-944b-e07fc1f90ae7
              UpdateAssigneeOnly:
                value:
                  status: UNDER_MANUAL_REVIEW
                  assignee: 7c9e6679-7425-40de-944b-e07fc1f90ae7
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/JSendSuccess'
              examples:
                Success:
                  value:
                    status: success
                    data: null
                    message: Case status updated successfully
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/JSendFail'
              examples:
                InvalidTransition:
                  value:
                    status: fail
                    message: Case status cannot be updated to ARCHIVED
                    errorCode: INVALID
                    data:
                      errorName: CaseManagementApiError
                InvalidStatusValue:
                  value:
                    status: fail
                    message: Invalid or unsupported status value.
                    errorCode: INVALID
                    data:
                      errorName: CaseManagementApiError
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/JSendFail'
              examples:
                Unauthorized:
                  value:
                    status: fail
                    message: Missing or invalid authentication.
                    errorCode: UNAUTHORIZED
                    data:
                      errorName: CaseManagementApiError
        '403':
          description: Forbidden
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/JSendFail'
              examples:
                Forbidden:
                  value:
                    status: fail
                    message: >-
                      User does not have case:write:status or does not have
                      access to the customer.
                    errorCode: FORBIDDEN
                    data:
                      errorName: CaseManagementApiError
        '404':
          description: Not Found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/JSendFail'
              examples:
                NotFound:
                  value:
                    status: fail
                    message: Case not found
                    errorCode: NOT_FOUND
                    data:
                      errorName: CaseManagementApiError
      security:
        - bearerAuth: []
components:
  schemas:
    UpdateCaseStatusRequest:
      type: object
      additionalProperties: false
      required:
        - status
      properties:
        status:
          type: string
          description: New case status. Must be one of the allowed status values.
          enum:
            - CREATED
            - ONBOARDING
            - UNDER_MANUAL_REVIEW
            - MANUALLY_APPROVED
            - AUTO_APPROVED
            - SCORE_CALCULATED
            - MANUALLY_REJECTED
            - ARCHIVED
            - PENDING_DECISION
            - INFORMATION_REQUESTED
            - SUBMITTED
            - AUTO_REJECTED
            - RISK_ALERT
            - INVESTIGATING
            - DISMISSED
            - ESCALATED
            - PAUSED
            - INFORMATION_UPDATED
        assignee:
          type: string
          format: uuid
          description: User ID to assign as the case assignee (optional).
    JSendSuccess:
      type: object
      additionalProperties: true
      required:
        - status
        - data
        - message
      properties:
        status:
          type: string
          const: success
        data:
          description: Success payload; may be empty (null).
          type:
            - object
            - array
            - string
            - number
            - boolean
            - 'null'
        message:
          type: string
    JSendFail:
      type: object
      additionalProperties: true
      required:
        - status
        - message
      properties:
        status:
          type: string
          const: fail
        message:
          type: string
        errorCode:
          type: string
          description: Optional machine-readable error code.
        data:
          type:
            - object
            - array
            - string
            - number
            - boolean
            - 'null'
          description: >-
            Additional error data (e.g., errorName; in development, details may
            be included).
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
      bearerFormat: JWT
      description: Bearer token authentication (user context).

````