See what a company is hiring for
Read every open posting at one company and group it by role family, city and level, so a hiring plan shows up as numbers you can compare month to month.
Who does this
The job this saves, and who it is for.
An investor preparing for a meeting, a competitor watching a rival, or a seller looking for a way in. A company's open roles say where it is putting money before any press release does.
What comes back
The counts from the last replay. Your agent reads the records behind them on your key.
Notion's 123 open postings, by role family
Open postings
Families come from keywords in the title, first match wins, in the order listed in title-families.json. Each posting is counted once.
Where the roles are
Open postings
The city on the posting. A remote posting counts where it is listed.
At what level
Open postings
The seniority the posting states.
What your agent reads
The record fields the prompt asks for. This page shows field names and counts, never a record.
titlelocation.citylocation.countryseniorityposted_date
Then
Where the task goes after the list.
Run it again next month
The same prompt a month later shows which families grew. Keep each month's files; the difference is the signal.
Compare two companies
Run it for a rival too. Two companies of similar size hiring very different mixes is worth a question in the meeting.
Read the postings that matter
Ask the agent to summarize the descriptions in the family you care about, for example which tools the data roles ask for.
Run it
Three ways in. Each says what it costs before you start.
1 API Credit buys 25 search results or 5 full records; $1 buys 30 API Credits.
Run it in your agent
28 to 35 API Credits$0.93 to $1.17Fits in the 100 free API Credits
Your agent stops and asks before spending more than 50 API Credits.
Your agent follows the prompt step by step: it reads the rules, runs the counts, checks the definitions the prompt asks it to check, and writes the files and charts. Use an agent that can write files, such as Claude Code or Codex.
Set up onceKey, connection, and a free check. Skip this if your agent already reaches the Platform.
1Get a key
Create a key on the Metix AI Platform →New accounts get 100 API Credits once, valid for 30 days. Set the key in the shell you start your agent from, or add the line to ~/.zshrc or ~/.bashrc so every new terminal has it:
Shellexport METIX_KEY=metix_xxxxxxxx
2Connect your agent
Claude Code
Registers the Platform for every project. Start claude in any folder and the ten metix tools are there.
MCP setup guide →Shell: "${METIX_KEY:?run step 1 first}" && claude mcp add --scope user --transport http metix \ https://mira-api.metix.ai/mcp \ --header "Authorization: Bearer $METIX_KEY"Codex
Registers the same server. The key stays in your environment instead of the config file.
MCP setup guide →Shellcodex mcp add metix \ --url https://mira-api.metix.ai/mcp \ --bearer-token-env-var METIX_KEY
Skills
Four skills that teach any agent the Platform's endpoints and query rules, for agents without MCP. The installer starts with none ticked: press space on each, then enter.
Skills install guide →Shellnpx skills add MetixAI-Official/metix-skills
Other MCP
Point the client at this endpoint over streamable HTTP with both headers; without the Accept header the server answers 406. Older clients use /sse on the same host.
MCP setup guide →Endpoint and headershttps://mira-api.metix.ai/mcp Authorization: Bearer <your key> Accept: application/json, text/event-stream
3Check the setup
Ask this first. It reads your balance and the field list, runs no search, and costs nothing:
Prompt for your agentUse the Metix AI Platform to check my key status and read the contract; both are free. Then tell me my API Credit balance and which datasets I can query. Do not run any search.
4Paste the prompt
Start your agent in an empty folder, then paste. It writes its files there.
The question
Tell me what Notion is hiring for, using the Metix AI Platform. Work only through the public Platform (REST at https://mira-api.metix.ai, the MCP server, or the metix-skills) with the key in METIX_KEY, and never print the key.
01Read before querying
Call GET /contract (free) and read the job fields company.name, is_open, title, location.city and seniority. Check the balance with GET /auth/key/status (free) at the start and at the end, and stop and ask before the run passes 50 API Credits.
02Population
Job postings with company.name eq "Notion" and is_open eq true, in one all node.
03Count first
Send the filter with size 1 and tell me the total and what reading them all will cost (1 API Credit per 5 postings read, plus about 1 per 25 ids searched). If that is over the ceiling, ask me before reading.
04Budget
Collect the ids with size 100 pages, then read the postings in batches of 100 with only title, location.city, location.country and seniority.
05Audit
Check that every posting really belongs to this company and not to a namesake. List any that look wrong and leave them out.
06Clean
Keep reposts as separate postings and say how many titles appear more than once.
07Group
Put each title into one family by keywords, first match wins, in this order: data and AI, engineering, product and design, sales and partnerships, marketing, customer and education, finance, legal and people. Show me the keyword lists and the titles that fell into no family, and fix the lists until none are left over.
08Outputs
Three tables with counts: by family, by city, and by seniority, with the snapshot date. Keep the records to our conversation.
09Chart
One horizontal bar chart of the families, largest first, with the count on each bar. Title it with what stands out.
10Limits
Say that this is one day of open postings, that some roles are never posted and some postings outlive the hire, and that keyword families are coarse.
What you get
The aggregate files and the chart, a note on what the audits found and what they changed, and the API Credits the run spent, read from the balance before and after.
A call that returns 402 insufficient_quota means the key works and the balance is empty.
Reproduce the numbers
31 API Credits$1.03Fits in the 100 free API Credits
A short standard-library Python script sends the committed queries, reads the 123 records the method needs, and writes the aggregate files this page is built from. It needs Python and METIX_KEY set in the shell (step 1 of the agent path); your agent can run these lines for you as well.
curl -fsSL https://platform.metix.ai/casebook/source/track-company-hiring.tar.gz | tar xz
cd track-company-hiring
: "${METIX_KEY:?set METIX_KEY first}" && python3 cases/track-company-hiring/fetch.pyWhat you get
data/*.json and data/receipt.json. Run git diff cases/track-company-hiring/data to see what moved: the numbers should match, apart from what changed in the data since the snapshot.
Adapt it
Costs what your version reads. Write your own ceiling into step 1 of the prompt.
The prompt is the case. Change the parts in this table and your agent answers your question instead, with the same checks and the same way of reporting cost.
| To change | Edit | For example |
|---|---|---|
| The company | Step 2 | "Figma", "Databricks" (check the total first) |
| The families | Step 7 | Split engineering into platform, product and security |
| Recent roles only | Step 2 | Add posted_date gte now-30d |
What to ask before running it
- Which company, spelled as it appears on its postings?
- All open roles, or only those posted recently?
- Which families matter for your question?
Tell me what Notion is hiring for, using the Metix AI Platform. Work only through the public Platform (REST at https://mira-api.metix.ai, the MCP server, or the metix-skills) with the key in METIX_KEY, and never print the key. 1. Read before querying. Call GET /contract (free) and read the job fields company.name, is_open, title, location.city and seniority. Check the balance with GET /auth/key/status (free) at the start and at the end, and stop and ask before the run passes 50 API Credits. 2. Population. Job postings with company.name eq "Notion" and is_open eq true, in one all node. 3. Count first. Send the filter with size 1 and tell me the total and what reading them all will cost (1 API Credit per 5 postings read, plus about 1 per 25 ids searched). If that is over the ceiling, ask me before reading. 4. Budget. Collect the ids with size 100 pages, then read the postings in batches of 100 with only title, location.city, location.country and seniority. 5. Audit. Check that every posting really belongs to this company and not to a namesake. List any that look wrong and leave them out. 6. Clean. Keep reposts as separate postings and say how many titles appear more than once. 7. Group. Put each title into one family by keywords, first match wins, in this order: data and AI, engineering, product and design, sales and partnerships, marketing, customer and education, finance, legal and people. Show me the keyword lists and the titles that fell into no family, and fix the lists until none are left over. 8. Outputs. Three tables with counts: by family, by city, and by seniority, with the snapshot date. Keep the records to our conversation. 9. Chart. One horizontal bar chart of the families, largest first, with the count on each bar. Title it with what stands out. 10. Limits. Say that this is one day of open postings, that some roles are never posted and some postings outlive the hire, and that keyword families are coarse.
Questions
What people ask before running it.
Is this the company's headcount plan?
It is the open postings visible through the Metix AI Platform on one day. Some roles are never posted, and some postings stay up after they are filled.
Why read records instead of counting?
Role families come from the title text, which no filter groups for you. Reading 123 postings costs about 25 API Credits.
Can I track a bigger company?
Yes, at 1 API Credit per 5 postings read. A company with 600 open postings costs about 125. The prompt stops and asks before its ceiling.
Method and limits
Who is counted, how, and what the counts miss.
- Population
- Open postings with company.name "Notion" visible through the Metix AI Platform on September 30, 2026.
- Grouping
- Titles are matched against keyword lists in title-families.json in order, and each posting goes to its first match. Reposts are not collapsed.
- Limits
- One day, not a trend. Keyword families are coarse; a "Solutions Engineer" counts as engineering here, not sales.
The last reproduction
What reproducing this case cost the last time the script ran, read from the Platform's own balance before and after.
- Ran on
- 2026-09-30
- Calls
- 6
- Search results
- 124
- Records read
- 123
- API Credits
- 31
Search results are IDs returned by searches, one per count query and one per match on a full search. Records are postings or profiles read in full: 123 here.
Making this case cost about 57 API Credits more: the agent's audits, trial queries, and earlier runs that the published replay replaced. You do not pay that again.