Skip to main content
GET
/
v1
/
scored-calls
cURL
curl --request GET \
  --url https://client-api.salesfinity.co/v1/scored-calls \
  --header 'x-api-key: <api-key>'
{
  "data": [
    {
      "_id": "<string>",
      "insight": {
        "total_score": 123,
        "lead": {
          "function": "<string>",
          "tech_stack_mentioned": [
            "<string>"
          ],
          "current_vendor": "<string>",
          "fit_score": 123,
          "is_decision_maker": true,
          "is_correct_persona": true,
          "pain_point_resonated": true,
          "is_qualified_meeting": true,
          "is_likely_to_buy": true,
          "prospect_lifecycle_stage": [
            "<string>"
          ]
        },
        "messaging": {
          "value_prop_resonated": [
            "<string>"
          ],
          "objection_outcome": [
            "<string>"
          ],
          "emotional_triggers": [
            "<string>"
          ],
          "recommendation_to_nail_messaging": "<string>"
        },
        "targeting_feedback": {
          "persona_fit": "<string>",
          "industry_fit": "<string>",
          "persona_seniority": "<string>",
          "title_relevance": "<string>",
          "data_quality_issue": [
            "<string>"
          ],
          "future_follow_up_needed": true,
          "follow_up_reason": [
            "<string>"
          ]
        },
        "metadata": {
          "duration_sec": 123,
          "asr_confidence_avg": 123,
          "audio_features_available": true,
          "talk_listen_ratio_rep": 123,
          "total_questions": 123,
          "open_question_ratio": 123,
          "interruptions_by_rep": 123,
          "core_pitch_duration_sec": 123,
          "estimated_wpm_rep": 123,
          "objections_detected": [
            "<string>"
          ]
        },
        "facets": {
          "intro": {
            "score": 123,
            "weight_pct": 123,
            "explanation": "<string>",
            "insufficient_evidence": true,
            "evidence": [
              {
                "start_sec": 123,
                "end_sec": 123,
                "text": "<string>"
              }
            ]
          },
          "discovery": {
            "score": 123,
            "weight_pct": 123,
            "explanation": "<string>",
            "insufficient_evidence": true,
            "evidence": [
              {
                "start_sec": 123,
                "end_sec": 123,
                "text": "<string>"
              }
            ]
          },
          "pitch": {
            "score": 123,
            "weight_pct": 123,
            "explanation": "<string>",
            "insufficient_evidence": true,
            "evidence": [
              {
                "start_sec": 123,
                "end_sec": 123,
                "text": "<string>"
              }
            ]
          },
          "tonality": {
            "score": 123,
            "weight_pct": 123,
            "explanation": "<string>",
            "insufficient_evidence": true,
            "evidence": [
              {
                "start_sec": 123,
                "end_sec": 123,
                "text": "<string>"
              }
            ]
          },
          "objection_handling": {
            "score": 123,
            "weight_pct": 123,
            "explanation": "<string>",
            "insufficient_evidence": true,
            "evidence": [
              {
                "start_sec": 123,
                "end_sec": 123,
                "text": "<string>"
              }
            ]
          },
          "cta": {
            "score": 123,
            "weight_pct": 123,
            "explanation": "<string>",
            "insufficient_evidence": true,
            "evidence": [
              {
                "start_sec": 123,
                "end_sec": 123,
                "text": "<string>"
              }
            ]
          }
        },
        "gaps": {
          "skill": 123,
          "playbook": 123,
          "rationale": "<string>"
        },
        "coaching": {
          "top_wins": [
            "<string>"
          ],
          "top_opportunities": [
            "<string>"
          ],
          "suggested_drills": [
            {
              "facet": "<string>",
              "assignment": "<string>"
            }
          ]
        }
      },
      "type": "call",
      "call_log": {
        "_id": "<string>",
        "contact": {},
        "recording_url": "<string>",
        "duration": 123
      },
      "user": {
        "_id": "<string>",
        "email": "<string>",
        "first_name": "<string>",
        "last_name": "<string>"
      },
      "createdAt": "2023-11-07T05:31:56Z",
      "updatedAt": "2023-11-07T05:31:56Z"
    }
  ],
  "pagination": {
    "total": 123,
    "page": 123,
    "limit": 123,
    "pages": 123
  }
}
Retrieves a paginated list of AI-scored calls. Each scored call includes detailed insights across six scoring facets (intro, discovery, pitch, tonality, objection handling, CTA), lead qualification data, coaching recommendations, and an overall score.

