Skip to main content

Quickstart Guide

Get up and running with CallCov in just 5 minutes. This guide will walk you through creating an account, getting your API key, and submitting your first analysis.

Prerequisites​

  • A valid email address
  • A call recording file (WAV, MP3, or other supported format)
  • cURL, Python, or Node.js installed (for API requests)

Step 1: Create Your Account​

Sign up for a CallCov account at https://callcov.com/register.

Register via API
curl -X POST https://api.callcov.com/api/v1/auth/register \
-H "Content-Type: application/json" \
-d '{
"email": "your@email.com",
"password": "YourSecurePassword123!",
"phone_number": "+1234567890"
}'

Step 2: Verify Your Email​

Check your inbox for a verification email and click the link, or verify via API:

Verify Email
curl -X POST https://api.callcov.com/api/v1/auth/verify-email \
-H "Content-Type: application/json" \
-d '{
"token": "your-verification-token"
}'

Step 3: Login & Get Access Token​

Login
curl -X POST https://api.callcov.com/api/v1/auth/login \
-H "Content-Type: application/json" \
-d '{
"email": "your@email.com",
"password": "YourSecurePassword123!"
}'

Response:

{
"access_token": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...",
"refresh_token": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...",
"token_type": "bearer"
}

Step 4: Create an API Key​

API keys are recommended for server-to-server integrations:

Create API Key
curl -X POST https://api.callcov.com/api/v1/api-keys/ \
-H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"name": "My First API Key"
}'

Response:

{
"id": "550e8400-e29b-41d4-a716-446655440000",
"key": "sk_live_abc123...",
"name": "My First API Key",
"key_prefix": "sk_live_abc1",
"created_at": "2025-01-15T10:30:00Z"
}
Important

Save your API key securely! It will only be shown once. If you lose it, you'll need to create a new one.

Step 5: Submit Your First Analysis​

Now you're ready to analyze a call! You can submit audio via URL or file upload.

Option A: Submit via Audio URL​

Analyze Call via URL
curl -X POST https://api.callcov.com/api/v1/analysis/ \
-H "Authorization: Bearer sk_live_abc123..." \
-H "Content-Type: application/json" \
-d '{
"audio_url": "https://example.com/call-recording.wav",
"agent_id": "agent_001",
"contact_id": "customer_12345",
"webhook_url": "https://your-app.com/webhooks/analysis"
}'

Option B: Upload Audio File​

Analyze Call via File Upload
curl -X POST https://api.callcov.com/api/v1/analysis/ \
-H "Authorization: Bearer sk_live_abc123..." \
-F "audio_file=@/path/to/call-recording.wav" \
-F "agent_id=agent_001" \
-F "contact_id=customer_12345"

Python Example​

Submit Analysis in Python
import requests

url = "https://api.callcov.com/api/v1/analysis/"
headers = {
"Authorization": "Bearer sk_live_abc123..."
}
data = {
"audio_url": "https://example.com/call-recording.wav",
"agent_id": "agent_001",
"contact_id": "customer_12345"
}

response = requests.post(url, headers=headers, json=data)
analysis = response.json()
print(f"Analysis ID: {analysis['id']}")

Node.js Example​

Submit Analysis in Node.js
const axios = require('axios');

const response = await axios.post(
'https://api.callcov.com/api/v1/analysis/',
{
audio_url: 'https://example.com/call-recording.wav',
agent_id: 'agent_001',
contact_id: 'customer_12345'
},
{
headers: {
'Authorization': 'Bearer sk_live_abc123...'
}
}
);

console.log(`Analysis ID: ${response.data.id}`);

Step 6: Retrieve Your Results​

The analysis runs asynchronously. You can poll for results or use webhooks.

Poll for Results​

Get Analysis Results
curl -X GET https://api.callcov.com/api/v1/analysis/550e8400-e29b-41d4-a716-446655440000 \
-H "Authorization: Bearer sk_live_abc123..."

Response:

{
"id": "550e8400-e29b-41d4-a716-446655440000",
"object": "analysis",
"created": 1642248000,
"status": "completed",
"audio": {
"url": "https://s3.amazonaws.com/...",
"duration_seconds": 125.5,
"format": "wav"
},
"transcript": {
"text": "Agent: Hello, thank you for calling...",
"segments": [...]
},
"results": {
"compliance": {
"identity_verification": {
"performed": true,
"confidence": 0.95,
"evidence": "Agent asked for account number and verified DOB"
},
"privacy_protection": {
"performed": true,
"confidence": 0.92,
"evidence": "Privacy policy disclosure provided"
}
},
"quality": {
"sentiment_analysis": {
"overall_sentiment": "positive",
"customer_sentiment": "satisfied",
"agent_sentiment": "professional"
},
"call_resolution": {
"resolved": true,
"confidence": 0.88
}
},
"coaching": {
"customer_effort_score": 2,
"recommendations": [
"Great job personalizing the interaction",
"Consider reducing hold time"
]
}
}
}

Instead of polling, receive real-time notifications:

Register Webhook
curl -X POST https://api.callcov.com/api/v1/analysis/550e8400-e29b-41d4-a716-446655440000/webhook \
-H "Authorization: Bearer sk_live_abc123..." \
-H "Content-Type: application/json" \
-d '{
"webhook_url": "https://your-app.com/webhooks/analysis"
}'

Your webhook endpoint will receive the complete analysis when it's done.

Understanding the Results​

CallCov provides three categories of insights:

Compliance​

  • Identity Verification: Was the customer's identity properly verified?
  • Privacy Protection: Were privacy disclosures provided?
  • Regulatory Adherence: Did the call follow required procedures?

Quality​

  • Sentiment Analysis: How did the customer and agent feel?
  • Call Resolution: Was the issue resolved?
  • Professionalism: How professional was the interaction?

Coaching​

  • Customer Effort Score: How easy was it for the customer? (1-5 scale)
  • Recommendations: Specific suggestions for improvement
  • Strengths: What the agent did well

Next Steps​

Congratulations! You've successfully submitted and retrieved your first analysis. Here's what to explore next:

πŸ” Authentication

Learn about API keys and JWT tokens

πŸ“‘ Webhooks

Get real-time notifications

πŸ’³ Billing

Understand pricing and usage

Support​

Need help? We're here for you: