DashForDevsDocs
DocsNewsAPI v1
dashfordevs.comSign in

© 2026 DashForDevs

DocsNewsdashfordevs.comLegalStatus
DocsOperationsProvisioning a platform
Introduction
Getting Started
Authentication
Products
Categories
Cart
Checkout
Blog
Reviews
Webhooks
Customers
Orders
Inventory
Shipping
Discounts
Affiliates
Email
Media & Files
Analytics & Tracking
Locations
Tax
Global Data
SEO
Error Handling
Geography
Finance
Automations
Page Types
Surveys
Billing & Subscriptions
Storefront Payments
SDK Reference
REST API
Storefront Architecture
Notifications
Security
Team & Permissions
Migrations & Import
Calendar & Appointments
Contact Forms
AI Bots
Dashboard API
Deployment
Changelog
Troubleshooting
Recipes
CLI & Deployment
Image Pipeline
White-label Platforms
Records Engine
Platform Modules
Platform Security
Site Keys & Client Sites
Use Cases
Operations
Provisioning a platformEnvironments & local developmentDeploy infrastructureMonitoring & observabilityThe going-live checklist

Provisioning a platform

From superadmin creation to a working dashboard: grants, keys, schemas, seeds.

Updated July 26, 2026

On this page
  • The steps
  • Seeds make it repeatable
  • Provisioning a client site (agency-style platforms)

The steps

  1. Create the platform — superadmin only; there is no self-serve path, by design. Name, slug, description. New platforms start in test mode.
  2. Grant modules — toggle the catalog for this platform. Dependencies apply (forms needs records; websites and invoices need customers). Unknown keys can't be stored.
  3. Issue keys — a secret key for the platform front end's server, a public key (with origins) if the browser needs direct reads. Values shown once; put them in the front end's env (DASH_PLATFORM_KEY, never NEXT_PUBLIC_* for the secret).
  4. Declare record types — the platform's schema: its entities, fields, flags. This is where the vertical becomes real.
  5. Stand up the front end — the dashboard/portal app on the platform SDK; nav and routes derived from whoami().platform.modules.

Seeds make it repeatable

Provisioning that lives in a runbook decays; provisioning that lives in seed scripts survives. The working pattern: idempotent per-concern scripts (record types, app settings, categories, demo content) that update_or_create by key, so re-running refreshes rather than duplicates — the same discipline these docs are published with.

Provisioning a client site (agency-style platforms)

  1. Create the customer; send the portal invite when they should have access.
  2. Create the project, then its website record (1 project = 1 website).
  3. Issue the site's dfd-site-* keys from the site's panel.
  4. Scaffold the site from the platform's reference site on the paired site SDK.
  5. Deploy through the managed flow — keys are injected into the app's env automatically.
PreviousData-sensitive verticalsNextEnvironments & local development

On this page

  • The steps
  • Seeds make it repeatable
  • Provisioning a client site (agency-style platforms)