Releases
Production release history. Each entry aggregates all customer-facing changes since the previous production release.
v1.9.4
Released: February 4, 2026 Previous production release: v1.4.1 (December 21, 2025)
Migration
The production endpoint has moved from api.wattdata.xyz to api.wattdata.ai. Authentication and tools are unchanged. Use versioned paths (/v1/mcp, /v1/mcp/m2m) for stability.
New
build_cluster_expression— Describe your target audience in natural language and get a structured targeting expression for use withfind_persons. No need to manually discover and combine cluster IDs.cluster_hash— Stable cluster identifiers that persist across data rebuilds. Supported inlist_clusters,get_cluster,find_persons, andsearch_clusters. Use these instead ofcluster_idfor durable saved queries.- API versioning —
/v1/mcpand/v1/mcp/m2mendpoints pin your integration to the v1 API surface. Unversioned routes remain available but may shift to newer versions over time. - Multi-identifier exports —
analyze_customersaccepts multipleemail_columns,phone_columns, andaddress_columns.find_personscan export multiple identifier types (email, phone, address, name, maid) per row in a single request. - Contact compliance metadata —
get_personcontact domains (email,phone,maid) now return objects with TCPA (do_not_call), CAN-SPAM (opted_in), and privacy (opted_out) fields alongside the contact value.
Breaking
analyze_customersrequiresworkflow_id— Obtain it from thegenerate_url_for_uploadresponse before callinganalyze_customers.generate_url_for_uploadparameter renamed — Acceptsfilenameinstead ofcsv_key.analyze_customersoutput usescluster_hash— Returnscluster_hashinstead ofcluster_id. Usecluster_hashin targeting expressions.- Contact domains return objects —
email,phone, andmaiddomains inget_personreturn objects with compliance metadata instead of string arrays. Update parsing code accordingly. - Cluster fields renamed —
cluster_name→name,cluster_domain→domain,cluster_value→valueinsearch_clustersandanalyze_customersresponses. - Address matching returns best match only —
resolve_identitiesreturns only the best-scoring person(s) per input address with a minimum quality threshold of 0.75. Maximum batch size is 1,000 addresses per request. - Removed domains —
engagementandgeographicdomains are no longer valid. Remove them from domain lists to avoid validation errors.
See Upgrading to v1 for detailed migration guidance on all breaking changes.
Improved
- Address resolution performance via H3-indexed lookups
- ICP synthesis reliability in
analyze_customers - Error messages now include specific validation details
- CSV handling with better error messages and more reliable schema detection
- General tool invocation reliability