Some campaigns promise something that has to exist before the email lands: a trial that is already switched on, a coupon that is already issued, an account that is already set up. Until now someone had to do that by hand for every lead, then type the expiry date or code into the lead before the email could quote it. Miss one, and the lead gets an email about a trial that isn't there.

Sequences now take an API step alongside email steps. It calls your system through an integration profile — the same profiles you already use for enrichments, or a new one you set up from the step — and writes the reply into the lead's fields. The next email can then say "your trial runs until November 30" because the date came straight from your system.

When the step runs depends on what comes after it. If the next email follows at 0 days, the step runs right before that email and only for as many leads as your mailboxes can send to soon, so a 30-day trial doesn't start for someone whose email is still days away in the queue. With any other delay, it runs as soon as it is due, so you can also place actions between emails, like updating your CRM three days after the first one.

If a call fails, only that lead waits; the rest of the campaign keeps going. Failed leads show up on the new Tasks page, with a count in the sidebar and on the campaign. From there you can retry, mark the step done (and enter the value you got by hand), or take the lead out of the campaign. Every attempt is kept, so you can see what the other side said. Retries reuse the same request key, so a system that supports idempotency keys won't start the same trial twice.

Before you switch a campaign on, run the step once against a test lead from the sequence editor to check the setup.

API steps, retries and the Tasks list are also available through the API and MCP.