Skip to main content

Overview

The Nudj platform provides comprehensive domain management capabilities, allowing you to white-label your community platform with custom domains. This enterprise feature includes automatic SSL provisioning, DNS verification, and multi-tenant support through Vercel integration.

Domain Capabilities

  • Custom Domains - Add your own domains for complete white-labeling
  • Automatic SSL - SSL certificates provisioned automatically via Vercel
  • DNS Verification - Real-time DNS status checking and validation
  • Multi-Tenant Support - Separate domains for different organizations
  • System Protection - Protected system domains for API and core services
  • CDN Integration - Global content delivery network for performance

Accessing Domain Settings

Navigate to domain configuration:
  1. Go to AdminSettingsOrganisation
  2. Click the Domains tab
  3. View and manage custom domains
Domain changes take effect immediately but DNS propagation can take up to 48 hours. SSL certificates are automatically provisioned within minutes of successful DNS verification.

Domain Types

System Domains (Protected)

These domains are automatically generated and cannot be removed:

API Domain

Format: api.{org}.nudj.cxPrimary API endpoint for integrations

User Domain

Format: {org}.nudj.cxDefault platform access URL

Chatbot Domains

Formats:
  • {org}-v2.nudj.cx
  • {org}-sv2.nudj.cx
  • {org}-dv2.nudj.cx
AI chatbot and versioned endpoints

Preview Domains

Format: pr-{number}-api.nudj.cxPull request preview environments

Custom Domains

Add your own domains for complete white-label experience:
  • Apex Domains
  • Subdomains
Root-level domains (e.g., example.com)
Type: A Record
Name: @ (or blank)
Value: 76.76.21.21
TTL: 3600
Characteristics:
  • Direct domain without subdomain
  • Requires A record configuration
  • Best for primary brand presence
  • Supports www redirect

Adding Custom Domains

Step-by-Step Setup

1

Enter Domain

