Discover/OCC API
live

OCC APIocc.com.mx

Search OCC.com.mx job listings by keyword and location. Get paginated results with salaries, companies, and full job details including skills and benefits.

Endpoint health
verified 6d ago
search_jobs
get_job_details
2/2 passing latest checkself-healing
Endpoints
2
Updated
22d ago

What is the OCC API?

The OCC.com.mx API gives developers access to Mexico's largest job board through 2 endpoints. Use search_jobs to query listings by keyword and location, receiving paginated results with titles, salaries, companies, and posting dates. Use get_job_details to retrieve full listing data — including salary range, required skills, benefits, city, state, and job category — for any offer ID returned by a search.

Try it
Page number for pagination
Maximum number of results to return per page (max 22)
Job search keyword (e.g., 'desarrollador', 'contador', 'ingeniero')
Location filter as URL slug (e.g., 'ciudad-de-mexico', 'monterrey', 'guadalajara'). Leave empty for all locations.
api.parse.bot/scraper/bb43db95-21fc-4220-8ad2-36cabe249211/<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/bb43db95-21fc-4220-8ad2-36cabe249211/search_jobs?page=1&limit=22&keyword=desarrollador&location=ciudad-de-mexico' \
  -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 occ-com-mx-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: OCC México Job Search — search jobs and drill into details."""
from parse_apis.occ_méxico_job_search_api import OCC, JobNotFound

client = OCC()

# Search for developer jobs in Mexico City, capped at 5 results.
for job in client.jobsummaries.search(keyword="desarrollador", location="ciudad-de-mexico", limit=5):
    print(job.title, job.company, job.salary)

# Drill into the first result's full details.
first = client.jobsummaries.search(keyword="ingeniero", limit=1).first()
if first:
    detail = first.details()
    print(detail.title, detail.employment_type, detail.schedule)
    print(detail.salary.text, detail.salary.min, detail.salary.max)
    print(detail.category, detail.subcategory, detail.is_remote)

# Fetch a job directly by offer_id with typed error handling.
try:
    job = client.jobs.get(offer_id="21185314")
    print(job.title, job.company, job.location)
    print(job.posted_date, job.posted_date_relative)
except JobNotFound as exc:
    print(f"Job not found: {exc.offer_id}")

print("exercised: jobsummaries.search / JobSummary.details / jobs.get / JobNotFound")
All endpoints · 2 totalmissing one? ·

Search for job listings by keyword and optionally filter by location. Returns a paginated list of jobs with basic information including title, company, salary, location, and posted date. Each page contains up to 22 results. Paginates via integer page counter.

Input
ParamTypeDescription
pageintegerPage number for pagination
limitintegerMaximum number of results to return per page (max 22)
keywordrequiredstringJob search keyword (e.g., 'desarrollador', 'contador', 'ingeniero')
locationstringLocation filter as URL slug (e.g., 'ciudad-de-mexico', 'monterrey', 'guadalajara'). Leave empty for all locations.
Response
{
  "type": "object",
  "fields": {
    "jobs": "array of job objects with offer_id, title, salary, company, location, posted_date",
    "page": "integer - current page number",
    "total_pages": "integer - total pages available",
    "total_results": "integer - total matching jobs",
    "results_on_page": "integer - number of results on this page"
  },
  "sample": {
    "data": {
      "jobs": [
        {
          "title": "Desarrollador Sr. Odoo",
          "salary": "$ 28,000 Mensual",
          "company": "DISTRIBUIDORA DE BICICLETAS BENOTTO S.A. DE C.V.",
          "location": "Ciudad de México",
          "offer_id": "21185314",
          "posted_date": "Ayer"
        }
      ],
      "page": 1,
      "total_pages": 35,
      "total_results": 749,
      "results_on_page": 22
    },
    "status": "success"
  }
}

About the OCC API

Search Jobs

The search_jobs endpoint accepts a required keyword parameter (e.g., desarrollador, contador, ingeniero) and an optional location slug (e.g., ciudad-de-mexico, monterrey, guadalajara). Results are paginated at up to 22 listings per page. The response includes total_results, total_pages, and results_on_page for building pagination controls, plus a jobs array with per-listing fields: offer_id, title, salary, company, location, and posted_date. Omitting location returns results across all of Mexico.

Job Details

