{"uid":"cap_02paYoPL0QqzC08M9X_2L","slug":"match-key-e9e17ac9","name":"match-key","description":"Compute a deterministic similarity key for a name or address: the cheap first step of client-side blocking and deduplication. Records that share a key are duplicate candidates to confirm. Returns the key, the normalized form and the tokens. Indicators, not authoritative identity resolution.","url":"https://payai.agentstools.dev/match/key","method":"GET","headers":{},"bodySchema":{"type":"object","$schema":"https://json-schema.org/draft/2020-12/schema","required":["input"],"properties":{"input":{"type":"object","required":["type","method"],"properties":{"type":{"type":"string","const":"http"},"method":{"enum":["GET","HEAD","DELETE"],"type":"string"},"queryParams":{"type":"object","required":["value"],"properties":{"type":{"enum":["person","company","address","product","org"],"type":"string","description":"Entity type selecting the normalization pipeline (default company)"},"value":{"type":"string","description":"The string to key"}}}},"additionalProperties":false},"output":{"type":"object","required":["type"],"properties":{"type":{"type":"string"},"example":{"type":"object"}}}}},"responseSchema":null,"example":null,"exampleRequest":null,"tags":["x402"],"displayCostAmount":"0.005","displayCostAsset":"USDC","priceDynamic":false,"priceHint":null,"priceStatus":"priced","priceSource":"probe","requiresHandshake":false,"reviewCount":0,"rating":{"score":"0.00","successRate":"0.00","reviews":0,"stars":null,"state":"unrated"},"availabilityStatus":"unknown","priceObserved":null,"sessionDeposit":null,"pricing":{"kind":"static","summary":"$0.005/call","primary":{"kind":"static","protocol":"x402","network":"base","amountUsd":"0.005","per":"call","confidence":"exact"},"accepted":[{"kind":"static","protocol":"x402","network":"base","amountUsd":"0.005","per":"call","confidence":"exact"}]},"paymentMethods":[{"uid":"pm_UavF56lHjuG2FA7mzBQMl","protocol":"x402","methodType":"crypto","chain":"base","mode":"charge","costAmount":"0.005","costPer":"request","priority":0,"asset":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","unit":"request","depositMicros":null,"planRef":null}],"brandName":null,"brandSlug":null,"brandBaseUrl":null,"brandDocsUrl":null,"whatItDoes":"Computes a deterministic similarity key for a name or address string to enable cheap client-side record blocking and deduplication.","exampleAgentPrompt":"Compute a deterministic match key for the company name 'Acme Widgets International Ltd' so I can use it to find duplicate records in my database.","exampleUseCases":[{"title":"Deduplicating a CRM company list","prompt":"I have a CRM full of company records and I suspect there are duplicates with slightly different spellings — can you generate a similarity key for 'General Electric Co.' as a company so I can group it with potential duplicates?"},{"title":"Address blocking for data merge","prompt":"I'm merging two customer datasets and need to identify duplicate addresses before doing a full comparison — can you compute a match key for '123 Main Street, Suite 4B' as an address type?"},{"title":"Person name deduplication pipeline","prompt":"Before I run expensive fuzzy matching, I want a cheap blocking key for the person name 'Jonathan R. Smith' so I can bucket duplicate candidates — can you generate that match key?"}],"resultDescription":"Returns a deterministic similarity key string, a normalized form of the input, and a list of tokens derived from the input. These are indicators for duplicate candidacy, not authoritative identity resolution — records sharing the same key should be confirmed as duplicates through further comparison.","failureModes":["Missing required 'value' query parameter returns an error","Invalid entity type (not one of person/company/address/product/org) may default to 'company' or return a validation error","Empty string input may return an empty or trivial key","Non-GET HTTP method returns method-not-allowed","Payment failure (402) blocks the request if USDC payment is not supplied"],"whenToPreferThis":"Choose this endpoint when you need a fast, cheap, deterministic first-pass blocking step before expensive fuzzy matching or full entity resolution. It is ideal for client-side deduplication pipelines where you want to group candidate duplicate records by a shared key without incurring the cost of pairwise comparison across all records. Prefer it over full entity resolution APIs when you only need candidate grouping, not authoritative identity decisions.","instructions":null,"reviewSummary":null,"reviewSummaryHighlights":null,"reviewSummaryConcerns":null,"reviewSummaryGeneratedAt":null,"activationCount":0,"lastUsedAt":null,"lastSuccessfullyRanAt":null,"lastHealthCheckAt":"2026-09-15T13:01:26.202Z","isFirstParty":false}