> For the complete documentation index, see [llms.txt](https://doc.keepnetlabs.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://doc.keepnetlabs.com/api-reference/reseller/billing/list-companies-for-cross-sell-license-and-usage.md).

# List companies for cross-sell by license and usage

As a Reseller you list or export companies with license details (license type, license limit, user count, renewal date, tags) to identify cross-sell or upsell opportunities. Use a credential with Client Role = **Reseller**. Use the same company search endpoint; filter or sort by license type, usage, or renewal date to find candidates. Request body: see Endpoints → **Company** for filter and sort options.

***

## POST /api/companies/search

Returns a paginated list of companies with license details. Use **`filter`** to narrow by license type, renewal date, or other fields if the API supports them. Use **`orderBy`** (e.g. `RenewalDate`, `CreateTime`, or license-related fields) and **`ascending`** to sort. Each item includes license limit, user count, renewal date, and related fields for cross-sell analysis.

> Retrieves a list of all companies with license details. Use filter and orderBy to identify cross-sell candidates by license type, usage, or renewal date.

{% openapi src="/files/YqgEnchxXuSVklhH9GGT" path="/api/companies/search" method="post" expanded="true" %}
[keepnet-api-spec.json](https://3453589210-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-LMcQ_WCXOrHv3r05ae5%2Fuploads%2Fgit-blob-31c738c1a6bb3d2911bd3730c780d6ad7fa6bbad%2Fkeepnet-api-spec.json?alt=media)
{% endopenapi %}

***

## POST /api/companies/search/export

Exports the same list to CSV or Excel for analysis in a spreadsheet or BI tool. Use the same filter and sort as in search so the export matches your cross-sell criteria.

> Exports the list of companies to CSV or Excel. Apply the same filter and sort as in search for cross-sell reporting.

{% openapi src="/files/YqgEnchxXuSVklhH9GGT" path="/api/companies/search/export" method="post" expanded="true" %}
[keepnet-api-spec.json](https://3453589210-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-LMcQ_WCXOrHv3r05ae5%2Fuploads%2Fgit-blob-31c738c1a6bb3d2911bd3730c780d6ad7fa6bbad%2Fkeepnet-api-spec.json?alt=media)
{% endopenapi %}

***

## Common errors

* **403 Forbidden** — Credential is not Reseller. Set Client Role = **Reseller** in **Company → Company Settings → REST API**. [Roles and permissions →](/next-generation-product/platform/company/system-users/user-roles.md)
* **401 Unauthorized** — Missing or invalid token. Request a new token via `POST /connect/token`.
* **400 Bad Request** — Invalid request body or filter. Include `pageNumber`, `pageSize`, `orderBy`, `ascending`; check Endpoints → **Company** for supported filter fields and orderBy values.

**Related:** [List companies with license details →](/api-reference/reseller/companies/list-companies-with-license-details.md). [Export customer list for billing →](/api-reference/reseller/billing/export-customer-list-for-billing.md). [Scope API requests to a customer →](/api-reference/reseller/companies/scope-api-requests-to-customer.md).


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://doc.keepnetlabs.com/api-reference/reseller/billing/list-companies-for-cross-sell-license-and-usage.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
