Rozee.pk Jobs Scraper avatar

Rozee.pk Jobs Scraper

Pricing

from $0.60 / 1,000 results

Go to Apify Store
Rozee.pk Jobs Scraper

Rozee.pk Jobs Scraper

Scrape Rozee.pk job listings and get structured records with titles, companies, locations, job types, salary and experience ranges, skills, descriptions and application deadlines. Search by keyword and filter by city, industry, experience or job type; public search pages require no login.

Pricing

from $0.60 / 1,000 results

Rating

0.0

(0)

Developer

Axiom Works

Axiom Works

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

a day ago

Last modified

Categories

Share

Returns: one row per Rozee.pk job with title, company, city, salaryMin, salaryMax, experienceMin, skills, applyBy and url. Input: {"keyword": "sales", "city": "Lahore", "maxItems": 50} Best for: recruiter and staffing lead lists in Pakistan, salary and hiring-demand research, job alert feeds.

{
"jobId": "1911532",
"title": "Sales Verification Specialist- Call Center",
"company": "Prime BPO 5",
"city": "Rawalpindi",
"salaryMin": 100000,
"salaryCurrency": "PKR",
"experienceMin": "1 Year",
"applyBy": "2026-11-17T00:00:00Z"
}

What does Rozee.pk Jobs Scraper do?

Rozee.pk Jobs Scraper collects job listings from Rozee.pk, the largest job board in Pakistan. You give it a keyword (a job title, skill or company), optional filters for city, industry, experience and job type, or one or more Rozee search URLs, and it returns one structured row per job: title, hiring company, city, country, job type, industry, salary range, experience range, skills, posting date, apply-by deadline, the full job description (as HTML and as plain text) and the link to the job on Rozee.pk.

It works like an unofficial Rozee.pk API. It reads the same public search pages a visitor sees, without a login, and turns them into clean JSON, CSV or Excel you can load into a spreadsheet, a CRM or an applicant tracking system. Every row also says which search page it came from and which keyword was searched, so results from several runs can be merged and compared.

Typical users are recruiters and staffing agencies building lists of companies that are hiring in Pakistan, HR teams and researchers tracking salaries and demand for skills, and developers who need a job feed for a job alert service, a niche job board or an AI agent.

What data can you get from Rozee.pk?

FieldDescriptionExample
jobIdRozee job id1911532
titleJob title as postedSales Verification Specialist- Call Center
companyHiring company namePrime BPO 5
cityMain city of the jobRawalpindi
citiesAll cities the job is posted for["Rawalpindi"]
countryCountry of the jobPakistan
jobTypeJob type or shift label, as Rozee shows itFull Time/Permanent
industryIdRozee industry id63
industryIndustry name for that idBPO
salaryMinLowest monthly salary, when published100000
salaryMaxHighest monthly salary, when published100000
salaryCurrencySalary currency, set only when a salary is publishedPKR
experienceMinMinimum experience asked for1 Year
experienceMaxMaximum experience, when given5 Years
postedDatePosting date as Rozee displays itOct 17, 2026
postedAtPosting time, ISO 86012026-10-17T01:16:59Z
applyByApplication deadline, ISO 86012026-11-17T00:00:00Z
skillsSkills listed on the job["Customer Service", "Night Shift"]
descriptionHtmlFull job description with its HTML formattingPrime BPO 5 is seeking...
descriptionFull job description as plain textPrime BPO 5 is seeking...
sourceWhere Rozee got the job (BeBee, Indeed, ROZEEGPT.AI and others)ROZEEGPT.AI
isExternalTrue when Rozee aggregated the job from another boardtrue
urlLink to the job on Rozee.pkhttps://www.rozee.pk/prime-bpo-5-sales-verification-specialist-call-center-jobs-1911532
searchQueryKeyword searched; null for searches without a keywordsales
scrapedAtWhen the row was collected, ISO 86012026-10-19T00:20:06.125Z
idStable record id (same as jobId)1911532
sourceUrlRozee search page the row came fromhttps://www.rozee.pk/job/jsearch/q/sales

