Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
35 commits
Select commit Hold shift + click to select a range
567fd12
feat: update swagger
gaetansenn Nov 7, 2025
e09141a
fix: fix format
gaetansenn Nov 7, 2025
18174ca
feat: optimize params
gaetansenn Nov 7, 2025
c6eff50
fix: add missing graphQL singleton update
gaetansenn Nov 7, 2025
01e3af8
Fix path for OAuth endpoint in index.yaml
kheiner Feb 12, 2026
7b0efad
Update 'data' type in oauth.yaml from array to object
kheiner Feb 12, 2026
93e41ad
Add code samples to oauthProvider.yaml
kheiner Feb 12, 2026
1dd8371
Rename OAuth endpoint to login in index.yaml
kheiner Feb 13, 2026
6e7a0d5
Merge branch 'main' into patch-2
kheiner Mar 24, 2026
97f6167
Merge branch 'main' into patch-1
kheiner Mar 24, 2026
e14227b
Merge branch 'directus:main' into fix/#42-add-example-to-oauth-providers
kheiner Apr 23, 2026
b1d1d69
Merge branch 'directus:main' into fix/#41-update-oauth-providers
kheiner Apr 23, 2026
bbe68ff
fix: request body in utils
kheiner Apr 23, 2026
8fd26d2
docs: remove punctuation from summary
kheiner Apr 23, 2026
42a7eb1
feat: add `/access` to API reference
kheiner Apr 23, 2026
8f2049e
fix(deployments): add deployments
kheiner Apr 26, 2026
5ef3270
fix(files): add assets and files
kheiner Apr 26, 2026
5258f8d
fix(extensions): add support for extensions (release tag v10.10.0)
kheiner Apr 26, 2026
06f409e
fix(utils): add revert and translations
kheiner Apr 26, 2026
8c8894f
fix(schema): add `force` parameter
kheiner Apr 26, 2026
cd1155d
fix(settings): add ai_ and mcp_ properties
kheiner Apr 26, 2026
be5e777
fix(ai): add ai endpoint
kheiner Apr 26, 2026
6759120
feat(mcp): add mcp endpoint
kheiner Apr 26, 2026
73b9821
fix(auth): format graphql code-sample to match standards in project
kheiner Apr 26, 2026
148f3b5
Merge origin/fix/#16-undefined-request-body
kheiner Apr 26, 2026
cfbec27
Merge origin/fix/#41-update-oauth-providers
kheiner Apr 26, 2026
66f60ef
Merge origin/fix/#42-add-example-to-oauth-providers
kheiner Apr 26, 2026
c1a95c6
Merge origin/features/move-singleton-items-route
kheiner Apr 26, 2026
d48849f
Merge origin/pr-26006 (zip download endpoints)
kheiner Apr 26, 2026
ac8de02
Apply suggestion from @kheiner
kheiner Apr 26, 2026
3605af7
fix(items): separate mutiple, singular, and singeton operations into …
kheiner Apr 26, 2026
dce8722
standardize example url to directus_project_url
kheiner Apr 26, 2026
7794769
fix(schemas): add missing type field to nullable access schema proper…
kheiner Apr 26, 2026
4bd638b
fix(utils): add 4xx responses
kheiner Apr 26, 2026
a5cb271
docs(sdk): add extension SDK examples for update, delete, and registry
kheiner Apr 27, 2026
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 6 additions & 0 deletions .redocly.lint-ignore.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
# This file instructs Redocly's linter to ignore the rules contained for specific parts of your API.
# See https://redocly.com/docs/cli/ for more information.
dist/oas.yaml:
operation-4xx-response:
- '#/paths/~1server~1ping/get/responses'
- '#/paths/~1server~1health/get/responses'
142 changes: 139 additions & 3 deletions openapi/components/parameters.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -103,8 +103,7 @@ Export:
- yaml
Version:
name: version
description: >-
Retrieve an item's state from a specific Content Version. The value corresponds to the "key" of the Content Version.
description: Retrieve an item's state from a specific Content Version. The value corresponds to the "key" of the Content Version.
in: query
required: false
schema:
Expand All @@ -118,11 +117,148 @@ ConcurrentIndexCreation:
type: boolean
default: false
Backlink:
name: backlink
description: >-
Retrieve relational items excluding reverse relations when using wildcard fields.
name: backlink
in: query
required: false
schema:
type: boolean
default: true
Aggregate:
description: >-
Aggregate functions allow you to perform calculations on a set of values. Accepts one or more of `count`, `countDistinct`, `countAll`, `sum`, `sumDistinct`, `avg`, `avgDistinct`, `min`, `max`.
name: aggregate
in: query
required: false
content:
application/json:
schema:
type: object
properties:
count:
type: array
items:
type: string
description: Count the number of items. Use `['*']` to count all items.
countDistinct:
type: array
items:
type: string
description: Count the number of unique values in the specified fields.
countAll:
type: array
items:
type: string
description: Count all items including related items (used with groupBy).
sum:
type: array
items:
type: string
description: Sum the values of the specified fields.
sumDistinct:
type: array
items:
type: string
description: Sum the unique values of the specified fields.
avg:
type: array
items:
type: string
description: Calculate the average of the specified fields.
avgDistinct:
type: array
items:
type: string
description: Calculate the average of unique values in the specified fields.
min:
type: array
items:
type: string
description: Find the minimum value of the specified fields.
max:
type: array
items:
type: string
description: Find the maximum value of the specified fields.
example:
count: ['*']
sum: ['price']
avg: ['rating']
Deep:
description: Deep allows you to set any of the other query parameters on a nested relational dataset. Use underscore-prefixed parameter names.
name: deep
in: query
required: false
content:
application/json:
schema:
type: object
additionalProperties:
type: object
description: Query parameters for the related field (prefixed with underscore).
properties:
_fields:
type: array
items:
type: string
_sort:
type: array
items:
type: string
_filter:
type: object
_limit:
type: integer
_offset:
type: integer
_page:
type: integer
_search:
type: string
_group:
type: array
items:
type: string
_aggregate:
type: object
example:
related_articles:
_limit: 3
_sort: ['-date_created']
_filter:
status:
_eq: 'published'
Alias:
description: Alias allows you to rename fields in the response payload. The key is the new name, the value is the original field name.
name: alias
in: query
required: false
content:
application/json:
schema:
type: object
additionalProperties:
type: string
example:
display_name: full_name
creation_date: date_created
Group:
description: >-
Grouping allows for running the aggregation functions based on a shared value. Accepts an array of field names.
name: group
in: query
required: false
explode: false
schema:
type: array
items:
type: string
VersionRaw:
description: Retrieve the raw delta of a Content Version item instead of the full merged item.
name: versionRaw
in: query
required: false
schema:
type: boolean
default: false
30 changes: 30 additions & 0 deletions openapi/components/responses.yaml
Original file line number Diff line number Diff line change
@@ -1,3 +1,33 @@
BadRequestError:
description: "Error: Bad request."
content:
application/json:
schema:
type: object
properties:
error:
type: object
properties:
code:
type: integer
format: int64
message:
type: string
ForbiddenError:
description: "Error: Forbidden."
content:
application/json:
schema:
type: object
properties:
error:
type: object
properties:
code:
type: integer
format: int64
message:
type: string
NotFoundError:
description: "Error: Not found."
content:
Expand Down
8 changes: 8 additions & 0 deletions openapi/components/schemas/_index.yaml
Original file line number Diff line number Diff line change
@@ -1,5 +1,7 @@
x-metadata:
$ref: x-metadata.yaml
Access:
$ref: access.yaml
Activity:
$ref: activity.yaml
Collections:
Expand All @@ -8,6 +10,8 @@ Comments:
$ref: comments.yaml
Dashboards:
$ref: dashboards.yaml
Deployments:
$ref: deployments.yaml
Diff:
$ref: diff.yaml
Extensions:
Expand All @@ -22,6 +26,10 @@ Folders:
$ref: folders.yaml
Items:
$ref: items.yaml
JsonRpcRequest:
$ref: jsonrpc-request.yaml
JsonRpcResponse:
$ref: jsonrpc-response.yaml
Notifications:
$ref: notifications.yaml
Operations:
Expand Down
38 changes: 38 additions & 0 deletions openapi/components/schemas/access.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,38 @@
type: object
properties:
id:
description: Primary key of the access rule.
example: 8cbb43fe-4cdf-4991-8352-c461779cec02
type: string
format: uuid
role:
description: The role this access rule applies to. Nullable if the rule applies directly to a user. Many-to-one to roles.
example: 8b4474c0-288d-4bb8-b62e-8330646bb6aa
nullable: true
type: string
oneOf:
- type: string
format: uuid
- $ref: roles.yaml
user:
description: The user this access rule applies to. Nullable if the rule applies to a role. Many-to-one to users.
example: 0bc7b36a-9ba9-4ce0-83f0-0a526f354e07
nullable: true
type: string
oneOf:
- type: string
format: uuid
- $ref: users.yaml
policy:
description: The policy associated with this access rule. Many-to-one to policies.
example: 22640672-eef0-4ee9-ab04-591f3afb2886
oneOf:
- type: string
format: uuid
- $ref: policies.yaml
sort:
description: Sort order of this access rule.
example: 1
nullable: true
type: integer
x-collection: directus_access
45 changes: 45 additions & 0 deletions openapi/components/schemas/deployments.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,45 @@
type: object
properties:
id:
description: Unique identifier for the deployment configuration.
example: 8cbb43fe-4cdf-4991-8352-c461779cec02
type: string
format: uuid
provider:
description: The deployment provider. One of `vercel` or `netlify`.
example: vercel
type: string
enum:
- vercel
- netlify
credentials:
description: Provider-specific credentials (e.g. API token). Stored encrypted.
type: object
example:
token: abc123
options:
description: Provider-specific configuration options.
nullable: true
type: object
example:
team_id: team_abc123
webhook_ids:
description: IDs of webhooks registered with the provider for this config.
nullable: true
type: array
items:
type: string
webhook_secret:
description: Secret used to verify webhook payloads from the provider.
nullable: true
type: string
last_synced_at:
description: Timestamp of the last provider sync.
nullable: true
type: string
format: date-time
date_created:
description: When this deployment config was created.
type: string
format: date-time
x-collection: directus_deployments
23 changes: 23 additions & 0 deletions openapi/components/schemas/jsonrpc-request.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
type: object
description: A JSON-RPC 2.0 request or notification message.
required:
- jsonrpc
- method
properties:
jsonrpc:
description: JSON-RPC protocol version. Must be `"2.0"`.
type: string
enum:
- '2.0'
id:
description: >-
Request identifier. May be a string, integer, or null; omit for notifications.
oneOf:
- type: string
- type: integer
method:
description: MCP method name (e.g. `tools/list`, `tools/call`, `prompts/list`, `prompts/get`, `notifications/initialized`).
type: string
params:
description: Method-specific parameters.
type: object
28 changes: 28 additions & 0 deletions openapi/components/schemas/jsonrpc-response.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,28 @@
type: object
description: A JSON-RPC 2.0 response message.
required:
- jsonrpc
properties:
jsonrpc:
description: JSON-RPC protocol version. Always `"2.0"`.
type: string
enum:
- '2.0'
id:
description: Echoes the `id` from the corresponding request.
oneOf:
- type: string
- type: integer
result:
description: Method-specific result. Present on success.
type: object
error:
description: Error details. Present on failure.
type: object
properties:
code:
type: integer
message:
type: string
data:
type: object
Loading