{"id":124885,"recorded_at":"2026-10-26T14:40:25.397273Z","observed_at":"2026-10-26T14:40:25.397215Z","subject_kind":"source_record","subject":"x402_bazaar:https://x402-agent-tools.nerolabs.workers.dev/data/merge-dedupe","kind":"listing","method":"baseline/1","body":{"endpoints":[["x402","https://x402-agent-tools.nerolabs.workers.dev/data/merge-dedupe"]],"name":"Nero Labs Agent Tools","owner_address":"0xa969a3127dcc74b2989a4b4e45ae61b81093164a","raw":{"accepts":[{"amount":"2000","asset":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","extra":{"name":"USD Coin","version":"2"},"maxTimeoutSeconds":120,"network":"eip155:8453","payTo":"0xA969a3127DcC74B2989a4b4e45Ae61B81093164A","scheme":"exact"}],"description":"Merges two or more lists of JSON rows (for example leads from Google Maps, a CRM export and a spreadsheet) into one list and removes the duplicates between them by a key such as phone, email or website, ignoring spacing, case and http/www. Keeps the most complete row, fills its blanks from the duplicates and labels which lists each record was in. Up to 500 rows in all. $0.001 per row sent, $0.002 minimum.","extensions":{"bazaar":{"info":{"input":{"body":{"dedupKeys":["phone"],"lists":[{"name":"Google Maps","rows":[{"name":"Acme Plumbing","phone":"0117 496 0012","website":""}]},{"name":"CRM","rows":[{"name":"ACME PLUMBING","phone":"01174960012","website":"https://www.acme.co.uk/"}]}]},"bodyType":"json","method":"POST","type":"http"},"output":{"example":{"_example_note":"Real output, trimmed: long lists cut to their first items and long text shortened.","rows":[{"_duplicatesMerged":1,"_foundInSources":["Google Maps","CRM"],"_source":"CRM","name":"ACME PLUMBING","phone":"01174960012","website":"https://www.acme.co.uk/"}],"summary":{"blanksFilled":0,"duplicatesRemoved":1,"lists":2,"modeUsed":"normalized","rowsIn":2,"rowsOut":1},"warnings":[]},"type":"json"}},"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","properties":{"input":{"additionalProperties":false,"properties":{"body":{"additionalProperties":false,"properties":{"dedupKeys":{"description":"Fields that identify the same record, for example [\"phone\"] or [\"website\"]. Leave out to compare whole rows.","items":{"type":"string"},"type":"array"},"dedupMode":{"description":"normalized (default) ignores case, spaces, punctuation and http/www, so \"0117 496 0012\" matches \"01174960012\". fuzzy also catches near matches (100 rows at most). none only merges, no dedupe.","enum":["exact","normalized","fuzzy","none"],"type":"string"},"fillBlanksFromDuplicates":{"description":"Default true: copy values the kept row is missing from the duplicates it replaced.","type":"boolean"},"keepStrategy":{"description":"Which duplicate to keep: most_complete (default, the row with the most filled fields), first or last.","enum":["most_complete","first","last"],"type":"string"},"lists":{"description":"Two or more lists to merge, each {\"name\":\"Google Maps\",\"rows\":[{...},{...}]}. Every row is a JSON object. The name is returned on each row as the list it came from.","items":{"type":"object"},"type":"array"},"similarityThreshold":{"description":"fuzzy only, 0.5 to 1. Default 0.9.","type":"number"}},"required":["lists"],"type":"object"},"bodyType":{"enum":["json","form-data","text"],"type":"string"},"method":{"enum":["POST"],"type":"string"},"type":{"const":"http","type":"string"}},"required":["type","method","bodyType","body"],"type":"object"},"output":{"properties":{"example":{"properties":{"_example_note":{"type":"string"},"rows":{"items":{"properties":{"_duplicatesMerged":{"type":"number"},"_foundInSources":{"type":"array"},"_source":{"type":"string"},"name":{"type":"string"},"phone":{"type":"string"},"website":{"type":"string"}},"type":"object"},"type":"array"},"summary":{"properties":{"blanksFilled":{"type":"number"},"duplicatesRemoved":{"type":"number"},"lists":{"type":"number"},"modeUsed":{"type":"string"},"rowsIn":{"type":"number"},"rowsOut":{"type":"number"}},"type":"object"},"warnings":{"type":"array"}},"type":"object"},"type":{"type":"string"}},"required":["type"],"type":"object"}},"required":["input"],"type":"object"}}},"iconUrl":"https://res.cloudinary.com/bdb-prod/image/upload/c_fill,ar_1:1,w_256,h_256,f_auto,q_auto/v1792616069/bazaar-icons/0a5b056fde952fc0.png","lastUpdated":"2026-10-25T09:46:37.423Z","quality":{"l30DaysTotalCalls":5,"l30DaysUniquePayers":4,"lastCalledAt":"2026-10-25T09:46:36.793Z"},"resource":"https://x402-agent-tools.nerolabs.workers.dev/data/merge-dedupe","serviceName":"Nero Labs Agent Tools","tags":["data","merge","dedupe","leads","crm"],"type":"http","x402Version":2},"source":"x402_bazaar","summary":"Merges two or more lists of JSON rows (for example leads from Google Maps, a CRM export and a spreadsheet) into one list and removes the duplicates between them by a key such as phone, email or website, ignoring spacing, case and http/www. Keeps the most complete row, fills its blanks from the duplicates and labels which lists each record was in. Up to 500 rows in all. $0.001 per row sent, $0.002 minimum."},"body_sha256":"08ac381ea5c2ba909be4c726943d8a0484c81608c087fdfb7561d10133f27e5e","prev_id":null,"leaf":"0xcb4a4dd9adf9b384f0405b358923bcb2f6606d46ec2d56cce60c20821f290355","leaf_text":"{\"body\":\"08ac381ea5c2ba909be4c726943d8a0484c81608c087fdfb7561d10133f27e5e\",\"id\":124885,\"kind\":\"listing\",\"method\":\"baseline/1\",\"observed_us\":1793025625397215,\"prev\":null,\"subject\":\"x402_bazaar:https://x402-agent-tools.nerolabs.workers.dev/data/merge-dedupe\",\"subject_kind\":\"source_record\"}","day":null,"proof":[]}