Missing values are null, never empty strings. Salary is published on fewer than half of Rozee.pk jobs, so salaryMin, salaryMax and salaryCurrency are often null. Values are copied as Rozee gives them: salaries are monthly amounts in the listed currency, and minimum and maximum are often the same number.

How to use Rozee.pk Jobs Scraper

  1. Open the Actor in Apify Console and go to the Input tab.
  2. Type a keyword such as sales, python or accountant, or leave it empty to list all jobs.
  3. Optionally pick a city (a name like Lahore or a Rozee city id like 1188), an industry (by id or name), a minimum experience level and a job type.
  4. Or paste one or more Rozee listing URLs into "Rozee search URLs": a search you already set up on the Rozee.pk website, or a city page such as https://www.rozee.pk/jobs-in-lahore. Keyword and filters are then ignored.
  5. Set "Maximum results" and click Start.
  6. When the run finishes, open the Output tab and export the jobs as JSON, CSV, Excel, XML or HTML, or read them through the API.

Some tips. maxItems is the total across all searches in the run, and the run stops as soon as it reaches it. Rozee shows 20 jobs per page and the Actor sends one request at a time, 10 to 12 seconds apart, so it doesn't trip Rozee's bot protection; a run of 50 jobs takes under a minute and a run of 1,000 jobs about ten minutes. Schedule the Actor daily and keep only new jobId values to build a job alert feed.

When you search with a keyword, Rozee.pk adds a few pinned or featured jobs that have nothing to do with it. The Actor drops every job whose title, company, skills and description don't contain any word of your keyword (words of three letters or more), and logs how many it dropped. That is why a keyword with no real matches returns 0 results instead of three random jobs. Rozee.pk only understands English keywords: an Urdu keyword is ignored by the site, so it returns 0 results here.

Input

FieldTypeRequiredDescription
keywordstringNoJob title, skill or company to search, e.g. sales. Empty returns all jobs.
citystringNoCity name (Lahore, Karachi, Islamabad, case-insensitive) or a numeric Rozee city id (1188 is Peshawar). An unknown city name fails the run with a message.
industrystringNoRozee industry id or name, e.g. 1 or Information Technology, 3 or Banking, 68 or Healthcare.
experiencestringNoMinimum experience id: 713 Fresh, 715 Less than 1 Year, 717 1 Year, 721 3 Years, 735 10 Years. Labels such as 3 Years also work.
jobTypestringNo571 Full Time/Permanent, 567 Contract, 569 Part Time. Labels such as Full Time also work.
startUrlsarrayNoRozee listing URLs used as-is, e.g. [{"url": "https://www.rozee.pk/job/jsearch/q/accountant/fc/1184"}] or a city page like https://www.rozee.pk/jobs-in-lahore. Keyword and filters are ignored when this is set.
maxItemsintegerNoMaximum number of jobs across all searches, 1-10000, default 50.
proxyConfigurationobjectNoProxy settings. Default: Apify Proxy (datacenter).

Example input: sales jobs in Lahore, full time only.

{
"keyword": "sales",
"city": "Lahore",
"jobType": "571",
"maxItems": 30,
"proxyConfiguration": { "useApifyProxy": true }
}

Example input with a search URL (accountant jobs in Karachi):

{
"startUrls": [{ "url": "https://www.rozee.pk/job/jsearch/q/accountant/fc/1184" }],
"maxItems": 40
}

Common city ids: Islamabad 1180, Karachi 1184, Lahore 1185, Peshawar 1188, Rawalpindi 1190. Any of the 576 cities Rozee lists works by name.

Output

Each job is one row in the run's dataset. Two real rows from a local run with {"keyword": "sales", "maxItems": 10} (descriptions shortened here):

