Guides
White-Label Setup
Enterprise customers can replace all 3QPR branding with their own logo, colors, and domain. Scanned QPR Codes open conversations on your subdomain, no 3QPR mentions visible to end users.
Prerequisites
- ✓Enterprise plan subscription
- ✓Access to your DNS provider to add a CNAME record
- ✓A subdomain you control (e.g.
ai.yourbrand.com) - ✓Brand assets: logo (SVG preferred), hex color codes
1Configure your custom domain
Add a CNAME record at your DNS provider pointing to portal.3qpr.com.
| Type | Host | Value |
|---|---|---|
| CNAME | ai.yourbrand.com | portal.3qpr.com |
Then register the domain via the API:
curl -X POST https://api.3qpr.com/v1/organizations/org_01HABC/custom-domain \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{"domain": "ai.yourbrand.com"}'{
"domain": "ai.yourbrand.com",
"status": "pending_verification",
"ssl_status": "provisioning",
"verification_token": "3qpr-verify=AbCdEf123456"
}GET /v1/organizations/:id/custom-domain.2Upload brand assets
Upload your logo and set brand colors via the API or the Studio settings panel.
# Upload logo (multipart/form-data)
curl -X PUT https://api.3qpr.com/v1/organizations/org_01HABC/branding \
-H "Authorization: Bearer YOUR_API_KEY" \
-F "logo=@/path/to/logo.svg" \
-F 'colors={"primary":"#1A56DB","background":"#0F172A","text":"#F8FAFC"}'{
"logo_url": "https://cdn.3qpr.com/orgs/org_01HABC/logo.svg",
"colors": {
"primary": "#1A56DB",
"background": "#0F172A",
"text": "#F8FAFC"
},
"updated_at": "2026-03-20T12:00:00Z"
}3Verify the setup
Once DNS propagates and SSL is provisioned, scan one of your QPR Codes. The conversation should open on ai.yourbrand.com with your logo and color palette — no 3QPR branding visible.
# Check domain + SSL status
curl https://api.3qpr.com/v1/organizations/org_01HABC/custom-domain \
-H "Authorization: Bearer YOUR_API_KEY"{
"domain": "ai.yourbrand.com",
"status": "active",
"ssl_status": "active",
"verified_at": "2026-03-20T12:05:00Z"
}Branding options
| Option | Type | Description |
|---|---|---|
| logo_url | string (URL) | SVG or PNG logo shown in the conversation header |
| favicon_url | string (URL) | Browser tab favicon |
| colors.primary | hex string | Button color, active link color, accent |
| colors.background | hex string | Page background |
| colors.text | hex string | Body text color |
| page_title | string | Browser tab title (defaults to your org name) |
| powered_by | boolean | Show/hide "Powered by 3QPR" footer (Enterprise only) |
Troubleshooting
DNS propagation can take up to 48 hours. Verify your CNAME record is correct with dig CNAME ai.yourbrand.com — the answer should be portal.3qpr.com.
Ensure no CAA DNS records block Let's Encrypt. If you use Cloudflare, set the proxy status to DNS only (grey cloud) during initial provisioning.
Logo files must be under 2 MB. SVG is recommended. PNG at 2x resolution (e.g. 400×100px) also works well.