View .md

Cloud Plugins endpoints (Admin API)

6 FeatherPanel Admin API endpoints from admin/cloud-plugins.php: methods, paths, auth, permissions, rate limits, parameters and responses.

Last synced from FeatherPanel 15b94e9 on .

On this page

Defined in backend/app/routes/admin/cloud-plugins.php. Authentication used here: Admin. Read Authentication for how to send credentials and Rate limits and errors for the response envelope.

Paths, methods, permissions and rate limits come from the route file. Summaries, parameters and response codes come from the OpenAPI annotations on the controllers; endpoints without annotations show only what the route file declares.

Endpoints

GET/api/admin/plugins/online/list

Auth: AdminPermission: admin.plugins.viewRoute name: admin-cloud-plugins-listController: CloudPluginsController::listroute source

Get online addons list Retrieve a paginated list of Mythic marketplace products available to the linked team (GET /panel/products).

ParameterInTypeRequiredDescription
qquerystringnoSearch query to filter addons
pagequeryintegernoPage number for pagination
per_pagequeryintegernoNumber of addons per page
verified_onlyquerybooleannoIf true, only return verified packages
tagsquerystringnoComma-separated list of tags to filter by
sort_byquerystringnoField to sort by (created_at, downloads, updated_at)
sort_orderquerystringnoSort order
Response data fieldTypeDescription
addonsOnlineAddon[]
paginationobjectPagination metadata
curl -X GET "$PANEL_URL/api/admin/plugins/online/list" \
  -H "Authorization: Bearer $FEATHERPANEL_API_KEY" \
  -H "Accept: application/json"

Responses: 200 Online addons retrieved successfully · 401 Unauthorized · 403 Forbidden - Insufficient permissions · 500 Internal server error - Failed to fetch online addons or invalid response

GET/api/admin/plugins/online/{identifier}

Auth: AdminPermission: admin.plugins.viewRoute name: admin-cloud-plugins-showController: CloudPluginsController::showroute source

Get package details Retrieve Mythic product details and downloadable releases for a product slug.

ParameterInTypeRequiredDescription
identifierpathstringyesPackage identifier name
Response data fieldTypeDescription
packageOnlineAddon
versionsobject[]
curl -X GET "$PANEL_URL/api/admin/plugins/online/$IDENTIFIER" \
  -H "Authorization: Bearer $FEATHERPANEL_API_KEY" \
  -H "Accept: application/json"

Responses: 200 Package details retrieved successfully · 401 Unauthorized · 403 Forbidden - Insufficient permissions · 404 Package not found · 500 Internal server error

GET/api/admin/plugins/online/{identifier}/check

Auth: AdminPermission: admin.plugins.viewRoute name: admin-cloud-plugins-checkController: CloudPluginsController::checkRequirementsroute source

Check addon installation requirements Check if all dependencies and requirements are met before installing an addon. Returns dependency status, panel version compatibility, and installation readiness.

ParameterInTypeRequiredDescription
identifierpathstringyesPackage identifier name
pending_pluginsquerystringnoComma-separated addon identifiers also queued for install; plugin= dependencies in this list count as satisfied.
Response data fieldTypeDescription
can_installbooleanWhether the addon can be installed
packageobjectPackage information
dependenciesobjectDependency information
panel_versionobjectPanel version compatibility
curl -X GET "$PANEL_URL/api/admin/plugins/online/$IDENTIFIER/check" \
  -H "Authorization: Bearer $FEATHERPANEL_API_KEY" \
  -H "Accept: application/json"

Responses: 200 Requirements check completed · 404 Package not found · 500 Internal server error

GET/api/admin/plugins/online/tag/{tag}

Auth: AdminPermission: admin.plugins.viewRoute name: admin-cloud-plugins-tagController: CloudPluginsController::searchByTagroute source

Search packages by tag Filter Mythic team products by tag.

ParameterInTypeRequiredDescription
tagpathstringyesTag name to search for
pagequeryintegernoPage number for pagination
per_pagequeryintegernoNumber of addons per page
Response data fieldTypeDescription
addonsOnlineAddon[]
tagstring
paginationobject
curl -X GET "$PANEL_URL/api/admin/plugins/online/tag/$TAG" \
  -H "Authorization: Bearer $FEATHERPANEL_API_KEY" \
  -H "Accept: application/json"

Responses: 200 Packages by tag retrieved successfully · 401 Unauthorized · 403 Forbidden - Insufficient permissions · 500 Internal server error

POST/api/admin/plugins/online/install

Auth: AdminPermission: admin.plugins.manageRoute name: admin-cloud-plugins-installController: CloudPluginsController::installroute source

Install addon from online registry Download and install an addon from Mythic marketplace releases (GET /panel/products/{slug}/releases/{version}/download).

Request body: OnlineInstall (application/json)

Body fieldTypeRequiredDescription
identifierstringyesAddon identifier to install
queued_identifiersstring[]noIdentifiers selected for the same install session; plugin= dependencies in this list are installed automatically before this addon when missing.
Response data fieldTypeDescription
identifierstringInstalled addon identifier
curl -X POST "$PANEL_URL/api/admin/plugins/online/install" \
  -H "Authorization: Bearer $FEATHERPANEL_API_KEY" \
  -H "Accept: application/json" \
  -H "Content-Type: application/json" \
  -d '{"identifier":"","queued_identifiers":[]}'

Plugin events: featherpanel:cloud:plugin:installed

Responses: 201 Addon installed successfully · 400 Bad request - Invalid identifier format · 401 Unauthorized · 402 Payment Required - Premium addon must be purchased · 403 Forbidden - Insufficient permissions · 404 Package not found in registry · 409 Conflict - Addon already installed · 412 Precondition Failed - Dependencies not met · 422 Unprocessable Entity - Failed to extract addon package or migrations failed · 500 Internal server error - Failed to install addon or download failed