hi <@U04S8PLJWMT>, i'm setting up a snowflake to h...
# replication-ask-ai
j
hi @kapa.ai, i'm setting up a snowflake to hubspot connection using hubspot connector v0.0.10, and despite the connection from airbyte to hubspot being successful and having defined several different write scopes as optional, including crm.objects.companies.write, airbyte isn't showing COMPANIES as a possible destination object. I can only select CONSTACTS, eventsair_events, eventsair_registrations, proactive_care and PRODUCT what could i be missing?
k
New message text here
j
thanks @kapa.ai, adding a property with unique values worked for having the COMPANY object being displayed on airbyte one other question, while defining this connection with hubspot as the destination airbyte is forcing an incremental sync to be an upsert, and this new property with unique values (hubspot's matching key) to be included in the mapping • can the sync be incremental with just updates, not upserts? i don't want to add any new data, only edit what's already there • can we not map to the matching key? in short what i want is: • match via a property that may have repeated values on hubspot • leave that matching property alone, never touch nay of its data, use it only for join purposes to snowflake • update the mapped properties for every record with a matching value under that matching key property, never adding or removing any records is this possible?
k
The knowledge sources don’t fully cover all the behaviors you’re asking about, so I can’t guarantee a complete answer. I’ll stick to what is documented and infer only where it’s clearly implied. From the HubSpot destination docs: • Supported destination objects include Companies, Contacts, Deals, Products, Custom Objects. [HubSpot destination] • For all objects except Contacts, the connector’s upsert method “requires a unique value field to be present on the destination object.” [HubSpot limits] • That unique value property is the matching key used for upsert. [HubSpot limits] Given that: 1. Incremental “updates only” (no inserts)? The docs only describe the HubSpot destination behavior as upsert on a unique field (or email for Contacts). [HubSpot destination] There is no mention of a mode that would: • Only update existing HubSpot records, and • Never create new ones if the matching key doesn’t exist. So based on the available docs, there is no documented “updates-only” mode for the HubSpot destination; it is described as upsert-only. 2. Can you avoid mapping the matching key? The docs explicitly say that, except for Contacts, the upsert method “requires a unique value field to be present on the destination object.” [HubSpot limits] In practice this means: • You must have that unique property on the HubSpot object. • Airbyte uses that property as the matching key for upsert. The knowledge sources do not describe any way to: • Use a non-unique property as the match key, or • Use a property purely for matching without mapping it, or • Perform updates based on a non-unique field and ignore the unique key. So, for your desired behavior: > • Match via a property that may have repeated values > • Never touch that property’s data > • Update mapped properties for every record with that value, without adding/removing records There is no documentation indicating that this is possible with the HubSpot destination connector as currently described. The documented model is: upsert on a unique matching key, which must be present and unique on the HubSpot object. [HubSpot destination; HubSpot limits] If you absolutely must avoid inserts and/or use a non-unique match field, that would be outside what’s documented for this connector; you’d likely need a different pattern (e.g., staging data elsewhere and using HubSpot APIs with custom logic), but that’s not covered in the provided knowledge sources. 👍 0 button 👎 0 button ℹ️ Tip: Mention @kapa.ai in the thread for follow-ups or DM the app for 1-to-1 help.