Clarifies the agent availability API documentation so request payloads use the writable `availability` field, while `availability_status` remains documented as a read-only response field. ## Closes Closes #13873 ## Why The backend already supports updating an agent's configured availability through `availability`, but the Swagger request payloads documented `availability_status`. That made clients follow a read-only response field and see successful requests without the intended availability change. ## What changed - Replaces `availability_status` with `availability` in agent create/update request schemas. - Updates the availability enum to `online`, `busy`, and `offline`. - Marks response `availability_status` as read-only and explains that it is derived from configured availability, auto-offline, and presence. - Regenerates the combined and tag-group Swagger JSON files. ## Validation - `bundle exec rails swagger:build` - `bundle exec rspec spec/swagger/openapi_spec.rb` - `git diff --check`
29 lines
675 B
YAML
29 lines
675 B
YAML
type: object
|
|
required:
|
|
- name
|
|
- email
|
|
- role
|
|
properties:
|
|
name:
|
|
type: string
|
|
description: Full Name of the agent
|
|
example: 'John Doe'
|
|
email:
|
|
type: string
|
|
description: Email of the Agent
|
|
example: 'john.doe@acme.inc'
|
|
role:
|
|
type: string
|
|
enum: ['agent', 'administrator']
|
|
description: Whether its administrator or agent
|
|
example: 'agent'
|
|
availability:
|
|
type: string
|
|
enum: ['online', 'busy', 'offline']
|
|
description: The configured availability of the agent.
|
|
example: 'online'
|
|
auto_offline:
|
|
type: boolean
|
|
description: Whether the agent is automatically marked offline when they are away.
|
|
example: true
|