Frequently Asked Questions
How do I get an API key?
How do I get an API key?
- Go to BounceWatch Dashboard
- Sign in or create an account
- Your API key will be displayed on the dashboard
- Copy it and add to your requests as
X-API-Keyheader
How does the enrichment process work?
How does the enrichment process work?
- Send a request to
GET /api/v1/company/stripe.com - If data was enriched within the last 24 hours → instant response (< 250ms, no charge)
- If no recent data → enrichment triggers automatically (202 Accepted)
- Results are delivered to your webhook (2-10 minutes)
- Subsequent requests within 24h get the data instantly for free
X-Webhook-URL header.How are credits calculated?
How are credits calculated?
What happens if a company is not in your database?
What happens if a company is not in your database?
- We automatically trigger a realtime enrichment
- You receive a
202 Acceptedresponse with abatch_id - Fresh data is collected and sent to your webhook
- You can also poll the status endpoint
Do credits expire?
Do credits expire?
Can I test the API before purchasing?
Can I test the API before purchasing?
- 60 requests/minute
- 500 requests/day
What data sources do you use?
What data sources do you use?
- Company websites and blogs
- LinkedIn company pages
- News articles and press releases
- Public funding databases
- Job boards and career pages
- Technology detection platforms
- Government registries and public filings
- Social media and professional networks
How often is the data updated?
How often is the data updated?
Troubleshooting
Authentication Errors
Credit Errors
402 Payment Required - Insufficient credits
402 Payment Required - Insufficient credits
- Request fewer enrichment modules
- Upgrade your plan — an upgrade mid-period keeps your remaining balance and adds the new plan’s allowance on top
- Wait for the next billing period (the balance resets to your plan’s allowance; it does not roll over)
- Check if you recently queried this domain (no charge for 24h)
Rate Limit Errors
429 Too Many Requests - Rate limit exceeded
429 Too Many Requests - Rate limit exceeded
- Wait for the
retry_afterperiod - Implement exponential backoff in your code
- Spread requests evenly over time
- Upgrade to a higher plan for increased limits
Domain Errors
400 Bad Request - Invalid domain format
400 Bad Request - Invalid domain format
- Use clean domains without protocols:
stripe.com✅ - Don’t include
https://orwww.:https://www.stripe.com❌ - Don’t include paths:
stripe.com/about❌
We have no data for this domain
We have no data for this domain
202 Accepted with a batch_id. Results reach your webhook when ready.If nothing is found, the batch finishes as no_data_found, your credits are refunded
in full, and the domain goes on a 24-hour cooldown — asking again inside that window
returns 409 no_data_cooldown with a Retry-After header.If a domain repeatedly returns no data:- It might not be a company website
- The company might be too small or too new to have a public footprint
- Check the spelling
409 Conflict - already enriching, or recently enriched
409 Conflict - already enriching, or recently enriched
error field:Webhook Errors
Webhooks not being received
Webhooks not being received
- HTTPS required: Your webhook URL must use HTTPS
- Publicly accessible: Your endpoint must be reachable from the internet
- Responds quickly: Return 200 OK within 30 seconds
- Check firewall: Allow traffic from BounceWatch IPs
- Verify URL: Ensure the URL is correctly configured
Webhook signature verification failing
Webhook signature verification failing
- Wrong secret: Using old webhook secret after regeneration
- Payload modified: Parsing/reformatting the raw payload before verification
- Clock skew: Server time significantly different from UTC
Realtime Enrichment Errors
Enrichment stuck in 'processing' status
Enrichment stuck in 'processing' status
- Most enrichments complete in 3-8 minutes
- Complex requests with all modules may take up to 12 minutes
- Check the status endpoint for error messages
- The domain might have limited public data
- Contact support if the issue persists
Enrichment completed but data is sparse
Enrichment completed but data is sparse
- Company has limited online presence
- Specific data type not publicly available
- Company is new or very small
- Not all fields are available for all companies
- Larger, more active companies have more data
- Some data (funding, team) requires public disclosure

