Sign inGet Started

Berichten doorsturen naar je AI-agent

Bird stuurt elk bericht dat je ontvangt via WhatsApp, SMS, Apple Messages of een agentmailbox door naar je AI-agent. Verbind de agent eenmalig met zijn gegevens en inloggegevens, en elk nieuw bericht bereikt hem.

Twee agents worden ondersteund:

  • Claude Managed Agents: elk bericht start een sessie van een agent die je hebt aangemaakt in de Claude Console.
  • Grok Bot: elk bericht activeert een van je Grok Bot-routines.

Bird stuurt elk overeenkomend bericht naar je agent en probeert een mislukte bezorging opnieuw, zodat een herhaald bericht een nieuwe run kan starten. De agent ontvangt de JSON van het bericht, dezelfde payload die een gewoon webhook-endpoint ontvangt, en antwoordt via de tools die je hem hebt gegeven, zoals de Bird MCP-server.

Kies welke berichten je agent beantwoordt

Je agent kan alleen inkomende berichten beantwoorden: whatsapp.received, sms.received, amb.received (Apple Messages) en email_mailbox.message_received. Kies welke de agent moet afhandelen. Bezorgingsbevestigingen, statuswijzigingen en andere events worden niet naar een agent gestuurd.

Claude Managed Agents

  1. Maak in de Claude Console een agent, een omgeving en een API-sleutel aan.
  2. Maak in Bird een webhook aan, kies Claude Managed Agents en selecteer de berichten onder Triggers.
  3. Voer onder Connect de agent-ID, de omgevings-ID en de API-sleutel in en maak daarna de webhook aan.
  4. Selecteer Send test.
  5. (Optioneel) Wil je de agent laten antwoorden via Bird, open dan de agent in de Claude Console, selecteer + MCP Server en kies Bird. Schakel alleen de Bird-tools in die de agent gebruikt, zodat hij minder tokens verbruikt, zoals Claude Managed Agents beschrijft.
  6. (Optioneel) Open Managed Agents > Credential vaults, maak een kluis aan, selecteer + Add credential, zet Type op MCP OAuth, kies Bird en selecteer Connect.
  7. (Optioneel) Voer de kluis-ID (die begint met vlt_) in onder Connect, of bewerk een bestaande webhook om hem toe te voegen.

Grok Bot

  1. Installeer Bird in Grok Bot en verbind je Bird-werkruimte.
  2. Vraag Grok Bot een routine met een webhook-trigger aan te maken. Open de sectie Webhook van de routine en kopieer de URL en de sender key.
  3. Maak de webhook in Bird aan op een van deze manieren:
    • Vraag Grok Bot hem aan te maken met een Grok Bot-bestemming voor een event zoals amb.received of email_mailbox.message_received, met de URL en sender key uit stap 2. Noem voor e-mail de mailbox.
    • Maak hem aan in het dashboard: kies Grok Bot, selecteer het event onder Triggers en plak de URL en sender key onder Connect.
  4. Selecteer Send test en stuur daarna een echt bericht naar je bedrijf of mailbox.

Begin met een template (optioneel). Kies vóór stap 2 AMB Booking Desk of Email Support Desk en geef Grok Bot de bijbehorende bot.md en shared/message-safety.md als blijvende instructies. Vul Your settings en Knowledge in, schakel de kanaalskill in en gebruik de Routine prompt van de template voor stap 2.

Antwoorden van templates staan standaard op concepten.

Start er geen run, vergelijk dan de Webhook-URL en sender key van de routine met de waarden in Bird.

Aanmaken via de CLI of API

Webhook-connectors toont per connector de velden, welke daarvan geheim zijn, de events die hij accepteert en de voorbereidende stappen, en bird webhooks create --connector <id> --request-schema geeft dezelfde velden weer als een JSON Schema. Geef niet-geheime velden mee met --field name=value en elk geheim met --credential name=FILE vanuit een bestand, of met --credential name=- via stdin gepipet, zodat het buiten je shellgeschiedenis blijft. --events staat standaard op elk berichtevent dat de connector accepteert.

Maak voor Claude een API-sleutel aan in de werkruimte waarin je agent draait. Lees die vervolgens in een shellvariabele in zonder hem weer te geven en pipe hem door, zodat hij nooit in een opdrachtregel of je shellgeschiedenis verschijnt:

Codevoorbeeld
read -rs ANTHROPIC_API_KEY  # paste the key, then press Enter
bird webhooks create --connector claude_managed_agents \
  --field agent_id=agent_123 --field environment_id=env_123 \
  --field vault_id=vlt_123 --credential api_key=- <<< "$ANTHROPIC_API_KEY"

