Getting Started with Habilis Domains
Welcome to Habilis Domains! This guide will help you get up and running with domain management and fraud detection in minutes.
Quick Start Checklist
- [ ] Create your account
 - [ ] Choose a pricing plan
 - [ ] Add your first domain
 - [ ] Configure DNS records
 - [ ] Get your API key
 - [ ] Make your first fraud API call
 - [ ] Explore the dashboard
 
Estimated Time: 30 minutes
Step 1: Create Your Account
Sign Up
- Visit [register page]
 - Enter your email address
 - Create a strong password
 - Verify your email
 - Complete your profile
 
Account Security
- Use a unique, strong password
 - Enable two-factor authentication (recommended)
 - Keep your API keys secure
 
Step 2: Choose Your Plan
Select the plan that fits your needs:
Starter - $29/month
Best for: Small projects, testing, personal use
- Up to 10 domains
 - 1,000 fraud API calls/month
 - Email support
 - All core features
 
Professional - $99/month
Best for: Growing businesses, agencies
- Up to 100 domains
 - 10,000 fraud API calls/month
 - Priority support
 - Bulk operations (Q1 2026)
 - Analytics dashboard (Q1 2026)
 
Enterprise - $299/month
Best for: Large organizations, high volume
- Unlimited domains
 - Unlimited fraud API calls
 - Dedicated support
 - All features + early access
 - Custom integration support
 
💡 Tip: Start with Starter plan and upgrade as you grow. You can change plans anytime.
Step 3: Add Your First Domain
From the Dashboard
- 
Navigate to Domains
- Click "Domains" in the sidebar
 - Click "Add Domain" button
 
 - 
Enter Domain Information
Domain Name: example.com - 
Update Nameservers
- Copy the nameservers provided:
ns1.habilisdomains.com ns2.habilisdomains.com - Go to your domain registrar
 - Update nameservers to point to Habilis Domains
 - Save changes
 
 - Copy the nameservers provided:
 - 
Verify Domain
- Wait 5-15 minutes for propagation
 - Dashboard will show "Active" when verified
 
 
Via API
curl -X POST https://api.habilisdomains.com/v1/domains \ -H "Authorization: Bearer YOUR_API_KEY" \ -H "Content-Type: application/json" \ -d '{ "domain": "example.com" }'
Step 4: Configure DNS Records
Common DNS Records
A Record (IPv4 Address)
Type: A
Name: @
Value: 192.0.2.1
TTL: 3600
CNAME Record (Alias)
Type: CNAME
Name: www
Value: example.com
TTL: 3600
MX Record (Email)
Type: MX
Name: @
Value: mail.example.com
Priority: 10
TTL: 3600
TXT Record (Verification)
Type: TXT
Name: @
Value: "v=spf1 include:_spf.example.com ~all"
TTL: 3600
Adding Records via Dashboard
- Go to Domains > Select your domain
 - Click "DNS Records"
 - Click "Add Record"
 - Select record type
 - Fill in details
 - Click "Save"
 
Adding Records via API
curl -X POST https://api.habilisdomains.com/v1/domains/example.com/records \ -H "Authorization: Bearer YOUR_API_KEY" \ -H "Content-Type: application/json" \ -d '{ "type": "A", "name": "@", "value": "192.0.2.1", "ttl": 3600 }'
Step 5: Get Your API Key
Generate API Key
- 
Navigate to Settings
- Click "Settings" in sidebar
 - Click "API Keys" tab
 
 - 
