agentlyleads docs

Changelog

This page records the changes worth knowing about: what moved, what behaves differently, and where to go and see it. Fixes and refactors are left out.

The same list appears inside the app. Open the What's new panel from the top bar to read it there, and follow the link at the bottom of the panel to come back here for the longer version. Each entry has a permanent link, so a support reply or a search result can point at one change rather than the whole page.

Webhooks: get told when something changes

27 September 2026

Integrations can now be told about changes instead of asking for them on a timer. Add an https URL in Settings, Webhooks, pick the events you want, and each one arrives as a JSON POST a minute or less after it happens: contacts created or updated, leads, deals created or moved to another stage, tasks, meetings booked, moved or cancelled, website chats started, inbound email, and lead form submissions. Records in the payload have the same shape the API returns for them.

Every request is signed with a secret only you and we hold, so your server can check it came from us; the docs have the check in Node.js and Python. A delivery that fails is retried eight times over about a day, and an endpoint that keeps failing is turned off rather than retried forever. Each endpoint has a delivery log with the status your server answered and a button to send an event again. The same controls are in the API under /api/v1/webhooks, with the new read:webhooks and write:webhooks scopes. See Webhooks.

Quotes, campaigns, sequences and more over the API

27 September 2026

The public API now covers what the AI connector already could. Quotes can be listed, read, created with line items and moved from draft to sent, accepted or declined. Campaigns can be created as drafts, edited, launched now or on a schedule, cancelled, or deleted while still a draft, and read back with their delivery analytics. Launching still never sends: it queues drafts for a person to approve. Sequences can be created with their steps in one call, and contacts enrolled into them.

Contracts and cases, read-only until now, can be created and moved through their statuses with the same rules as the app: moving a contract's end date re-arms its renewal alert, and a case's resolution clock starts, stops and restarts exactly as it does in the inbox. Contacts gained duplicate detection, a merge endpoint and an AI brief; leads can be converted once qualified; and a product can be matched against your contacts, with the matches reviewed and turned into draft outreach.

Deals can now be put on one of your own pipeline stages: send stageId (from GET /api/v1/pipelines) instead of stage on POST /api/v1/deals, and the move runs your stage-change automations. The AI connector's create_record and update_record take the same stageId.

AI actions over the API count against the same monthly allowance as in the app and use your workspace's own AI key when it has one. New scopes cover the new endpoints: read:quotes, write:quotes, read:campaigns, write:campaigns, read:sequences, write:sequences, write:contracts and write:cases. See the Quotes API, Campaigns API and Sequences API.

Triage the shared inbox from the API and from Claude or ChatGPT

27 September 2026

The Inbox API opens the shared email queue to integrations. GET /api/v1/inbox/threads lists conversations by folder (inbox, snoozed, archived, sent, drafts, bulk, spam, trash or all), narrowed by owner, open or closed, and whether the customer is still waiting on a reply, with how long each one has waited. One call can assign, close, reopen, tag, archive, snooze, spam or trash up to 500 conversations at once, and GET /api/v1/inbox/summary returns the same counts the inbox rail shows.

Internal comments between reps can be read and added through their own endpoint. They are never part of the conversation you get back, never synced to another CRM and never sent to the customer. The endpoints use the existing read:emails and write:emails scopes. The AI connector gained the same abilities as nine tools, from list_inbox_threads to add_thread_comment. See the Inbox API.

Work the website chat queue from the API and the AI connector

27 September 2026

The Chat API lists website chat conversations by queue (waiting, open, closed, spam or trash) and returns each transcript. A named rep can reply to the visitor, take the conversation over from the AI agent and hand it back, and anyone can close, reopen, assign or tag a chat. Marking a chat as spam also blocks that visitor on the site for 30 days, as it does in the app, and can be undone.

The new read:chat and write:chat scopes cover the endpoints. The AI connector gained the same actions as nine tools, from list_chats to reply_to_chat. See the Chat API.