Input your domain name (without https://)
  • Example: platform.company.com
  • Validates format automatically
  • Checks for uniqueness across platform
2

Configure DNS

Add required DNS records at your provider:
  • Copy provided DNS values
  • Access your DNS provider’s control panel
  • Add A or CNAME record as specified
3

Verify Configuration

System checks DNS propagation:
  • Real-time verification status
  • Automatic retry every 30 seconds
  • Visual indicators for progress
4

SSL Provisioning

Automatic SSL certificate generation:
  • Begins after DNS verification
  • Usually completes in 1-5 minutes
  • No manual intervention required
5

Test Access

Verify domain is working:
  • Access your custom domain
  • Check SSL certificate validity
  • Test all platform features

DNS Provider Guides

  1. Log in to Cloudflare dashboard
  2. Select your domain
  3. Go to DNS settings
  4. Add record:
    • Type: CNAME (for subdomains) or A (for apex)
    • Name: Your subdomain or @
    • Content: cname.vercel-dns.com or 76.76.21.21
    • Proxy status: DNS only (gray cloud)
  5. Save changes
Disable Cloudflare proxy (orange cloud) initially for verification
  1. Sign in to GoDaddy Domain Control Center
  2. Select your domain
  3. Click “DNS” or “Manage DNS”
  4. Add record:
    • Click “Add” in the Records section
    • Select record type (A or CNAME)
    • Enter values from Nudj platform
  5. Save record
Note: GoDaddy may take 1-2 hours for changes
  1. Sign in to Namecheap account
  2. Go to Domain List
  3. Click “Manage” next to your domain
  4. Select “Advanced DNS” tab
  5. Add new record:
    • Choose record type
    • Enter host and value
    • TTL: Automatic
  6. Save all changes
  1. Sign in to Google Domains
  2. Select your domain
  3. Navigate to DNS settings
  4. Scroll to “Custom resource records”
  5. Add record with provided values
  6. Click “Add”
Google Domains typically updates within 5-10 minutes
  1. Open Route 53 console
  2. Select “Hosted zones”
  3. Choose your domain
  4. Click “Create record”
  5. Enter:
    • Record name (subdomain or leave blank)
    • Record type (A or CNAME)
    • Value from Nudj
  6. Create record
Route 53 changes are usually instant

Domain Verification

DNS Checking Process

The platform performs automated DNS verification:
// DNS verification flow
{
  stages: [
    {
      step: "DNS Lookup",
      checks: ["Record exists", "Correct type", "Valid value"],
      timeout: 5000
    },
    {
      step: "SSL Readiness",
      checks: ["Domain reachable", "Certificate request possible"],
      timeout: 10000
    },
    {
      step: "Final Validation",
      checks: ["HTTPS accessible", "Content serving"],
      timeout: 15000
    }
  ]
}

Verification Status Indicators

StatusIconDescriptionAction Required
Pending🟡DNS not yet configuredAdd DNS records
Checking🔄Verification in progressWait for completion
ActiveDomain verified and SSL activeNone - working
InvalidDNS configuration incorrectCheck DNS settings
SSL Pending🔒DNS OK, SSL provisioningWait 1-5 minutes

Troubleshooting DNS Issues

DNS propagation can take up to 48 hours, though it’s usually much faster (5-30 minutes).
Common verification problems:
  • Verify record was saved at DNS provider
  • Check for typos in record values
  • Wait for DNS propagation (up to 48 hours)
  • Try clearing local DNS cache
  • Apex domains need A records
  • Subdomains need CNAME records
  • Cannot mix record types for same hostname
  • Remove conflicting records
  • Wait for automatic provisioning (1-5 minutes)
  • Ensure DNS is fully propagated
  • Check for CAA records blocking Let’s Encrypt
  • Contact support if persists after 1 hour
  • Disable Cloudflare proxy (gray cloud)
  • Use “DNS only” mode for initial setup
  • Can re-enable proxy after verification
  • Check Cloudflare SSL settings

Managing Domains

Domain Operations

  • View Status
  • Remove Domain
  • Update Domain
Monitor domain health:
{
  domain: "platform.company.com",
  status: "active",
  ssl: {
    status: "issued",
    issuer: "Let's Encrypt",
    expiry: "2024-04-15"
  },
  dns: {
    verified: true,
    lastCheck: "2024-01-15T10:30:00Z"
  }
}

Multiple Domains

You can add multiple custom domains:
// Example multi-domain setup
{
  domains: [
    {
      type: "primary",
      domain: "platform.company.com",
      purpose: "Main platform access"
    },
    {
      type: "alias",
      domain: "app.company.com",
      purpose: "Alternative access"
    },
    {
      type: "campaign",
      domain: "event2024.company.com",
      purpose: "Special event domain"
    }
  ]
}

Security Considerations

SSL/TLS Configuration

All custom domains receive:
  • Automatic SSL: Let’s Encrypt certificates
  • Auto-renewal: Certificates renewed before expiry
  • TLS 1.2+: Modern encryption standards
  • HSTS: HTTP Strict Transport Security headers

Security Headers

Custom domains include security headers:
Strict-Transport-Security: max-age=31536000; includeSubDomains
X-Content-Type-Options: nosniff
X-Frame-Options: DENY
X-XSS-Protection: 1; mode=block
Content-Security-Policy: default-src 'self'

Domain Validation

Security checks performed:
  • Ownership verification: DNS record validation
  • Uniqueness check: Prevent domain conflicts
  • Malicious pattern detection: Block suspicious domains
  • Certificate transparency: Public certificate logs

White-Label Best Practices

Use Subdomains

Easier to manage and faster to propagate

Plan DNS Changes

Schedule during low-traffic periods

Keep System Domains

Maintain fallback access options

Monitor SSL Expiry

Track certificate renewal dates

Document DNS Setup

Record DNS provider and settings

Test Thoroughly

Verify all features on new domain

Advanced Configuration

Redirect Rules

Configure domain redirects:
{
  redirects: [
    {
      from: "www.platform.company.com",
      to: "platform.company.com",
      type: 301,
      preservePath: true
    },
    {
      from: "old-domain.com",
      to: "platform.company.com",
      type: 302,
      preserveQuery: true
    }
  ]
}

CORS Configuration

Set allowed origins for API access:
{
  cors: {
    allowedOrigins: [
      "https://platform.company.com",
      "https://app.company.com"
    ],
    allowedMethods: ["GET", "POST", "PUT", "DELETE"],
    allowCredentials: true,
    maxAge: 86400
  }
}

Performance Optimization

CDN Integration

Custom domains benefit from CDN:
  • Global edge locations: 200+ locations worldwide
  • Automatic caching: Static assets cached
  • DDoS protection: Built-in protection
  • Compression: Automatic gzip/brotli

Performance Metrics

MetricTargetTypical
DNS Lookup< 50ms20-30ms
SSL Handshake< 100ms50-80ms
Time to First Byte< 200ms100-150ms
Page Load< 2s1-1.5s

Monitoring and Logs

Domain Monitoring

Track domain health:
  • Uptime monitoring: 99.9% SLA
  • SSL expiry alerts: 30-day warnings
  • DNS change detection: Configuration alerts
  • Performance metrics: Response times

Access Logs

Domain-specific logging:
{
  timestamp: "2024-01-15T10:30:00Z",
  domain: "platform.company.com",
  method: "GET",
  path: "/api/health",
  status: 200,
  duration: 45,
  ip: "192.168.1.1",
  userAgent: "Mozilla/5.0..."
}

API Reference

Replace {org-subdomain} with your organization’s subdomain and {base-domain} with:
  • nudj.cx for production
  • nudjdev.nudj.cx for development
  • nudjstaging.nudj.cx for staging
# Export your API token: export NUDJ_API_TOKEN='your-api-token-here'
curl -X GET https://{org-subdomain}.{base-domain}/api/v2/admin/domains \
  -H "x-api-token: ${NUDJ_API_TOKEN}"

Troubleshooting

  • Verify DNS records are correct
  • Check DNS propagation status
  • Ensure SSL certificate is issued
  • Test with different DNS servers
  • Clear browser cache
  • Wait for certificate provisioning
  • Check domain matches certificate
  • Verify no conflicting CAA records
  • Ensure DNS is fully propagated
  • Contact support if persists
  • Check domain format is valid
  • Ensure domain not already used
  • Verify organization permissions
  • Check domain limit not exceeded
  • Remove special characters
  • Check CDN is active
  • Verify DNS provider performance
  • Test from different locations
  • Review security settings
  • Check for rate limiting
  • Update CORS configuration
  • Check authentication headers
  • Verify API domain is active
  • Review security policies
  • Check rate limits

Migration Guide

Moving from Existing Domain

1

Prepare New Domain

  • Add new domain to platform
  • Verify DNS configuration
  • Test all functionality
2

Update Communications

  • Notify users of domain change
  • Update documentation
  • Change marketing materials
3

Set Up Redirects

  • Configure 301 redirects
  • Preserve SEO value
  • Monitor redirect chains
4

Monitor Transition

  • Track both domains
  • Check for broken links
  • Monitor user access patterns
5

Deprecate Old Domain

  • Maintain redirects for 6-12 months
  • Eventually remove old domain
  • Update all references
I