Administration Reference
Platform-admin-only endpoints for managing tenants, nameserver configuration, and cross-tenant state. For the audit log, see Audit Log. For user and role management (tenant admin), see Users, Groups, and Roles.
Base path: /api/v1/admin/
Required permission: Platform admin unless otherwise stated.
Platform configuration#
GET /admin/config#
List all platform configuration settings.
Response:
1 2 3 4 5 6 7 8 9 10 11 | |
GET /admin/config/{key}#
Get a specific config value.
PATCH /admin/config/{key}#
Update a config value.
Request: {"value": "7200"}
Changes take effect immediately for most settings; some require restart.
Nameservers#
ScaiDNS's authoritative nameservers are embedded in every zone's NS records and SOA. Changing them updates all zones.
GET /admin/nameservers#
Get the current nameserver list.
Response:
1 2 3 4 5 6 | |
PUT /admin/nameservers#
Update the nameserver list.
Request:
1 2 3 4 5 6 7 | |
Writes the change to platform config and updates NS records across all zones. Impacts every zone globally — coordinate carefully.
Authoritative domains#
The list of domains for which this ScaiDNS instance is authoritative (used for zone transfer validation).
GET /admin/authoritative-domains#
PUT /admin/authoritative-domains#
Request: {"domains": ["example.com", "example.net"]}
Partners#
GET /admin/partners#
List ScaiKey partners (for multi-tenant platforms).
Response:
1 2 3 4 5 6 7 8 9 10 11 12 | |
GET /admin/partners/{partner_id}#
Get a single partner.
Tenants#
GET /admin/tenants#
List all tenants across the platform.
Query parameters: page, page_size, status, search.
GET /admin/tenants/{tenant_id}#
Get a single tenant.
Response:
1 2 3 4 5 6 7 8 9 10 11 | |
POST /admin/tenants#
Create a tenant (normally synced from ScaiKey automatically via webhooks).
Request:
| Field | Type | Required |
|---|---|---|
name |
string | Yes |
slug |
string | Yes |
scaikey_tenant_id |
string | Yes |
partner_id |
string | No |
settings |
object | No |
PATCH /admin/tenants/{tenant_id}#
Update tenant metadata.
POST /admin/tenants/{tenant_id}/suspend#
Suspend a tenant. All API calls from the tenant's users start returning 403. Zone data is preserved.
POST /admin/tenants/{tenant_id}/activate#
Reactivate a suspended tenant.
Platform statistics#
GET /admin/stats#
Get global counts.
Response:
1 2 3 4 5 6 7 | |
Useful for monitoring dashboards. Also see Health and Monitoring.
Zone sync status#
GET /admin/sync-status#
Get the PowerDNS sync state — which zones are in sync vs pending changes vs failed.
Response:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 | |
Error codes#
| Status | Meaning |
|---|---|
403 |
Caller is not a platform admin |
404 |
Resource not found |
409 |
Conflict (e.g., creating a tenant that already exists) |
Related#
- Audit Log — admin-visible audit trail.
- Users, Groups, and Roles — tenant-level admin.
- Deployment — running ScaiDNS.