The get_job_details endpoint takes an offer_id from any search_jobs result and returns a detailed record. The salary object exposes min, max (both integers or null), and a human-readable text representation. Additional fields include skills (array of required skill strings), benefits (array of offered benefit strings), category, city, state, location, and the canonical url for the listing on OCC.com.mx.

Coverage and Scope

All listings are sourced from occ.com.mx, which focuses on the Mexican labor market. Location filtering uses URL slugs matching OCC's regional taxonomy, so values like guadalajara or monterrey should match the site's conventions. Salary fields may be null when a listing does not publish compensation data.

Reliability & maintenanceVerified

The OCC API is a managed, monitored endpoint for occ.com.mx — not a raw scraper you maintain. Every endpoint is automatically health-checked on a schedule, and when occ.com.mx 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 occ.com.mx 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
6d ago
Latest check
2/2 endpoints 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 Mexican job market data by keyword to analyze demand for specific roles such as ingeniero de software or contador
  • Build a salary intelligence tool by collecting salary.min and salary.max fields across categories and locations
  • Power a job alert service that polls search_jobs for new posted_date values matching user-defined keywords
  • Populate a curated job board focused on Mexico, pulling full descriptions and benefits from get_job_details
  • Analyze skill requirements across industries by extracting skills arrays from multiple job detail responses
  • Track hiring activity by city or state using the location filter and total_results counts over time
  • Build a recruiting pipeline tool that matches candidate profiles against required skills and benefits fields
Pricing & limitsSee full pricing →
TierPriceCredits/monthRate limit
Free$0/mo1005 req/min
Hobby$30/mo1,00020 req/min
Developer$100/mo5,000100 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.

Frequently asked questions
Does OCC.com.mx have an official developer API?+
OCC.com.mx does not publish a documented public developer API for accessing job listings programmatically. This Parse API provides structured access to the listing data available on the site.
What does `search_jobs` return and how do I filter by location?+
It returns a jobs array with up to 22 entries per page, each containing offer_id, title, salary, company, location, and posted_date, plus pagination metadata (total_results, total_pages, results_on_page). Pass a location slug such as ciudad-de-mexico or monterrey to the location parameter to filter geographically. Omitting it returns results nationwide.
What happens when a listing doesn't include salary information?+
The salary object returned by get_job_details includes min and max as integers or null. When a company does not publish compensation, both fields will be null and the text field will reflect whatever placeholder or omission the original listing shows.
Does the API support searching by company name or filtering by job category?+
Currently the search_jobs endpoint filters by keyword and location only. Category is returned as a field in get_job_details results but is not an input filter. You can fork this API on Parse and revise it to add category or company-name filtering as additional parameters.
Is applicant-facing data like application counts or employer contact details included?+
No. The API covers listing content: title, salary, skills, benefits, company name, category, and location. Application counts, recruiter contact details, and internal employer profile data are not exposed. You can fork this API on Parse and revise it to add an employer profile endpoint if those fields become available.
Page content last updated . Spec covers 2 endpoints from occ.com.mx.
Related APIs in JobsSee all →
offerzen.com API
Browse and retrieve tech job listings from OfferZen's developer marketplace. Access structured job data including required skills, company details, location, and workplace policy, with support for keyword filtering and pagination.
monster.com API
Search and retrieve job listings from Monster.com. Supports keyword and location-based search with structured results including job descriptions, salary ranges, company info, and employment details. Also provides access to popular job categories.
seek.com.au API
Search for job listings on SEEK Australia and retrieve detailed information about positions. Browse jobs across any keyword, title, and location, and access full job descriptions, classifications, salary info, and employment details.
totaljobs.com API
Search and browse job listings from across the UK on TotalJobs, then access detailed information about specific positions including requirements, salary, and application details. Quickly compare opportunities and find roles that match your criteria.
cv.lv API
Search for job listings on CV.lv and access detailed job descriptions, categories, locations, and information about top employers. Find the right opportunity by browsing available positions across different industries and regions.
emploi.ma API
Search and browse job listings from Emploi.ma with detailed information about positions, companies, and available categories across the Moroccan job market. Access company profiles, featured job opportunities, and full job details including requirements, salary, and employment type.
clasificadosonline.com API
Search and retrieve listings from ClasificadosOnline.com — Puerto Rico's classifieds platform. Browse cars, rental properties, and jobs with flexible filters for location, price, make/model, and more.
amazon.jobs API
Search and browse Amazon job openings by keywords, location, and category, then view detailed information about specific positions. Filter results across multiple job categories and locations with easy pagination.