Create a meeting-minutes task
Submit a publicly reachable audio/video URL and receive a task ID immediately. Poll GET /v1/audio/minutes/{taskId} (interval ≥ 30s).
CN only. Same endpoints; switch model.
xrtoken-minutes: file ASR 2.0 + DeepSeek V4 Flash summary. Onlymodel+file_urlare required. Returns full transcription and report (version=2): overview, key points, nested topics, chapters, todos, decisions, verbatim quotes, review items and content-appropriate visual data. Legacy summary/chapters/extraction remain available.features/all_activateare ignored. ASR is billed by duration; summary by Flash tokens. See the model marketplace for rates.doubao-minutes: official Lark Minutes. Transcription plus at least one extra, orall_activate=truefor summary/chapters/todos/qa/translate. Billed by duration. See the model marketplace for rates.
file_url must be http(s) and fetchable by the upstream (you can POST /v1/files first). File < 1GB, duration ≤ 2 hours. Reserve on submit; settle completed ASR and observed summary tokens, releasing the remainder. For xrtoken-minutes, summary generation has its own 30-minute limit after ASR succeeds. A failed summary retains transcription and settles observed usage without automatic retry. ASR failure releases the reservation.
Authorization
BearerAuth API key authentication (OpenAI format). Pass in the Authorization header:
Authorization: Bearer tr-xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
In: header
Request Body
application/json
TypeScript Definitions
Use the request body type in TypeScript.
Response Body
application/json
application/json
application/json
application/json
application/json
application/json
curl -X post "https://api.xrtoken.ai/v1/audio/minutes" \ -H "Content-Type: application/json" \ -d '{ "model": "xrtoken-minutes", "file_url": "https://example.com/meeting.mp3" }'{
"id": "string",
"request_id": "string",
"model": "string",
"status": "processing",
"created_at": "2019-08-24T14:15:22Z"
}{
"error": "model field is required",
"type": "invalid_request_error"
}{
"error": "invalid or missing API key",
"type": "auth_error"
}{
"error": "insufficient balance -- please top up or upgrade your plan",
"type": "billing_error"
}{
"error": "rate limit exceeded",
"type": "rate_limit_error"
}{
"error": "upstream provider error",
"type": "server_error"
}