> ## Documentation Index
> Fetch the complete documentation index at: https://docs.revyops.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Filter Parameters

> Query parameters accepted by RevyOps list endpoints.

List endpoints accept filters as query parameters. Parameter names are matched case-insensitively. Filters are combined with AND: every filter you pass must match for a record to be returned.

## Contacts

`GET /public/v2/contacts` and `GET /public/contacts`

| Parameter      | Match type         | Notes                                                                              |
| -------------- | ------------------ | ---------------------------------------------------------------------------------- |
| `email`        | exact              | Lowercased and trimmed before matching.                                            |
| `linkedin_url` | exact              | Normalized before matching.                                                        |
| `phone`        | exact              | Normalized to E.164 before matching.                                               |
| `firstname`    | exact              |                                                                                    |
| `lastname`     | exact              |                                                                                    |
| `domain`       | exact              | Matches contacts whose company has this domain. Excludes contacts with no company. |
| `structure`    | `NESTED` or `FLAT` | Shape of `contact_custom_fields` in the response. Defaults to `NESTED`.            |

If you pass `email`, `linkedin_url`, or `phone` as an empty value, the endpoint returns `{"status": "No contacts found"}` rather than an unfiltered list.

```bash theme={null}
curl "https://app.revyops.com/api/public/v2/contacts?domain=acme.com&structure=FLAT" \
  -H "X-API-KEY: your-api-key"
```

## Companies

`GET /public/v2/companies` and `GET /public/companies`

| Parameter   | Match type         | Notes                                                                   |
| ----------- | ------------------ | ----------------------------------------------------------------------- |
| `name`      | exact              |                                                                         |
| `domain`    | exact              |                                                                         |
| `industry`  | exact              |                                                                         |
| `structure` | `NESTED` or `FLAT` | Shape of `company_custom_fields` in the response. Defaults to `NESTED`. |

```bash theme={null}
curl "https://app.revyops.com/api/public/v2/companies?domain=acme.com" \
  -H "X-API-KEY: your-api-key"
```

## People

`GET /public/people`

| Parameter      | Match type | Notes                                   |
| -------------- | ---------- | --------------------------------------- |
| `email`        | exact      |                                         |
| `linkedin_url` | exact      |                                         |
| `phone`        | exact      |                                         |
| `firstname`    | exact      |                                         |
| `lastname`     | exact      |                                         |
| `domain`       | exact      | Matches by the person's company domain. |

`GET /public/people/lookup` takes exactly one of `email`, `linkedin_url`, or `phone` to resolve a single person.

## Emails

`GET /public/emails`

| Parameter       | Match type | Notes                           |
| --------------- | ---------- | ------------------------------- |
| `contact_email` | exact      |                                 |
| `subject`       | contains   | Case-sensitive substring match. |
| `campaign_id`   | exact      |                                 |
| `origin`        | exact      |                                 |

This endpoint is not paginated, so narrow your query with these filters rather than relying on pages. See [Pagination](/api-reference/pagination).

## Lookup by custom field

`GET /public/v2/contacts/lookup-by-custom-field` and `GET /public/v2/companies/lookup-by-custom-field`

| Parameter           | Required | Notes                                        |
| ------------------- | -------- | -------------------------------------------- |
| `field_name`        | yes      | Name of the custom field to match on.        |
| `field_value`       | yes      | Value to match.                              |
| `page`, `page_size` | no       | See [Pagination](/api-reference/pagination). |

```bash theme={null}
curl "https://app.revyops.com/api/public/v2/contacts/lookup-by-custom-field?field_name=lead_score&field_value=90" \
  -H "X-API-KEY: your-api-key"
```