[
{
"id": "1911532",
"jobId": "1911532",
"title": "Sales Verification Specialist- Call Center",
"company": "Prime BPO 5",
"city": "Rawalpindi",
"cities": [
"Rawalpindi"
],
"country": "Pakistan",
"jobType": "Full Time/Permanent",
"industryId": 63,
"industry": "BPO",
"salaryMin": 100000,
"salaryMax": 100000,
"salaryCurrency": "PKR",
"experienceMin": "1 Year",
"experienceMax": null,
"postedDate": "Oct 17, 2026",
"postedAt": "2026-10-17T01:16:59Z",
"applyBy": "2026-11-17T00:00:00Z",
"skills": [
"Call Center experience",
"Night Shift",
"Sales Process Knowledge",
"English Communication",
"Customer Service",
"Time Management",
"Attention to Detail",
"Customer Verification Techniques"
],
"descriptionHtml": "Prime BPO 5 is seeking a dedicated Sales Verification Consultant to join our US campaign team. This role requires candidates to apply their knowledge of custome...",
"description": "Prime BPO 5 is seeking a dedicated Sales Verification Consultant to join our US campaign team. This role requires candidates to apply their knowledge of custome...",
"source": "ROZEEGPT.AI",
"isExternal": true,
"url": "https://www.rozee.pk/prime-bpo-5-sales-verification-specialist-call-center-jobs-1911532",
"searchQuery": "sales",
"scrapedAt": "2026-10-19T00:20:06.125Z",
"sourceUrl": "https://www.rozee.pk/job/jsearch/q/sales"
},
{
"id": "1913961",
"jobId": "1913961",
"title": "Hiring Now – Experienced Medicare Sales Agents | Strive BPO",
"company": "Strive BPO LLP",
"city": "Rawalpindi",
"cities": [
"Rawalpindi"
],
"country": "Pakistan",
"jobType": "First Shift (Day)",
"industryId": 35,
"industry": "Business Development",
"salaryMin": null,
"salaryMax": null,
"salaryCurrency": null,
"experienceMin": "5 Years",
"experienceMax": "5 Years",
"postedDate": "Oct 18, 2026",
"postedAt": "2026-10-18T02:36:49Z",
"applyBy": "2026-10-23T00:00:00Z",
"skills": [
"Whatsapp",
"time-and-attendance",
"environment-health-and-safety-hsse",
"ecology-environment",
"lift-and-shift",
"business-process-outsourcing-bpo",
"sales-performance"
],
"descriptionHtml": "Strive BPO is seeking experienced Medicare Sales Agents to join our dynamic team based in Rawalpindi. This is an excellent opportunity for sales professionals w...",
"description": "Strive BPO is seeking experienced Medicare Sales Agents to join our dynamic team based in Rawalpindi. This is an excellent opportunity for sales professionals w...",
"source": "BeBee",
"isExternal": true,
"url": "https://www.rozee.pk/hiring-now-%e2%80%93-experienced-medicare-sales-agents-strive-bpo-rawalpindi-jobs-1913961",
"searchQuery": "sales",
"scrapedAt": "2026-10-19T00:20:06.113Z",
"sourceUrl": "https://www.rozee.pk/job/jsearch/q/sales"
}
]

You can download the dataset in JSON, CSV, Excel, XML, HTML or RSS format from the Output tab, or read it through the Apify API.

How much does it cost to scrape Rozee.pk?

Rozee.pk Jobs Scraper is charged per result. You pay only for the jobs returned, and maxItems caps how many that can be, so a run never costs more than maxItems results. Jobs that the relevance filter drops are not charged. See the Pricing tab for the current price. You can also set a maximum cost per run in the run options: the Actor stops cleanly when it is reached and tells you so in the status message.

Use with AI agents (MCP)

Connect Rozee.pk Jobs Scraper to Claude, Cursor or any MCP client through the Apify MCP server:

{
"mcpServers": {
"apify": {
"url": "https://mcp.apify.com/?tools=axiomworks/rozee-jobs-scraper"
}
}
}

Example prompts:

  1. "Find 30 full-time sales jobs in Lahore on Rozee.pk and list the companies that are hiring, with the apply-by date."
  2. "Get 100 Python jobs from Rozee.pk and summarise which skills are asked for most often and what salaries are published."
  3. "Which banks in Pakistan are hiring people with 3 years of experience right now? Use Rozee.pk industry 3 and experience 721."

The input schema tells the agent which fields exist, so it can pick a city, industry or job type filter on its own.

Integrations and API

Run Rozee.pk Jobs Scraper from your own code with the Apify API. Set APIFY_TOKEN to your Apify API token (send it in the Authorization header, never in the URL).

