Updates the room API to use `extraFields` instead of `expand` for including additional data in responses. This change improves clarity and consistency in the API design. It also simplifies the filtering logic by explicitly differentiating between base fields (controlled by `fields`) and extra fields (controlled by `extraFields`). The changes include: - Renaming the query parameter and header - Updating the validation schemas - Adjusting the filtering logic in the controller and service layers - Updating the frontend components and services
25 lines
845 B
YAML
25 lines
845 B
YAML
name: X-ExtraFields
|
||
in: header
|
||
description: >
|
||
Specifies which extra fields to include fully in the response.
|
||
|
||
By default, certain large or nested properties (like `config`) are excluded
|
||
to optimize payload size and reduce network bandwidth.
|
||
|
||
Use this header to include the full data of these properties in the creation response,
|
||
avoiding the need for a subsequent GET request.
|
||
|
||
Provide a comma-separated list of property names to include.
|
||
|
||
Note: Extra fields specified here will be included even if not specified in the `X-Fields` header.
|
||
required: false
|
||
schema:
|
||
type: string
|
||
examples:
|
||
config:
|
||
value: 'config'
|
||
summary: Include full room configuration in response
|
||
combined:
|
||
value: 'config'
|
||
summary: 'Use with X-Fields header for union behavior (X-Fields ∪ X-ExtraFields)'
|