---
title: "Get a specific job by ID or slug"
method: GET
path: "/jobs/{id_or_slug}"
---

# Get a specific job by ID or slug

`GET /jobs/{id_or_slug}`

## Path parameters

- `id_or_slug` string, required

## Response `200`

Full job details including description, requirements, apply URL

- Job
  - `id` string, uuid
  - `title` string
  - `company_name` string
  - `description` string
  - `requirements` string
  - `location` string
  - `workplace` 'remote' | 'hybrid' | 'onsite'
  - `remote_scope` 'global' | 'restricted' | 'unknown' | 'not_remote' — global requires explicit worldwide hiring evidence; unknown means remote eligibility is ambiguous
  - `job_type` string
  - `experience_level` string
  - `salary_min` integer, nullable
  - `salary_max` integer, nullable
  - `tags` string[]
  - `apply_url` string
  - `slug` string
  - `quality_score` integer — Listing quality 0-100 based on salary data, description detail, tags, location specificity
  - `created_at` string, date-time
  - `candidate_resume_action` CandidateResumeAction — Free, anonymous resume-preview action exposed after a candidate selects a job. It does not authorize or submit an application.
    - `status` string
    - `method` string
    - `endpoint` string, uri
    - `job_id_json_path` string
    - `required_body_fields` string[]
    - `candidate_charge` integer
    - `preview_requires_identity` boolean
    - `saved_artifact_requires_verified_human` boolean
    - `uses_candidate_verified_evidence` boolean
    - `requires_explicit_human_review` boolean
    - `application_authorized` boolean
    - `submission_performed` boolean

## Other responses

- `404` — Job not found

---

[API](https://skmtc.net/aidevboard/apis/ai-dev-jobs-api.md) · [All operations](https://skmtc.net/aidevboard/apis/ai-dev-jobs-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/aidevboard/ai-dev-jobs-api/versions/b557e8d0b266/schema)
