---
title: "Search companies"
method: POST
path: "/v1/companies/"
tags: ["Companies and Data Providers"]
---

# Search companies

`POST /v1/companies/`

The endpoint returns the `company_mapping_id` for a company if it exists. This `company_mapping_id` can be passed to the `/bridge-tokens` endpoint to have the user skip the company selection step and suggest a data provider.

## Request body

- object
  - `name` string — Company name
  - `domain` string, nullable — Company domain
  - `ein` string — Company EIN
  - `address` object — Company location address object
    - `street` string, required — Company location street
    - `city` string, required — Company location city
    - `state` string — Company location state
    - `zip` string, required — Company location zip code
  - `phone` string — Company phone number
  - `id` string — Company ID
  - `product_type` 'income' | 'employment' | 'deposit_switch' | 'pll' — Product type for success rate calculation

## Response `200`

- object
  - `company_mapping_id` string, nullable — Company to Payroll Provider mapping ID
  - `name` string — Company name
  - `domain` string — Company domain
  - `logo_url` string, nullable — URL to company logo
  - `success_rate` 'low' | 'high' | 'unsupported' | 'null', nullable — Success rate for the company
  - `confidence_level` string — Confidence level for the company success rate. Range of possible values is from 0 to 1 with 0.5 and above being high success rate
  - `mapping_status` 'verified' | 'mapped' | 'unmapped' — Mapping status of the company to the payroll system

## Other responses

- `400` — HTTP 400 Bad Request
- `401` — HTTP 401 Unauthorized
- `403` — HTTP 403 Forbidden

---

[API](https://skmtc.net/truv/apis/truv-api.md) · [All operations](https://skmtc.net/truv/apis/truv-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/truv/truv-api/versions/b92671dcb52d/schema)
