# Company › Posts (/docs/api-reference/linkedin/company-posts)

`GET https://api.insightsocial.app/v1/linkedin/company/posts`

Returns the recent posts from a LinkedIn company page, each with text, author name, like, comment and share counts, media, and date.

Use it for what a brand publishes; profile/posts covers an individual member and group/posts covers a group feed.

**50 credits** per call.

Paginates by `cursor`: see [Pagination](https://www.insightsocial.app/docs/pagination).

Send your key in the `x-api-key` header.

| Parameter | Type | Required | Description |
| --- | --- | --- | --- |
| `company_id` | string | yes | LinkedIn numeric company ID (from /v1/linkedin/company). |
| `page` | integer | no | Page number for pagination (default 1). |
| `sort_by` | string | no | Post ordering: 'top' or 'recent'. One of: top, recent. |
| `since` | string | no | Only rows published on or after this date: YYYY-MM-DD (midnight UTC) or an ISO 8601 timestamp. Rows older than it are left off the page, and the page that reaches one ends the walk: `next_cursor` is not returned and `pagination.stopped_at` is `since`. Sending it sets the newest-first sort shown in this endpoint's sort parameter (any other sort value is a free 400). The page still costs what a page costs, so you pay for the pages you walk and no more. A row with no date is kept. |
| `until` | string | no | Only rows published on or before this date: YYYY-MM-DD (that whole UTC day is included) or an ISO 8601 timestamp. Newer rows are left off each page and the walk does not stop, so older pages follow. A row with no date is kept. |
| `cursor` | string | no | The `pagination.next_cursor` from the previous page, sent back unchanged. Omit it for the first page. |
| `dry_run` | string | no | Set to 1 to get the price of this call without making it: data.dry_run carries credits_min and credits_max. Nothing is charged. One of: 1. |
