Is it still there?
Live status of any product page, listing, or job posting, read from the page right now. $0.01 per URL, paid by your agent in USDC. No account, no API key.
npx agentcash@latest add https://livecheck.fly.dev
Search engines tell you what they saw. Livecheck tells you what the page says now.
Try Verify
Before you scrape a job posting, Shopify or HTML product page, or eBay item, POST the specific URL you already have and Livecheck returns live, closed, or unknown plus title and signals (apply form, in-stock, sold-out, 404); not a search engine. Price is $0.01 USDC on Base per request.
The 402 response includes a payment-required header (x402 v2, Stripe deposit address, USDC on Base).
{
"x402Version": 2,
"error": "PAYMENT-SIGNATURE header is required",
"resource": {
"url": "http://livecheck.fly.dev/v1/verify",
"description": "Before you scrape a job posting, Shopify or HTML product page, or eBay item, POST the specific URL you already have and Livecheck returns live, closed, or unknown plus title and signals (apply form, in-stock, sold-out, 404); not a search engine.",
"mimeType": "application/json"
},
"accepts": [
{
"scheme": "exact",
"network": "eip155:8453",
"amount": "10000",
"asset": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
"payTo": "0x33693228b706cb30f4b4dbf35f79129a763f91c5",
"maxTimeoutSeconds": 60,
"extra": {
"name": "USD Coin",
"version": "2"
}
}
],
"extensions": {
"bazaar": {
"info": {
"input": {
"type": "http",
"bodyType": "json",
"body": {
"url": "https://boards.greenhouse.io/example/jobs/1842"
},
"method": "POST"
},
"output": {
"type": "json",
"example": {
"url": "https://boards.greenhouse.io/example/jobs/1842",
"canonical_url": "https://boards.greenhouse.io/example/jobs/1842",
"status": "live",
"http_status": 200,
"checked_at": "2026-08-30T21:00:00Z",
"title": "Staff Backend Engineer — Northwind Labs",
"signals": [
"apply form present",
"no closure banner"
],
"confidence": 0.82,
"price_usd": 0.01
}
}
},
"schema": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"type": "object",
"properties": {
"input": {
"type": "object",
"additionalProperties": false,
"properties": {
"type": {
"type": "string",
"const": "http"
},
"method": {
"type": "string",
"enum": [
"POST"
]
},
"bodyType": {
"type": "string",
"enum": [
"json",
"form-data",
"text"
]
},
"body": {
"properties": {
"url": {
"type": "string",
"description": "Absolute http(s) URL of the specific job, product, or eBay item page to check. Not a search-results URL."
}
},
"required": [
"url"
]
}
},
"required": [
"type",
"method",
"bodyType",
"body"
]
},
"output": {
"type": "object",
"properties": {
"type": {
"type": "string"
},
"example": {
"type": "object",
"properties": {
"url": {
"type": "string"
},
"canonical_url": {
"type": "string"
},
"status": {
"type": "string",
"enum": [
"live",
"closed",
"unknown"
]
},
"http_status": {
"type": "number"
},
"checked_at": {
"type": "string"
},
"title": {
"type": "string"
},
"signals": {
"type": "array",
"items": {
"type": "string"
}
},
"confidence": {
"type": "number"
},
"price_usd": {
"type": "number"
},
"watch": {
"type": "object",
"description": "Present on paid 200 responses. Cross-sell hint to POST /v1/watch ($2.50, 30-day standard watcher). Default detector is status_change. Not included on unpaid 402.",
"properties": {
"suggest": {
"type": "string",
"enum": [
"/v1/watch"
]
},
"detector": {
"type": "string",
"enum": [
"status_change"
]
},
"price_usd": {
"type": "number"
}
},
"required": [
"suggest",
"detector",
"price_usd"
]
}
},
"required": [
"url",
"canonical_url",
"status",
"http_status",
"checked_at",
"signals",
"confidence",
"price_usd"
]
}
},
"required": [
"type"
]
}
},
"required": [
"input"
]
}
}
}
}
Example 402 (decoded)
Header value is base64. Decoded shape:
{
"x402Version": 2,
"error": "PAYMENT-SIGNATURE header is required",
"resource": {
"url": "http://livecheck.fly.dev/v1/verify",
"description": "Before you scrape a job posting, Shopify or HTML product page, or eBay item, POST the specific URL you already have and Livecheck returns live, closed, or unknown plus title and signals (apply form, in-stock, sold-out, 404); not a search engine.",
"mimeType": "application/json"
},
"accepts": [
{
"scheme": "exact",
"network": "eip155:8453",
"amount": "10000",
"asset": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
"payTo": "0x33693228b706cb30f4b4dbf35f79129a763f91c5",
"maxTimeoutSeconds": 60,
"extra": {
"name": "USD Coin",
"version": "2"
}
}
],
"extensions": {
"bazaar": {
"info": {
"input": {
"type": "http",
"bodyType": "json",
"body": {
"url": "https://boards.greenhouse.io/example/jobs/1842"
},
"method": "POST"
},
"output": {
"type": "json",
"example": {
"url": "https://boards.greenhouse.io/example/jobs/1842",
"canonical_url": "https://boards.greenhouse.io/example/jobs/1842",
"status": "live",
"http_status": 200,
"checked_at": "2026-08-30T21:00:00Z",
"title": "Staff Backend Engineer — Northwind Labs",
"signals": [
"apply form present",
"no closure banner"
],
"confidence": 0.82,
"price_usd": 0.01
}
}
},
"schema": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"type": "object",
"properties": {
"input": {
"type": "object",
"additionalProperties": false,
"properties": {
"type": {
"type": "string",
"const": "http"
},
"method": {
"type": "string",
"enum": [
"POST"
]
},
"bodyType": {
"type": "string",
"enum": [
"json",
"form-data",
"text"
]
},
"body": {
"properties": {
"url": {
"type": "string",
"description": "Absolute http(s) URL of the specific job, product, or eBay item page to check. Not a search-results URL."
}
},
"required": [
"url"
]
}
},
"required": [
"type",
"method",
"bodyType",
"body"
]
},
"output": {
"type": "object",
"properties": {
"type": {
"type": "string"
},
"example": {
"type": "object",
"properties": {
"url": {
"type": "string"
},
"canonical_url": {
"type": "string"
},
"status": {
"type": "string",
"enum": [
"live",
"closed",
"unknown"
]
},
"http_status": {
"type": "number"
},
"checked_at": {
"type": "string"
},
"title": {
"type": "string"
},
"signals": {
"type": "array",
"items": {
"type": "string"
}
},
"confidence": {
"type": "number"
},
"price_usd": {
"type": "number"
},
"watch": {
"type": "object",
"description": "Present on paid 200 responses. Cross-sell hint to POST /v1/watch ($2.50, 30-day standard watcher). Default detector is status_change. Not included on unpaid 402.",
"properties": {
"suggest": {
"type": "string",
"enum": [
"/v1/watch"
]
},
"detector": {
"type": "string",
"enum": [
"status_change"
]
},
"price_usd": {
"type": "number"
}
},
"required": [
"suggest",
"detector",
"price_usd"
]
}
},
"required": [
"url",
"canonical_url",
"status",
"http_status",
"checked_at",
"signals",
"confidence",
"price_usd"
]
}
},
"required": [
"type"
]
}
},
"required": [
"input"
]
}
}
}
}
Encoded header starts eyJ4NDAyVmVyc2lvbiI6MiwiZXJyb3IiOiJQQVlNRU5ULVNJ…
Example verify JSON
{
"url": "https://boards.greenhouse.io/northwind/jobs/1842",
"canonical_url": "https://boards.greenhouse.io/northwind/jobs/1842",
"status": "live",
"http_status": 200,
"checked_at": "2026-08-30T21:00:00Z",
"title": "Staff Backend Engineer — Northwind Labs",
"signals": [
"apply form present",
"no closure banner"
],
"confidence": 0.82,
"price_usd": 0.01
}
Local fixtures
Served by this process so you can exercise the classifier without the open web.
live-apply-now— 200 + Apply Now on a specific posting http://livecheck.fly.dev/fixtures/live-apply-nowclosed-to-new-applications— Greenhouse: this job is closed to new applications http://livecheck.fly.dev/fixtures/closed-to-new-applicationsclosed-to-new-applications-lever— Lever: this job is closed to new applications http://livecheck.fly.dev/fixtures/closed-to-new-applications-levergreenhouse-closed-job— Greenhouse job URL that redirects to the company board http://livecheck.fly.dev/fixtures/greenhouse-closed-jobgreenhouse-board— Greenhouse board (empty-state after redirect) http://livecheck.fly.dev/fixtures/greenhouse-boardcareers— Careers homepage / ATS board http://livecheck.fly.dev/fixtures/careersjobs/1842— Numeric job path with Apply Now http://livecheck.fly.dev/fixtures/jobs/1842jobs/9901— Numeric job path that 302s to the board http://livecheck.fly.dev/fixtures/jobs/9901gone-404— HTTP 404 job URL http://livecheck.fly.dev/fixtures/gone-404live-apply-recaptcha— Open job apply form that includes a recaptcha widget http://livecheck.fly.dev/fixtures/live-apply-recaptchacloudflare-challenge— Cloudflare interstitial challenge page http://livecheck.fly.dev/fixtures/cloudflare-challengeproducts/ridge-wallet— Shopify product page with Add to cart (recaptcha present) http://livecheck.fly.dev/fixtures/products/ridge-walletproducts/groove-ring— Shopify product page that is sold out http://livecheck.fly.dev/fixtures/products/groove-ringcollections/rings— Shopify collection page with template add-to-cart http://livecheck.fly.dev/fixtures/collections/ringsproducts/missing— HTTP 404 product URL http://livecheck.fly.dev/fixtures/products/missingproducts/ridge-wallet-locale— Shopify in-stock product whose locale JSON contains sold-out strings http://livecheck.fly.dev/fixtures/products/ridge-wallet-localeproducts/groove-ring-challenge-platform— In-stock product with only a Cloudflare bot-management script http://livecheck.fly.dev/fixtures/products/groove-ring-challenge-platformproducts/ridge-wallet-locale-class— In-stock product with locale sold_out JSON, sold-out CSS class, and schema InStock http://livecheck.fly.dev/fixtures/products/ridge-wallet-locale-classproducts/ridge-wallet-schema-oos— Product whose only sold-out signal is schema.org OutOfStock http://livecheck.fly.dev/fixtures/products/ridge-wallet-schema-ooscollections/all-apply— Collection page that accidentally includes Apply now http://livecheck.fly.dev/fixtures/collections/all-applyconfirm/thank-you-id— Thank-you page with confirmation number ABC123 http://livecheck.fly.dev/fixtures/confirm/thank-you-idconfirm/thank-you-only— Thank-you copy with no confirmation id http://livecheck.fly.dev/fixtures/confirm/thank-you-onlyconfirm/error-banner— Lead submit error / reject banner http://livecheck.fly.dev/fixtures/confirm/error-bannerconfirm/order-thank-you-id— Order thank-you page with order number ORD-18421 http://livecheck.fly.dev/fixtures/confirm/order-thank-you-idconfirm/order-thank-you-only— Order thank-you copy with no order id http://livecheck.fly.dev/fixtures/confirm/order-thank-you-onlyconfirm/order-payment-failed— Payment declined / checkout failed banner http://livecheck.fly.dev/fixtures/confirm/order-payment-failedconfirm/order-cancelled— Order cancelled banner http://livecheck.fly.dev/fixtures/confirm/order-cancelledconfirm/order-loginwall— Login wall on an order confirmation URL http://livecheck.fly.dev/fixtures/confirm/order-loginwallproducts/price-usd— Product page with $1,299.00 and viewer/timestamp noise http://livecheck.fly.dev/fixtures/products/price-usdproducts/price-eur— Product page with 1 299,00 euro price http://livecheck.fly.dev/fixtures/products/price-eurproducts/price-149— Product page with bare 149 price http://livecheck.fly.dev/fixtures/products/price-149products/price.json— JSON product payload with offers.price 149 http://livecheck.fly.dev/fixtures/products/price.jsonproducts/price-usd-changed— Same product with rewritten description (noise counters changed too) http://livecheck.fly.dev/fixtures/products/price-usd-changed
curl
curl -iv http://livecheck.fly.dev/v1/verify -H 'content-type: application/json' \
-d '{"url":"https://boards.greenhouse.io/example/jobs/1"}'
# Real funds: Stripe's purl client from the x402 docs
purl http://livecheck.fly.dev/v1/verify -H 'content-type: application/json' \
-d '{"url":"https://boards.greenhouse.io/example/jobs/1"}'
Confirm for operators
How do you know the agent actually did it?
A success toast and a calendar invite aren’t proof. Livecheck Confirm checks the real-world result — independently.
Live stats
Includes internal test traffic. Headline watchers, checks, and confirm windows are all wallets. traffic.external omits configured team wallets.
Source of truth: GET /stats?format=json
(https://livecheck.fly.dev/stats?format=json).
On Fly that document sums started machines' volumes, so the strip does not flip between live Sentinel counts and an empty volume.
Gil owns landing copy — this strip only fetches that JSON.
Loading /stats?format=json…