Skip to main content
The Intercom plugin syncs data locally. Use corsair.intercom.db.<entity>.search({ data, limit?, offset? }) with the filters listed per entity.

Admins

Path: intercom.db.admins.search
const rows = await corsair.intercom.db.admins.search({
    data: { /* filters below */ },
    limit: 100,
    offset: 0,
});

Searchable filters

FieldTypeOperators
entity_idstringequals, contains, startsWith, endsWith, in
idstringequals, contains, startsWith, endsWith, in
typestringequals, contains, startsWith, endsWith, in
namestringequals, contains, startsWith, endsWith, in
emailstringequals, contains, startsWith, endsWith, in
away_mode_enabledbooleanequals
away_mode_reassignbooleanequals
has_inbox_seatbooleanequals
avatarstringequals, contains, startsWith, endsWith, in
createdAtdateequals, before, after, between
Every .search() also accepts limit and offset for pagination. .list() is available on the same path without the .search suffix in code — see database operations.

Articles

Path: intercom.db.articles.search
const rows = await corsair.intercom.db.articles.search({
    data: { /* filters below */ },
    limit: 100,
    offset: 0,
});

Searchable filters

FieldTypeOperators
entity_idstringequals, contains, startsWith, endsWith, in
idstringequals, contains, startsWith, endsWith, in
typestringequals, contains, startsWith, endsWith, in
titlestringequals, contains, startsWith, endsWith, in
descriptionstringequals, contains, startsWith, endsWith, in
bodystringequals, contains, startsWith, endsWith, in
author_idnumberequals, gt, gte, lt, lte, in
statestringequals, contains, startsWith, endsWith, in
created_atnumberequals, gt, gte, lt, lte, in
updated_atnumberequals, gt, gte, lt, lte, in
urlstringequals, contains, startsWith, endsWith, in
parent_idnumberequals, gt, gte, lt, lte, in
parent_typestringequals, contains, startsWith, endsWith, in
default_localestringequals, contains, startsWith, endsWith, in
createdAtdateequals, before, after, between
Every .search() also accepts limit and offset for pagination. .list() is available on the same path without the .search suffix in code — see database operations.

Companies

Path: intercom.db.companies.search
const rows = await corsair.intercom.db.companies.search({
    data: { /* filters below */ },
    limit: 100,
    offset: 0,
});

Searchable filters

FieldTypeOperators
entity_idstringequals, contains, startsWith, endsWith, in
idstringequals, contains, startsWith, endsWith, in
typestringequals, contains, startsWith, endsWith, in
company_idstringequals, contains, startsWith, endsWith, in
namestringequals, contains, startsWith, endsWith, in
created_atnumberequals, gt, gte, lt, lte, in
updated_atnumberequals, gt, gte, lt, lte, in
remote_created_atnumberequals, gt, gte, lt, lte, in
last_request_atnumberequals, gt, gte, lt, lte, in
monthly_spendnumberequals, gt, gte, lt, lte, in
session_countnumberequals, gt, gte, lt, lte, in
user_countnumberequals, gt, gte, lt, lte, in
sizenumberequals, gt, gte, lt, lte, in
websitestringequals, contains, startsWith, endsWith, in
industrystringequals, contains, startsWith, endsWith, in
createdAtdateequals, before, after, between
Every .search() also accepts limit and offset for pagination. .list() is available on the same path without the .search suffix in code — see database operations.

Contacts

Path: intercom.db.contacts.search
const rows = await corsair.intercom.db.contacts.search({
    data: { /* filters below */ },
    limit: 100,
    offset: 0,
});

Searchable filters

FieldTypeOperators
entity_idstringequals, contains, startsWith, endsWith, in
idstringequals, contains, startsWith, endsWith, in
typestringequals, contains, startsWith, endsWith, in
external_idstringequals, contains, startsWith, endsWith, in
user_idstringequals, contains, startsWith, endsWith, in
emailstringequals, contains, startsWith, endsWith, in
namestringequals, contains, startsWith, endsWith, in
phonestringequals, contains, startsWith, endsWith, in
rolestringequals, contains, startsWith, endsWith, in
created_atnumberequals, gt, gte, lt, lte, in
updated_atnumberequals, gt, gte, lt, lte, in
last_seen_atnumberequals, gt, gte, lt, lte, in
last_replied_atnumberequals, gt, gte, lt, lte, in
signed_up_atnumberequals, gt, gte, lt, lte, in
unsubscribed_from_emailsbooleanequals
has_hard_bouncedbooleanequals
marked_email_as_spambooleanequals
browserstringequals, contains, startsWith, endsWith, in
browser_languagestringequals, contains, startsWith, endsWith, in
osstringequals, contains, startsWith, endsWith, in
owner_idnumberequals, gt, gte, lt, lte, in
createdAtdateequals, before, after, between
Every .search() also accepts limit and offset for pagination. .list() is available on the same path without the .search suffix in code — see database operations.

Conversations

Path: intercom.db.conversations.search
const rows = await corsair.intercom.db.conversations.search({
    data: { /* filters below */ },
    limit: 100,
    offset: 0,
});

Searchable filters

FieldTypeOperators
entity_idstringequals, contains, startsWith, endsWith, in
idstringequals, contains, startsWith, endsWith, in
typestringequals, contains, startsWith, endsWith, in
created_atnumberequals, gt, gte, lt, lte, in
updated_atnumberequals, gt, gte, lt, lte, in
waiting_sincenumberequals, gt, gte, lt, lte, in
snoozed_untilnumberequals, gt, gte, lt, lte, in
statestringequals, contains, startsWith, endsWith, in
readbooleanequals
prioritystringequals, contains, startsWith, endsWith, in
admin_assignee_idnumberequals, gt, gte, lt, lte, in
team_assignee_idstringequals, contains, startsWith, endsWith, in
contact_idstringequals, contains, startsWith, endsWith, in
source_typestringequals, contains, startsWith, endsWith, in
source_subjectstringequals, contains, startsWith, endsWith, in
createdAtdateequals, before, after, between
Every .search() also accepts limit and offset for pagination. .list() is available on the same path without the .search suffix in code — see database operations.