---
title: "List job openings"
method: GET
path: "/job-openings"
tags: ["Job Openings"]
---

# List job openings

`GET /job-openings`

## Request

- Base URL: `https://api.commonroom.io/api/v2`
- URL: `https://api.commonroom.io/api/v2/job-openings`
- Auth: HTTP bearer
- TypeScript: <https://skmtc.dev/commonroom/apis/common-room-api-v2/docs/job-openings/get.ts> (a function with typed inputs; its response is checked against the schema)

Retrieve a paginated list of job postings for one organization or custom object. Exactly one of `organizationId` or `objectId` is required: postings live in a corpus keyed by company domain, so they are only readable within the scope of a record you already have.

## Query parameters

- `organizationId` string
- `objectId` string
- `limit` integer
- `cursor` string
- `cols` string
- `sort` 'firstSeenAt'
- `direction` 'asc' | 'desc'

## Response `200`

OK

- JobOpeningList
  - `success` true, required
  - `data` ApiJobOpening[], required
    - `id` string, required: Prefixed job opening ID (format `j_<external id>`)
    - `jobTitle` string, required
    - `url` string, uri, required: Link to the posting
    - `firstSeenAt` string, date-time, required: When the posting was first published or first discovered
    - `isClosed` boolean, required: Whether the posting is closed. Also true when the posting has not been observed for 30 days, even if the source has not marked it closed.
    - `location` string, nullable, required
    - `jobDescription` string, nullable: Full posting text. Only returned when `cols=jobDescription` is requested.
  - `meta` object, required
    - `nextCursor` string, nullable: Cursor for pagination; pass as the `cursor` query parameter to fetch the next page.
    - `recordCount` integer: Total number of records matching the query. Only returned when `cols=recordCount` is requested.

## Other responses

- `400`: Bad Request — also returned for malformed filters, e.g. "Invalid lightFilter: must be valid JSON", "Invalid lightFilter: does not match LightFilterExpression schema", or an unknown filter field.
- `403`: Forbidden
- `404`: The organization or object does not exist in this workspace
- `429`: Rate Limited

---

[API](https://skmtc.dev/commonroom/apis/common-room-api-v2.md) - [All operations](https://skmtc.dev/commonroom/apis/common-room-api-v2/llms.txt) - [OpenAPI document](https://skmtc.dev/commonroom/apis/common-room-api-v2/revisions/865d4d43dadf?raw)
