{"id":33465,"recorded_at":"2026-10-26T14:36:08.842570Z","observed_at":"2026-10-26T14:36:08.842214Z","subject_kind":"source_record","subject":"x402_bazaar:https://app.difficat.com/api/v1/jobs","kind":"listing","method":"sync.x402_bazaar/1","body":{"endpoints":[["x402","https://app.difficat.com/api/v1/jobs"]],"name":"DiffiCat","owner_address":"0x91805ccdcb0af529ffa510efc494786f19d4c257","raw":{"accepts":[{"amount":"100000","asset":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","extra":{"assetTransferMethod":"eip3009","name":"USD Coin","version":"2"},"maxTimeoutSeconds":300,"network":"eip155:8453","payTo":"0x91805ccDcB0aF529FFa510Efc494786f19d4c257","scheme":"exact"}],"description":"Starts a website migration comparison: checks page existence, content and visual regression between a source site and its migrated copy, then produces a report with screenshots. Use it to verify a migration or redesign before go-live. Priced on the pages it compares (the urls list, or the pages discovery finds, at most the optional maxPages ceiling), no page limit: 0.02 USD per page for the first 1000, 0.01 USD beyond, charged upfront.","extensions":{"bazaar":{"info":{"input":{"body":{"sourceUrl":"https://difficat.com","targetUrl":"https://www.difficat.com"},"bodyType":"json","method":"POST","type":"http"},"output":{"example":{"jobId":"web-1a2b3c","jobToken":"shown-once","links":{"cancel":"/api/v1/jobs/web-1a2b3c/cancel","report":"/api/v1/jobs/web-1a2b3c/report","self":"/api/v1/jobs/web-1a2b3c"},"pagesCharged":5,"payment":{"amount":"0.10","currency":"USD"},"status":"running"},"type":"json"}},"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","properties":{"input":{"additionalProperties":false,"properties":{"body":{"anyOf":[{"required":["sourceUrl"]},{"required":["urls"]}],"properties":{"callbackUrl":{"description":"Optional https URL (port 443) that receives one JSON POST when the job ends (jobId, status, summary, links; never the jobToken), a nudge to read the job. Public hosts only, no redirects followed, retried twice; delivery never affects the job.","format":"uri","maxLength":2048,"type":"string"},"checkMode":{"description":"What each page is checked on: full (existence, content and visual, the default), text-only (existence and content, no screenshots) or existence-only (only that every page exists and answers, as for a site translated into another language; content and visual are reported as skipped with reason not-requested).","enum":["full","text-only","existence-only"],"type":"string"},"dryRun":{"description":"Quote only: runs every check and the pricing, then answers the page count and exact amount. Nothing is charged, the free allowance is not used and no job starts; the same body without dryRun is priced from the retained result.","type":"boolean"},"maxPages":{"description":"Optional ceiling on the pages compared and charged for. The job is priced on the pages it compares: the urls list, or the pages discovery finds, at most this many. There is no page limit. maxPages: 1 without sitemapUrl compares exactly the given sourceUrl and targetUrl, with no discovery.","minimum":1,"type":"integer"},"maxPriceUsd":{"description":"Optional spend cap in USD. A job priced above it is refused before any challenge, so an auto-paying client is never asked for more.","exclusiveMinimum":0,"type":"number"},"sitemapUrl":{"format":"uri","maxLength":2048,"type":"string"},"sourceAuth":{"properties":{"password":{"description":"Password for HTTP basic auth.","type":"string"},"username":{"description":"Username for HTTP basic auth.","type":"string"}},"required":["username","password"],"type":"object"},"sourceUrl":{"description":"Site A, the reference site (full URL). Required unless urls is given.","format":"uri","maxLength":2048,"type":"string"},"targetAuth":{"properties":{"password":{"description":"Password for HTTP basic auth.","type":"string"},"username":{"description":"Username for HTTP basic auth.","type":"string"}},"required":["username","password"],"type":"object"},"targetUrl":{"format":"uri","maxLength":2048,"type":"string"},"threshold":{"description":"Visual diff tolerance as a fraction from 0 (exact) to 1: 0.05 means 5%. The web app takes a percentage; the API does not.","maximum":1,"minimum":0,"type":"number"},"urls":{"description":"Explicit page pairs to compare (at most 50000); skips discovery and is priced per pair. One pair is a single-page comparison and needs no sourceUrl.","items":{"properties":{"source":{"description":"Page URL on Site A.","format":"uri","maxLength":2048,"type":"string"},"target":{"description":"The same page's URL on Site B.","format":"uri","maxLength":2048,"type":"string"}},"required":["source","target"],"type":"object"},"maxItems":50000,"minItems":1,"type":"array"},"viewportWidth":{"maximum":2560,"minimum":320,"type":"integer"}},"type":"object"},"bodyType":{"enum":["json"],"type":"string"},"method":{"enum":["POST"],"type":"string"},"type":{"const":"http","type":"string"}},"required":["type","method","bodyType","body"],"type":"object"},"output":{"properties":{"example":{"type":"object"},"type":{"type":"string"}},"required":["type"],"type":"object"}},"required":["input"],"type":"object"}},"mppx":{"info":{"_mppx_scope":"difficat:job:0.10","method":"POST","opaque":"eyJfbXBweF9zY29wZSI6ImRpZmZpY2F0OmpvYjowLjEwIiwiYW1vdW50IjoiMC4xMCIsImtpbmQiOiJqb2IifQ"},"schema":{"additionalProperties":false,"properties":{"_mppx_scope":{"type":"string"},"digest":{"type":"string"},"method":{"type":"string"},"nonce":{"type":"string"},"opaque":{"type":"string"}},"required":["method"],"type":"object"}}},"lastUpdated":"2026-10-14T20:30:58.238Z","quality":{"l30DaysTotalCalls":2,"l30DaysUniquePayers":1,"lastCalledAt":"2026-10-14T20:30:57.256Z"},"resource":"https://app.difficat.com/api/v1/jobs","serviceName":"DiffiCat","tags":["migration","visual-regression","testing"],"type":"http","x402Version":2},"source":"x402_bazaar","summary":"Starts a website migration comparison: checks page existence, content and visual regression between a source site and its migrated copy, then produces a report with screenshots. Use it to verify a migration or redesign before go-live. Priced on the pages it compares (the urls list, or the pages discovery finds, at most the optional maxPages ceiling), no page limit: 0.02 USD per page for the first 1000, 0.01 USD beyond, charged upfront."},"body_sha256":"9ee0c2bc497db8d58ab8830e8cccbc468dcee04ddc653db93e5045342c3637a7","prev_id":null,"leaf":"0x8140faba8213fa74e5689830a49729e4b052bbe1e7db551c136ae7c64469914b","leaf_text":"{\"body\":\"9ee0c2bc497db8d58ab8830e8cccbc468dcee04ddc653db93e5045342c3637a7\",\"id\":33465,\"kind\":\"listing\",\"method\":\"sync.x402_bazaar/1\",\"observed_us\":1793025368842214,\"prev\":null,\"subject\":\"x402_bazaar:https://app.difficat.com/api/v1/jobs\",\"subject_kind\":\"source_record\"}","day":{"day":"2026-10-26","leaves":296695,"root":"0xf43e8dcc3d451a4788b26be904c55e8c4c0fa75c9666796c51db38d37e2c0df8","chained":"0x702d5ac508f08b0d1accf36af25822d8e5660367494edd17a642fb61e158a57a","anchor_chain":"eip155:5042002","anchor_tx":"0x495162f8936e19f0039918feebe6c307f327cd6bf8c37219620b1970041fa9ae","anchor_block":69251483},"proof":["0x8140e87470d98650102cd405354b13ce3ae903c3c0c2b325c58cc53f0be767e1","0x8a8415bd0ad36b23bd22749d038cd28b52b0bda72709a45e0c3a47b9955040f8","0x4f24013db6f54fb5003680f09d0ee728a9093815f5fad9330b58a0d76dbfbe4c","0x1ed7f213d2c04ed025caeb27ceebc4bdcafdcdc002f8518b8aa4fa31dc974234","0x540cd5828e885d421421ff3eab108dc08f899765ad445713765fb470094b7008","0xa9289feb28a328be5a728f1c7fdf72fb4891638694bbab519d08fb7936a0f230","0x15e0bab7d3f6956424cd4f8127c9d72dce3d65c9559c5b5d69e2575a4ef0a93b","0x3967bd02f73361cd183d78e41217ca5641bee7020bd10d9082d8a3004797c970","0x947bf51fe747d6f31e2541b7a83a5299be25717c13b588d8ef64a531b5470529","0xa6bf3e233d964bf47c35e307fb1e82a9db46b720ed0d1a887fab65896dbfda9a","0xb998e012b473bde18346485cd0b7b8b31ab48d5f22ba9bc660bb2e523161e255","0x08155d70132f82e370214fc5b72194dfa6f5e57670b7bcf74776e8418302897e","0x4d2ee986a690e903126f449b4e9e62d5572b350357ab4496a83488949b131c29","0x0eff463856b0992d53ab7d8c0b97c71541413358bdd445710c1e4b6aeb4d8f78","0x7eb603d37f0f22dae1ea013e391889906ffc0139ff26e25b044bee38eec8f9b2","0x2b6e23e3624a1b66e1d2298cfbce99a93ce6b13d24a58112a71802d79c5f7a76","0xd21942ae3214eff88e08ab04884fd4b11958b51af9a0741b7668e2d07a2c56c9","0x9a9024edb5069d88a324facb310a5ce8e495214bbaa968f077bede437390194f","0x9b9ce5b74b9bab5121612ef6b64920a8d453cbf311096a423eef9702747e868a"]}