Skip to main content
companies

List companies

Returns a paginated list of companies.

GET
/v1/companies
beam-api-keystringheaderrequired
pageintegerquerydefault:1
Required range: 1 <= x
limitintegerquerydefault:20
Required range: 1 <= x
qstringquery

Used to search and narrow results. A query consists of multiple "clauses" joined by " AND ". "OR" and grouping is not currently supported.

Clauses are made up of {field}{operator}{value}.

{field} must be either "search" when generally searching, or a property from the response body. Use dot notation when the property is nested. When response bodies are paginated, this will be a property from the nested items.

{operator} must be one of:

  • '~' for partial, case insensitive matches
  • ':' for exact, case insensitive matches
  • '>', '<', >=', '<=' for greater than, less than, gte, lte, respectively

{value} supports:

  • string: strings must be double quoted ( e.g. name:"john" ). Nested quotes can be escaped ( e.g. name:"John"" ). Supports ~ and : operators.
  • number: numbers can be decimals or integers, and support >, <, :, >=, <= operators.
  • date: dates support >, <, :, >=, <= operators and can be given as an ISO 8601 string or a timestamp in milliseconds. Date-times must include a timezone offset, and a plain date is treated as midnight UTC. e.g. startDate>"2026-01-01T00:00:00Z", startDate>"2026-01-01" or startDate>1767225600000
  • boolean: use true or false without quotes. supports : operator only. e.g. isActive:true
  • null: use null without quotes to assert existence. supports : operator only. e.g. endDate:null
  • array: use square brackets to search for multiple values. Values must all be the same type. e.g. name:["john", "jill"]

Negate a clause with a leading - character. e.g. -age:20 would find all records where age is not 20.

This endpoint supports the following fields:

  • name — The company name
  • category.id — The id of the category assigned to the company
  • customFields.{customFieldId} — a custom field value
  • search — a free text match across the record
Example: name~"Acme" AND category.id:"3f1c2a9e-8b7d-4c1a-9e55-2f6b7a1d4c10"

Response

application/json

Paginated list of companies

currentPagenumberrequired
hasMorebooleanrequired
resultsobject[]required
totalnumberrequired
totalPagesnumberrequired