Discover/e-estekhdam API
live

e-estekhdam APIe-estekhdam.com

Access job postings from e-estekhdam.com via a single API endpoint. Search by Persian text query, filter by province, and paginate through results.

This API takes change requests — .
Endpoint health
verified 2h ago
list_jobs
1/1 passing latest checkself-healing
Endpoints
1
Updated
2h ago

What is the e-estekhdam API?

The e-estekhdam.com API provides access to Iran's employment platform through one endpoint, list_jobs, which returns up to 20 job postings per page. You can retrieve the latest listings without any parameters, or narrow results by Persian-language search query and province name. Each response includes a structured array of job objects alongside the current page number and result count for that page.

This call costs2 credits / call— charged only on success
Try it
Page number for pagination. Each page returns up to 20 jobs.
Search text to filter jobs by title, company name, or position (in Persian). Omitting returns all recent jobs.
Province name in Persian to filter jobs by location (e.g. تهران, اصفهان, خراسان رضوی). Omitting returns jobs from all provinces.
api.parse.bot/scraper/faf6eb0d-1ab6-4f6d-aa55-68de3068004d/<endpoint>
Ready to send
Fill in the parameters and hit sign in to send to see live response data here.
Call it over HTTPgrab a free API key at signup
curl -X GET 'https://api.parse.bot/scraper/faf6eb0d-1ab6-4f6d-aa55-68de3068004d/list_jobs?page=1&query=%D8%AD%D8%B3%D8%A7%D8%A8%D8%AF%D8%A7%D8%B1' \
  -H 'X-API-Key: $PARSE_API_KEY'
Python SDK · recommended

Typed, relational, agent-ready

A generated client with real types, enums, and the links between objects — the structure a flat JSON response can't carry. Autocompletes in your editor and reads cleanly to coding agents.

  • Fully typed · autocompletes
  • Objects link to objects
  • Typed errors & pagination

Typed Python client. Set up the SDK in your uv project, then pull this API’s typed client:

uv add parse-sdk
uv run parse init
uv run parse add --marketplace e-estekhdam-com-api

uv run parse add --marketplace pulls a pinned snapshot of this canonical API — it won’t change underneath you. To customize it, subscribe and swap to your own copy.

"""Walkthrough: E-Estekhdam Jobs API — search Iranian job postings."""
from parse_apis.e_estekhdam_com_api import EEstekhdam, InvalidInput

client = EEstekhdam()

# Browse recent jobs across all provinces, capped at 5 results.
for job in client.jobs.search(limit=5):
    print(job.title, "|", job.location, "|", job.brand_sector)

# Search for accountant positions in Tehran province.
try:
    job = client.jobs.search(query="حسابدار", province="تهران", limit=1).first()
except InvalidInput as e:
    print(f"Invalid search input: {e.message}")
    job = None

if job is not None:
    print(f"{job.title} — {job.brand_name or 'unnamed company'}")
    print(f"  Location: {job.location}")
    print(f"  Contract: {', '.join(job.contract)}")
    print(f"  Benefits: {', '.join(job.benefits) if job.benefits else 'none listed'}")
    print(f"  Salary: {job.salary or 'negotiable'}")

print("exercised: jobs.search (browse + filtered query)")
All endpoints · 1 totalmissing one? ·

Search and list job postings. Returns 20 jobs per page. Without a query, returns the latest jobs. Supports text search and province filtering. Results are ordered by relevance when a query is provided, or by recency otherwise.

Input
ParamTypeDescription
pageintegerPage number for pagination. Each page returns up to 20 jobs.
querystringSearch text to filter jobs by title, company name, or position (in Persian). Omitting returns all recent jobs.
provincestringProvince name in Persian to filter jobs by location (e.g. تهران, اصفهان, خراسان رضوی). Omitting returns jobs from all provinces.
Response
{
  "type": "object",
  "fields": {
    "jobs": "array of job objects",
    "page": "current page number",
    "count": "number of jobs returned on this page"
  },
  "sample": {
    "data": {
      "jobs": [
        {
          "id": 52379135,
          "url": "/kf7m2i-%D8%A7%D8%B3%D8%AA%D8%AE%D8%AF%D8%A7%D9%85-%D8%AD%D8%B3%D8%A7%D8%A8%D8%AF%D8%A7%D8%B1-%D8%AF%D8%B1-%D9%85%D8%AD%D8%AF%D9%88%D8%AF%D9%87-%D8%B1%D8%AD%D9%85%D8%AA%E2%80%8C%D8%A2%D8%A8%D8%A7%D8%AF",
          "uuid": "f7m2i",
          "title": "استخدام حسابدار در محدوده رحمت‌آباد فارس",
          "gender": 0,
          "is_new": false,
          "salary": null,
          "benefits": [
            "insurance",
            "supplementary_insurance",
            "reward"
          ],
          "contract": [
            "تمام وقت"
          ],
          "location": "شیراز، منطقه ۱، رحمت‌آباد",
          "positions": [
            "حسابدار"
          ],
          "provinces": [
            "فارس"
          ],
          "brand_logo": "",
          "brand_name": "",
          "short_title": "حسابدار",
          "brand_sector": "ساخت و ساز"
        }
      ],
      "page": 1,
      "count": 20
    },
    "status": "success"
  }
}

