Skip to main content
The Pylon integration captures support issues and their messages from your Pylon workspace and feeds them into Modem for analysis. Each issue becomes a conversation that’s grouped into topics and linked to the people and companies behind it. The Modem Agent can also act on Pylon directly: search issues, reply to customers, add internal notes, and manage tags.
Capture is trigger-based: Modem gives you a webhook URL, and you create triggers in Pylon that send issue events to it. Events only flow for the triggers you set up, so you control exactly which activity reaches Modem.

How it works

Modem connects to Pylon with an API token you generate in Pylon. Modem validates the token against Pylon’s API before saving it, and encrypts it before storing. On connect, Modem generates a unique webhook URL and a shared secret for your organization. You register the URL as a webhook endpoint in Pylon and create one trigger per event you want captured, using JSON body templates the setup wizard provides. Every delivery is authenticated against the shared secret before its payload is stored or processed. When an event arrives without its message text, or an issue.created event arrives without the issue title and body, Modem fetches them from Pylon’s REST API. Other issue fields come only from the trigger payload. You can optionally run a historical backfill that imports the last 30 days of Pylon issues (up to 500) and their messages, so existing conversations show up in topics right away.

Prerequisites

  • Owner or admin role in your Modem organization, to connect and manage the integration
  • A Pylon admin, since only Pylon admins can create API tokens, and you’ll need access to Pylon’s webhook and trigger settings

Setup

1

Connect with an API token

Go to Settings → Integrations → Pylon in your Modem dashboard. Generate a token at app.usepylon.com/settings/api-tokens, paste it into the form, and click Connect. Modem verifies the token with Pylon before saving it.
2

Add the webhook endpoint in Pylon

After connecting, Modem shows your webhook URL. In Pylon, go to Settings → Webhooks and add a new endpoint with that URL.
3

Add the Authorization header

Add a custom header to the webhook in Pylon: Authorization: Bearer <shared secret>, using the shared secret Modem displays.
The shared secret is shown once, right after connecting. If you lose it, rotate it from the Pylon settings page in Modem to reveal a new one, then update your Pylon webhook.
4

Create triggers for the events you want

In Pylon, go to Settings → Triggers and create one trigger per event below. Set the “When” condition to the matching event, set the action to Send webhook pointing at your Modem webhook URL, and paste the matching JSON body template from the setup wizard. See Captured Events.
5

Backfill history (optional)

Click Start backfill on the Pylon settings page to import the last 30 days of issues, up to 500 issues, plus their messages. Pylon rate-limits its API. If a backfill hits the limit, it can end as failed or miss some replies; click Run again to retry.

Captured Events

Modem supports five Pylon events. Each has its own trigger template in the setup wizard; only the events you create triggers for are captured. Alongside messages, Modem stores issue metadata: title, state, tags, requester, assignee, and a link back to the issue in Pylon. The issue requester is linked to a Modem person by their Pylon contact ID, so your trigger must send requester_id; the requester email helps match an existing person. This rolls support conversations up to the company behind them. Customer replies are linked by Pylon contact ID.
If a value shows up in Modem as a literal {{…}} string, Pylon didn’t resolve that variable in your trigger template. Re-insert it in the trigger’s body editor using Pylon’s variable picker. Modem strips unresolved fields rather than failing the delivery, and fills in missing content from Pylon’s API where it can.

Using the Agent with Pylon

The Modem Agent can query your captured Pylon data like any other source, and it can act on Pylon directly through Pylon’s REST API: searching issues, reading contacts and accounts, replying to customers, adding internal notes, and managing tags. Two safeguards apply to writes:
  • Writes start off. Connecting leaves Allow AI agent to write to Pylon off. The agent can read Pylon data; it cannot reply, add notes, or change tags until an admin turns the setting on.
  • Approval prompts. Once writes are on, any write (a reply, note, or tag change) asks for your approval in the chat before it runs. Reads never need approval.
Pylon attributes API actions to the owner of the API token, so agent replies and notes appear in Pylon as the person who created the token.

Settings

On Settings → Integrations → Pylon:
  • Allow AI agent to write to Pylon: Off by default. When off, the agent can read Pylon data but cannot reply, add notes, or change tags.
  • Rotate secret: Generates a new webhook shared secret and reveals it once. Update your Pylon webhook’s Authorization header after rotating.

Troubleshooting

Modem validates the token against Pylon before saving it. Confirm you copied the full token from app.usepylon.com/settings/api-tokens. Only Pylon admins can create API tokens.
The test button only confirms the endpoint and Authorization header are correct. Issues flow through triggers, so check that you’ve created a trigger per event with the Send webhook action pointing at your Modem webhook URL, with the JSON template pasted into the body.
The webhook’s Authorization: Bearer header must carry your current shared secret. If the secret was rotated in Modem, the old one stops working immediately; update the header in Pylon with the new value.
Pylon didn’t resolve that variable in your trigger template. Re-insert it using Pylon’s variable picker in the trigger body editor. Modem ignores unresolved fields rather than failing the delivery.
Live capture starts when your triggers go live. The optional backfill imports the last 30 days of issues, up to 500. Anything older or beyond that cap isn’t imported. Pylon rate-limits its API, so a backfill on a busy workspace can fail or skip some replies. Check the backfill status and click Run again.

Disconnecting

To disconnect Pylon:
  1. Go to Settings → Integrations → Pylon
  2. Click Disconnect and confirm
Modem stops accepting webhook deliveries from your Pylon workspace. Historical data remains in Modem after disconnecting.
Reconnecting later generates a new webhook URL and shared secret, so your existing Pylon webhook and triggers will need to be updated.

The Modem Agent

Query your Pylon conversations and act on issues from chat.

Topics

See how support issues are grouped into themes and classified.

Companies & People

Understand how Modem links issue requesters into unified profiles.

All Integrations

Browse every data source and agent tool.