Create New Key
- Click "Generate API Key"
 - Enter a description (e.g., "Production API")
 - Copy the key immediately
 - Store securely (you won't see it again)
 
 - 
Security Best Practices
- Never commit keys to version control
 - Use environment variables
 - Rotate keys regularly
 - Use different keys for dev/production
 
 
API Key Format
hd_live_1234567890abcdef1234567890abcdef
Step 6: Make Your First Fraud API Call
Assess a Transaction
// Node.js Example const response = await fetch('https://api.habilisdomains.com/v1/fraud-detection/assess', { method: 'POST', headers: { 'Authorization': 'Bearer YOUR_API_KEY', 'Content-Type': 'application/json' }, body: JSON.stringify({ transactionId: 'txn_12345', transactionType: 'payment', userId: 'user_67890', amount: 99.99, currency: 'USD', paymentMethod: 'credit_card', ipAddress: '192.0.2.1', userAgent: 'Mozilla/5.0...', sessionId: 'sess_abc123' }) }); const result = await response.json(); console.log('Risk Score:', result.riskScore); console.log('Recommendation:', result.recommendation);
Python Example
import requests response = requests.post( 'https://api.habilisdomains.com/v1/fraud-detection/assess', headers={ 'Authorization': 'Bearer YOUR_API_KEY', 'Content-Type': 'application/json' }, json={ 'transactionId': 'txn_12345', 'transactionType': 'payment', 'userId': 'user_67890', 'amount': 99.99, 'currency': 'USD', 'paymentMethod': 'credit_card', 'ipAddress': '192.0.2.1', 'userAgent': 'Mozilla/5.0...', 'sessionId': 'sess_abc123' } ) result = response.json() print(f"Risk Score: {result['riskScore']}") print(f"Recommendation: {result['recommendation']}")
Understanding the Response
{ "transactionId": "txn_12345", "riskScore": 0.23, "recommendation": "allow", "factors": [ "Low risk IP address", "Normal transaction amount", "Verified user" ], "timestamp": "2025-10-01T10:30:00Z" }
Risk Score Ranges:
0.0 - 0.3: Low risk → Allow0.3 - 0.7: Medium risk → Review or require MFA0.7 - 1.0: High risk → Block or manual review
Step 7: Explore the Dashboard
Key Sections
1. Overview
- Account summary
 - Recent activity
 - Quick actions
 
2. Domains
- List all domains
 - Add/edit/delete domains
 - DNS record management
 - Domain status
 
3. Fraud Detection
- API usage statistics
 - Recent fraud assessments
 - Threat tracking
 - Risk score distribution
 
4. API Keys
- Manage API keys
 - View usage per key
 - Rotate keys
 - Set permissions
 
5. Settings
- Account information
 - Billing details
 - Plan management
 - Security settings
 
Common Use Cases
Use Case 1: E-commerce Fraud Prevention
// Check transaction before processing payment async function processPayment(order) { // 1. Assess fraud risk const fraudCheck = await assessTransaction({ transactionId: order.id, transactionType: 'payment', userId: order.userId, amount: order.total, paymentMethod: order.paymentMethod, ipAddress: order.ipAddress }); // 2. Take action based on risk if (fraudCheck.riskScore > 0.7) { // High risk - block transaction return { status: 'blocked', reason: 'High fraud risk' }; } else if (fraudCheck.riskScore > 0.3) { // Medium risk - require additional verification return { status: 'verify', action: 'require_mfa' }; } else { // Low risk - process payment return await processPaymentNormally(order); } }
Use Case 2: Account Registration Protection
// Check new user registration async function registerUser(userData) { // 1. Assess registration risk const fraudCheck = await assessTransaction({ transactionId: `reg_${Date.now()}`, transactionType: 'registration', userId: userData.email, ipAddress: userData.ipAddress, userAgent: userData.userAgent }); // 2. Handle based on risk if (fraudCheck.riskScore > 0.7) { // High risk - require email verification + CAPTCHA return { status: 'pending', verification: 'email_captcha' }; } else { // Normal registration flow return await createUserAccount(userData); } }
Use Case 3: Multi-Domain Management
// Bulk DNS update across domains async function updateDNSRecords(domains, record) { const results = []; for (const domain of domains) { const result = await fetch( `https://api.habilisdomains.com/v1/domains/${domain}/records`, { method: 'POST', headers: { 'Authorization': 'Bearer YOUR_API_KEY', 'Content-Type': 'application/json' }, body: JSON.stringify(record) } ); results.push({ domain, success: result.ok }); } return results; }
Next Steps
Learn More
- [ ] Read the API Documentation
 - [ ] Explore FAQ
 - [ ] Review Pricing Plans
 
Advanced Features (Coming Q1 2026)
- [ ] Set up webhook notifications
 - [ ] Use SDK libraries
 - [ ] Configure bulk operations
 - [ ] Access analytics dashboard
 
Get Help
- Email: sales@habilisdomains.com
 - Response time: Within 24 hours
 - Coming Q1 2026: AI chatbot, support tickets
 
Troubleshooting
Domain Not Verifying
Problem: Domain shows "Pending" status
Solutions:
- Verify nameservers are correctly set at registrar
 - Wait 15-30 minutes for DNS propagation
 - Check for typos in nameserver addresses
 - Clear your DNS cache
 - Contact support if issue persists
 
API Authentication Errors
Problem: Getting 401 Unauthorized errors
Solutions:
- Verify API key is correct
 - Check Authorization header format: 
Bearer YOUR_API_KEY - Ensure key hasn't been revoked
 - Generate new key if needed
 
Rate Limit Exceeded
Problem: Getting 429 Too Many Requests errors
Solutions:
- Check your plan's API limits
 - Implement request caching
 - Optimize API call frequency
 - Upgrade to higher plan
 - Contact sales for Enterprise unlimited access
 
Best Practices
Security
- ✅ Use environment variables for API keys
 - ✅ Rotate API keys regularly (every 90 days)
 - ✅ Use different keys for dev/production
 - ✅ Enable two-factor authentication
 - ✅ Monitor API usage for anomalies
 
Performance
- ✅ Cache DNS lookups when possible
 - ✅ Batch API requests when feasible
 - ✅ Use appropriate TTL values for DNS
 - ✅ Monitor API response times
 - ✅ Implement retry logic with exponential backoff
 
Cost Optimization
- ✅ Start with Starter plan, upgrade as needed
 - ✅ Monitor API usage to avoid overages
 - ✅ Use annual billing for 17% savings
 - ✅ Optimize fraud API calls (cache results)
 - ✅ Review usage monthly
 
Resources
Documentation
Support
- Email: sales@habilisdomains.com
 - Response: Within 24 hours
 
Community
- Feature requests: sales@habilisdomains.com
 - Bug reports: sales@habilisdomains.com
 
Welcome to Habilis Domains! 🚀
We're excited to have you on board. If you have any questions, don't hesitate to reach out.
Last Updated: October 1, 2025
Version: Beta 1.0