The Muse Jobs API
Free job search API with no key for basic use: listings from vetted employers with company profiles, experience level and location filters. Tested curl example.
Endpoint tested and returned HTTP 200 on 2026-08-19
What is the The Muse Jobs API?
The Muse API provides free access to job listings from vetted employers along with company profile data, filterable by category, experience level and location. Basic access requires no API key.
The Muse differs from raw job aggregators by curating employers and publishing company culture content alongside listings. That makes it useful when you want employer context, not just a job title and a link.
Its filtering is strong on the dimensions candidates actually care about — experience level, job category and location are all first-class parameters, with over 400,000 listings behind them.
Quick facts
- Base URL
https://www.themuse.com/api/public- Authentication
- Basic access works without a key. A free key raises the rate limit substantially.
- Rate limit
- About 500 requests per hour without a key; higher with a free API key.
- Pricing
- Free tier with optional free key for higher limits.
- CORS
- Enabled — callable directly from browser JavaScript
- Official docs
- Read the docs
How to use the The Muse Jobs API
Every request below was executed against the live API on 2026-08-19, and the response shown is the real body it returned — not an illustration.
1. Search job listings
GET https://www.themuse.com/api/public/jobs?page=1
curl 'https://www.themuse.com/api/public/jobs?page=1'const res = await fetch("https://www.themuse.com/api/public/jobs?page=1");
if (!res.ok) throw new Error(`Request failed: ${res.status}`);
const data = await res.json();
console.log(data);import requests
res = requests.get("https://www.themuse.com/api/public/jobs?page=1", timeout=20)
res.raise_for_status()
print(res.json()){
"page": 1,
"page_count": 20409,
"items_per_page": 20,
"took": 8,
"timed_out": false,
"total": 408174,
"results": [
{
"contents": "<p><strong>Safety-Kleen</strong> is looking for a <strong>Territory Sales Representative</strong>, internally known as an Account Manager, to join their safety conscious team! This role focuses on building business within their territories as well as developing and maintaining strong customer relationships. While working in conjunction with route drivers, the Outside Sales Representative provides product insight to our clientele regarding essential lines of business.</p>\n\n<p><strong>This position requires daily visits to our local branch location.</strong></p>\n\n<ul><li>Why work for Safety-Kleen?</li><li>Health and Safety is our #1 priority and we live it 3-6-5!</li><li>Competitive wages: $65,000 - $80,000 + bonus opportunities </li><li>Comprehensive health benefits coverage after 30 days of full-time employment</li><li>Group 401K with company matching component</li><li>Generous paid time off, company paid training and tuition reimbursement</li><li>Positive and safe work environments</li><li>Opportunities for growth and development for all the stages of your career</li></ul>\n\n<ul><li>Ensures Health and Safety is the number one priority by complying with all safe work practices, policies, and processes and acting in a safe manner at all times;</li><li>Work with route drivers to convert new sales opportunities;</li><li>Grow current customer base with new lines of business;</li><li>Prepare and deliver customer quotes;<Parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
page | integer | Required | Page number — required, starts at 0. 1 |
category | string | Optional | Job category, repeatable. Software Engineering |
level | string | Optional | Experience level. Entry Level |
location | string | Optional | City and state or country. London, United Kingdom |
company | string | Optional | Filter by company name. Spotify |
Response fields
page / page_countinteger- Current page and total pages available.
totalinteger- Total listings matching the query.
results[].namestring- Job title.
results[].companyobject- Hiring company with id and name.
results[].locationsarray- Locations the role is offered in.
results[].levelsarray- Experience levels with name and short name.
results[].contentsstring- Job description as HTML — sanitise before rendering.
What you can build with the The Muse Jobs API
- Build a job search with experience level and location filters
- Show company culture profiles alongside vacancies
- Target entry-level roles for a graduate careers site
- Aggregate listings from vetted employers only
Common errors and how to fix them
400 without page
The `page` parameter is required.
Fix: Always pass page, starting at 0 — omitting it is the most common error.
Descriptions contain HTML
The `contents` field is raw HTML.
Fix: Sanitise before rendering to avoid XSS.
429
Unauthenticated rate limit hit.
Fix: Register for a free API key to raise the limit.
The Muse Jobs API — frequently asked questions
Does The Muse API need an API key?
Not for basic access, but the unauthenticated rate limit is around 500 requests per hour. A free key raises it significantly.
Why do I get a 400 error?
The `page` parameter is mandatory on the jobs endpoint and starts at 0. Omitting it is the usual cause.
Can I filter by experience level?
Yes, the `level` parameter supports values such as Entry Level, Mid Level and Senior Level, which is unusually well structured for a job API.
Does it include company information?
Yes. Listings link to company profiles, and The Muse publishes culture and office content for employers it works with.
Tools that pair with this API
JSON Formatter
Format, beautify and minify JSON online with 2-space, 4-space or tab indentation. Sort keys alphabetically and catch syntax errors instantly — free and private.
HTML Formatter
Format HTML online with clean, consistent indentation. This HTML formatter handles void elements and preserves pre, script and style exactly. Free and private.
The Muse Jobs is an independent third-party service and is not affiliated with ByteTools or ByteVancer. Details on this page were verified on 2026-08-19; always check the official documentation before relying on this API in production, as terms and limits can change.