loker.id APIwww.loker.id ↗
Search and retrieve Indonesian job postings from Loker.id. Filter by keyword, job type, and education level. Get full job details including salary, company, and qualifications.
curl -X GET 'https://api.parse.bot/scraper/e6dfe070-e6f5-4d14-b7a6-b01cf415800e/search_jobs' \ -H 'X-API-Key: $PARSE_API_KEY'
Search and list available job openings with optional keyword, job type, and education filters. Returns paginated results with 21 jobs per page.
| Param | Type | Description |
|---|---|---|
| page | string | Page number for pagination, starting from 1. |
| query | string | Search keyword to filter jobs (e.g. 'admin', 'marketing'). Omitting returns all jobs. |
| job_type | string | Filter by job type slug. Omitting returns all types. |
| education | string | Filter by education level slug. Omitting returns all education levels. |
{
"type": "object",
"fields": {
"jobs": "array of job listing objects with id, title, slug, company info, location, salary, and category details",
"pagination": "object with current_page, last_page, from, to, and total"
},
"sample": {
"jobs": [
{
"id": 15879882,
"slug": "admin-finance-sanjaya-thanry-bahtera-jakarta-utara",
"level": "Staff / Officer",
"title": "Admin Finance",
"category": "Akuntansi Finansial",
"job_type": "Full Time",
"location": "Jakarta Utara",
"is_remote": false,
"categories": [
{
"id": 89965,
"name": "Akuntansi Finansial",
"slug": "akuntansi-finansial",
"parent": {
"id": 1,
"name": "Akuntansi",
"slug": "akuntansi-keuangan"
}
}
],
"company_id": 158281,
"is_premium": true,
"job_salary": "Rp.4 – 5 Juta",
"salary_max": 4500000,
"salary_min": 2500000,
"company_name": "SANJAYA THANRY BAHTERA",
"display_date": "2026-06-01 13:13:27",
"published_at": "2026-05-28 14:26:00",
"job_experience": "Freshgraduate - 2 Tahun"
}
],
"pagination": {
"to": 21,
"from": 1,
"total": 524,
"last_page": 25,
"current_page": 1
}
}
}About the loker.id API
The Loker.id API exposes 2 endpoints for searching and retrieving job postings from Indonesia's Loker.id platform. The search_jobs endpoint returns paginated results of 21 listings per page, each including job title, company info, location, salary range, and category data. The get_job_detail endpoint returns the full posting — description, qualifications, responsibilities, and company profile — for a specific job identified by its slug and category.
Searching Job Listings
The search_jobs endpoint accepts four optional parameters: query for keyword filtering (e.g. 'admin', 'marketing'), job_type and education for structured filtering by job type slug and education level slug respectively, and page for pagination starting at 1. Each page returns up to 21 job objects. Each job object includes an id, title, slug, company details, location, salary range, and a categories array that contains both child and parent category slugs. The pagination object in the response exposes current_page, last_page, from, to, and total so you can iterate through the full result set.
Retrieving Job Details
The get_job_detail endpoint requires the job_slug and parent_category fields sourced from search_jobs results, with an optional child_category. The response includes the full job title, salary object with range info, types array of job type objects, level object, is_remote boolean, and a company object containing the employer's name, description, city, industry, and company_size. Qualifications and responsibilities are included in the detailed response.
Data Coverage
All job data reflects Loker.id's Indonesia-focused listings. Categories follow Loker.id's own taxonomy — parent and child category slugs returned by search_jobs are the same values required by get_job_detail, so building a two-step fetch pipeline (search then detail) is straightforward. Education level and job type filters use Loker.id's slug conventions, which can be discovered by browsing search results first.
- Aggregate Indonesian job listings by category for a niche job board targeting local candidates
- Monitor salary ranges for specific roles in Indonesia using the
salaryfield fromget_job_detail - Filter remote-eligible positions in Indonesia using the
is_remotefield on job detail responses - Build a company profile enrichment tool by extracting
company.industryandcompany_sizefrom job postings - Track job volume by education level by iterating
search_jobswith differenteducationslugs and summingpagination.total - Alert users to new postings in a target category by polling
search_jobswith aqueryand comparing against known job IDs
| Tier | Price | Credits/month | Rate limit |
|---|---|---|---|
| Free | $0/mo | 100 | 5 req/min |
| Hobby | $30/mo | 1,000 | 20 req/min |
| Developer | $100/mo | 5,000 | 250 req/min |
One credit = one API call regardless of which marketplace API you call. Exceeding the rate limit returns a 429 response. Authenticate with the X-API-Key header.
Does Loker.id offer an official developer API?+
What does the `search_jobs` endpoint return, and how granular is the filtering?+
id, title, slug, company name and location, salary range, and a categories array with parent and child slugs. Filtering is available by free-text query, job_type slug, and education slug. Results are paginated at 21 per page; the pagination object reports total, current_page, and last_page for full iteration.Can I retrieve job application URLs or apply directly through the API?+
How do I pass the right parameters to `get_job_detail`?+
job_slug maps to the slug field on any search_jobs result. The parent_category comes from categories[0].parent.slug and child_category from categories[0].slug on the same result object. These three values together form the path components needed to fetch the full job detail.