Quick Start Guide
Welcome to KnoxCall! This guide walks you through the same steps as our in-app QuickStart wizard. You’ll learn the three core concepts of KnoxCall: Clients, Routes, and Secrets.What is KnoxCall?
KnoxCall is a webhook routing and proxy system that sits between your clients and your backend APIs. It provides:- 🔐 Security: API keys, IP whitelisting, request signing, encrypted secrets
- 📊 Monitoring: Real-time logs, analytics, geo-tracking, alerts
- 🔧 Flexibility: Environment switching, secret injection, rate limiting
- 🌍 Compliance: VPN egress routing for data sovereignty (HIPAA, GDPR)
The Three Core Concepts
Before you start, understand these three foundational concepts:1. Clients = IP Addresses (Authorization)
Clients are authorized IP addresses that can call your routes. They provide network-level security. Think of it as: “Which servers/devices are allowed to make requests?” Examples:- Your production server:
52.123.45.67 - Your office network:
192.168.1.0/24 - Your development laptop:
203.45.67.89
2. Routes = API Proxies (Forwarding Rules)
Routes define how incoming requests are forwarded to your backend APIs. Think of it as: “Where should KnoxCall send this request?” Example flow:3. Secrets = Encrypted Credentials (Security)
Secrets store API keys, tokens, and passwords encrypted on KnoxCall’s servers. They’re injected into requests server-side so clients never see them. Think of it as: “How do I pass API keys to my backend without exposing them?”Step 1: Create Your First Client
Let’s add your IP address as an authorized client.1.1: Find Your IP Address
First, determine your current IP:203.45.67.89)
1.2: Navigate to Clients
- Click Resources in the sidebar
- Select Clients
- Click Create Client button
1.3: Fill in Client Details
Client Name:1.4: Save
Click Create Client Your IP is now whitelisted and ready to make requests! ✅Production Tip: For production servers, use Server type and static IP addresses (like AWS Elastic IPs). For development, User type is fine for dynamic IPs.
Step 2: Create Your First Route
Now let’s create a route to forward requests to a backend API.2.1: Navigate to Routes
- Click Resources in the sidebar
- Select Routes
- Click Create Route button
2.2: Configure Basic Settings
Route Name:2.3: Security Settings
Leave defaults for now:- Requires Clients: ✓ ON (IP whitelist enabled)
- Require Signature: OFF
- Rate Limiting: OFF
2.4: Save
Click Create Route Your route is now live! 🚀2.5: Assign Your Client to the Route
Now connect your client (IP address) to your route:- Find your route in the list
- Click on “test-api”
- Go to Environment Clients tab
- Select “production” environment
- Click Assign Clients
- Check “My Development Machine”
- Click Save
Step 3: Create Your First Secret
Let’s store a secret that can be injected into requests.3.1: Navigate to Secrets
- Click Resources in the sidebar
- Select Secrets
- Click Create Secret button
3.2: Choose Secret Type
Select String Secret For API keys, tokens, passwords3.3: Fill in Secret Details
Secret Name:3.4: Save
Click Create Secret Your secret is now encrypted and stored! 🔐Step 4: Make Your First Request
Now let’s test everything together!4.1: Get Your API Key
You need a KnoxCall API key for authentication:- Navigate to Settings in the sidebar
- Scroll to API Keys section
- Click Generate New Key
- Copy the key immediately (you’ll only see it once!)
tk_abc123_xyz789... (72 characters)
4.2: Get Your Tenant Subdomain
When you created your account, KnoxCall generated a unique subdomain:https://a1b2c3d4.DunderMifflin.knoxcall.com
Find yours in the admin UI header or your welcome email.
4.3: Make a Request
Now make your first proxied API call:a1b2c3d4.DunderMifflin.knoxcall.com→ Your subdomaintk_abc123_xyz789...→ Your API keytest-api→ Your route name
4.4: Expected Response
You should see JSON data from the test API:Understanding What Happened
Here’s the complete request flow:Step 5: View Your Request Logs
See your request in real-time:- Navigate to Logs → API Logs
- Find your request (should be at the top)
- Click to expand and see:
- Timestamp
- HTTP method and full URL path
- Status code (should be 200)
- Response time
- Request headers and body
- Response headers and body
- Source IP and geo-location
What You’ve Learned
✅ Clients - You created an authorized IP address ✅ Routes - You created a forwarding rule to a backend API ✅ Secrets - You created an encrypted credential ✅ API Keys - You generated authentication for requests ✅ Requests - You made your first proxied API call ✅ Logs - You viewed request details in real-timeNext Steps: Level Up
Now that you understand the basics, explore advanced features:Inject Secrets
Add secrets to route headers/body
Use Environments
Set up dev, staging, production
Rate Limiting
Protect your APIs from abuse
Request Signing
Add HMAC signatures for security
Analytics
View traffic metrics and trends
Alerts
Get notified of failures
Common Issues & Solutions
”Route not found”
Check:- You’re using the correct subdomain (with hash prefix)
- The
x-knoxcall-routeheader matches your route name exactly (case-sensitive) - The route is enabled in the UI
”Invalid API key”
Check:- You copied the full 72-character API key
- The key hasn’t been deleted
- You’re using the correct tenant subdomain
”IP not authorized”
This is the most common issue for new users! Causes:- Your IP isn’t whitelisted as a client
- Client not assigned to the route environment
- Client is disabled
- Your IP changed (home networks, mobile)
- Check your current IP:
curl https://api.ipify.org - Verify it matches your client IP in Clients page
- Make sure client is assigned to route → Environment Clients tab → “production”
- Check client is enabled
requires_clients on your route to test if IP authorization is the issue.
”502 Bad Gateway”
Causes:- Target URL is unreachable from the internet
- Backend server is down
- DNS resolution failed
- Test target URL directly:
curl https://jsonplaceholder.typicode.com/posts/1 - Check backend server is running
- Verify target URL in route settings
Pro Tips
Tip 1: Use Test API Keys for Development
Create separate API keys for dev/staging/prod. Test keys can skip IP authorization for easier development.Tip 2: Name Things Descriptively
Good names:Tip 3: Start Simple, Add Security Later
- First: Get basic route working
- Then: Add IP authorization
- Then: Add secrets
- Then: Add rate limiting
- Finally: Add request signing
Tip 4: Use the Support Chat
See that chat bubble in the bottom-right? That’s powered by Chatwoot and monitored by our team. Ask questions anytime!Need Help?
- 💬 Support chat (bottom right corner) - fastest way to get help
- 📖 Full documentation - browse all guides and references
- 📧 Email - [email protected] for account issues
- 🐛 Bug reports - GitHub issues for technical problems
Summary: The KnoxCall Workflow
📊 Statistics
- Level: beginner
- Time: 15 minutes
- Prerequisites: None
🏷️ Tags
quickstart, beginner, tutorial, getting-started, wizard