Lists

List a list's contacts (with ids and column values)

Pages through a list's rows. entityType says which shape data holds: a contact list's rows carry the contact id (the id members, columns/{columnId}/values, enrich and crm-push accept), the discovered emails and phones with their validation status, the primaries, ICP match, campaign engagement, acquisition source, the other lists the contact belongs to, its location and columnValues (custom and smart column cells keyed by column id); a company list's rows carry the company's own fields (name, domain, industry, employeeCount, revenue, headquartersCountry) plus engagement, source, location and columnValues. LinkedIn URLs come back as full https URLs. sortBy/sortOrder sort (an unrecognised sort key falls back to the list's default order). filters is a URL-encoded JSON object in the row-filter language: text keys take an array of accepted values or {include, exclude} — {"companyName":["pomelo"]}, {"country":["argentina"]}; enrichedEmail/enrichedPhone/emailValidity take {"include":[...]} of their statuses; icpMatch takes ["yes"] or ["no"]; customColumns maps a column id to {"dataType":"string","include":[...]}. Two keys are narrower than their names suggest: keywords is a wildcard match on the job title alone (* and ? are the only wildcards; other regex characters are rejected) and otherLists matches other lists by NAME, not by id. An unknown key or a wrong value shape answers 422 INVALID_ROW_FILTERS naming the offending key.

Errors:

  • 404 LIST_NOT_FOUND — No list with that id is visible to the token owner.
  • 422 INVALID_ROW_FILTERS — filters is not a JSON object, carries an unknown key, a value has the wrong shape, or keywords carries one of the regex metacharacters . ^ $ + ( ) [ ] { } | \ (the offending key is named in the message).
  • 422 VALIDATION_FAILED — limit/pageNum/sortOrder out of range, or filters longer than 8000 characters.
  • 429 RATE_LIMITED — The lists rate bucket (120 requests/minute, 10,000/day per token owner) is exhausted.

Requires one of the following token scopes: lists.

get/business/lists/{listId}/rows

Request

  • Base URL: https://api.tryfuse.ai/api/v1
  • URL: https://api.tryfuse.ai/api/v1/business/lists/{listId}/rows
  • Auth: HTTP basic

Path parameters

listIdstring required

24-character hex id of the list (from GET /business/lists).

Query parameters

limitinteger

Page size: how many rows to return per page (1-1000, default 100).

pageNuminteger

1-based page number (default 1).

sortBystring

Field to sort rows by; it is IGNORED unless sortOrder is sent with it. Contact lists: any field on the contact record — the index-backed and therefore fast ones are firstName, lastName, jobTitle, createdAt, address.city and address.country (updatedAt carries NO index on the contact collection, so it is accepted but sorts as a blocking in-memory sort); a company field prefixed with company., where the accepted values are exactly company.name, company.domain, company.industry, company.country, company.type, company.revenue, company.linkedInHeadCount, company.address.city, company.address.state and company.address.country; or customColumns_<columnId> for a custom/smart column. Company lists: a company field by its own name (name, domain, industry, revenue, linkedInHeadCount) or customColumns_<columnId>. An unrecognised key is accepted and falls back to the list's default order rather than erroring.

sortOrder'asc' | 'desc'

Sort direction: asc (ascending) or desc (descending). Required for sortBy to take effect — without it the rows keep their default order.

filtersstring

URL-encoded JSON object (max 8000 characters) narrowing which rows are returned, e.g. {"companyName":["pomelo"]} or {"country":["argentina"]}. Text keys (name, title, dept, level, industryName, country, state, personalLocation, companyName, companyIndustry, companyHeadQuartersCountry, companyLocation, website, campaignEngagement, otherLists) take an array of accepted values, e.g. {"companyName":["pomelo"]} or {"country":["argentina"]}, or {"include":[...],"exclude":[...]} — otherLists takes list NAMES, not ids; numberOfEmployees takes headcount ranges the same way but as STRINGS ("51-200", "10001+" or a bare head count "500" — an unquoted JSON number answers 500) and revenue a plain number; keywords (a wildcard match on the job title only) and linkedinUrl take one string; enrichedEmail, enrichedPhone and emailValidity take {"include":[...]} of their statuses; icpMatch takes ["yes"] or ["no"]; customColumns maps a column id to {"dataType":"string","include":[...]}, {"dataType":"boolean","value":true} or {"dataType":"number","rangeMin":1,"rangeMax":10}. Company lists honour companyName, companyIndustry, companyHeadQuartersCountry, website, numberOfEmployees, campaignEngagement and customColumns. Every key is optional; an unknown key or a wrong value shape is rejected rather than ignored. Values inside one key are OR-joined and different keys are AND-ed. VALUES ARE NOT VALIDATED: level, industryName, country, state, website and companyHeadQuartersCountry are matched as whole values and campaignEngagement, icpMatch and enum cells as exact strings, so a value in the wrong vocabulary is accepted and silently matches nothing — each key's own description names its vocabulary and the endpoint that serves it. Malformed JSON, an unknown key or a wrong value shape answers 422 INVALID_ROW_FILTERS.

Response

Success

entityType'contactList' | 'companyList' required

Changes

No recorded changes to this operation across all 1 revision of this API.