Query Parameters

Pagination & Sorting

  • limit (optional, number): Number of items per page (default: 10, max: 100)
  • page (optional, number): The current page number to retrieve (default: 1)
  • sort (optional, string): Sort field with optional - prefix for descending order (default: -createdAt)

Filters

  • start_date (optional, ISO 8601 date): Start of date range
  • end_date (optional, ISO 8601 date): End of date range
  • min_score (optional, number): Minimum total score (0-100)
  • max_score (optional, number): Maximum total score (0-100)
  • user_id (optional, string): Filter by user ID

Example Requests

Basic request:
GET /v1/scored-calls?page=1&limit=10
Filter by date range:
GET /v1/scored-calls?start_date=2024-01-01&end_date=2024-01-31
Filter by score range:
GET /v1/scored-calls?min_score=70&max_score=100
Filter by user and date:
GET /v1/scored-calls?user_id=507f1f77bcf86cd799439033&start_date=2024-01-01&end_date=2024-01-31

Response

Returns a JSON object containing the list of scored calls with pagination metadata.
{
  "data": [
    {
      "_id": "507f1f77bcf86cd799439011",
      "insight": {
        "total_score": 78,
        "lead": {
          "function": "Sales",
          "tech_stack_mentioned": ["Salesforce", "Outreach"],
          "current_vendor": "Competitor Inc",
          "fit_score": 85,
          "is_decision_maker": true,
          "is_correct_persona": true,
          "pain_point_resonated": true,
          "is_qualified_meeting": true,
          "is_likely_to_buy": false,
          "prospect_lifecycle_stage": ["solution_aware"]
        },
        "messaging": {
          "value_prop_resonated": ["efficiency", "time_savings"],
          "objection_outcome": ["handled"],
          "emotional_triggers": ["frustration_with_current_tool"],
          "recommendation_to_nail_messaging": "Lead with ROI data specific to their industry"
        },
        "targeting_feedback": {
          "persona_fit": "excellent",
          "industry_fit": "good",
          "persona_seniority": "vp",
          "title_relevance": "good",
          "data_quality_issue": [],
          "future_follow_up_needed": true,
          "follow_up_reason": ["renewal"]
        },
        "metadata": {
          "duration_sec": 245,
          "asr_confidence_avg": 0.92,
          "audio_features_available": true,
          "talk_listen_ratio_rep": 0.45,
          "total_questions": 8,
          "open_question_ratio": 0.625,
          "interruptions_by_rep": 1,
          "core_pitch_duration_sec": 35,
          "estimated_wpm_rep": 155,
          "objections_detected": ["budget"]
        },
        "facets": {
          "intro": {
            "score": 85,
            "weight_pct": 10,
            "explanation": "Strong permission-based opener",
            "insufficient_evidence": false,
            "checks": {
              "permission_opener_used": true,
              "opener_length_sec": 12,
              "time_to_opener_sec": 3,
              "improvement_recommendation": "Consider a more personalized opener"
            }
          },
          "discovery": {
            "score": 72,
            "weight_pct": 25,
            "explanation": "Good question quality but missed timing topic",
            "insufficient_evidence": false,
            "metrics": {
              "total_questions": 8,
              "open_question_ratio": 0.625,
              "improvement_recommendation": "Ask about timeline and decision process",
              "topic_coverage": ["pain", "current_tools"]
            }
          },
          "pitch": {
            "score": 80,
            "weight_pct": 20,
            "explanation": "Well-tailored pitch to discovery findings",
            "insufficient_evidence": false,
            "metrics": {
              "core_pitch_duration_sec": 35,
              "tailored_to_discovery": true,
              "improvement_recommendation": "Include a customer success story",
              "outcome_keywords": ["efficiency", "save_time"]
            }
          },
          "tonality": {
            "score": 75,
            "weight_pct": 15,
            "explanation": "Good pace, minor filler word usage",
            "insufficient_evidence": false,
            "metrics": {
              "estimated_wpm": 155,
              "interruptions_by_rep": 1,
              "filler_density_per_min": 2.1,
              "improvement_recommendation": "Reduce filler words"
            }
          },
          "objection_handling": {
            "score": 70,
            "weight_pct": 15,
            "explanation": "Addressed budget objection but no follow-up probe",
            "insufficient_evidence": false,
            "metrics": {
              "objections_detected": ["budget"],
              "followup_probe_present": false,
              "resolution_check_present": true,
              "improvement_recommendation": "Add a follow-up question after handling objections"
            }
          },
          "cta": {
            "score": 82,
            "weight_pct": 15,
            "explanation": "Clear CTA with specific time offered",
            "insufficient_evidence": false,
            "metrics": {
              "cta_attempted": true,
              "cta_type": "meeting",
              "specific_time_offered": true,
              "improvement_recommendation": "Confirm next steps via email",
              "outcome": "accepted"
            }
          }
        },
        "gaps": {
          "skill": 25,
          "playbook": 15,
          "rationale": "Discovery needs more depth on timing and decision process"
        },
        "coaching": {
          "top_wins": ["Strong opener", "Good pitch tailoring"],
          "top_opportunities": ["Deeper discovery", "Objection follow-up probes"],
          "suggested_drills": [
            {
              "facet": "discovery",
              "assignment": "Practice SPIN questions for uncovering timeline"
            }
          ]
        }
      },
      "call_log": {
        "_id": "507f1f77bcf86cd799439022",
        "contact": {
          "first_name": "John",
          "last_name": "Doe",
          "company": "Acme Corp"
        },
        "recording_url": "https://recordings.example.com/call_abc123.mp3",
        "duration": 245
      },
      "user": {
        "_id": "507f1f77bcf86cd799439033",
        "first_name": "Jane",
        "last_name": "Smith",
        "email": "[email protected]"
      },
      "type": "call",
      "createdAt": "2024-01-15T14:33:00.000Z",
      "updatedAt": "2024-01-15T14:33:00.000Z"
    }
  ],
  "pagination": {
    "total": 42,
    "page": 1,
    "limit": 10,
    "pages": 5
  }
}