Manage bookings and meeting types with an API key

27 September 2026

The Bookings API works with the meetings people make through your booking links. It lists and reads bookings, books a slot for someone, and cancels or reschedules a meeting, which emails the invitee and updates their calendar invitation. Meeting types can be created, changed, paused and archived, with their weekly hours and one-off date overrides, and each host's timezone and default hours can be set. Two calendar endpoints put a meeting straight on the CRM calendar and refresh a user's connected Google or Outlook calendar.

The new read:bookings, write:bookings and write:calendar scopes cover the endpoints. The AI connector gained eleven tools to list, cancel and move booked meetings and to edit your own meeting types and hours. See the Bookings API.

Manage tags, pipelines and custom fields with an API key

27 September 2026

Four new APIs cover the lists the rest of the CRM leans on. The Team API lists your workspace's users, which is how an integration finds the id to assign a record to. The Tags API creates, renames and deletes tags, and tags or untags up to 500 records in one call. The Pipelines API creates pipelines, and adds, renames, reorders and removes their stages. Deleting a stage or pipeline that still has deals asks where to move them first, so no deal drops off the board. The Custom Fields API defines the extra fields on contacts, leads, companies and deals.

New scopes: read:team, read:tags, write:tags, read:pipelines, write:pipelines, read:custom-fields and write:custom-fields. The AI connector gained ten tools, including list_users, tag_records, list_pipelines and create_custom_field. See the Tags API.

Automations, forms, suppressions and reports over the API

27 September 2026

Four more parts of the app now have API endpoints. The Workflows API lists, creates, changes, pauses and deletes automations, and shows each one's recent runs with the reason an action was skipped or failed. It checks a workflow the way the builder does, and also refuses combinations that would never fire, such as a status trigger on a deal, and ids for tags, users or sequences from outside your workspace. The Forms API lists your lead-capture forms and the leads each one created, with paging and a since filter. The Suppressions API lists the addresses you will not email, adds a manual opt-out, and lifts an opt-out. A hard bounce or spam complaint can only be lifted by a person in Settings. The Reports API returns the Performance page's forecast, outreach, rep activity and won/lost numbers for a date range, plus your shared saved views.

New scopes: read:workflows, write:workflows, read:forms, read:suppressions, write:suppressions and read:reports. The AI connector gained ten tools, including create_workflow (saved paused until you turn it on), list_workflow_runs, add_suppression and activity_report. See the Workflows API.

Attach files to any record with an API key

27 September 2026

The Files API puts files on records from outside the app. POST /api/v1/files attaches a file to a contact, lead, deal, company, quote, contract, task, note, case, campaign or offering, sent as a multipart upload, as base64, or as a public URL we download for you, up to 10 MB. Larger files, up to 50 MB, go through a two-step upload: ask POST /api/v1/files/upload-url for a link, PUT the bytes to it, then attach. GET /api/v1/files lists what is on a record, and GET /api/v1/files/:id returns one file with a download link that lasts five minutes. Records can be addressed by your own externalId where they have one.

Offerings and campaigns keep the rules they have in the app. An image on an offering becomes a product photo, and anything else has to be a PDF, Excel, CSV or Word document. A campaign takes files only until it sends, because each one goes out with every recipient email. The new read:files and write:files scopes cover the endpoints.

The AI connector gained the same abilities as three tools: attach_file, list_files and delete_file. See the Files API.

Send a batch of drafts slowly, out of your own mailbox

13 September 2026

A batch of hand-written drafts can now be paced out instead of sent all at once. A drip plan takes the drafts, spaces them by a random gap — twelve to thirty-five minutes by default — keeps them inside business hours in your timezone, caps each mailbox at twenty-five a day, and pulls anyone who replies before their turn. Two From addresses are paced independently, so a batch split across two mailboxes finishes in about half the time.

