curl --request GET \
--url https://openapi.rocketpunch.com/api/v1/jobs/{jobId} \
--header 'X-RP-API-Key: <api-key>'import requests
url = "https://openapi.rocketpunch.com/api/v1/jobs/{jobId}"
headers = {"X-RP-API-Key": "<api-key>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {'X-RP-API-Key': '<api-key>'}};
fetch('https://openapi.rocketpunch.com/api/v1/jobs/{jobId}', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://openapi.rocketpunch.com/api/v1/jobs/{jobId}",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"X-RP-API-Key: <api-key>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://openapi.rocketpunch.com/api/v1/jobs/{jobId}"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("X-RP-API-Key", "<api-key>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://openapi.rocketpunch.com/api/v1/jobs/{jobId}")
.header("X-RP-API-Key", "<api-key>")
.asString();require 'uri'
require 'net/http'
url = URI("https://openapi.rocketpunch.com/api/v1/jobs/{jobId}")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["X-RP-API-Key"] = '<api-key>'
response = http.request(request)
puts response.read_body{
"jobId": 9001234,
"status": "published",
"hiring": true,
"title": "Backend Engineer (Kotlin/Spring)",
"seniorities": [
"<string>"
],
"employmentTypes": [
"<string>"
],
"jobImages": [
"<string>"
],
"allowRemote": true,
"company": {
"name": "<string>",
"id": "<string>",
"logoUrl": "<string>",
"industry": "<string>",
"size": "TINY"
},
"applyMethod": {
"type": "OUTLINK",
"url": "<string>"
},
"webUrl": "<string>",
"createdAt": "<string>",
"subtitle": "<string>",
"jobCategory": "<string>",
"workType": "ONSITE",
"language": "<string>",
"description": "<string>",
"duty": "<string>",
"minimumQualification": "<string>",
"preferredQualification": "<string>",
"benefit": "<string>",
"hireProcess": "<string>",
"hireNotes": "<string>",
"startAt": "<string>",
"endAt": "<string>"
}{
"code": "C0005",
"message": "pageSize must be 50 or less. Input: 51",
"timestamp": "2026-05-20T09:00:00",
"details": "startDate"
}{
"code": "C0005",
"message": "pageSize must be 50 or less. Input: 51",
"timestamp": "2026-05-20T09:00:00",
"details": "startDate"
}Get job details
Returns details for a single job. All jobs except deleted and draft jobs return 200, including published, finished, and expired published jobs. Use the status and hiring fields to determine the current visibility state. Treat the job as open for applications only when status=="published" && hiring==true. For other cases (hiring==false or status=="finish"), disable the apply button or show a closed badge.
curl --request GET \
--url https://openapi.rocketpunch.com/api/v1/jobs/{jobId} \
--header 'X-RP-API-Key: <api-key>'import requests
url = "https://openapi.rocketpunch.com/api/v1/jobs/{jobId}"
headers = {"X-RP-API-Key": "<api-key>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {'X-RP-API-Key': '<api-key>'}};
fetch('https://openapi.rocketpunch.com/api/v1/jobs/{jobId}', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://openapi.rocketpunch.com/api/v1/jobs/{jobId}",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"X-RP-API-Key: <api-key>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://openapi.rocketpunch.com/api/v1/jobs/{jobId}"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("X-RP-API-Key", "<api-key>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://openapi.rocketpunch.com/api/v1/jobs/{jobId}")
.header("X-RP-API-Key", "<api-key>")
.asString();require 'uri'
require 'net/http'
url = URI("https://openapi.rocketpunch.com/api/v1/jobs/{jobId}")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["X-RP-API-Key"] = '<api-key>'
response = http.request(request)
puts response.read_body{
"jobId": 9001234,
"status": "published",
"hiring": true,
"title": "Backend Engineer (Kotlin/Spring)",
"seniorities": [
"<string>"
],
"employmentTypes": [
"<string>"
],
"jobImages": [
"<string>"
],
"allowRemote": true,
"company": {
"name": "<string>",
"id": "<string>",
"logoUrl": "<string>",
"industry": "<string>",
"size": "TINY"
},
"applyMethod": {
"type": "OUTLINK",
"url": "<string>"
},
"webUrl": "<string>",
"createdAt": "<string>",
"subtitle": "<string>",
"jobCategory": "<string>",
"workType": "ONSITE",
"language": "<string>",
"description": "<string>",
"duty": "<string>",
"minimumQualification": "<string>",
"preferredQualification": "<string>",
"benefit": "<string>",
"hireProcess": "<string>",
"hireNotes": "<string>",
"startAt": "<string>",
"endAt": "<string>"
}{
"code": "C0005",
"message": "pageSize must be 50 or less. Input: 51",
"timestamp": "2026-05-20T09:00:00",
"details": "startDate"
}{
"code": "C0005",
"message": "pageSize must be 50 or less. Input: 51",
"timestamp": "2026-05-20T09:00:00",
"details": "startDate"
}Authorizations
Headers
Supported response locales: ko, en, ja, zh-CN, zh-TW, es, fr, de, pt, th, vi. Default is ko.
"ko"
Path Parameters
Job ID
Response
Success.
Job details. status and hiring are independent dimensions and can form four response states: (1) status=published, hiring=true: actively hiring and applications are open; (2) status=published, hiring=false: visible but hiring is closed; (3) status=finish, hiring=false: the company explicitly ended hiring; (4) status=finish, hiring=true: should almost never occur. Treat only case (1) as open for applications and show a closed badge for cases (2) and (3).
Job ID
9001234
Job status. published means currently visible (actively hiring or closed). finish means the company explicitly ended hiring. Deleted and draft jobs are not returned.
published, finish "published"
Whether the job is actively hiring. true means open for applications; false means closed (not returned in search/list, only in detail).
true
Job title
"Backend Engineer (Kotlin/Spring)"
Seniorities
Employment types
Job image URLs
Remote work allowed
Company information
Show child attributes
Show child attributes
How to apply
Show child attributes
Show child attributes
Rocketpunch page URL
Created at in ISO-8601 UTC
Job subtitle
Job category code
Workplace type
ONSITE, HYBRID, REMOTE Content language
Detailed description
Responsibilities
Requirements
Preferred qualifications
Benefits
Hiring process
Notes
Recruiting start time in ISO-8601 UTC
Recruiting end time in ISO-8601 UTC (null for always-open jobs; past time means hiring is closed)
Was this page helpful?