Intercom
Read and write Intercom contacts and conversations via the Intercom REST API.
The tool talks directly to https://api.intercom.io (EU/AU regions supported via
the region input) using standard-library HTTP only. It returns the raw JSON
response body as result and the HTTP status code as status, so jobs and the
assistant can branch on success or surface the error payload.
Operations
| operation | method | path | required params |
|---|---|---|---|
list_contacts |
GET | /contacts?per_page=N |
— |
get_contact |
GET | /contacts/{contactId} |
contactId |
create_contact |
POST | /contacts |
email (optional name) |
list_conversations |
GET | /conversations?per_page=N |
— |
get_conversation |
GET | /conversations/{conversationId} |
conversationId |
Inputs
apiKey(required) — Intercom access token, sent asAuthorization: Bearer <token>.operation(required) — one of the operations above.region—us(default),eu, orau, matching your workspace's data hosting region.contactId— required forget_contact.email/name— forcreate_contact(emailrequired; new contacts are created withrole: user).conversationId— required forget_conversation.limit—per_pagefor list operations (1–150, default 10).
All requests send Intercom-Version: 2.15 and Accept: application/json.
apiKey setup
- Go to Intercom > Settings > Integrations > Developer Hub.
- Create (or open) an app, then open its Authentication tab.
- Copy the Access token.
- Pass it as the
apiKeyinput. The tool sends it asAuthorization: Bearer <token>.
If your workspace is hosted in the EU or Australia, set region to eu or au
so requests hit the correct regional host.
Examples
List the 25 most recent contacts:
operation: list_contacts
apiKey: dG9rZW4...
limit: "25"
Create a contact:
operation: create_contact
apiKey: dG9rZW4...
email: [email protected]
name: Jane Doe
Retrieve a single conversation:
operation: get_conversation
apiKey: dG9rZW4...
conversationId: "123456789"
Publishes
The keys a later task may reference as {{taskName.key}}. Referencing anything not listed here resolves to nothing at run time.
errorresultstatus
Input Properties
Every property this tool accepts, from its own tool.iml.
| Property | Type | Required | Default | Description |
|---|---|---|---|---|
apiKey |
string | yes | — | Intercom access token. Create one in Intercom > Settings > Integrations > Developer Hub > your app > Authentication (sent as 'Authorization: Bearer |
operation |
string | yes | — | One of: list_contacts, get_contact, create_contact, list_conversations, get_conversation |
region |
string | no | us |
Intercom data hosting region: us (api.intercom.io), eu (api.eu.intercom.io), or au (api.au.intercom.io). Defaults to us. |
contactId |
string | no | — | Contact id — required for get_contact. |
email |
string | no | — | Email address — required for create_contact. |
name |
string | no | — | Full name — optional property for create_contact. |
conversationId |
string | no | — | Conversation id — required for get_conversation. |
limit |
string | no | 10 |
Max records to return for list_contacts and list_conversations (per_page, 1-150). |