Skip to main content

Bug fixes

Company name clobber on nameless upserts (issue #853) UpsertCompany operations that arrive without a company name fell back to using the domain as the name. That fallback exists for record creation — Attio requires a name — but the same value also shipped on the update path, where Attio’s PATCH replaces the attribute outright. A repeat RB2B visit whose payload lacked company_name, or any Cal.com booking whose host’s company already existed, silently rewrote a curated name like “Acme Corporation” to the bare domain (“acme.com”, or “gmail.com” for personal Cal.com hosts). The dispatcher now gates name behind merge_only_if_empty exactly like industry, employee_count, estimate_revenue, and linkedin_url:
  • RB2B visit upserts declare name in their merge list, so a populated Attio name survives repeat visits. An empty name still fills with the domain.
  • Cal.com host upserts pass merge_only_if_empty=["name"], making them true ensure-exists writes: the domain is attached, the name is never touched.
  • The domain-as-name fallback still applies when a nameless upsert creates a record, since Attio requires a name on create.
Last modified on October 1, 2026