Announcing CIMD support for MCP Client registration
Learn more

Triggers: Let Your Agent Start When Something Happens in Your User's Apps

Scalekit Triggers: a new Slack message or a Salesforce stage change starts an agent run as the user
Nityashree Yadunath
Product Marketing Manager

TL;DR

  • Triggers starts your agent when something happens in your user's apps, such as a new Slack message or a Salesforce opportunity changing stage. Nobody has to prompt it.
  • The agent acts as the user the event belongs to, with their permissions, and every run is logged.
  • Scalekit runs the delivery layer: Slack pushes events, Salesforce is polled, and your endpoint gets both in one shape.
  • Early access starts with Slack and Salesforce. Request access and tell us which apps you need next.

Agents are moving from answering to acting

Most agents today are request-driven. Someone opens a chat, describes a task, and the agent does it. That's a good place to start, and it's where most agent products begin.

The agents teams are shipping to their customers now do more. A client posts in a shared Slack channel asking for a refund. A deal moves to Closed Won in Salesforce. An account gets a new owner. Each of these has a clear next step, and the agent already has the access it needs to take it. What's missing is a way for the agent to know something happened.

Triggers adds that. When something happens in your user's apps, their agent starts working on it, as that user and with their permissions. Nobody has to prompt it, and you don't run a polling loop to catch the change.

Triggers is in early access, starting with Slack and Salesforce. The rest of this post covers why this takes more than wiring up a webhook, how Triggers works, and what teams are building with it.

The event is the easy part

Receiving an event is not hard. Slack will send you a webhook when a message is posted, and most systems have some way to tell you something changed.

The work starts after the event arrives. Say the refund request lands at 11pm. The person whose Slack and Salesforce accounts the agent works with is offline. The agent still has to act as them: look up the account with their access, post a reply in their channel, and leave a record of what it did. That means a valid token for that specific user, the right permissions on it, and an audit trail you can show a customer's security team.

Then there's the delivery layer. Some apps send webhooks and some don't, so you end up polling the ones that don't. Events can arrive twice, so you need deduplication. Upstream APIs have bad days, so you need retries that don't flood them when they recover. None of this is the agent your team set out to build, and all of it has to work for every user of every customer.

Triggers takes on both parts: who the agent is acting as, and getting the event to your agent reliably.

How Triggers works

Triggers runs on the same connected accounts your users already have in Scalekit, so there is no second integration to build.

How Scalekit Triggers works: Slack events are pushed and Salesforce changes are polled, matched to the user, delivered to your endpoint, and the agent runs tool calls as that user
  1. You pick an event on a connection and turn the trigger on. For example, a new message in a Slack channel or an opportunity changing stage in Salesforce.
  2. Something happens in a user's app. Slack sends the event to Scalekit. For Salesforce, Scalekit polls for changes, so you don't run a poller yourself.
  3. Scalekit matches the event to that user. Every event is tied to the connected account it came from.
  4. Your endpoint receives it in one consistent shape, whichever app it came from. Each delivery is signed, so you can verify it came from Scalekit, and carries a dedupe key, so a retry never starts the same run twice.
  5. Your agent runs as that user. Its tool calls go through Scalekit with that user's permissions, exactly like the calls it makes when someone prompts it.
  6. Every run is logged. The Triggers tab in the dashboard shows which triggers are on, recent activity and usage, and each tool call in the run is attributed to the user it acted for.

What teams build with it

Support requests that get handled at any hour. A customer asks for a refund in a shared Slack channel. The agent picks up the message, finds the account in Salesforce, logs the refund and asks the account owner in the thread to approve it. By the time anyone looks, the work is ready for a yes or no.

Handoffs the moment a deal closes. An opportunity moves to Closed Won in Salesforce. The agent writes a handoff summary from the deal record and posts it to the account team's Slack channel, so onboarding starts the same day. If you've built a deal room sync agent, this is the event that can start it.

Routing that follows ownership. An account gets a new owner in Salesforce. The agent posts a short brief to the new owner in Slack with open deals and recent activity, so the change doesn't stall anything.

In each case the agent acts with the permissions of the person the event belongs to, and nothing new sits in your infrastructure to make that possible. Runs that chain several tool calls keep the same user context throughout, the same way multi-step tool calling works today.

Early access and what's next

Triggers is in early access with Slack and Salesforce.

Teams are asking for Gmail, Google Sheets and Microsoft Teams next. The requests we get decide what we build after these, so if your agent needs triggers on another app, tell us which one when you request access.

Request early access to Triggers

Triggers is one of several releases from the last month. Admins can now connect a shared app once for the whole organization, users can choose which permissions to grant, and the Search Tools API finds the right tool for a request in one call.

FAQ

Which apps support Triggers today?

Slack and Salesforce, in early access. You can request triggers for other apps in the early-access form.

How is this different from receiving webhooks myself?

A webhook tells you something happened. Triggers also ties the event to the user it belongs to and runs your agent with that user's permissions. Scalekit handles polling for apps that don't send webhooks, plus deduplication and retries, and every run is logged.

Do I need to store my users' tokens to act on an event?

No. Users connect their accounts through Scalekit as they do today, and the tokens stay in the token vault. When a trigger fires, the agent's tool calls run with that user's existing connection.

Does Triggers work with my existing connections?

Yes. You turn on a trigger for an event on a connection you already use. There is no separate integration to set up.

No items found.
Agent
Auth Quickstart
On this page
Share this article
Agent
Auth Quickstart

Acquire enterprise customers with
‍zero upfront cost.

Every feature unlocked. No hidden fees.