Custom Apps

Surface data from your own systems inside every issue.
Thank you! Your submission has been received!
Oops! Something went wrong while submitting the form.
Trusted by 1,500+ B2B customers globally
Why teams use it

Deploy AI agents that handle questions end-to-end, gather context for your team, and escalate to humans when it matters.

Give agents context without leaving the issue

Show a custom widget right in the issue sidebar or account notebooks, pulling live information from your own systems or external sources so agents have what they need in front of them.

Pull data live from your own endpoint

Connect any API endpoint you control, and Pylon fetches the data on demand each time the app loads for an issue with no manual syncing or copy-pasting between tools.

Tailor the widget to your data

Build the widget from ready-made components — cards, text, date-times, badges, buttons, links, and dividers — to present exactly the information your team needs in a clean, readable layout.

Enrich requests with full issue context

Every data request includes the issue, organization, account, and requester IDs and email, so your endpoint can return information tailored to the exact ticket in view and pull anything more it needs from the Pylon API.

How to install
Step 1
Build your data endpoint

Stand up an API endpoint that Pylon can call to fetch the app's data. This URL is required when you configure the app, and you can secure it by verifying that incoming requests genuinely came from Pylon.

Step 2
Create the app

In Settings, find Custom Apps under the Connections section and click "Create App." Give it a descriptive name, provide the endpoint URL, and configure any custom headers that should be sent with the request.

Step 3
Complete the connection handshake

Pylon sends a one-time GET request with a  verify request type and a unique code; your endpoint must echo that code back, either as JSON or plain text. Use "Retry Connection" in the app dropdown to send the handshake — until it succeeds the app stays  Unverified.

Step 4
Return data to render

Once verified, Pylon sends a fetch_data request with the issue context, and your endpoint responds with a JSON object describing the components to display. Reconnect via the handshake if the app is ever disconnected.

Frequently asked questions
Where does the custom app appear?

In the issue sidebar and account notebooks. The widget is embedded directly within the issue view so agents see it alongside the conversation.

How does Pylon get the data?

Pylon sends a GET request to the endpoint you configure each time the app loads, with a fetch_data request type, and your endpoint returns a JSON object with the data to display.

How do I secure the endpoint against unauthorized calls?

Pylon completes a one-time verification handshake when you connect the app, and every request can be checked to confirm it originated from Pylon before you return any data.

What can the widget display?

Custom apps are built from components: cards to group related data, plus text, date-times, badges, buttons, links, and dividers. Cards can contain any of the other component types. Unrecognized component types render an error state.

What information does Pylon send about the issue?

Each fetch_data request includes the app and widget IDs along with the issue, organization, account, and requester IDs and the requester's email — which you can also use to fetch more from the Pylon API.

Other integrations

Pylon connects with the tools your team lives in — Slack, email, CRMs, ticketing systems,and more. Meet your customers where they are and streamline every support workflow.