About the e-estekhdam API

What the API Returns

The list_jobs endpoint returns an array of job objects (jobs), a page integer indicating which page of results you are viewing, and a count integer showing how many jobs are included in the current response. Without any parameters, the endpoint returns the most recently posted jobs across all of Iran. Results are ordered by recency in that default mode and by relevance when a query is supplied.

Filtering and Pagination

Three optional input parameters control what list_jobs returns. The query parameter accepts Persian text and matches against job titles, company names, and positions. The province parameter accepts a Persian province name — for example تهران, اصفهان, or خراسان رضوی — to restrict results geographically. The page parameter increments through paginated results, with each page holding up to 20 jobs. Combine all three to narrow results to a specific role in a specific region.

Coverage Scope

e-estekhdam.com is one of the major Persian-language job boards in Iran. The API surfaces publicly listed job postings and reflects the current state of those listings at time of request. Province-level geographic filtering is supported; city-level filtering within a province is not exposed as a distinct parameter.

Reliability & maintenanceVerified

The e-estekhdam API is a managed, monitored endpoint for e-estekhdam.com — not a raw scraper you maintain. Every endpoint is automatically health-checked on a schedule, and when e-estekhdam.com changes and a check fails, the API is automatically queued for repair and re-verified. It is built to keep working as the site underneath it changes.

This isn't an official e-estekhdam.com API — it's an independent, maintained REST wrapper over public data. Where the source has no official API (or only a limited one), Parse gives you a stable contract over a source that never promised one, and keeps it current. Need a new endpoint or field? You can revise it yourself in plain English and the agent rebuilds it against the live site in minutes — contributing the change back to the shared API is free.

Last verified
2h ago
Latest check
1/1 endpoint passing
Maintenance
Monitored & self-healing
Will this API break when the source site changes?+
It's built not to. Every endpoint is health-checked on a schedule with automated test probes. When the source site changes and a check fails, the API is automatically queued for repair and re-verified — that's the self-healing layer. Each API page shows when its endpoints were last verified. And because marketplace APIs are shared, any fix reaches everyone using it.
Is this an official API from the source site?+
No — Parse APIs are independent, managed REST wrappers over publicly available data. That is the point: where a site has no official API (or only a limited one), Parse gives you a maintained, monitored endpoint for that data and keeps it working as the site changes — so you get a stable contract over a source that never promised one.
Can I fix or extend this API myself if I need a new endpoint or field?+
Yes — and you don't have to wait on us. This API was generated by the Parse agent, which stays attached. Describe the change in plain English ("add an endpoint that returns reviews", "fix the price field") in the revise box on the API page or via the revise_api MCP tool, and the agent rebuilds it against the live site in minutes. Contributing the change back to the public API is free.
What happens if I call an endpoint that has an issue?+
Errors are machine-readable: a bad call returns a clean status with the list of available endpoints and a repair hint, so an agent (or you) can recover or trigger a fix instead of failing silently. Confirmed failures feed the automatic repair queue.
Common use cases
  • Aggregate Iranian job listings by province for a regional employment dashboard
  • Monitor new postings in a specific field by polling list_jobs with a Persian job-title query
  • Build a job alert system that pages through results and surfaces listings added since last check
  • Analyze hiring demand across Persian-speaking markets by querying multiple role keywords
  • Populate a localized job board that re-surfaces e-estekhdam listings filtered by location
  • Track which companies are actively recruiting in a given province using the returned employer data
Pricing & limitsSee full pricing →
TierPriceCredits/monthRate limit
Free$0/mo2005 req/min
Hobby$30/mo1,00020 req/min
Developer$100/mo5,000100 req/min
Team$300/mo20,000300 req/min
Company$1,000/mo100,000500 req/min

Each endpoint has a fixed posted price per successful call — most fall between 1 and 10 credits — shown on this API's page before you run it. Exceeding the rate limit returns a 429 response. Authenticate with the X-API-Key header.

Frequently asked questions
Does e-estekhdam.com offer an official developer API?+
e-estekhdam.com does not publish an official public developer API or documented programmatic access layer for third-party developers.
How does province filtering work in list_jobs?+
Pass a Persian province name as the province parameter — for example تهران or اصفهان. The endpoint returns only jobs associated with that province. Omitting the parameter returns jobs from all provinces. Province names must be in Persian script to match correctly.
Does the API return individual job detail pages, such as full job descriptions or application URLs?+
Not currently. The list_jobs endpoint returns an array of job objects with the fields available in listing views. Full job descriptions and direct application links are not included in the current response shape. You can fork this API on Parse and revise it to add a job detail endpoint that fetches extended information for a specific listing.
Is city-level filtering supported within a province?+
Not currently. The province parameter supports filtering at the province level only; narrowing results to a specific city within that province is not available as a parameter. You can fork this API on Parse and revise it to add city-level filtering if the source exposes that granularity.
What is the maximum number of results I can retrieve per request?+
Each call to list_jobs returns up to 20 job objects. The count field in the response confirms how many were returned on that page. Use the page parameter to iterate through additional results beyond the first 20.
Page content last updated . Spec covers 1 endpoint from e-estekhdam.com.
Related APIs in JobsSee all →