Response Fields

FieldTypeDescription
_idstringUnique identifier for the scored call
insightobjectFull scoring insight (see below)
call_logobjectAssociated call log with contact, recording_url, and duration
userobjectUser who made the call
typestringScoring type (call)
createdAtdateRecord creation time
updatedAtdateRecord last update time

Insight Object

FieldTypeDescription
total_scorenumberOverall call score (0-100)
leadobjectLead qualification data (fit_score, decision_maker, lifecycle stage)
messagingobjectMessaging effectiveness (value props, objection outcomes, emotional triggers)
targeting_feedbackobjectPersona and industry fit assessment
metadataobjectCall characteristics (duration, talk ratio, questions, speech rate)
facetsobjectSix scoring categories with individual scores and evidence
gapsobjectSkill and playbook gap scores with rationale
coachingobjectTop wins, opportunities, and suggested drills

Scoring Facets

FacetWeightDescription
intro10%Permission opener usage and effectiveness
discovery25%Question quality, open question ratio, topic coverage
pitch20%Pitch duration, tailoring to discovery, outcome keywords
tonality15%Speech rate, interruptions, filler word density
objection_handling15%Objection detection, follow-up probes, resolution
cta15%CTA attempt, type, specificity, and outcome

Authorizations

x-api-key
string
header
required

Query Parameters

page
integer
default:1

Page number

Required range: x >= 1
limit
integer
default:10

Items per page

Required range: 1 <= x <= 100
sort
string

Sort field(s). Prefix with - for descending. Default: -createdAt

start_date
string<date-time>

Filter by start date (ISO 8601)

end_date
string<date-time>

Filter by end date (ISO 8601)

min_score
number

Minimum total score

Required range: 0 <= x <= 100
max_score
number

Maximum total score

Required range: 0 <= x <= 100
user_id
string

Filter by user ID

Response

200 - application/json

Scored calls retrieved successfully

data
object[]
pagination
object