{"access":{"authentication":{"format":"L402 {macaroon}:{proof_of_payment}","header":"Authorization","protocols":["L402","MPP"],"format_mpp":"Payment <base64url_json>"},"endpoint":"https://sats4ai.com/api/l402/transcribe-audio","method":"POST"},"content_type":"api","description":"Transcribe audio files. Async — returns jobId, poll status at /api/l402/job-status?requestId={jobId}&jobType=transcription until completed. Supports 13 languages, timestamps, and speaker diarization. Up to 60 minutes per file.\n\nSend parameters as JSON:\n```\n{\n    \"file\": \"base64-encoded-audio-data\",\n    \"type\": \"transcription\",\n    \"language\": \"en\",\n    \"model\": \"Transcription\"\n}\n```\n\nResponse (202): { jobId, status: \"processing\", poll_url, poll_interval_ms }\nPoll GET poll_url until: { status: \"completed\", result: { text, segments } }\n\nSupported languages: en, zh, hi, es, ar, fr, pt, ru, de, ja, ko, it, nl\nSupported formats: mp3, wav, flac, ogg, m4a\nMax file size: 500 MB\nMax duration: 60 minutes\nPricing: 10 sats per minute of audio","name":"Audio Transcription","privacy":{"audio_retention":"ephemeral — processed and discarded, never persisted to disk","transcript_retention":"returned in the poll response; not stored server-side after job completion","logging":"errors only — no transcript content is logged"}}