The intercom API reference.
The intercom API reference.
Companies allow you to represent organizations using your product. Each company will have its own description and be associated with contacts. You can fetch, create, update and list companies.
The Intercom defined code of the workspace the company is associated to.
The custom attributes you have set on the company.
{ "type": "company", "id": "531ee472cce572a6ec000006", "name": "Example Company Inc.", "app_id": "ecahpwf5", "plan": { "type": "plan", "id": "269315", "name": "Pro" }, "company_id": "6", "remote_created_at": 1663597223, "created_at": 1663597223, "updated_at": 1663597223, "last_request_at": 1663597223, "size": 100, "website": "https://www.intercom.com", "industry": "Software", "monthly_spend": 100, "session_count": 100, "user_count": 100, "custom_attributes": { "paid_subscriber": true, "monthly_spend": 155.5, "team_mates": 9 }, "tags": { "type": "tag.list", "tags": [ … ] }, "segments": { "type": "segment.list", "segments": [ … ] } }
You can create or update a company.
Companies will be only visible in Intercom when there is at least one associated user.
Companies are looked up via company_id
in a POST
request, if not found via company_id
, the new company will be created, if found, that company will be updated.
You can set a unique company_id
value when creating a company. However, it is not possible to update company_id
. Be sure to set a unique value once upon creation of the company.
The company id you have defined for the company. Can't be updated
The URL for this company's website. Please note that the value specified here is not validated. Accepts any string.
A hash of key/value pairs containing any other data about the company you want Intercom to store.
curl -i -X POST \
https://api.intercom.io/companies \
-H 'Authorization: Bearer <YOUR_TOKEN_HERE>' \
-H 'Content-Type: application/json' \
-H 'Intercom-Version: 2.11' \
-d '{
"company_id": "company_remote_id",
"name": "my company",
"remote_created_at": 1374138000
}'
{ "type": "company", "company_id": "company_remote_id", "id": "667d607c8a68186f43bafd1e", "app_id": "this_is_an_id116_that_should_be_at_least_", "name": "my company", "remote_created_at": 1374138000, "created_at": 1719492732, "updated_at": 1719492732, "monthly_spend": 0, "session_count": 0, "user_count": 0, "tags": { "type": "tag.list", "tags": [] }, "segments": { "type": "segment.list", "segments": [] }, "plan": {}, "custom_attributes": { "creation_source": "api" } }
You can fetch a single company by passing in company_id
or name
.
https://api.intercom.io/companies?name={name}
https://api.intercom.io/companies?company_id={company_id}
You can fetch all companies and filter by segment_id
or tag_id
as a query parameter.
https://api.intercom.io/companies?tag_id={tag_id}
https://api.intercom.io/companies?segment_id={segment_id}
curl -i -X GET \
'https://api.intercom.io/companies?company_id=string&name=string&page=0&per_page=0&segment_id=string&tag_id=string' \
-H 'Authorization: Bearer <YOUR_TOKEN_HERE>' \
-H 'Intercom-Version: 2.11'
{ "type": "list", "data": [ { … } ], "pages": { "type": "pages", "next": null, "page": 1, "per_page": 15, "total_pages": 1 }, "total_count": 1 }