Prerequisites:
- API key from your JobHive dashboard
- Node.js version 18+ (for JavaScript/TypeScript)
- Python 3.10+ (for Python integrations)
- Docker and Docker Compose (for local development)
- PostgreSQL 14+ (for database development)
1
Get Your API Key
- Log into your JobHive dashboard
- Navigate to Settings → API Keys
- Generate a new API key for your application
- Copy and securely store your API key
2
Choose Your Development Path
- Platform Integration
- Local Development
- Frontend Development
Use JobHive’s hosted API for production applications and integrations.Direct API Integration:
3
Create Your First Interview
- JavaScript
- Python
- cURL
Local Development Environment
Backend Setup
1
Database Setup
2
Redis Setup
3
Environment Configuration
Create a
.env.local file:4
Start Development Server
Frontend Development
Webhook Setup
Configure webhooks to receive real-time updates about interview events.- Express.js
- Django
Environment Configuration
- Development
- Production
- Docker Compose
Testing Your Integration
Test Mode
Use our test mode to validate your integration without consuming credits or creating real interviews.- JavaScript
- Python
Mock Interview Results
Test interviews return mock results for development purposes:Rate Limits & Quotas
JobHive enforces the following rate limits based on your subscription:| Plan | API Calls/min | Concurrent Interviews | Monthly Interviews |
|---|---|---|---|
| Free | 60 | 2 | 10 |
| Starter | 180 | 5 | 100 |
| Professional | 300 | 15 | 500 |
| Enterprise | 1000 | 50 | Unlimited |
Rate Limit Headers
All API responses include rate limit information:Handling Rate Limits
- JavaScript
- Python
Troubleshooting
Authentication Error (401)
Authentication Error (401)
Common Causes:
- Incorrect or missing API key in Authorization header
- API key for wrong environment (dev vs prod)
- Expired or revoked API key
Rate Limit Exceeded (429)
Rate Limit Exceeded (429)
Symptoms:
- HTTP 429 responses from API
- “Rate limit exceeded” error messages
- Delayed interview creation
- Implement exponential backoff with jitter
- Monitor rate limit headers in responses
- Consider upgrading your subscription plan
- Cache API responses to reduce redundant calls
- Use webhooks instead of polling for status updates
Webhook Not Receiving Events
Webhook Not Receiving Events
Troubleshooting Steps:
- Verify webhook URL is publicly accessible (use tools like ngrok for local testing)
- Check webhook secret is correctly configured
- Ensure endpoint returns HTTP 200 status
- Verify request signature validation
- Check firewall and security group settings
WebSocket Connection Issues
WebSocket Connection Issues
Common Problems:
- Connection drops during interviews
- Unable to establish WebSocket connection
- Authentication failures on WebSocket
Interview Creation Fails
Interview Creation Fails
Validation Errors:
- Missing required fields (job title, candidate email)
- Invalid skill names or difficulty levels
- Malformed email addresses
Local Development Issues
Local Development Issues
Database Connection Problems:Redis Connection Issues:Django Migration Errors:
Support & Resources
Developer Support
Get technical help from our engineering team
API Status
Check real-time API status and incidents
Bug Reports
Report bugs and request features via email
Email Support
Contact our development team for technical support
Getting Help
When reaching out for support, please include:- API Version: Which API version you’re using
- Request/Response: Full HTTP request and response (remove sensitive data)
- Error Details: Complete error messages and stack traces
- Environment: Development, staging, or production
- Timestamp: When the issue occurred (with timezone)
- Free Plan: 2-3 business days
- Paid Plans: 24 hours for technical issues
- Enterprise: Dedicated Slack channel with 4-hour response SLA
