Skip to main content
GET
/
summaries
/
{id}
curl https://api.bota.dev/v1/summaries/sum_abc123 \
  -H "Authorization: Bearer sk_live_..."
{
  "id": "sum_abc123",
  "project_id": "proj_xyz",
  "transcription_id": "txn_def456",
  "status": "pending",
  "template_id": "tmpl_sales_call",
  "provider": "gemini",
  "custom_prompt": null,
  "output": null,
  "error_message": null,
  "started_at": null,
  "completed_at": null,
  "created_at": "2025-01-15T10:20:00Z",
  "updated_at": "2025-01-15T10:20:00Z"
}
Retrieve the status and result of a summary job. Poll this endpoint until status is completed or failed, or use webhooks for real-time notifications.

Authentication

Requires an API key with summaries:read scope.
curl https://api.bota.dev/v1/summaries/sum_abc123 \
  -H "Authorization: Bearer sk_live_..."

Path Parameters

id
string
required
The summary’s unique identifier (e.g., sum_abc123).

Response

Returns the summary object including its current status and, when completed, the structured output.
{
  "id": "sum_abc123",
  "project_id": "proj_xyz",
  "transcription_id": "txn_def456",
  "status": "pending",
  "template_id": "tmpl_sales_call",
  "provider": "gemini",
  "custom_prompt": null,
  "output": null,
  "error_message": null,
  "started_at": null,
  "completed_at": null,
  "created_at": "2025-01-15T10:20:00Z",
  "updated_at": "2025-01-15T10:20:00Z"
}

Response Fields

FieldTypeDescription
idstringThe summary’s unique identifier (e.g., sum_abc123)
project_idstringThe project this summary belongs to
transcription_idstringThe transcription this summary was generated from
statusstringCurrent status: pending, processing, completed, or failed
template_idstring | nullThe template used, if any
providerstringLLM provider used (e.g., gemini, openai, claude)
custom_promptstring | nullThe custom prompt used, if any
outputobject | nullStructured summary output (populated on completion)
error_messagestring | nullError message if the summary failed
started_atstring | nullISO 8601 timestamp when processing started
completed_atstring | nullISO 8601 timestamp when the summary completed or failed
created_atstringISO 8601 timestamp when the summary was created
updated_atstringISO 8601 timestamp when the summary was last updated

Output by Template

The output field structure varies by template:

tmpl_general_notes

{
  "key_points": ["string"],
  "action_items": ["string"],
  "participants": ["string"],
  "decisions": ["string"],
  "overview": "string"
}

tmpl_sales_call

{
  "pain_points": ["string"],
  "budget": "string | null",
  "timeline": "string | null",
  "next_steps": ["string"],
  "key_quotes": [{"quote": "string", "context": "string"}],
  "sentiment": "positive | neutral | negative",
  "deal_probability": "number | null"
}

tmpl_clinical_soap

{
  "chief_complaint": "string",
  "subjective": "string",
  "objective": "string",
  "assessment": "string",
  "plan": "string",
  "medications_mentioned": ["string"],
  "follow_up": "string | null"
}
{
  "facts": ["string"],
  "issues": ["string"],
  "analysis": "string",
  "conclusion": "string",
  "parties_involved": ["string"],
  "key_dates": [{"date": "string", "event": "string"}]
}

Error Codes

CodeDescription
transcript_too_shortTranscript is too short to summarize
template_not_foundSpecified template_id does not exist
processing_errorInternal processing error