View .md

Subdomains endpoints (Admin API)

9 FeatherPanel Admin API endpoints from admin/subdomains.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/subdomains.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/subdomains

Auth: AdminPermission: admin.subdomains.viewRoute name: admin-subdomains-indexController: SubdomainsController::indexroute source

List subdomain manager domains Retrieve paginated list of subdomain manager domains with spell mappings.

ParameterInTypeRequiredDescription
pagequeryintegerno
limitqueryintegerno
searchquerystringno
includeInactivequerybooleanno
Response data fieldTypeDescription
domainsSubdomainManagerDomain[]
paginationobject
curl -X GET "$PANEL_URL/api/admin/subdomains" \
  -H "Authorization: Bearer $FEATHERPANEL_API_KEY" \
  -H "Accept: application/json"

Plugin events: featherpanel:admin:subdomains:domains:retrieved

Responses: 200 Domains retrieved successfully · 403 Forbidden

GET/api/admin/subdomains/settings

Auth: AdminPermission: admin.subdomains.editRoute name: admin-subdomains-settingsController: SubdomainsController::settingsroute source

Get subdomain manager settings

curl -X GET "$PANEL_URL/api/admin/subdomains/settings" \
  -H "Authorization: Bearer $FEATHERPANEL_API_KEY" \
  -H "Accept: application/json"

Responses: 200 Settings retrieved successfully

PATCH/api/admin/subdomains/settings

Auth: AdminPermission: admin.subdomains.editRoute name: admin-subdomains-settingsController: SubdomainsController::settingsroute source

Get subdomain manager settings

curl -X PATCH "$PANEL_URL/api/admin/subdomains/settings" \
  -H "Authorization: Bearer $FEATHERPANEL_API_KEY" \
  -H "Accept: application/json"

Responses: 200 Settings retrieved successfully

GET/api/admin/subdomains/spells

Auth: AdminPermission: admin.subdomains.viewRoute name: admin-subdomains-spellsController: SubdomainsController::spellsroute source

List spells available for subdomain manager

curl -X GET "$PANEL_URL/api/admin/subdomains/spells" \
  -H "Authorization: Bearer $FEATHERPANEL_API_KEY" \
  -H "Accept: application/json"

Responses: 200 Spells retrieved successfully

GET/api/admin/subdomains/{uuid}

Auth: AdminPermission: admin.subdomains.viewRoute name: admin-subdomains-showController: SubdomainsController::showroute source

Get subdomain manager domain Retrieve information about a subdomain manager domain including subdomains.

ParameterInTypeRequiredDescription
uuidpathstringyes
curl -X GET "$PANEL_URL/api/admin/subdomains/$UUID" \
  -H "Authorization: Bearer $FEATHERPANEL_API_KEY" \
  -H "Accept: application/json"

Plugin events: featherpanel:admin:subdomains:domain:retrieved

Responses: 200 Domain retrieved successfully · 404 Domain not found

PUT/api/admin/subdomains

Auth: AdminPermission: admin.subdomains.createRoute name: admin-subdomains-createController: SubdomainsController::createroute source

Create subdomain manager domain

Body fieldTypeRequiredDescription
domainstringyes
descriptionstringno
is_activebooleanno
cloudflare_zone_idstringno
cloudflare_account_idstringno
spellsobject[]no
curl -X PUT "$PANEL_URL/api/admin/subdomains" \
  -H "Authorization: Bearer $FEATHERPANEL_API_KEY" \
  -H "Accept: application/json" \
  -H "Content-Type: application/json" \
  -d '{"domain":"","description":"","is_active":false,"cloudflare_zone_id":"","cloudflare_account_id":"","spells":[]}'

Plugin events: featherpanel:admin:subdomains:domain:created

Responses: 201 Domain created successfully · 400 Validation failed

PATCH/api/admin/subdomains/{uuid}

Auth: AdminPermission: admin.subdomains.editRoute name: admin-subdomains-updateController: SubdomainsController::updateroute source

Update subdomain manager domain

ParameterInTypeRequiredDescription
uuidpathstringyes
curl -X PATCH "$PANEL_URL/api/admin/subdomains/$UUID" \
  -H "Authorization: Bearer $FEATHERPANEL_API_KEY" \
  -H "Accept: application/json"

Plugin events: featherpanel:admin:subdomains:domain:updated

Responses: 200 Domain updated successfully · 404 Domain not found

DELETE/api/admin/subdomains/{uuid}

Auth: AdminPermission: admin.subdomains.deleteRoute name: admin-subdomains-deleteController: SubdomainsController::deleteroute source

Delete subdomain manager domain

ParameterInTypeRequiredDescription
uuidpathstringyes
curl -X DELETE "$PANEL_URL/api/admin/subdomains/$UUID" \
  -H "Authorization: Bearer $FEATHERPANEL_API_KEY" \
  -H "Accept: application/json"

Plugin events: featherpanel:admin:subdomains:domain:deleted

Responses: 200 Domain deleted successfully · 400 Domain still has subdomains · 404 Domain not found

GET/api/admin/subdomains/{uuid}/subdomains

Auth: AdminPermission: admin.subdomains.viewRoute name: admin-subdomains-subdomain-listController: SubdomainsController::listSubdomainsroute source

List subdomains attached to a domain

ParameterInTypeRequiredDescription
uuidpathstringyes
curl -X GET "$PANEL_URL/api/admin/subdomains/$UUID/subdomains" \
  -H "Authorization: Bearer $FEATHERPANEL_API_KEY" \
  -H "Accept: application/json"

Plugin events: featherpanel:admin:subdomains:domain:not:found

Responses: 200 Subdomains retrieved successfully · 404 Domain not found