---
title: "Reads all Job postings"
method: GET
path: "/api/2026-10-01/resources/ats/job_postings"
tags: ["Ats > JobPosting"]
---

# Reads all Job postings

`GET /api/2026-10-01/resources/ats/job_postings`

## Request

- Base URL: `https://api.factorialhr.com`
- URL: `https://api.factorialhr.com/api/2026-10-01/resources/ats/job_postings`
- Auth: one of:
  - OAuth 2
    - Authorization code: `https://id.factorialhr.com/oauth/authorize`
    - Token URL: `https://id.factorialhr.com/api/oauth/token` scopes: `recruitment`
  - API key in header `x-api-key`

Reads all Job postings

## Query parameters

- `ids[]` string[]
- `status` 'draft' | 'published' | 'unlisted' | 'archived' | 'cancelled' | 'deleted'
- `team_id` string
- `location_id` string
- `legal_entity_id` string

## Response `200`

OK

- object
  - `data` AtsJobPosting[]
    - `id` string, required: Unique identifier for the job posting
    - `company_id` string, required: Identifier of the company associated with the job posting
    - `ats_company_id` string, required: Identifier of the ATS company associated with the job posting
    - `title` string, required: Title of the job posting
    - `description` string: Description of the job posting
    - `contract_type` 'indefinite' | 'temporary' | 'intern' | 'training' | 'freelance' | 'vendor_contractor' | 'volunteer' | 'per_hour' | 'other' | 'alternant' | 'interim' | 'minijob' | 'werkstudent' | 'apprenticeship' | 'pj' | 'clt' | 'jovem_aprendiz' | 'a_termo_incerto' | 'a_termo_certo' | 'de_curta_duracao' | 'de_muita_curta_duracao' | 'promessa_de_trabalho' | 'a_tempo_parcial' | 'com_pluralidade_de_empregadores' | 'teletrabalho' | 'pre_reforma' | 'recibos_verdes' | 'estagio' | 'sem_termo' | 'apprentissage' | 'fixed_discontinued' | 'apprendistato'
    - `category` 'administration_and_secretariat' | 'design_and_architecture' | 'education_and_social_policy' | 'engineering' | 'finance' | 'hr' | 'it' | 'legal' | 'management_and_consulting' | 'marketing_and_communication' | 'nursing_and_therapy' | 'physicians' | 'public_sector' | 'purchasing_materials_administration_and_logistics' | 'sales' | 'sciences_and_research' | 'service_industry_and_manufacturing' | 'sports_art_and_creative_jobs' | 'other'
    - `workplace_type` 'onsite' | 'remote' | 'hybrid'
    - `remote` boolean, required: Indicates if the job posting is remote
    - `status` 'draft' | 'published' | 'unlisted' | 'archived' | 'cancelled' | 'deleted', required: The current status of the job posting (e.g., draft, published, archived)
    - `schedule_type` 'full_time' | 'part_time': The schedule type of the job posting (e.g., full_time, part_time)
    - `team_id` string: Identifier of the team associated with the job posting
    - `location_id` string: Identifier of the location associated with the job posting
    - `legal_entity_id` string: Identifier of the legal entity associated with the job posting
    - `salary_format` 'fixed_amount' | 'range': The format of the salary (e.g., range, fixed_amount)
    - `salary_from_amount_in_cents` integer: The minimum salary amount in cents
    - `salary_to_amount_in_cents` integer: The maximum salary amount in cents
    - `hide_salary` boolean: Indicates whether the salary information for the job posting should be hidden from applicants.
    - `cv_requirement` 'mandatory' | 'optional' | 'do_not_ask', required: Requirement for the CV (e.g, mandatory, optional, do_not_ask)
    - `cover_letter_requirement` 'mandatory' | 'optional' | 'do_not_ask', required: Requirement for the cover letter (e.g, mandatory, optional, do_not_ask)
    - `phone_requirement` 'mandatory' | 'optional' | 'do_not_ask', required: Requirement for the phone number (e.g, mandatory, optional, do_not_ask)
    - `photo_requirement` 'mandatory' | 'optional' | 'do_not_ask', required: Requirement for the phone number (e.g, mandatory, optional, do_not_ask)
    - `personal_url_requirement` 'mandatory' | 'optional' | 'do_not_ask', required: Requirement for the personal URL (e.g, mandatory, optional, do_not_ask)
    - `url` string: If published, the public URL of the job posting. Otherwise will be null
    - `salary_period` 'annual' | 'monthly' | 'daily', required: The period of the salary (e.g., annual, monthly, daily)
    - `published_at` string: Published date in ISO 8601 format of the job. If never been published the value will be null
    - `created_at` string, required: Date in ISO 8601 format when the job posting was created
  - `meta` PagedIndexMeta
    - `start_cursor` string
    - `end_cursor` string
    - `has_previous_page` boolean, required
    - `has_next_page` boolean, required
    - `limit` integer, required
    - `total` integer, required

## Changes

- **2026-11-03** `83ac9aa1de50`: 1 info
  - endpoint added

[Operation history](https://skmtc.dev/factorialhr/apis/factorial-api/changes/api/2026-10-01/resources/ats/job_postings/get.md)

---

[API](https://skmtc.dev/factorialhr/apis/factorial-api.md) - [All operations](https://skmtc.dev/factorialhr/apis/factorial-api/llms.txt) - [OpenAPI document](https://skmtc.dev/factorialhr/apis/factorial-api/revisions/83ac9aa1de50?raw)
