White-Label Setup

Remove FrontDeskOS branding and replace it with your own identity across the dashboard, widgets, and emails.

Custom Domain Configuration

Serve the FrontDeskOS dashboard and API from your own domain. Add a CNAME record pointing your subdomain to FrontDeskOS, then configure it via the API:

DNS recordtext
# Add this CNAME record to your DNS provider
app.yourcompany.com  CNAME  custom.frontdeskos.com
Configure custom domainbash
curl -X POST https://api.frontdeskos.com/v1/white-label/domain \
  -H "Authorization: Bearer sk_live_your_api_key" \
  -H "Content-Type: application/json" \
  -d '{
    "domain": "app.yourcompany.com",
    "ssl": true
  }'

FrontDeskOS will automatically provision an SSL certificate for your domain. This typically completes within a few minutes.

API Domain
You can also set a custom API domain (e.g. api.yourcompany.com) by adding a second CNAME record pointing to api-custom.frontdeskos.com.

Branding

Customize the logo, colors, and fonts used throughout the dashboard and widgets:

Branding configurationjson
{
  "branding": {
    "companyName": "YourCompany",
    "logo": {
      "light": "https://cdn.yourcompany.com/logo-dark.svg",
      "dark": "https://cdn.yourcompany.com/logo-light.svg",
      "favicon": "https://cdn.yourcompany.com/favicon.ico"
    },
    "colors": {
      "primary": "#2563EB",
      "primaryHover": "#1D4ED8",
      "accent": "#7C3AED",
      "background": "#FFFFFF",
      "foreground": "#0F172A",
      "muted": "#F1F5F9",
      "border": "#E2E8F0"
    },
    "fonts": {
      "heading": "Inter",
      "body": "Inter",
      "mono": "JetBrains Mono"
    },
    "borderRadius": "8px"
  }
}
Apply branding via APIbash
curl -X PUT https://api.frontdeskos.com/v1/white-label/branding \
  -H "Authorization: Bearer sk_live_your_api_key" \
  -H "Content-Type: application/json" \
  -d @branding.json

Widget Theming

The embeddable widget automatically inherits your white-label branding. You can further customize widget-specific styles:

Widget theme overridejavascript
FrontDeskWidget.init({
  workspaceId: "ws_your_workspace_id",
  publishableKey: "pk_live_your_key",

  // White-label overrides
  whiteLabel: {
    hideWatermark: true,           // Remove "Powered by FrontDeskOS"
    companyName: "YourCompany",    // Shown in widget header
    logoUrl: "https://cdn.yourcompany.com/logo.svg",
    supportUrl: "https://support.yourcompany.com",
    privacyUrl: "https://yourcompany.com/privacy",
  },

  // Theme inherits from branding config, or override here
  accentColor: "#2563EB",
  theme: "light",
});
Preview Changes
Use the white-label preview endpoint to see your branding changes before they go live: GET /v1/white-label/preview

Custom Email Templates

Customize the transactional emails sent by FrontDeskOS (appointment confirmations, reminders, follow-ups) to match your brand:

Email template configurationjson
{
  "emailTemplates": {
    "global": {
      "fromName": "YourCompany",
      "fromEmail": "noreply@yourcompany.com",
      "replyTo": "support@yourcompany.com",
      "headerLogoUrl": "https://cdn.yourcompany.com/email-logo.png",
      "footerText": "© 2025 YourCompany. All rights reserved.",
      "accentColor": "#2563EB"
    },
    "appointmentConfirmation": {
      "subject": "Your appointment is confirmed - {{staffName}} on {{date}}",
      "bodyHtml": "<p>Hi {{patientName}},</p><p>Your appointment with {{staffName}} is confirmed for <strong>{{dateTime}}</strong>.</p><p>Location: {{location}}</p><p>If you need to reschedule, reply to this email or call us at {{phone}}.</p>"
    },
    "appointmentReminder": {
      "subject": "Reminder: Appointment tomorrow at {{time}}",
      "bodyHtml": "<p>Hi {{patientName}},</p><p>This is a friendly reminder about your appointment tomorrow at <strong>{{time}}</strong> with {{staffName}}.</p>"
    },
    "missedCallFollowUp": {
      "subject": "We missed your call - how can we help?",
      "bodyHtml": "<p>Hi {{callerName}},</p><p>We noticed we missed your call. We'd love to help! You can book an appointment online or call us back at {{phone}}.</p>"
    }
  }
}
Upload email templatesbash
curl -X PUT https://api.frontdeskos.com/v1/white-label/email-templates \
  -H "Authorization: Bearer sk_live_your_api_key" \
  -H "Content-Type: application/json" \
  -d @email-templates.json
Email Authentication
To send emails from your own domain, you must configure SPF, DKIM, and DMARC records. FrontDeskOS will provide the required DNS records when you set a custom fromEmail domain.

Search Documentation

Search for pages, tools, and guides