{"uid":"cap_JD4ldHmDqOj2TFvz2zGZB","slug":"odile-direct-ai-to-business-voice-call-booking-b73c0e5a","name":"Odile Direct: AI-to-Business Voice Call & Booking","description":"Resolve an opted-in business number, read its A2A agent card, and send a message or booking through Odile Direct.","url":"https://api.odilelabs.com/a2a/v1/x402/call?utm_source=zero.xyz","method":"POST","headers":{},"bodySchema":{"type":"object","properties":{"need":{"type":"string","maxLength":500,"minLength":1,"description":"An informational request; no sales, payment or account access."},"skill":{"type":"string","const":"call_business"},"number":{"type":"string","pattern":"^\\+[1-9]\\d{6,14}$","description":"E.164 business number in an enabled country (US and Canada today), or any number with a verified SIP claim or an Odile line"},"caller_name":{"type":"string","maxLength":100,"minLength":1},"business_name":{"type":"string","maxLength":120,"minLength":1},"configuration":{"type":"object","properties":{"pushNotificationConfig":{"type":"object","required":["url"],"properties":{"url":{"type":"string","format":"uri","pattern":"^https://","maxLength":500,"description":"Public HTTPS URL for the final A2A Task; redirects and private hosts are refused."},"token":{"type":"string","pattern":"^[^\\x00-\\x1f\\x7f]+$","maxLength":256,"minLength":1,"description":"Optional token returned in X-A2A-Notification-Token. authentication is not supported."}},"additionalProperties":false}},"description":"Optional A2A push configuration. It is bound to this payment with the call data; reuse the same configuration on retries.","additionalProperties":false},"callback_number":{"type":"string","pattern":"^\\+[1-9]\\d{6,14}$","description":"Callable E.164 US/Canada callback number, different from the business number."},"on_behalf_consent":{"type":"boolean","const":true,"description":"True only after the named human agrees to this call on their behalf."}}},"responseSchema":{"type":"json","example":{"result":{"task":{"id":"dv_example","status":{"state":"TASK_STATE_WORKING"},"artifacts":[{"parts":[{"data":{"status_url":"https://api.odilelabs.com/a2a/v1/voice/dv_example?t=example"}}]}]}}}},"example":null,"exampleRequest":null,"tags":["x402"],"displayCostAmount":"1","displayCostAsset":"USDC","priceDynamic":false,"priceHint":null,"priceStatus":"priced","priceSource":"probe","requiresHandshake":false,"reviewCount":0,"rating":{"score":"0.00","successRate":"0.00","reviews":0,"stars":null,"state":"unrated"},"availabilityStatus":"unknown","priceObserved":null,"sessionDeposit":null,"pricing":{"kind":"static","summary":"$1/call","primary":{"kind":"static","protocol":"x402","network":"base","amountUsd":"1","per":"call","confidence":"exact"},"accepted":[{"kind":"static","protocol":"x402","network":"base","amountUsd":"1","per":"call","confidence":"exact"}]},"paymentMethods":[{"uid":"pm_hM-YFb4-m1QKQbSsb5BS0","protocol":"x402","methodType":"crypto","chain":"base","mode":"charge","costAmount":"1","costPer":"request","priority":0,"asset":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","unit":"request","depositMicros":null,"planRef":null}],"brandName":null,"brandSlug":null,"brandBaseUrl":null,"brandDocsUrl":null,"whatItDoes":"Resolve an opted-in business phone number, read its A2A agent card, and dispatch a structured message or booking request on behalf of a named human caller.","exampleAgentPrompt":"On behalf of Jane Smith, please call Blossom Hair Salon at +12125550198 and ask if they have any availability for a haircut this Saturday — my callback number is +14155550123 and I have Jane's consent to make this call for her.","exampleUseCases":[{"title":"Restaurant reservation via AI agent","prompt":"On behalf of Marco Rossi, call Trattoria Bella at +13105550142 and book a table for 2 this Friday at 7pm — Marco has agreed to this call and his callback number is +13235550198."},{"title":"Doctor's office appointment inquiry","prompt":"I need you to call Sunrise Family Clinic at +16175550109 on my behalf — my name is Priya Patel and I want to ask whether they have any morning slots available for a new patient consultation next week. My callback is +16175550200 and I consent to you making this call for me."},{"title":"Auto shop service inquiry","prompt":"Can you reach out to Downtown Auto Care at +14085550177 for me — my name is Kevin Hughes, I want to know how long an oil change usually takes and whether I can drop in tomorrow. Callback is +14085550199 and you have my consent."}],"resultDescription":"Returns a JSON object containing an A2A task with a unique task ID, an initial status of TASK_STATE_WORKING, and a status polling URL so the agent can check the outcome of the business interaction asynchronously. If a push notification URL was provided, the final task result is POSTed there when complete.","failureModes":["Business number not opted into Odile Direct — endpoint returns an error indicating the number is not resolvable","on_behalf_consent not set to true — request is rejected","callback_number matches the business number — validation error","Push notification URL is not public HTTPS or redirects — configuration rejected","Payment of $1 USDC via x402 not completed — 402 Payment Required returned","need field is empty or exceeds 500 characters — schema validation error","Business number format invalid (not E.164) — pattern validation failure"],"whenToPreferThis":"Use this endpoint when you need an AI agent to programmatically contact a specific opted-in business phone number to deliver a structured inquiry or booking request on behalf of a named human, and that human has explicitly consented. It is purpose-built for the A2A (agent-to-agent) protocol and handles business number resolution, agent card reading, and asynchronous task tracking in one call. Prefer this over generic telephony or SMS APIs when the target business is registered with Odile Direct and you need structured, verifiable communication with async status tracking rather than raw voice dialing.","instructions":null,"reviewSummary":null,"reviewSummaryHighlights":null,"reviewSummaryConcerns":null,"reviewSummaryGeneratedAt":null,"activationCount":0,"lastUsedAt":null,"lastSuccessfullyRanAt":null,"lastHealthCheckAt":"2026-10-31T18:37:02.275Z","isFirstParty":false,"canonicalSlug":"odile-direct-ai-to-business-voice-call-booking-b73c0e5a"}