---
title: "List public jobs"
method: GET
path: "/career-site/jobs"
tags: ["Career Site"]
---

# List public jobs

`GET /career-site/jobs`

## Request

- Base URL: `https://api.100hires.com/v2`
- URL: `https://api.100hires.com/v2/career-site/jobs`
- Auth: API key in header `X-Company-Slug`

Returns publicly visible jobs for the given company. Supports filtering by department, employment type, city, and country. Use to power a custom careers page.

## Query parameters

- `company_slug` string
- `department_id` integer
- `employment_type_id` integer
- `city` string
- `country` string
- `page` integer
- `size` integer

## Response `200`

Paginated list of public jobs

- CareerSiteJobListResponse
  - `jobs` CareerSiteJob[], required: Array of public jobs.
    - `id` integer, required: Job ID.
    - `title` string, required: Job title.
    - `description` string, required: HTML content
    - `department` IdName
      - `id` integer, required: Unique identifier.
      - `name` string, required: Display name.
    - `location` CareerSiteLocation, required
      - `city` string, nullable: City.
      - `country` string, nullable: Country.
      - `state` string, nullable: State or region.
    - `employment_type` IdName
      - `id` integer, required: Unique identifier.
      - `name` string, required: Display name.
    - `is_remote` boolean, required: Whether this is a remote position.
    - `is_hybrid` boolean, required: Whether this is a hybrid position (office days plus remote days at the job address).
    - `application_url` string, uri, required: Public application form URL.
    - `form_id` integer, nullable, required: ID of the application form this job uses — the form attached to the job, or the company default form when none is attached (the same rule the apply page at `application_url` follows). Resolve the questions server-side with `GET /forms/{id}` (private API key) and render them on your own site; submit the candidate's answers with `POST /career-site/applications`. `null` only when the company has no forms.
    - `created_at` integer, required: Unix timestamp (seconds)
  - `pagination` Pagination, required
    - `page_size` integer, required: Items per page.
    - `page_count` integer, required: Total number of pages.
    - `page` integer, required: Current page number.
    - `total_count` integer, required: Total number of items.

## Other responses

- `400`: Validation error
- `401`: Unauthorized
- `415`: Content-Type must be application/json

---

[API](https://skmtc.dev/100hires/apis/100hires-api.md) · [All operations](https://skmtc.dev/100hires/apis/100hires-api/llms.txt) · [OpenAPI document](https://skmtc.dev/100hires/apis/100hires-api/revisions/e63e2d3115f7?raw)