The whole schedule is computed up front, so you can see the finish date before committing to it. Pause holds the queue where it is; resume re-spaces what is left from now rather than firing the backlog; cancel hands every unsent draft back, with the reason it stopped. See the Drip plans API, or the create_drip_plan tool on the AI connector.

Draft, read and send email with an API key

8 September 2026

The Emails API brings the connector's email tools to the REST API. POST /api/v1/emails composes an email to a contact and saves it as a draft, grouped under a campaign, exactly as the connector does; nothing is transmitted by that call. GET /api/v1/emails lists drafts, sent mail and received replies with their open and reply flags, and GET /api/v1/emails/:id returns one email with its body, thread and attachments. Drafts can be edited, deleted, or answered in their thread with POST /api/v1/emails/:id/reply.

Releasing a draft is a separate call, POST /api/v1/emails/:id/send, behind its own send:emails scope, so a key that writes drafts cannot send them unless you say so. GET /api/v1/emails/identities lists the From addresses a workspace can use. Calls, meetings and LinkedIn messages that happened elsewhere go on a contact's timeline through POST /api/v1/communications. See the Emails API.

Sequences stop when someone replies, and archiving really stops them

6 September 2026

A contact who answers now leaves the sequence instead of being chased through the remaining steps. The Replied exit is on by default; two more exits, Deal created and Status changed, are available and off until you turn them on. The enrollment table on the sequence page shows how each contact left and the date, so you can tell a reply from a bounce.

Archiving a sequence now halts every contact already enrolled and blocks new enrollments. Before this release it only hid the sequence from the list while its steps kept going. Unarchive it and the sequence picks up again.

Each sequence also chooses how its email steps go out. Draft for review writes a draft under Emails, Drafts and waits for a person to approve it; Send automatically emails on schedule. Steps that come due outside Monday to Friday, 9am to 5pm in your workspace timezone hold until the next weekday morning, so a two day delay set on a Friday afternoon no longer lands on a Sunday. See the Sequences guide for the full behaviour.

See when an email was opened, not just how often

6 September 2026

A sent message used to show a count. It now shows an activity timeline: every open and every click, with the day, the time and the mail client behind it. That turns "opened 4 times" into something you can act on, because you can see whether the four were one person rereading on a Tuesday morning or four people on the thread.

Automated opens are counted separately from human ones. Apple Mail Privacy Protection and corporate link scanners fetch the tracking pixel before anyone has looked at the message, and counting those as reads inflated the number for exactly the recipients you most wanted to read honestly. Both totals are shown, so the human figure means what it says.

Open the message from Emails and the timeline sits with it.

Automations moved into the sidebar, and Settings has a menu

6 September 2026

Automations is now a page of its own under Outreach in the sidebar. It used to be a card inside Settings, which meant a feature people use weekly was filed with the ones they touch twice a year. Nothing about the rules themselves changed; see the Automations guide if you are new to them.

Settings gained a grouped menu with a filter box down the side. You can move from one settings page to another directly, instead of going back to the index each time, and typing a word narrows the list.

Emails and Tasks in the sidebar now carry a count of what is waiting, so you can see there is something to deal with without opening the page.

Offerings, campaigns and quotes on the phone

6 September 2026

The Android app gained the catalog. You can browse products, open a campaign and see how it performed, link a campaign to the product it was selling, and build a quote, all from the phone.

That covers the parts of the catalog you tend to need away from a desk: checking a price before you answer someone, and getting a quote out the same day rather than the next morning.

6 September 2026

Every email now records which product it pitched. That one stamp is what ties the catalog together: an offering's page lists the campaigns, sequences, deals and quotes behind it, so you can see what a product has actually produced instead of piecing it together from three lists.

Quotes have their own page rather than living only inside a deal, and a deal shows both the quotes raised against it and the campaign that started it. The Quotes guide covers building one from the catalog.

Campaign reply counts are honest now. A reply is counted against the campaign that prompted it, so a contact who answers a second campaign no longer credits the first. Start from Offerings to see the links from the product end.

On this page