---
title: "Read a public company page"
method: POST
path: "/public/company"
tags: ["public"]
---

# Read a public company page

`POST /public/company`

Read a public company page anonymously: identity, description, follower and employee counts, website, recent posts, and companies LinkedIn itself lists as similar (a real, live-measured way to answer "companies like this one", not a keyword guess). Recent posts can be mined for people with collect_engagers.

## Request body

- object
  - `companyUrl` string — Full public company page URL. Provide this or slug.
  - `slug` string — Company page slug. Provide this or companyUrl.
  - `country` string — ISO alpha-2 country code for the proxy exit.

## Response `200`

Public company data

- object
  - `source` 'public', required
  - `completeness` string, required
  - `company` object, required — Company identity, follower and employee counts, website, recent posts, and similarCompanies (LinkedIn's own "Similar pages" for this company, empty when the company is too small for the signal to be reliable) — the fastest way to answer a "companies like this one" ask.

## Other responses

- `400` — The server cannot or will not process the request due to something that is perceived to be a client error.
- `401` — Although HTTP specifies "unauthorized", this response means "unauthenticated". Authenticate to continue. NOTE: 401 is also returned with code "linkedin_not_connected" when the caller IS authenticated but has no connected LinkedIn account — connect LinkedIn (not re-authenticate) to continue.
- `403` — The client does not have access rights to the content.
- `404` — The server cannot find the requested resource.
- `409` — The request conflicts with the current state of the server.
- `410` — The requested content has been permanently deleted from the server.
- `422` — The request was well-formed but was unable to be followed due to semantic errors.
- `429` — Rate limit exceeded. Read error.retryAfter for the wait time in seconds.
- `500` — The server encountered a situation it does not know how to handle.
- `502` — LinkedIn returned a server error or the proxy connection failed. Retry after a few seconds.
- `503` — Proxy capacity temporarily exceeded. Retry after a few seconds.

---

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