Calls without X-API-Key need no key. Calls with it need a paid plan — get a key.
Get an API key
Free tier, no form to fill in. Signing in shares your email address with us — we
store it to create your key and to recognise you if you sign in with another
provider. See our Privacy Policy and
Terms.
openapi: 3.2.0
info:
title: JobsPipe Live API
version: 1.0.0
description: 'JobsPipe is a unified data API over public job and technographic sources. This document covers the live public endpoints: a job-postings search that returns normalized records matching a rich filter set, and an on-demand technology-stack scanner that detects the tools a given domain runs. Authenticate with an API key issued from the JobsPipe dashboard, sent as an HTTP bearer token. Permissions are granular and read-only: the jobs:read scope grants job search, the stack:read scope grants technology-stack scans, and no scope grants write access.
Reliability for agents: write requests accept an Idempotency-Key header so retries are safe; replays return the original response with Idempotent-Replayed: true. Responses carry RFC RateLimit headers (RateLimit-Limit, RateLimit-Remaining, RateLimit-Reset, RateLimit-Policy) describing the per-second limit, and a Retry-After header on 429 and 402. Note that the RateLimit headers describe the per-second limit only: on a 402 they may show remaining capacity while the monthly quota is exhausted, so use Retry-After, not RateLimit-Remaining, to decide when to retry a 402.
Versioning and deprecation policy: the API is versioned in the URL path (/v1). Breaking changes ship under a new version path; an endpoint is only deprecated with at least 6 months notice, signalled with Deprecation and Sunset response headers and announced in the changelog at https://jobspipe.dev/changelog.
Sandbox / test environment: a public sandbox lives under the base path /v1/sandbox (every route below it, no key required) and consumes no quota. It returns canned sample data shaped exactly like the live endpoints so agents can exercise the API safely, including a batch/bulk search and an asynchronous export that follows a 202 Accepted plus poll pattern: POST /v1/sandbox/jobs/export returns 202 with a Location header pointing at a status URL you poll with GET until the job is complete.
Error handling and retries: every error is a JSON object whose error field is a human-readable message (402 responses add message, upgrade_url and dashboard_url), never an HTML page; branch on the HTTP status, not the error text. Retry a 429 after the Retry-After header using exponential backoff; 502 and 504 are transient and safe to retry with backoff; pair any retry with an Idempotency-Key so it cannot duplicate work. Live service health is exposed at https://api.jobspipe.dev/healthz and https://api.jobspipe.dev/readiness.'
contact:
name: JobsPipe
url: https://jobspipe.dev
email: support@jobspipe.dev
servers:
- url: https://api.jobspipe.dev
security:
- apiKey: []
tags:
# --- truncated at 32 KB (44 KB total) ---
# Full source: https://artifacts.apis.io/jobspipe/openapi/jobspipe-live-api-openapi.yml