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

# Edit Client Worker Status

> Updates a worker's preference status for this client.

<Note>
  The three status values are:

  * **`preferred`** — Worker gets priority when scheduling this client's events.
  * **`normal`** — Default status; worker is eligible but not prioritized.
  * **`banned`** — Worker is excluded from this client's events.
</Note>


## OpenAPI

````yaml api-reference/v01.12.00/openapi-v01.12.00.json PATCH /clients/{id}/workers/{worker_id}/status
openapi: 3.0.0
info:
  title: Roosted
  version: 0.1.12
  contact:
    name: Support
    url: https://support.roostedhr.com/support/home
    email: support@roostedhr.com
  description: |-
    Enterprise API

    Sandbox keys and Production keys are requested from support
servers:
  - url: https://api.roostedhr.com/api/1_12
  - url: https://sandbox.roostedhr.com/api/1_12
security:
  - X-API-KEY: []
tags:
  - name: Announcements
  - name: Areas
  - name: Clients
  - name: Company
  - name: Configuration
  - name: Events
  - name: Locations
  - name: Payroll Groups
  - name: Rate Cards
  - name: Shifts
  - name: Skillsets
  - name: Time Tracking
  - name: Wage Rules
  - name: Workers
paths:
  /clients/{id}/workers/{worker_id}/status:
    parameters:
      - schema:
          type: string
        name: id
        in: path
        required: true
        description: Client ID
      - schema:
          type: string
        name: worker_id
        in: path
        required: true
        description: Worker ID
    patch:
      tags:
        - Clients
      summary: Edit Client Worker Status
      description: Updates a worker's preference status for this client.
      operationId: patch-client-worker-status
      requestBody:
        description: The new worker status.
        content:
          application/json:
            schema:
              type: object
              properties:
                status:
                  type: string
                  enum:
                    - preferred
                    - normal
                    - banned
                  description: >-
                    Worker's preference status. `preferred` = priority
                    scheduling, `normal` = default, `banned` = excluded from
                    client events.
              required:
                - status
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: boolean
              examples:
                Success:
                  value: true
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                type: object
                properties:
                  code:
                    type: string
                    description: Machine-readable error code.
                  error:
                    type: string
                    description: Human-readable error message.
              examples:
                Invalid status:
                  value:
                    code: CLI-1700
                    error: >-
                      Invalid worker status (must be preferred, normal, or
                      banned)
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                type: object
                properties:
                  code:
                    type: string
                    description: Machine-readable error code.
                  error:
                    type: string
                    description: Human-readable error message.
              examples:
                Invalid API key:
                  value:
                    code: ATH-100
                    error: Invalid or missing API key
        '403':
          description: Forbidden
          content:
            application/json:
              schema:
                type: object
                properties:
                  code:
                    type: string
                    description: Machine-readable error code.
                  error:
                    type: string
                    description: Human-readable error message.
              examples:
                Insufficient permissions:
                  value:
                    code: CLI-1900
                    error: Insufficient permissions to manage clients
        '404':
          description: Not Found
          content:
            application/json:
              schema:
                type: object
                properties:
                  code:
                    type: string
                    description: Machine-readable error code.
                  error:
                    type: string
                    description: Human-readable error message.
              examples:
                Client not found:
                  value:
                    code: CLI-300
                    error: Client not found
                Worker not found:
                  value:
                    code: CLI-1600
                    error: Worker not found
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                type: object
                properties:
                  code:
                    type: string
                    description: Machine-readable error code.
                  error:
                    type: string
                    description: Human-readable error message.
              examples:
                Unexpected error:
                  value:
                    code: CLI-2000
                    error: An unexpected error occurred
components:
  securitySchemes:
    X-API-KEY:
      name: X-API-KEY
      type: apiKey
      in: header

````