bird webhooks connect <connector> doet dit allemaal in één stap. Het noemt elk veld dat de connector nog nodig heeft, maakt de webhook aan en toont de webhook-ID, de events en het mailboxfilter, zonder geheimen. Onder next noemt het bird webhooks test voor de webhook, waarmee je de velden bij het platform controleert. Via MCP doet webhooks_create met connector_id hetzelfde in één aanroep, en de next daarvan noemt de aanroep webhooks_test.

Wil je de e-mail van één mailbox naar de agent sturen, voeg dan --mailbox toe met de ID of het adres van de mailbox. Een adres wordt opgezocht, en daarvoor is de scope mailbox:read nodig. Dit stelt filter.mailbox_id in, en --events staat dan standaard op de mailboxevents die de actie van de connector noemt, of op email_mailbox.message_received voor een actie die elk event accepteert. Vervang voor Grok Bot YOUR_MAILBOX_ADDRESS en YOUR_ROUTINE_WEBHOOK_URL door je mailbox en de webhook-URL van de routine, en plak de sender key van de routine wanneer read erom vraagt:

Codevoorbeeld
read -rs GROK_SENDER_KEY  # paste the sender key, then press Enter
bird webhooks connect grok_bot --mailbox YOUR_MAILBOX_ADDRESS \
  --field webhook_url=YOUR_ROUTINE_WEBHOOK_URL \
  --credential sender_key=- <<< "$GROK_SENDER_KEY"

Elke email_mailbox.message_received-aflevering bevat het bericht onder data: data.message_id, data.mailbox_id en data.thread_id, de afzender in data.from, de ontvangers in data.to, en data.subject, dat null is als het bericht er geen had. data.extracted_text is de body zonder geciteerde geschiedenis, null als er geen tekst is, en maximaal 64 KB groot. data.truncated_text is true als de body is ingekort. De eventreferentie noemt elk veld.

De API accepteert dezelfde destination op POST /v1/webhooks. Laat url weg: Bird stelt het samen op basis van de connector. Geen enkel antwoord bevat de credentials.

De verbinding testen

Selecteer direct na het aanmaken van de webhook Send test. Gebruik later Send test event op de pagina van de webhook of in de rijacties, voer bird webhooks test <webhook_id> uit, of roep POST /v1/webhooks/{webhook_id}/test aan. Bij het aanmaken of bijwerken via de CLI of de API wordt deze stap genoemd in next. Bij het opslaan van de webhook wordt geen contact gemaakt met het platform, dus pas de test controleert de velden. Bij Claude Managed Agents leest de test de agent uit in plaats van een sessie te starten. Zo worden de API-sleutel en de agent-ID bevestigd, en de test meldt kind: probe. Als het antwoord een onjuiste waarde aanwijst, noemt field die waarde. Een probe verstuurt geen event, dus pas het eerste echte bericht controleert de hele keten. Bij Grok Bot start de test een run van de routine met een event dat is gemarkeerd als "test": true, dus controleer in Cursor dat er een run is gestart. Stuur daarna een echt bericht naar een van je nummers of kanalen en controleer of de agent het afhandelt. Controleer bij Claude of het antwoord aankomt op het kanaal van de afzender en of de sessie geen session.error toont.

Beheer

  • Een credential roteren. Bewerk de webhook en voer alleen de nieuwe waarde in; een veld dat je leeg laat, behoudt zijn opgeslagen waarde. Voer vanuit de CLI bird webhooks update <webhook_id> --credential name=FILE uit, of pipe de waarde met --credential name=-. Stuur via de API de gewijzigde sleutel mee in PATCH /v1/webhooks/{webhook_id} destination.connector.credentials. De volgende aflevering gebruikt hem, nieuwe pogingen inbegrepen.
  • De instellingen wijzigen. Bewerk de webhook, of voer bird webhooks update <webhook_id> --field name=value uit, om een instelling te wijzigen, zoals de agent-ID, de kluis-ID of de webhook-URL van een Grok Bot-routine; de volgende aflevering gebruikt de nieuwe waarde. Maak een nieuwe webhook aan als je van platform wilt wisselen.
  • Pauzeren of verwijderen. Een webhook pauzeren stopt de afleveringen. Verwijderen wist de credentials.
  • Fouten bekijken. De pogingen van een webhook tonen elke aflevering met de antwoordstatus en body van het platform, of niets als het platform niet bereikbaar was. Een poging die mislukte voordat Bird iets verstuurde, zoals een verbinding die na het event is gewijzigd, bevat in plaats daarvan een failure_reason.

Volgende stappen