Retrieves Common Room objects (contacts, organizations, segments, etc.) with pagination, filtering, and sorting. Call commonroom_get_catalog first to discover available objects, their filter fields, allowed properties, and sort options.
Full tool-call examples: 1. Contacts by name in a segment: { "objectType": "Contact", "filter": { "type": "and", "clauses": [{ "type": "stringFilter", "field": "fullName", "params": { "op": "like", "value": "Tracy" } }, { "type": "stringListFilter", "field": "memberSegmentId", "params": { "op": "any", "value": ["s_1"] } }] }, "properties": ["primaryEmail", "title", "companyName"], "limit": 20 }
2. Recent conversation threads sorted by time: { "objectType": "Activity", "filter": { "type": "and", "clauses": [{ "type": "dateRangeFilter", "field": "activityTime", "params": { "op": "in", "value": "P7D", "min": null, "max": null } }, { "type": "booleanFilter", "field": "activityIsParent", "params": { "op": "eq", "value": true } }] }, "properties": ["content", "url"], "sort": "activityTime", "direction": "desc", "limit": 50 }
3. Large organizations sorted by member count: { "objectType": "Organization", "filter": { "type": "and", "clauses": [{ "type": "numberFilter", "field": "groupCompanySize", "params": { "op": "gte", "value": 100 } }] }, "sort": "member_count", "direction": "desc", "limit": 25 }
4. Contacts with email who are engineers or managers (AND+OR): { "objectType": "Contact", "filter": { "type": "and", "clauses": [{ "type": "booleanFilter", "field": "memberHasEmail", "params": { "op": "eq", "value": true } }, { "type": "or", "clauses": [{ "type": "stringFilter", "field": "title", "params": { "op": "like", "value": "Engineer" } }, { "type": "stringFilter", "field": "title", "params": { "op": "like", "value": "Manager" } }] }] }, "properties": ["primaryEmail", "title", "companyName"] }
5. Activities between two dates: { "objectType": "Activity", "filter": { "type": "and", "clauses": [{ "type": "dateRangeFilter", "field": "activityTime", "params": { "op": "between", "value": null, "min": "2025-01-01T00:00:00Z", "max": "2025-03-01T00:00:00Z" } }] }, "limit": 100 }
Use "properties" to select specific fields (e.g., ["primaryEmail", "title"]). Use "sort" + "direction" for ordering (e.g., sort: "member_count", direction: "desc").
Cross-object filtering: Use "target" on a nested group clause to filter by fields from a related object type. Use target "Organization" for Organization fields (e.g. groupRevenue, groupSubIndustry), or "Contact" for Contact fields (e.g. title, memberHasEmail). Set objectConfigId and targetAssocPaths to null.
6. Contacts at high-revenue organizations (cross-object): { "objectType": "Contact", "filter": { "type": "and", "clauses": [{ "type": "and", "target": "Organization", "objectConfigId": null, "targetAssocPaths": null, "clauses": [{ "type": "numberFilter", "field": "groupRevenue", "params": { "op": "gte", "value": 1000000 } }] }] }, "properties": ["primaryEmail", "title", "companyName"], "limit": 50 }
7. Organizations with contacts titled CEO (cross-object): { "objectType": "Organization", "filter": { "type": "and", "clauses": [{ "type": "and", "target": "Contact", "objectConfigId": null, "targetAssocPaths": null, "clauses": [{ "type": "stringFilter", "field": "title", "params": { "op": "like", "value": "CEO" } }] }] }, "limit": 25 }