Integrations · Programming languages

Load job postings data into pandas

Load job posts into a pandas DataFrame with flattened company fields, then save as Parquet for analysis or modeling.

Steps

You need: Python 3.9+, pip install requests pandas pyarrow and a jobdata API key.

  1. Set your API key and filters.
  2. json_normalize flattens nested objects, so the company name becomes company_name.
  3. Save to Parquet (or CSV) and analyze, chart or feed it into a model.
pandas · python
import requests

API_KEY = "YOUR_API_KEY"


def fetch_jobs(**params):
    """Yield every job for the given filters, following pagination."""
    url = "https://jobdataapi.com/api/jobs/"
    params = {"page_size": 1000, **params}
    headers = {"Authorization": f"Api-Key {API_KEY}"}
    while url:
        resp = requests.get(url, headers=headers, params=params, timeout=60)
        resp.raise_for_status()
        data = resp.json()
        yield from data["results"]
        url, params = data["next"], None  # "next" already carries the filters


import pandas as pd

jobs = list(fetch_jobs(max_age=30, country_code="US", title="data engineer"))
df = pd.json_normalize(jobs, sep="_")
df["published"] = pd.to_datetime(df["published"])
df.to_parquet("jobs.parquet", index=False)

print(df.groupby("company_name").size().sort_values(ascending=False).head(10))

Notes

  • Add description_md=true for Markdown descriptions, or turn descriptions off with description_off=true for smaller, faster responses.
  • Run it daily with max_age=1 to pick up new job posts; on access lite, drop max_age - the feed covers the past 90 days and upserting by id keeps it free of duplicates.

Related docs and tutorials

Using the jobdata API for Machine Learning with Cleaned Job Descriptions

Build a Markdown-based pipeline for exploratory job clustering and skill extraction while preserving meaningful technical terms.

Optimizing API Requests: A Guide to Efficient jobdata API Usage

A guide on how to make efficient requests using sessions and handle large data sets with pagination.

Jobs API Ingestion Guide: Reliable Historical Backfills and Incremental Syncs

A practical guide to high-volume historical backfills and incremental syncs using bounded windows, multi-pass pagination, ID deduplication, and reconciliation.

Ready to load real data?

All endpoints are public for limited testing - run the script without a key to see the structure, then add your key. Flat monthly plans with unlimited usage.

More integrations

All integrations »

Markdown version

Explore jobdata API with AI tools

Ask an AI assistant how to search and build with live job data.