Choose your language:
    Update a plugin
    Parameters
    name  string  Optional

    The name of the plugin

    description  null, string  Optional

    A description of the plugin

    url  string  Optional

    The entry point URL of the plugin

    parameters  object  Optional

    Global plugin configuration. Plugins can persist whatever information they want in this object to reuse it later.

    packageVersion  null, string  Optional

    The installed version of the plugin (or null if it's a private plugin)

    Returns
    Returns a plugin object.

    Examples

    Update of plugin global parameters (both private and public)
    Example code:
    const { SiteClient } = require("datocms-client");
    const client = new SiteClient("YOUR-API-TOKEN");
    const pluginId = '124';
    client.plugin.update(pluginId, {
    parameters: { foo: "bar" }
    })
    .then((plugin) => {
    console.log(plugin);
    })
    .catch((error) => {
    console.error(error);
    });
    Returned output:
    {
    "id": "124",
    "name": "5 stars",
    "description": "A simple field editor that allows a nicer editing rating experience",
    "packageName": "datocms-plugin-star-rating-editor",
    "packageVersion": "0.0.4",
    "url": "https://cdn.rawgit.com/datocms/extensions/master/samples/five-stars/extension.js",
    "permissions": ["currentUserAccessToken"],
    "parameters": { "foo": "bar" }
    }
    Upgrade of a public plugin
    Example code:
    const { SiteClient } = require("datocms-client");
    const client = new SiteClient("YOUR-API-TOKEN");
    const pluginId = '124';
    client.plugin.update(pluginId, {
    packageVersion: "2.0.0",
    })
    .then((plugin) => {
    console.log(plugin);
    })
    .catch((error) => {
    console.error(error);
    });
    Returned output:
    {
    "id": "124",
    "name": "5 stars",
    "description": "A simple field editor that allows a nicer editing rating experience",
    "packageName": "datocms-plugin-star-rating-editor",
    "packageVersion": "2.0.0",
    "url": "https://cdn.rawgit.com/datocms/extensions/master/samples/five-stars/extension.js",
    "permissions": ["currentUserAccessToken"],
    "parameters": { "foo": "bar" }
    }
    Update of private plugin configuration
    Example code:
    const SiteClient = require('datocms-client').SiteClient;
    const client = new SiteClient('YOUR-API-TOKEN');
    client.plugins.create({
    name: '5 stars',
    description: 'A simple field editor that allows a nicer editing rating experience',
    url: 'https://cdn.rawgit.com/datocms/extensions/master/samples/five-stars/extension.js',
    permissions: ["currentUserAccessToken"],
    })
    .then((plugin) => {
    console.log(plugin);
    })
    .catch((error) => {
    console.error(error);
    });
    Returned output:
    {
    "id": "124",
    "name": "5 stars",
    "description": "A simple field editor that allows a nicer editing rating experience",
    "packageName": null,
    "packageVersion": null,
    "url": "https://cdn.rawgit.com/datocms/extensions/master/samples/five-stars/extension.js",
    "permissions": ["currentUserAccessToken"],
    "parameters": { "foo": "bar" }
    }