Background agents that react to context

Triggers wake your agent with the context of a new email, ticket, lead, push or message, so the work starts before anyone asks.

Composio
~/your-agent

waiting for work…

Every app, one event

Composio handles each app's auth, webhook setup and polling, then delivers the same signed shape every time.

  • HubSpotApp subscription, sends only an objectIdwebhook
  • GmailNo push to you, poll history since a cursorpolled
  • ZendeskIncremental export with its own cursorpolled
  • GitHubRepo hook, verify X-Hub-Signature-256webhook
  • SlackEvents API, answer the URL challengewebhook
Composiostructured eventpushed
{
  "type": "composio.trigger.message",
  "metadata": {
    "trigger_slug": "HUBSPOT_CONTACT_CREATED_TRIGGER",
    "connected_account_id": "ca_8f2k1",
    "user_id": "acme"
  },
  "data": {
    "objectId": "90417",
    "subscriptionType": "contact.creation"
  }
}
one signed POST to your webhook url

Every event knows whose it is

Each event names the customer and connected account it came from, so your app runs the right agent with that customer's access.

Composioevent metadatanew contact
trigger_slugHUBSPOT_CONTACT_CREATED_TRIGGER
connected_account_idca_8f2k1
user_id"acme"
your app · customersconnected hubspot
  • AAcme Corpacme · ca_8f2k1lead-research started
  • GGlobexglobex · ca_2h7n5lead-research
  • IInitechinitech · ca_9c4v8lead-research

Pushed or polled, signed every time

Some apps push changes as they happen and Composio checks the rest. Either way your app gets a signed event it can verify.

Pushed as it happens

Slack, HubSpot and GitHub tell Composio the moment something changes.

Checked on a schedule

Gmail and Zendesk are checked on a schedule. Delivery timing depends on the trigger’s polling interval.

Verify before you run

Verify the signature and timestamp before your handler starts the agent.

A lead arrives. Its owner knows half a minute later.

Nobody opened a chat. The new contact starts the run, and every step lands in the tools your team already uses.

  1. 10:47:02
    new contactform
    DLDana Leedana@northwind-supply.com
    Company
    Northwind Supply
    Source
    Pricing page form
    Industry
    –

    The lead arrives

    A pricing page form creates a contact in HubSpot.

    HUBSPOT_CONTACT_CREATED_TRIGGER

  2. 10:47:09
    Composioweb search4 sources
    “Northwind Supply”
    • northwind-supply.comAbout Northwind Supply
    • linkedin.comNorthwind Supply · 201 to 500 employees
    • ohiobiz.comNorthwind opens a second warehouse
    240 staffIndustrial supplyExpanding

    The agent researches

    It reads the company's site and what's written about it.

    COMPOSIO_SEARCH_WEB

  3. 10:47:31
    contact updated3 fields
    DLDana LeeNorthwind Supply82
    Company size
    201 to 500
    Industry
    Industrial supply
    Lead score
    82

    The CRM is updated

    Size, industry and a lead score go on the contact.

    HUBSPOT_UPDATE_CONTACT

  4. 10:47:34
    direct messageMaya Chen
    AILead agent 10:47 AMNew lead: Dana Lee at Northwind Supply. 240 staff, industrial supply, opening a second warehouse. Scored 82, CRM is updated.

    The owner is told

    Maya gets a DM with everything she needs.

    SLACK_SEND_MESSAGE

Give your agents something to start on

Start free, and connect your first trigger in minutes.