{"access":{"authentication":{"format":"L402 {macaroon}:{proof_of_payment}","header":"Authorization","protocols":["L402","MPP"],"format_mpp":"Payment <base64url_json>"},"endpoint":"https://sats4ai.com/api/l402/ai-call","method":"POST"},"content_type":"api","cover_url":"","description":"Place a two-way AI voice agent phone call. An AI agent calls the specified number, follows your instructions (system prompt), has a real conversation, and returns a full transcript with structured analysis.\n\nOne redial, 2 minutes later, if nobody answers, a voicemail answers, the line is busy or the call drops within 30 seconds. No redial after the person speaks and hangs up, asks to stop or opts out, or after the agent leaves a voicemail message. A person who asks not to be called again is added to our do-not-contact list. The redial runs on the deposit's unused minutes (none left: no redial), and a connected redial bills at least 1 minute. May return state=\"pending_confirm\" with clarification questions if the task is missing critical info — POST with action=\"confirm\" to proceed.\n\nParameters (JSON body):\n```\n{\n    \"phone_number\": \"+1234567890\",       // Required. E.164 format\n    \"task\": \"Call this business...\",      // Required. Instructions for the AI agent\n    \"duration_minutes\": 3,               // Optional. Deposit for 1-10 min (default 3). Unused time refunded.\n    \"language\": \"en-US\",                 // Optional. Language code (default en-US)\n    \"begin_message\": \"Hi, I am...\"       // Optional. Agent's opening line\n    \"caller_name\": \"Alex\",               // Optional. Your name: said first, to a call screen, in a voicemail\n    \"reason\": \"a table for Friday\",      // Optional. A few words on why you call\n    \"callback_number\": \"+14155550100\",   // Optional. YOUR number, given only when asked and in a voicemail\n    \"voicemail\": \"hangup\",               // Optional. \"message\" (one fixed message, no redial) or \"hangup\" (default)\n    \"call_screening\": true,              // Optional. Answer a phone's call screen with name and reason (default true)\n    \"refund_address\": \"you@wallet.com\"   // Optional. Lightning address for auto-refund of unused time\n}\n```\n\nDeposit billing: You pay for requested minutes upfront. Unused time is automatically refunded. Provide a `refund_address` (Lightning address) for instant refund, or claim via POST /api/claim-refund after the call.\n\nConfirm after push-back:\n```\n{ \"action\": \"confirm\", \"session_id\": \"...\", \"answers\": {...} }\n```\n\nReturns `call_id` immediately. Poll `GET /api/l402/ai-call?call_id=xxx` for transcript, results, and refund status (no extra payment).\nOn complete task failure, a LNURL-withdraw refund link is returned in the error response.\n\nThe AI agent can: ask questions, take notes, navigate phone menus (outbound DTMF), and end the call. It cannot transfer the call to a third party, and identifies as an automated assistant when asked.\n\nScam screening is in place: tasks that impersonate a company or government, threaten or harass the recipient, or solicit credentials or codes are flagged after payment, the call is NOT placed, and the payment is NOT automatically refunded; a human review can be requested via the docs page. Per-destination send limits apply.","name":"AI Phone Call","pricing":{"description":"Telephony plus AI-agent cost per minute, priced per destination; see from","quoted_in":"sats","from":"starting at ~150 sats/min","exact_amount":"Varies by destination and duration. POST without payment to get the exact sats in the 402 challenge."},"languages":["en-US","en-GB","en-IN","en-AU","en-NZ","es-ES","es-419","pt-BR","pt-PT","fr-FR","fr-CA","de-DE","it-IT","nl-NL","nl-BE","ru-RU","uk-UA","pl-PL","cs-CZ","sk-SK","sl-SI","hr-HR","bs-BA","sr-RS","mk-MK","bg-BG","ro-RO","hu-HU","el-GR","tr-TR","da-DK","fi-FI","no-NO","sv-SE","is-IS","lt-LT","lv-LV","ca-ES","gl-ES","zh-CN","yue-CN","ja-JP","ko-KR","vi-VN","th-TH","id-ID","ms-MY","fil-PH","hi-IN","ta-IN","kn-IN","mr-IN","ur-IN","ne-NP","ar-SA","he-IL","fa-IR","az-AZ","hy-AM","kk-KZ","af-ZA","sw-KE","cy-GB","multi"]}