Troubleshooting Guide

Authentication & Error Troubleshooting

Diagnose and fix common API errors — authentication, rate limits, and Death Verification-specific responses.

Verify API reference: /docs/api/verify · Test console: /app/developer/test

Quick Diagnostic Checklist

Error Codes
401
Unauthorized - Invalid or Missing API Key

The request did not include valid authentication credentials.

Common Causes

  • Missing Authorization header
  • Invalid or revoked API key
  • Incorrect header format (missing 'Bearer' prefix)
  • Extra whitespace or invisible characters in the key
  • Using a test/sandbox key in production or vice versa

Solutions

1
Check your Authorization header format
  1. 1.Ensure the header is exactly: Authorization: Bearer YOUR_API_KEY
  2. 2.There should be exactly one space between 'Bearer' and your key
  3. 3.The header name is case-sensitive on some servers
// Correct format
headers: {
  'Authorization': 'Bearer om_live_xxxxxxxxxxxx',
  'Content-Type': 'application/json'
}

// Common mistakes
'Authorization': 'om_live_xxxx'           // Missing 'Bearer '
'Authorization': 'Bearer  om_live_xxxx'   // Double space
'Authorization': ' Bearer om_live_xxxx'   // Leading space
'authorization': 'Bearer om_live_xxxx'    // Lowercase (may work, but not guaranteed)
2
Verify your API key is valid
  1. 1.Log in to your ObituaryMonitor dashboard
  2. 2.Go to Settings → API Keys
  3. 3.Check that your key exists and hasn't been revoked
  4. 4.If unsure, create a new API key and update your application
3
Check for invisible characters
  1. 1.Copy your API key fresh from the dashboard
  2. 2.Check for trailing newlines or spaces
  3. 3.If using environment variables, verify the value is correct
# Debug: Print your API key to verify (remove after debugging!)
echo "Key: [$OBITUARYMONITOR_API_KEY]"

# In Node.js
console.log('Key length:', process.env.OBITUARYMONITOR_API_KEY?.length);
console.log('Key:', JSON.stringify(process.env.OBITUARYMONITOR_API_KEY));

Common Authentication Issues

API key not working after copy-paste

Symptom: Invisible characters or formatting issues

Solution: Re-copy the key from the dashboard, ensuring no extra spaces or newlines. Use a plain text editor to verify.

Works in Postman but not in code

Symptom: Environment variable or header formatting issue

Solution: Log the actual header being sent. Check that environment variables are loaded correctly.

Authentication works locally but fails in production

Symptom: Environment variable not set in production

Solution: Verify the API key environment variable is set in your production environment (Vercel, Netlify, AWS, etc.).

Intermittent 401 errors

Symptom: Race condition or caching issue

Solution: Check if you're rotating API keys or if there's request caching that's sending stale headers.

403 after subscription change

Symptom: API key cache not updated

Solution: API key permissions may take a few minutes to update after plan changes. Wait 5 minutes and retry.

Verify returns possible_match for a common name

Symptom: Web-only signal without strong disambiguators

Solution: Add city+state or dob.year. Review scoring_reasons and search_scope. Do not auto-action possible_match.

Verify not_found but obit exists on Google

Symptom: Death year outside searched scope or wrong person ranked

Solution: Check search_scope.years_searched and search_depth_auto_reason. Use extended + lookback_years or stronger disambiguators. not_found is not proof of life.

Debug Your Request

Use this template to verify your authentication is working correctly:

Debug Request
# Use -v flag for verbose output to see headers
curl -v -X POST "https://obituarymonitor.com/api/v1/verify" \
  -H "Authorization: Bearer $OBITUARYMONITOR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"first_name":"Margaret","last_name":"Henderson","dob":{"month":3,"year":1942},"address":{"city":"Austin","state":"TX"}}'

# Check your environment variable
echo "API Key: $OBITUARYMONITOR_API_KEY"
echo "Key length: ${#OBITUARYMONITOR_API_KEY}"

Still having issues?

Our support team is here to help debug your integration. Include your error response and request_id when contacting us.