Target Jobs API + Report
Pricing
Pay per event
Target Jobs API + Report
Every open role at Target as structured JSON or CSV, at $1.50 per 1,000 jobs. No setup — press Start. Title, location, country, employment type, remote type, posted date and apply link, with change detection between runs and a white-label hiring report.
Pricing
Pay per event
Rating
0.0
(0)
Developer
Howth Technology Factory
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
4 hours ago
Last modified
Categories
Share
Every open role at Target, as clean structured data. No setup — press Start.
Unofficial. Not affiliated with, endorsed by, or sponsored by Target. Job data is read from Target's own public careers feed.
What it does
Reads Target's own public careers feed and returns one row per open role: title, location, country, employment type, remote type, the posted date and the apply link. It de-duplicates, flags likely reposts without deleting them, tells you what changed since your last run, and can produce a white-label hiring report in HTML and PDF.
Our platform-wide listings ask you for a careers URL or a board token — and for this platform, also a datacentre and a site name that cannot be derived from a company name. This listing asks for none of it. Target's board is already configured. Press Start.
Who it's for
- Recruiters and sourcers tracking Target for new openings.
- Market and talent researchers measuring where Target is hiring, by location and country.
- AI agents that need Target's live roles as structured JSON — see the MCP block below.
What a default run costs, and how to change it
Target had 2,000 roles open when this listing was built. At $0.0015 per role, returning all of them would bill you $3.00 — so a default run does not do that.
The default is the newest 100 roles, which costs about $0.15. Raise maxJobs when you want more, or set it to 0 for no cap at all. When a run is capped, the result says so rather than quietly handing you a short list.
Filtering costs less than not filtering: you are charged for what comes back, so a title or location filter in the input is cheaper than trimming afterwards.
Sample output
From a real run on 2026-08-02 — 100 roles in 47 seconds, no retries and no errors.
{"source": "workday","company": "Target","title": "Apprentice - Retail Ops","location": "Bangalore,India","country": "IN","workplaceType": null,"employmentType": "full-time","postedAt": "2026-08-02","isRemote": false,"description": null}
What this feed actually publishes
Measured on those same 100 roles. A field the platform does not publish is null — never guessed, never inferred from the job title.
| Field | Coverage | |
|---|---|---|
title, postedAt, applyUrl | 100 / 100 | always present |
location | 100 / 100 | |
country | 100 / 100 | |
employmentType | 66 / 100 | |
workplaceType | 0 / 100 | not set on this board |
department, team, seniority, salary | 0 / 100 | not published by this platform |
That run also flagged 3 repost groups — same role, same place, more than one posting. They are reported, never merged: a wrongly collapsed repost hides a real vacancy.
The rules this product is built on
- Job descriptions belong to the employer.
includeDescriptionis off by default. A job advert is Target's copyrighted text; the structured fields are not. - No personal data, ever. No recruiter names, no hiring-manager contacts, no emails, no phone numbers. There is nowhere in the schema to put one, and a test fails the build if a personal-data field appears.
- Unofficial, reading a public feed. No key, no login, no browser automation, no anti-bot circumvention. Unofficial. Not affiliated with, endorsed by, or sponsored by Target. Job data is read from Target's own public careers feed.
Monitoring
Set onlyNewSinceLastRun and schedule it. The first run stores a baseline and returns everything — nothing is reported as a change, because everything being new the first time is not news. After that you get only what appeared since, and the summary still tells you what was removed and what was edited. Add a webhookUrl for a JSON summary when anything moves.
FAQ
Do I need to configure anything? No. Press Start.
Why only 100 roles by default? Cost control — see above. One number raises it.
Why is salary empty? Because this platform's public feed does not carry it. Left null rather than guessed.
Why is department empty? Same reason.
Is a role listed here definitely still open? It is listed because Target published it and has not taken it down. Postings are returned as published, not as verified.
Can I get the full job description? Yes — set includeDescription: true. See rule 1 for why it is off by default.
Can I point this at a different employer? Yes — the board field stays editable, and any board on the same platform works. For arbitrary employers, use the platform-wide listing instead.
MCP — for AI agents
{ "mcpServers": { "jobs": { "url": "https://jobs-api.mcpize.run" } } }
search_jobs $0.01 · get_company_jobs $0.01 · monitor_jobs $0.02 · generate_report $0.10
Unofficial. Not affiliated with, endorsed by, or sponsored by Target. Job data is read from Target's own public careers feed. Job adverts are the property of the employers who published them.