Python

from apify_client import ApifyClient
client = ApifyClient("<YOUR_API_TOKEN>")
run = client.actor("axiomworks/rozee-jobs-scraper").call(run_input={"keyword": "sales", "city": "Lahore", "maxItems": 50})
for item in client.dataset(run["defaultDatasetId"]).iterate_items():
print(item["title"], item["company"], item["url"])

JavaScript

import { ApifyClient } from 'apify-client';
const client = new ApifyClient({ token: '<YOUR_API_TOKEN>' });
const run = await client.actor('axiomworks/rozee-jobs-scraper').call({ keyword: 'sales', city: 'Lahore', maxItems: 50 });
const { items } = await client.dataset(run.defaultDatasetId).listItems();

cURL

curl -X POST "https://api.apify.com/v2/acts/axiomworks~rozee-jobs-scraper/run-sync-get-dataset-items" \
-H "Authorization: Bearer $APIFY_TOKEN" \
-H "Content-Type: application/json" \
-d '{"keyword": "sales", "city": "Lahore", "maxItems": 50}'

On the Integrations tab you can connect runs to Make, Zapier, n8n, Google Sheets, Slack or your own webhooks, for example to append each day's new jobs to a spreadsheet.

FAQ

How many jobs can I get? Up to 10,000 per run. Rozee.pk lists around 10,000 open jobs in total; a keyword search usually matches a few dozen to a few thousand. Narrow searches with the city, industry, experience and job type filters.

Why did my run return 0 results? Either nothing on Rozee.pk matches the search, or the keyword isn't mentioned in any job (see the relevance filter above). The status message says which. Try a broader keyword, remove a filter, or check the same search on the Rozee.pk website. A misspelled city name fails the run with a message listing how to write it.

Why do some jobs have no salary? Most employers on Rozee.pk don't publish a salary. When a salary is published, salaryMin, salaryMax and salaryCurrency are filled.

What are external jobs? Rozee.pk also shows jobs it collects from other boards such as BeBee and Indeed. Those rows have isExternal: true and the original board in source. Some of them are for cities outside Pakistan with the same name (for example Hyderabad, India); the Actor copies the location as Rozee gives it.

Does it get the full job description? Yes. descriptionHtml is the full description with its formatting and description is the same text without HTML, not the short teaser shown in search results.

How fresh is the data? Every run reads Rozee.pk live, so you get the jobs listed at that moment. Schedule the Actor to keep a feed up to date.

What if Rozee.pk blocks the run? Rozee.pk uses Cloudflare, and when overall traffic spikes it shows a "Just a moment" check page to every visitor for a few minutes, whatever IP or browser they use. The Actor never tries to solve it. When it meets the check it waits a minute and sends one test request, repeating that (with the gap growing to 90 seconds) for up to 10 minutes while the status message says it is waiting. The Actor waits the same way, before its first result, when Rozee answers with timeouts, server errors or pages without listings, so a busy site delays a run rather than ending it empty. The check normally clears within minutes and the run carries on. If it is still there after 10 minutes, the run fails with a message saying so, and jobs already collected stay in the dataset; retry a little later. Residential proxies don't help here, because the check is site-wide, not tied to your IP.

This Actor collects only job listings that Rozee.pk shows publicly to every visitor, without logging in. Job descriptions sometimes name recruiters or contact people; if you store or use personal data, you are responsible for following the laws that apply to you, such as GDPR or Pakistan's data protection rules. This is not legal advice; ask a lawyer if you are unsure about your use case.

Rozee.pk Jobs Scraper is an independent tool. It is not affiliated with, endorsed by or sponsored by Rozee.pk.

ActorWhat it does
LinkedIn Jobs ScraperCollects job listings from LinkedIn
Google Jobs ScraperCollects job listings from Google Jobs
Reed.co.uk Jobs ScraperCollects job listings from Reed.co.uk
LinkedIn Employees ScraperFinds people working at a company, for outreach after you find who is hiring

Feedback

Found a bug or need a field that isn't here? Open an issue on the Issues tab and we'll look at it.