Extensions
List Extensions
List the installed extensions and their configuration in the project.
Responses
Whether or not the extension is enabled.
Unique identifier of the extension.
Name of the bundle the extension is in.
Type of the extension. One of 'interface'
, 'display'
, 'layout'
, 'module'
, 'panel'
, 'hook'
, 'endpoint'
, 'operation'
, `'bundle'.
Whether the extension exists in the local extensions folder or is loaded from node_modules
.
The currently loaded version of the plugin as defined by its package.json
.
Whether or not a bundles entries can be individually disabled. This is applicable to bundle type extensions only.
{
"name": "my-bundle-operation",
"bundle": "directus-extension-my-bundle",
"schema": {
"type": "operation",
"local": true,
"version": "1.0.0"
},
"meta": {
"enabled": true
}
}
GET /extensions
import { createDirectus, rest, readExtensions } from '@directus/sdk';
const client = createDirectus('directus_project_url').with(rest());
const result = await client.request(readExtensions());
POST /graphql/system
type Query {
extensions: [extension]
}
{
"data": [
{
"bundle": "my-bundle"
}
]
}
Update an Extension Bundle
Update an existing extension bundle.
Query Parameters
Request Body
Directus metadata for the extension. Where the configuration for the extension in the current project is stored.
Whether or not the extension is enabled.
Responses
Whether or not the extension is enabled.
Unique identifier of the extension.
Name of the bundle the extension is in.
Type of the extension. One of 'interface'
, 'display'
, 'layout'
, 'module'
, 'panel'
, 'hook'
, 'endpoint'
, 'operation'
, `'bundle'.
Whether the extension exists in the local extensions folder or is loaded from node_modules
.
The currently loaded version of the plugin as defined by its package.json
.
Whether or not a bundles entries can be individually disabled. This is applicable to bundle type extensions only.
{
"name": "my-bundle-operation",
"bundle": "directus-extension-my-bundle",
"schema": {
"type": "operation",
"local": true,
"version": "1.0.0"
},
"meta": {
"enabled": true
}
}
PATCH /extensions/{bundle}/{name}
import { createDirectus, rest, updateExtension } from '@directus/sdk';
const client = createDirectus('directus_project_url').with(rest());
const result = await client.request(updateExtension(bundle, name, partial_extension_object));
type Mutation {
update_extensions_item(bundle: String, name: String!, data: update_directus_extensions_input!): directus_extensions
}
{
"data": {
"bundle": "my-bundle"
}
}
Update an Extension
Update an existing extension.
Query Parameters
Request Body
Directus metadata for the extension. Where the configuration for the extension in the current project is stored.
Whether or not the extension is enabled.
Responses
Whether or not the extension is enabled.
Unique identifier of the extension.
Name of the bundle the extension is in.
Type of the extension. One of 'interface'
, 'display'
, 'layout'
, 'module'
, 'panel'
, 'hook'
, 'endpoint'
, 'operation'
, `'bundle'.
Whether the extension exists in the local extensions folder or is loaded from node_modules
.
The currently loaded version of the plugin as defined by its package.json
.
Whether or not a bundles entries can be individually disabled. This is applicable to bundle type extensions only.
{
"name": "my-bundle-operation",
"bundle": "directus-extension-my-bundle",
"schema": {
"type": "operation",
"local": true,
"version": "1.0.0"
},
"meta": {
"enabled": true
}
}
PATCH /extensions/{name}
import { createDirectus, rest, updateExtension } from '@directus/sdk';
const client = createDirectus('directus_project_url').with(rest());
const result = await client.request(updateExtension(bundle, name, partial_extension_object));
POST /graphql/system
type Mutation {
update_extensions_item(bundle: String, name: String!, data: update_directus_extensions_input!): directus_extensions
}
{
"data": {
"bundle": "my-bundle"
}
}