# DialEcho API > The DialEcho API lets your own website, backend or tools push leads into your campaigns, keep them up to date, book appointments, attach files, have your AI voice agents call leads, read back what happened to them, read and answer your campaigns' email conversations, and read your email blasts' results. Every endpoint lives under `/v1`, is called with a member API key and is limited to what that member can do in DialEcho right now. Each link below is the Markdown version of one page of the reference; [llms-full.txt](https://docs.dialecho.ai/llms-full.txt) is the whole reference in one file. ## Overview - [Overview](https://docs.dialecho.ai/md/api/index.md): Base URL, authentication and scopes, request conventions, errors, rate limits, pagination and idempotency. ## Leads - [Leads](https://docs.dialecho.ai/md/api/leads/index.md): A lead is one person in one campaign, identified by their phone number. Push leads from your website or backend, merge in more details as the visitor tells you more, read them back and move their pipeline card. - [Create or update a lead](https://docs.dialecho.ai/md/api/leads/create.md): Creates a lead in a campaign, or merges into the campaign's existing lead with the same phone number. - [Update a lead](https://docs.dialecho.ai/md/api/leads/update.md): Merges more details into a lead, typically from later steps of a form. - [Retrieve a lead](https://docs.dialecho.ai/md/api/leads/get.md): Returns a lead's details and its pipeline card as it is on the board now. - [Move a lead's card](https://docs.dialecho.ai/md/api/leads/move-stage.md): Moves the lead's pipeline card to another stage of its pipeline, the way a move on the board does. ## Appointments - [Appointments](https://docs.dialecho.ai/md/api/appointments/index.md): Show a calendar of the times a campaign can take right now, then book the visitor's pick on their lead. Bookings go through the same atomic check DialEcho's AI uses when it books on a call, so your site and the AI never double-book a team member. - [List open times](https://docs.dialecho.ai/md/api/appointments/list-slots.md): Lists the appointment start times that can be booked in a campaign right now. - [Book or reschedule](https://docs.dialecho.ai/md/api/appointments/book.md): Books the lead's appointment at an open time, or moves its existing appointment there. ## Files - [Files](https://docs.dialecho.ai/md/api/files/index.md): Store documents and photos a visitor sends you, for example a utility bill, in a file or image custom field of the lead's pipeline card, exactly as if your team had uploaded them on the board. Files are stored privately; your team opens them from the card's Custom Fields panel and the API never returns a link to them. - [Upload a file](https://docs.dialecho.ai/md/api/files/upload.md): Adds one file to a file or image custom field of the lead's pipeline card. - [Delete a file](https://docs.dialecho.ai/md/api/files/delete.md): Removes one file from a file or image custom field of the lead's pipeline card. ## Calls - [Calls](https://docs.dialecho.ai/md/api/calls/index.md): Have one of your campaign's AI voice agents call a lead once, like creating a call in Vapi. You decide when: right after a form, or later from your own scheduled job. DialEcho adds no timers, delays or "did they book" logic of its own and never retries an API call; whether and when to call again is up to you. - [Place an AI call](https://docs.dialecho.ai/md/api/calls/create.md): Asks an existing outbound AI agent to call one lead once. ## Reporting - [Reporting](https://docs.dialecho.ai/md/api/reporting/index.md): What happened to the leads you sent and where they are now: the conversion report (first AI call, appointment booked and held, deal won or lost, with its value) and the campaign's pipeline board. Both are read live from DialEcho on every request and need `leads:read`. - [List conversions](https://docs.dialecho.ai/md/api/reporting/list-conversions.md): Returns one conversion row per lead of a campaign, oldest first. - [Retrieve a conversion](https://docs.dialecho.ai/md/api/reporting/get-conversion.md): Returns the conversion row of one lead, exactly as the list returns it. - [Retrieve the pipeline](https://docs.dialecho.ai/md/api/reporting/pipeline-board.md): Returns the campaign's pipelines with every stage in board order and how many of the campaign's leads are in each. - [List a stage's leads](https://docs.dialecho.ai/md/api/reporting/stage-leads.md): Returns the campaign's leads in one stage, the most recent arrival first. ## Lead actions - [Lead actions](https://docs.dialecho.ai/md/api/lead-actions/index.md): A lead action is a button on a lead in DialEcho that opens your own web app for that lead, for example a quoting or scheduling tool your team works in. It is set up on the API key your app uses: a button label and the URL of your page. - [Verify a launch token](https://docs.dialecho.ai/md/api/lead-actions/verify.md): Checks a lead-action token and returns the team member and lead it was issued for. ## Inbox - [Inbox](https://docs.dialecho.ai/md/api/inbox/index.md): Your campaigns' email conversations, as your team sees them in DialEcho's inbox: read threads and their messages, poll for new inbound replies, answer them from the campaign mailbox or the reply address, and mark threads read or archived. Contact campaign inboxes (`contact`) and real-estate offer campaign inboxes (`realestate`) are both served; every conversation and message names its `domain`. - [List conversations](https://docs.dialecho.ai/md/api/inbox/list-conversations.md): Returns the conversations that changed in a time window, oldest change first. - [Retrieve a conversation](https://docs.dialecho.ai/md/api/inbox/get-conversation.md): Returns a conversation with its messages, oldest first. - [List inbound messages](https://docs.dialecho.ai/md/api/inbox/list-inbound.md): A polling feed of new inbound emails, each with its conversation's state. - [Reply to a conversation](https://docs.dialecho.ai/md/api/inbox/reply.md): Emails a reply to the conversation's latest inbound message, from the campaign mailbox or the reply address. - [Update a conversation](https://docs.dialecho.ai/md/api/inbox/update-conversation.md): Marks a conversation read or unread, or archives or restores it. ## Blasts - [Blasts](https://docs.dialecho.ai/md/api/blasts/index.md): Read-only results of your campaigns' email blasts: how many recipients were delivered, bounced, replied or opted out, day by day, and which addresses got which blast. All four endpoints need `blasts:read`, and nothing here changes a blast. - [List blasts](https://docs.dialecho.ai/md/api/blasts/list.md): Returns your campaigns' email blasts with their main stats, newest first. - [Retrieve a blast](https://docs.dialecho.ai/md/api/blasts/get.md): Returns one blast with its full stats and a day-by-day breakdown. - [List a blast's sends](https://docs.dialecho.ai/md/api/blasts/list-sends.md): Returns one row per recipient of a blast, the most recently added first. - [Look up sends](https://docs.dialecho.ai/md/api/blasts/lookup-sends.md): Lists every blast email sent to one address, oldest first. ## Optional - [DialEcho API docs home](https://docs.dialecho.ai/md/index.md): Where API keys come from, and these files for AI agents.