Turn Dice into a REST + MCP endpoint
Writ turns the Dice actions you already do in a browser into a callable REST endpoint your software (and your AI agents) can call.
curl -X POST https://api.usewrit.app/v1/dice/run \
-H "Authorization: Bearer wt_8f2c...a91" \
-H "Content-Type: application/json" \
-d '{ "input": { "query": "your search term" } }' No Dice API yet? Build one in minutes
Record the Dice task once (search a role, then open a posting) and call it as a REST endpoint and an MCP tool. No backend project, no waiting on Dice to ship an API.
- 1Record the Dice task once
Open the recorder and search a role on Dice in a real browser. Writ captures each step, including login and 2FA, into a reusable workflow.
- 2Publish it as an endpoint
One click turns the workflow into a callable REST endpoint at /v1/dice/run and a matching MCP tool. Inputs become a typed schema.
- 3Call it from anything
Call Dice from your code, a no-code tool, or an AI agent. Run it on your own machine for free, or on metered cloud.
Read the REST API docs, see what's possible on workflows, or search for another site. Free to start. See pricing.
Dice doesn't give you the endpoint you need
Dice has no general public API for the storefront actions most teams need. Dice has no general public API for its tech job search results.
Writ closes that gap. Record the Dice task once (or describe it to an AI session) and publish it as a REST endpoint at /v1/dice/run and a matching MCP tool. Writ runs on your own accounts, with your own credentials and data, on sites you are authorized to use.
What you can call on Dice
Each operation below is a real Dice action recorded into a workflow and exposed as a typed endpoint.
Returns structured fields such as job title, company, location, pay range: typed JSON, not raw page text.
A real Dice endpoint, authorized with a wt_ key
POST your inputs, get structured output. Authenticate every call with a scoped wt_ key.
curl -X POST https://api.usewrit.app/v1/dice/run \
-H "Authorization: Bearer wt_8f2c...a91" \
-H "Content-Type: application/json" \
-d '{ "input": { "query": "your search term" } }' import requests
r = requests.post(
"https://api.usewrit.app/v1/dice/run",
headers={"Authorization": "Bearer wt_8f2c...a91"},
json={"input": {"query": "your search term"}},
)
print(r.json()["output"]) {
"run_id": "run_dice_7b21",
"status": "succeeded",
"output": {
"job_title": "...",
"company": "...",
"location": "..."
}
} Also an MCP tool. The same workflow is exposed as an MCP tool your AI agent can call. See Dice MCP tools, or browse all MCP clients.
Login, 2FA, and dynamic pages on Dice
The reason Dice has no usable API is the same reason it's hard to automate. Writ handles it.
Dice job results are public; Writ renders the page to capture postings that load dynamically.
Three ways to build your Dice endpoint
Pick whichever fits the task. All three produce the same callable workflow.
Built on the same engine as the recorder and workflows.
Trigger your Dice endpoint on a change
Monitor Dice for new posting for a query, pay-range change and fire this endpoint the instant something changes.
Monitors check as fast as every 10s (10s on Enterprise). A detected change becomes an automation trigger that runs your workflow in seconds. Monitor Dice ▸
Free on your own machine, or on cloud
Local / BYO agent
No compute charge. The agent runs on your hardware, so it can reach Dice even from an intranet or VPN-only network, and your AI keys never leave your machine.
Writ cloud
Metered by running time at $0.12 per browser-hour, drawn from your plan’s included usage. No infrastructure to manage.
Other ways to work with Dice
Dice API questions
Does Dice have an API?
Is there a ready-made Dice API I can use?
Is it allowed to automate Dice this way?
Does this work with Dice login and 2FA?
Can I run it on my own machine?
Build a Dice API
Record it once, then call it from your software and your AI agents. Get started free.