3 min read

Source: Roblox Creator Hub · CC BY 4.0 · View source · Code samples: MIT Imported 2026-10-03. Formatting adapted for this site.

PATCH /v1/plugins/{pluginId} — openapi

Updates a plugin.

Endpoint

Method: PATCH

Path: /v1/plugins/{pluginId}

Servers:

Parameters

NameLocationRequiredDescription
pluginIdpathtrueThe id of the plugin.
[
  {
    "in": "path",
    "name": "pluginId",
    "description": "The id of the plugin.",
    "required": true,
    "schema": {
      "type": "integer",
      "format": "int64"
    }
  }
]

Request Body

The Roblox.Develop.Api.UpdatePluginRequest.

{
  "content": {
    "application/json": {
      "schema": {
        "$ref": "#/components/schemas/Roblox.Develop.Api.UpdatePluginRequest"
      }
    },
    "text/json": {
      "schema": {
        "$ref": "#/components/schemas/Roblox.Develop.Api.UpdatePluginRequest"
      }
    }
  },
  "description": "The Roblox.Develop.Api.UpdatePluginRequest.",
  "required": true
}

Responses

StatusDescription
200OK
4005: Description too long. 6: Text moderated. 7: Invalid name. 8: The request body is missing.
4010: Authorization has been denied for this request.
4030: Token Validation Failed 4: Insufficient permissions.
4043: The id is invalid.
{
  "200": {
    "description": "OK",
    "content": {
      "application/json": {
        "schema": {
          "$ref": "#/components/schemas/Roblox.Web.WebAPI.ApiEmptyResponseModel"
        }
      },
      "text/json": {
        "schema": {
          "$ref": "#/components/schemas/Roblox.Web.WebAPI.ApiEmptyResponseModel"
        }
      }
    }
  },
  "400": {
    "description": "5: Description too long.\r\n6: Text moderated.\r\n7: Invalid name.\r\n8: The request body is missing."
  },
  "401": {
    "description": "0: Authorization has been denied for this request."
  },
  "403": {
    "description": "0: Token Validation Failed\r\n4: Insufficient permissions."
  },
  "404": {
    "description": "3: The id is invalid."
  }
}

Authentication

{
  "security": [
    {
      "roblox-legacy-cookie": []
    }
  ],
  "securitySchemes": {
    "roblox-api-key": {
      "type": "apiKey",
      "description": "A configurable key that allows granular access to Roblox resources. See https://create.roblox.com/docs/cloud/auth/api-keys for more information.",
      "name": "x-api-key",
      "in": "header"
    },
    "roblox-legacy-cookie": {
      "type": "apiKey",
      "description": "A browser cookie that represents the identity of a Roblox user. DO NOT SHARE THIS. Sharing this will allow someone to log in as you and to steal your Robux and items. We do not recommend using cookies to call endpoints. When possible, use API keys with the x-api-key header or OAuth 2.0 instead for authentication.",
      "in": "cookie",
      "name": ".ROBLOSECURITY"
    },
    "roblox-oauth2": {
      "type": "oauth2",
      "description": "Build or authorize apps to access Roblox resources. See https://create.roblox.com/docs/cloud/auth/oauth2-overview for more information.",
      "flows": {
        "authorizationCode": {
          "authorizationUrl": "https://apis.roblox.com/oauth/v1/authorize",
          "tokenUrl": "https://apis.roblox.com/oauth/v1/token",
          "refreshUrl": "https://apis.roblox.com/oauth/v1/token",
          "scopes": {}
        }
      }
    }
  }
}

Complete Operation Definition

{
  "tags": [
    "Assets"
  ],
  "summary": "Updates a plugin.",
  "parameters": [
    {
      "in": "path",
      "name": "pluginId",
      "description": "The id of the plugin.",
      "required": true,
      "schema": {
        "type": "integer",
        "format": "int64"
      }
    }
  ],
  "requestBody": {
    "content": {
      "application/json": {
        "schema": {
          "$ref": "#/components/schemas/Roblox.Develop.Api.UpdatePluginRequest"
        }
      },
      "text/json": {
        "schema": {
          "$ref": "#/components/schemas/Roblox.Develop.Api.UpdatePluginRequest"
        }
      }
    },
    "description": "The Roblox.Develop.Api.UpdatePluginRequest.",
    "required": true
  },
  "responses": {
    "200": {
      "description": "OK",
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/Roblox.Web.WebAPI.ApiEmptyResponseModel"
          }
        },
        "text/json": {
          "schema": {
            "$ref": "#/components/schemas/Roblox.Web.WebAPI.ApiEmptyResponseModel"
          }
        }
      }
    },
    "400": {
      "description": "5: Description too long.\r\n6: Text moderated.\r\n7: Invalid name.\r\n8: The request body is missing."
    },
    "401": {
      "description": "0: Authorization has been denied for this request."
    },
    "403": {
      "description": "0: Token Validation Failed\r\n4: Insufficient permissions."
    },
    "404": {
      "description": "3: The id is invalid."
    }
  },
  "servers": [
    {
      "url": "https://develop.roblox.com"
    }
  ],
  "x-roblox-stability": "EXPERIMENTAL",
  "x-roblox-engine-usability": {
    "apiKeyWithHttpService": false
  },
  "security": [
    {
      "roblox-legacy-cookie": []
    }
  ],
  "externalDocs": {
    "url": "https://create.roblox.com/docs/cloud/reference/features/assets#develop_patch_v1_plugins__pluginId_"
  }
}