✨ ✨ Source Hubspot: unnest data (#30322)
This commit is contained in:
@@ -34,5 +34,5 @@ COPY source_hubspot ./source_hubspot
|
||||
ENV AIRBYTE_ENTRYPOINT "python /airbyte/integration_code/main.py"
|
||||
ENTRYPOINT ["python", "/airbyte/integration_code/main.py"]
|
||||
|
||||
LABEL io.airbyte.version=1.4.1
|
||||
LABEL io.airbyte.version=1.5.0
|
||||
LABEL io.airbyte.name=airbyte/source-hubspot
|
||||
|
||||
@@ -19,6 +19,8 @@ acceptance_tests:
|
||||
discovery:
|
||||
tests:
|
||||
- config_path: secrets/config_oauth.json
|
||||
backward_compatibility_tests_config:
|
||||
disable_for_version: 1.4.1
|
||||
basic_read:
|
||||
tests:
|
||||
- config_path: secrets/config_oauth.json
|
||||
@@ -48,63 +50,115 @@ acceptance_tests:
|
||||
- name: ilsFilterBranch
|
||||
bypass_reason: Floating fields order
|
||||
companies:
|
||||
- name: properties_hs_time_*
|
||||
bypass_reason: Hubspot time depend on current time
|
||||
- name: properties/hs_time_*
|
||||
bypass_reason: Hubspot time depend on current time
|
||||
- name: properties_hs_was_imported
|
||||
bypass_reason: attribute is not stable
|
||||
- name: properties/hs_was_imported
|
||||
bypass_reason: attribute is not stable
|
||||
contacts:
|
||||
- name: properties_hs_time_*
|
||||
bypass_reason: Hubspot time depend on current time
|
||||
- name: properties/hs_time_*
|
||||
bypass_reason: Hubspot time depend on current time
|
||||
- name: properties_hs_time_in_subscriber
|
||||
bypass_reason: Hubspot time depend on current time
|
||||
- name: properties/hs_time_in_subscriber
|
||||
bypass_reason: Hubspot time depend on current time
|
||||
- name: properties_hs_latest_source_timestamp
|
||||
bypass_reason: Hubspot time depend on current time
|
||||
- name: properties/hs_latest_source_timestamp
|
||||
bypass_reason: Hubspot time depend on current time
|
||||
- name: properties_hs_predictivescoringtier
|
||||
bypass_reason: Hubspot prediction changes
|
||||
- name: properties/hs_predictivescoringtier
|
||||
bypass_reason: Hubspot prediction changes
|
||||
- name: properties_lastmodifieddate
|
||||
bypass_reason: Hubspot time depend on current time
|
||||
- name: properties/lastmodifieddate
|
||||
bypass_reason: Hubspot time depend on current time
|
||||
- name: properties_hs_time_in_lead
|
||||
bypass_reason: Hubspot time depend on current time
|
||||
- name: properties/hs_time_in_lead
|
||||
bypass_reason: Hubspot time depend on current time
|
||||
- name: properties_hs_time_in_opportunity
|
||||
bypass_reason: Hubspot time depend on current time
|
||||
- name: properties/hs_time_in_opportunity
|
||||
bypass_reason: Hubspot time depend on current time
|
||||
- name: properties_hs_was_imported
|
||||
bypass_reason: attribute is not stable
|
||||
- name: properties/hs_was_imported
|
||||
bypass_reason: attribute is not stable
|
||||
- name: updatedAt
|
||||
bypass_reason: Hubspot time depend on current time
|
||||
deals:
|
||||
- name: properties_hs_time_*
|
||||
bypass_reason: Hubspot time depend on current time
|
||||
- name: properties/hs_time_*
|
||||
bypass_reason: Hubspot time depend on current time
|
||||
- name: properties_hs_acv
|
||||
bypass_reason: value can be an integer or float
|
||||
- name: properties/hs_acv
|
||||
bypass_reason: value can be an integer or float
|
||||
- name: properties_hs_arr
|
||||
bypass_reason: value can be an integer or float
|
||||
- name: properties/hs_arr
|
||||
bypass_reason: value can be an integer or float
|
||||
- name: properties_hs_mrr
|
||||
bypass_reason: value can be an integer or float
|
||||
- name: properties/hs_mrr
|
||||
bypass_reason: value can be an integer or float
|
||||
- name: properties_hs_tcv
|
||||
bypass_reason: value can be an integer or float
|
||||
- name: properties/hs_tcv
|
||||
bypass_reason: value can be an integer or float
|
||||
- name: properties_hs_num_of_associated_line_items
|
||||
bypass_reason: value can be an integer or float
|
||||
- name: properties/hs_num_of_associated_line_items
|
||||
bypass_reason: value can be an integer or float
|
||||
deals_archived:
|
||||
- name: properties_hs_time_*
|
||||
bypass_reason: Hubspot time depend on current time
|
||||
- name: properties/hs_time_*
|
||||
bypass_reason: Hubspot time depend on current time
|
||||
- name: properties_hs_acv
|
||||
bypass_reason: value can be an integer or float
|
||||
- name: properties/hs_acv
|
||||
bypass_reason: value can be an integer or float
|
||||
- name: properties_hs_arr
|
||||
bypass_reason: value can be an integer or float
|
||||
- name: properties/hs_arr
|
||||
bypass_reason: value can be an integer or float
|
||||
- name: properties_hs_mrr
|
||||
bypass_reason: value can be an integer or float
|
||||
- name: properties/hs_mrr
|
||||
bypass_reason: value can be an integer or float
|
||||
- name: properties_hs_tcv
|
||||
bypass_reason: value can be an integer or float
|
||||
- name: properties/hs_tcv
|
||||
bypass_reason: value can be an integer or float
|
||||
- name: properties_hs_num_of_associated_line_items
|
||||
bypass_reason: value can be an integer or float
|
||||
- name: properties/hs_num_of_associated_line_items
|
||||
bypass_reason: value can be an integer or float
|
||||
tickets:
|
||||
- name: properties_hs_time_*
|
||||
bypass_reason: Hubspot time depend on current time
|
||||
- name: properties/hs_time_*
|
||||
bypass_reason: Hubspot time depend on current time
|
||||
goals:
|
||||
- name: properties_hs_time_*
|
||||
bypass_reason: Hubspot time depend on current time
|
||||
- name: properties/hs_time_*
|
||||
bypass_reason: Hubspot time depend on current time
|
||||
- name: properties_hs_lastmodifieddate
|
||||
bypass_reason: Hubspot time depend on current time
|
||||
- name: properties/hs_lastmodifieddate
|
||||
bypass_reason: Hubspot time depend on current time
|
||||
- name: properties_hs_kpi_value_last_calculated_at
|
||||
bypass_reason: Hubspot time depend on current time
|
||||
- name: properties/hs_kpi_value_last_calculated_at
|
||||
bypass_reason: Hubspot time depend on current time
|
||||
- name: updatedAt
|
||||
@@ -120,15 +174,23 @@ acceptance_tests:
|
||||
- name: ilsFilterBranch
|
||||
bypass_reason: Floating fields order
|
||||
companies:
|
||||
- name: properties_hs_time_*
|
||||
bypass_reason: Hubspot time depend on current time
|
||||
- name: properties/hs_time_*
|
||||
bypass_reason: Hubspot time depend on current time
|
||||
contacts:
|
||||
- name: properties_hs_time_*
|
||||
bypass_reason: Hubspot time depend on current time
|
||||
- name: properties/hs_time_*
|
||||
bypass_reason: Hubspot time depend on current time
|
||||
deals:
|
||||
- name: properties_hs_time_*
|
||||
bypass_reason: Hubspot time depend on current time
|
||||
- name: properties/hs_time_*
|
||||
bypass_reason: Hubspot time depend on current time
|
||||
tickets:
|
||||
- name: properties_hs_time_*
|
||||
bypass_reason: Hubspot time depend on current time
|
||||
- name: properties/hs_time_*
|
||||
bypass_reason: Hubspot time depend on current time
|
||||
incremental:
|
||||
|
||||
File diff suppressed because one or more lines are too long
@@ -5,7 +5,7 @@ data:
|
||||
connectorSubtype: api
|
||||
connectorType: source
|
||||
definitionId: 36c891d9-4bd9-43ac-bad2-10e12756272c
|
||||
dockerImageTag: 1.4.1
|
||||
dockerImageTag: 1.5.0
|
||||
dockerRepository: airbyte/source-hubspot
|
||||
githubIssueLabel: source-hubspot
|
||||
icon: hubspot.svg
|
||||
@@ -14,7 +14,6 @@ data:
|
||||
registries:
|
||||
cloud:
|
||||
enabled: true
|
||||
dockerImageTag: 1.4.1
|
||||
oss:
|
||||
enabled: true
|
||||
releaseStage: generally_available
|
||||
|
||||
@@ -64,6 +64,54 @@
|
||||
}
|
||||
}
|
||||
},
|
||||
"counters_open": {
|
||||
"type": ["null", "integer"]
|
||||
},
|
||||
"counters_processed": {
|
||||
"type": ["null", "integer"]
|
||||
},
|
||||
"counters_sent": {
|
||||
"type": ["null", "integer"]
|
||||
},
|
||||
"counters_deferred": {
|
||||
"type": ["null", "integer"]
|
||||
},
|
||||
"counters_unsubscribed": {
|
||||
"type": ["null", "integer"]
|
||||
},
|
||||
"counters_statuschange": {
|
||||
"type": ["null", "integer"]
|
||||
},
|
||||
"counters_bounce": {
|
||||
"type": ["null", "integer"]
|
||||
},
|
||||
"counters_mta_dropped": {
|
||||
"type": ["null", "integer"]
|
||||
},
|
||||
"counters_dropped": {
|
||||
"type": ["null", "integer"]
|
||||
},
|
||||
"counters_suppressed": {
|
||||
"type": ["null", "integer"]
|
||||
},
|
||||
"counters_click": {
|
||||
"type": ["null", "integer"]
|
||||
},
|
||||
"counters_delivered": {
|
||||
"type": ["null", "integer"]
|
||||
},
|
||||
"counters_forward": {
|
||||
"type": ["null", "integer"]
|
||||
},
|
||||
"counters_print": {
|
||||
"type": ["null", "integer"]
|
||||
},
|
||||
"counters_reply": {
|
||||
"type": ["null", "integer"]
|
||||
},
|
||||
"counters_spamreport": {
|
||||
"type": ["null", "integer"]
|
||||
},
|
||||
"id": {
|
||||
"type": ["null", "integer"]
|
||||
},
|
||||
|
||||
@@ -25,6 +25,27 @@
|
||||
}
|
||||
}
|
||||
},
|
||||
"metaData_processing": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"metaData_size": {
|
||||
"type": ["null", "integer"]
|
||||
},
|
||||
"metaData_error": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"metaData_lastProcessingStateChangeAt": {
|
||||
"type": ["null", "integer"]
|
||||
},
|
||||
"metaData_lastSizeChangeAt": {
|
||||
"type": ["null", "integer"]
|
||||
},
|
||||
"metaData_listReferencesCount": {
|
||||
"type": ["null", "integer"]
|
||||
},
|
||||
"metaData_parentFolderId": {
|
||||
"type": ["null", "integer"]
|
||||
},
|
||||
"dynamic": {
|
||||
"type": ["null", "boolean"]
|
||||
},
|
||||
|
||||
@@ -54,6 +54,33 @@
|
||||
}
|
||||
}
|
||||
},
|
||||
"merged_from_email_source-vids": {
|
||||
"type": ["null", "array"],
|
||||
"items": {
|
||||
"type": ["null", "integer"]
|
||||
}
|
||||
},
|
||||
"merged_from_email_updated-by-user-id": {
|
||||
"type": ["null", "integer"]
|
||||
},
|
||||
"merged_from_email_source-label": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"merged_from_email_source-type": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"merged_from_email_value": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"merged_from_email_source-id": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"merged_from_email_selected": {
|
||||
"type": ["null", "boolean"]
|
||||
},
|
||||
"merged_from_email_timestamp": {
|
||||
"type": ["null", "integer"]
|
||||
},
|
||||
"merged_to_email": {
|
||||
"type": ["null", "object"],
|
||||
"additionalProperties": true,
|
||||
@@ -81,6 +108,27 @@
|
||||
}
|
||||
}
|
||||
},
|
||||
"merged_to_email_updated-by-user-id": {
|
||||
"type": ["null", "integer"]
|
||||
},
|
||||
"merged_to_email_source-label": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"merged_to_email_source-type": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"merged_to_email_value": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"merged_to_email_source-id": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"merged_to_email_selected": {
|
||||
"type": ["null", "boolean"]
|
||||
},
|
||||
"merged_to_email_timestamp": {
|
||||
"type": ["null", "integer"]
|
||||
},
|
||||
"first-name": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
|
||||
@@ -313,6 +313,309 @@
|
||||
}
|
||||
}
|
||||
},
|
||||
"properties_amount": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_amount_in_home_currency": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_closed_lost_reason": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_closed_won_reason": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_closedate": {
|
||||
"type": ["null", "string"],
|
||||
"format": "date-time"
|
||||
},
|
||||
"properties_createdate": {
|
||||
"type": ["null", "string"],
|
||||
"format": "date-time"
|
||||
},
|
||||
"properties_days_to_close": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_dealname": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_dealstage": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_dealtype": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_description": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_engagements_last_meeting_booked": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_engagements_last_meeting_booked_campaign": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_engagements_last_meeting_booked_medium": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_engagements_last_meeting_booked_source": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hs_acv": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hs_all_accessible_team_ids": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hs_all_assigned_business_unit_ids": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hs_all_owner_ids": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hs_all_team_ids": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hs_analytics_source": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hs_analytics_source_data_1": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hs_analytics_source_data_2": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hs_arr": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hs_closed_amount": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hs_closed_amount_in_home_currency": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hs_created_by_user_id": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hs_createdate": {
|
||||
"type": ["null", "string"],
|
||||
"format": "date-time"
|
||||
},
|
||||
"properties_hs_date_entered_9567448": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hs_date_entered_9567449": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hs_date_entered_appointmentscheduled": {
|
||||
"type": ["null", "string"],
|
||||
"format": "date-time"
|
||||
},
|
||||
"properties_hs_date_entered_closedlost": {
|
||||
"type": ["null", "string"],
|
||||
"format": "date-time"
|
||||
},
|
||||
"properties_hs_date_entered_closedwon": {
|
||||
"type": ["null", "string"],
|
||||
"format": "date-time"
|
||||
},
|
||||
"properties_hs_date_entered_contractsent": {
|
||||
"type": ["null", "string"],
|
||||
"format": "date-time"
|
||||
},
|
||||
"properties_hs_date_entered_customclosedwonstage": {
|
||||
"type": ["null", "string"],
|
||||
"format": "date-time"
|
||||
},
|
||||
"properties_hs_date_entered_decisionmakerboughtin": {
|
||||
"type": ["null", "string"],
|
||||
"format": "date-time"
|
||||
},
|
||||
"properties_hs_date_entered_presentationscheduled": {
|
||||
"type": ["null", "string"],
|
||||
"format": "date-time"
|
||||
},
|
||||
"properties_hs_date_entered_qualifiedtobuy": {
|
||||
"type": ["null", "string"],
|
||||
"format": "date-time"
|
||||
},
|
||||
"properties_hs_date_exited_9567448": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hs_date_exited_9567449": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hs_date_exited_appointmentscheduled": {
|
||||
"type": ["null", "string"],
|
||||
"format": "date-time"
|
||||
},
|
||||
"properties_hs_date_exited_closedlost": {
|
||||
"type": ["null", "string"],
|
||||
"format": "date-time"
|
||||
},
|
||||
"properties_hs_date_exited_closedwon": {
|
||||
"type": ["null", "string"],
|
||||
"format": "date-time"
|
||||
},
|
||||
"properties_hs_date_exited_contractsent": {
|
||||
"type": ["null", "string"],
|
||||
"format": "date-time"
|
||||
},
|
||||
"properties_hs_date_exited_customclosedwonstage": {
|
||||
"type": ["null", "string"],
|
||||
"format": "date-time"
|
||||
},
|
||||
"properties_hs_date_exited_decisionmakerboughtin": {
|
||||
"type": ["null", "string"],
|
||||
"format": "date-time"
|
||||
},
|
||||
"properties_hs_date_exited_presentationscheduled": {
|
||||
"type": ["null", "string"],
|
||||
"format": "date-time"
|
||||
},
|
||||
"properties_hs_date_exited_qualifiedtobuy": {
|
||||
"type": ["null", "string"],
|
||||
"format": "date-time"
|
||||
},
|
||||
"properties_hs_deal_amount_calculation_preference": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hs_deal_stage_probability": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hs_deal_stage_probability_shadow": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hs_forecast_amount": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hs_forecast_probability": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hs_is_closed": {
|
||||
"type": ["null", "boolean"]
|
||||
},
|
||||
"properties_hs_is_closed_won": {
|
||||
"type": ["null", "boolean"]
|
||||
},
|
||||
"properties_hs_lastmodifieddate": {
|
||||
"type": ["null", "string"],
|
||||
"format": "date-time"
|
||||
},
|
||||
"properties_hs_latest_meeting_activity": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hs_likelihood_to_close": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hs_line_item_global_term_hs_discount_percentage": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hs_line_item_global_term_hs_discount_percentage_enabled": {
|
||||
"type": ["null", "boolean"]
|
||||
},
|
||||
"properties_hs_line_item_global_term_hs_recurring_billing_period": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hs_line_item_global_term_hs_recurring_billing_period_enabled": {
|
||||
"type": ["null", "boolean"]
|
||||
},
|
||||
"properties_hs_line_item_global_term_hs_recurring_billing_start_date": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hs_line_item_global_term_hs_recurring_billing_start_date_enabled": {
|
||||
"type": ["null", "boolean"]
|
||||
},
|
||||
"properties_hs_line_item_global_term_recurringbillingfrequency": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hs_line_item_global_term_recurringbillingfrequency_enabled": {
|
||||
"type": ["null", "boolean"]
|
||||
},
|
||||
"properties_hs_manual_forecast_category": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hs_merged_object_ids": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hs_mrr": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hs_next_step": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hs_num_target_accounts": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hs_object_id": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hs_predicted_amount": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hs_predicted_amount_in_home_currency": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hs_priority": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hs_projected_amount": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hs_projected_amount_in_home_currency": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hs_sales_email_last_replied": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hs_tcv": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hs_unique_creation_key": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hs_updated_by_user_id": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hs_user_ids_of_all_notification_followers": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hs_user_ids_of_all_notification_unfollowers": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hs_user_ids_of_all_owners": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hubspot_owner_assigneddate": {
|
||||
"type": ["null", "string"],
|
||||
"format": "date-time"
|
||||
},
|
||||
"properties_hubspot_owner_id": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hubspot_team_id": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_notes_last_contacted": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_notes_last_updated": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_notes_next_activity_date": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_num_associated_contacts": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_num_contacted_notes": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_num_notes": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_pipeline": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"createdAt": {
|
||||
"type": ["null", "string"],
|
||||
"format": "date-time"
|
||||
|
||||
@@ -313,6 +313,309 @@
|
||||
}
|
||||
}
|
||||
},
|
||||
"properties_amount": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_amount_in_home_currency": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_closed_lost_reason": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_closed_won_reason": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_closedate": {
|
||||
"type": ["null", "string"],
|
||||
"format": "date-time"
|
||||
},
|
||||
"properties_createdate": {
|
||||
"type": ["null", "string"],
|
||||
"format": "date-time"
|
||||
},
|
||||
"properties_days_to_close": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_dealname": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_dealstage": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_dealtype": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_description": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_engagements_last_meeting_booked": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_engagements_last_meeting_booked_campaign": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_engagements_last_meeting_booked_medium": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_engagements_last_meeting_booked_source": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hs_acv": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hs_all_accessible_team_ids": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hs_all_assigned_business_unit_ids": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hs_all_owner_ids": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hs_all_team_ids": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hs_analytics_source": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hs_analytics_source_data_1": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hs_analytics_source_data_2": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hs_arr": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hs_closed_amount": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hs_closed_amount_in_home_currency": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hs_created_by_user_id": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hs_createdate": {
|
||||
"type": ["null", "string"],
|
||||
"format": "date-time"
|
||||
},
|
||||
"properties_hs_date_entered_9567448": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hs_date_entered_9567449": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hs_date_entered_appointmentscheduled": {
|
||||
"type": ["null", "string"],
|
||||
"format": "date-time"
|
||||
},
|
||||
"properties_hs_date_entered_closedlost": {
|
||||
"type": ["null", "string"],
|
||||
"format": "date-time"
|
||||
},
|
||||
"properties_hs_date_entered_closedwon": {
|
||||
"type": ["null", "string"],
|
||||
"format": "date-time"
|
||||
},
|
||||
"properties_hs_date_entered_contractsent": {
|
||||
"type": ["null", "string"],
|
||||
"format": "date-time"
|
||||
},
|
||||
"properties_hs_date_entered_customclosedwonstage": {
|
||||
"type": ["null", "string"],
|
||||
"format": "date-time"
|
||||
},
|
||||
"properties_hs_date_entered_decisionmakerboughtin": {
|
||||
"type": ["null", "string"],
|
||||
"format": "date-time"
|
||||
},
|
||||
"properties_hs_date_entered_presentationscheduled": {
|
||||
"type": ["null", "string"],
|
||||
"format": "date-time"
|
||||
},
|
||||
"properties_hs_date_entered_qualifiedtobuy": {
|
||||
"type": ["null", "string"],
|
||||
"format": "date-time"
|
||||
},
|
||||
"properties_hs_date_exited_9567448": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hs_date_exited_9567449": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hs_date_exited_appointmentscheduled": {
|
||||
"type": ["null", "string"],
|
||||
"format": "date-time"
|
||||
},
|
||||
"properties_hs_date_exited_closedlost": {
|
||||
"type": ["null", "string"],
|
||||
"format": "date-time"
|
||||
},
|
||||
"properties_hs_date_exited_closedwon": {
|
||||
"type": ["null", "string"],
|
||||
"format": "date-time"
|
||||
},
|
||||
"properties_hs_date_exited_contractsent": {
|
||||
"type": ["null", "string"],
|
||||
"format": "date-time"
|
||||
},
|
||||
"properties_hs_date_exited_customclosedwonstage": {
|
||||
"type": ["null", "string"],
|
||||
"format": "date-time"
|
||||
},
|
||||
"properties_hs_date_exited_decisionmakerboughtin": {
|
||||
"type": ["null", "string"],
|
||||
"format": "date-time"
|
||||
},
|
||||
"properties_hs_date_exited_presentationscheduled": {
|
||||
"type": ["null", "string"],
|
||||
"format": "date-time"
|
||||
},
|
||||
"properties_hs_date_exited_qualifiedtobuy": {
|
||||
"type": ["null", "string"],
|
||||
"format": "date-time"
|
||||
},
|
||||
"properties_hs_deal_amount_calculation_preference": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hs_deal_stage_probability": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hs_deal_stage_probability_shadow": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hs_forecast_amount": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hs_forecast_probability": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hs_is_closed": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hs_is_closed_won": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hs_lastmodifieddate": {
|
||||
"type": ["null", "string"],
|
||||
"format": "date-time"
|
||||
},
|
||||
"properties_hs_latest_meeting_activity": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hs_likelihood_to_close": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hs_line_item_global_term_hs_discount_percentage": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hs_line_item_global_term_hs_discount_percentage_enabled": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hs_line_item_global_term_hs_recurring_billing_period": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hs_line_item_global_term_hs_recurring_billing_period_enabled": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hs_line_item_global_term_hs_recurring_billing_start_date": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hs_line_item_global_term_hs_recurring_billing_start_date_enabled": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hs_line_item_global_term_recurringbillingfrequency": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hs_line_item_global_term_recurringbillingfrequency_enabled": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hs_manual_forecast_category": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hs_merged_object_ids": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hs_mrr": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hs_next_step": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hs_num_target_accounts": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hs_object_id": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hs_predicted_amount": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hs_predicted_amount_in_home_currency": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hs_priority": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hs_projected_amount": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hs_projected_amount_in_home_currency": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hs_sales_email_last_replied": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hs_tcv": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hs_unique_creation_key": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hs_updated_by_user_id": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hs_user_ids_of_all_notification_followers": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hs_user_ids_of_all_notification_unfollowers": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hs_user_ids_of_all_owners": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hubspot_owner_assigneddate": {
|
||||
"type": ["null", "string"],
|
||||
"format": "date-time"
|
||||
},
|
||||
"properties_hubspot_owner_id": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hubspot_team_id": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_notes_last_contacted": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_notes_last_updated": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_notes_next_activity_date": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_num_associated_contacts": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_num_contacted_notes": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_num_notes": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_pipeline": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"createdAt": {
|
||||
"type": ["null", "string"],
|
||||
"format": "date-time"
|
||||
|
||||
@@ -112,6 +112,60 @@
|
||||
}
|
||||
}
|
||||
},
|
||||
"associations_contactIds": {
|
||||
"type": ["null", "array"],
|
||||
"items": {
|
||||
"type": ["null", "integer"]
|
||||
}
|
||||
},
|
||||
"associations_contentIds": {
|
||||
"type": ["null", "array"],
|
||||
"items": {
|
||||
"type": ["null", "integer"]
|
||||
}
|
||||
},
|
||||
"associations_companyIds": {
|
||||
"type": ["null", "array"],
|
||||
"items": {
|
||||
"type": ["null", "integer"]
|
||||
}
|
||||
},
|
||||
"associations_dealIds": {
|
||||
"type": ["null", "array"],
|
||||
"items": {
|
||||
"type": ["null", "integer"]
|
||||
}
|
||||
},
|
||||
"associations_marketingEventIds": {
|
||||
"type": ["null", "array"],
|
||||
"items": {
|
||||
"type": ["null", "integer"]
|
||||
}
|
||||
},
|
||||
"associations_ownerIds": {
|
||||
"type": ["null", "array"],
|
||||
"items": {
|
||||
"type": ["null", "integer"]
|
||||
}
|
||||
},
|
||||
"associations_quoteIds": {
|
||||
"type": ["null", "array"],
|
||||
"items": {
|
||||
"type": ["null", "integer"]
|
||||
}
|
||||
},
|
||||
"associations_workflowIds": {
|
||||
"type": ["null", "array"],
|
||||
"items": {
|
||||
"type": ["null", "integer"]
|
||||
}
|
||||
},
|
||||
"associations_ticketIds": {
|
||||
"type": ["null", "array"],
|
||||
"items": {
|
||||
"type": ["null", "integer"]
|
||||
}
|
||||
},
|
||||
"attachments": {
|
||||
"type": ["null", "array"],
|
||||
"items": {
|
||||
@@ -329,6 +383,208 @@
|
||||
"type": ["null", "boolean"]
|
||||
}
|
||||
}
|
||||
},
|
||||
"metadata_body": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"metadata_from": {
|
||||
"type": ["null", "object"],
|
||||
"properties": {
|
||||
"email": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"firstName": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"lastName": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"raw": {
|
||||
"type": ["null", "string"]
|
||||
}
|
||||
}
|
||||
},
|
||||
"metadata_sender": {
|
||||
"type": ["null", "object"],
|
||||
"properties": {
|
||||
"email": {
|
||||
"type": ["null", "string"]
|
||||
}
|
||||
}
|
||||
},
|
||||
"metadata_to": {
|
||||
"type": ["null", "array"],
|
||||
"items": {
|
||||
"type": ["null", "object"],
|
||||
"properties": {
|
||||
"email": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"firstName": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"lastName": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"raw": {
|
||||
"type": ["null", "string"]
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"metadata_cc": {
|
||||
"type": ["null", "array"],
|
||||
"items": {
|
||||
"type": ["null", "object"],
|
||||
"properties": {
|
||||
"email": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"firstName": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"lastName": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"raw": {
|
||||
"type": ["null", "string"]
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"metadata_bcc": {
|
||||
"type": ["null", "array"],
|
||||
"items": {
|
||||
"type": ["null", "object"],
|
||||
"properties": {
|
||||
"email": {
|
||||
"type": ["null", "string"]
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"metadata_subject": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"metadata_html": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"metadata_text": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"metadata_status": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"metadata_forObjectType": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"metadata_startTime": {
|
||||
"type": ["null", "integer"]
|
||||
},
|
||||
"metadata_endTime": {
|
||||
"type": ["null", "integer"]
|
||||
},
|
||||
"metadata_title": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"metadata_toNumber": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"metadata_fromNumber": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"metadata_externalId": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"metadata_durationMilliseconds": {
|
||||
"type": ["null", "integer"]
|
||||
},
|
||||
"metadata_externalAccountId": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"metadata_recordingUrl": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"metadata_disposition": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"metadata_completionDate": {
|
||||
"type": ["null", "integer"]
|
||||
},
|
||||
"metadata_taskType": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"metadata_reminders": {
|
||||
"type": ["null", "array"],
|
||||
"items": {
|
||||
"type": ["null", "integer"]
|
||||
}
|
||||
},
|
||||
"metadata_threadId": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"metadata_messageId": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"metadata_loggedFrom": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"metadata_attachedVideoOpened": {
|
||||
"type": ["null", "boolean"]
|
||||
},
|
||||
"metadata_attachedVideoWatched": {
|
||||
"type": ["null", "boolean"]
|
||||
},
|
||||
"metadata_trackerKey": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"metadata_sendDefaultReminder": {
|
||||
"type": ["null", "boolean"]
|
||||
},
|
||||
"metadata_source": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"metadata_unknownVisitorConversation": {
|
||||
"type": ["null", "boolean"]
|
||||
},
|
||||
"metadata_facsimileSendId": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"metadata_sentVia": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"metadata_sequenceStepOrder": {
|
||||
"type": ["null", "integer"]
|
||||
},
|
||||
"metadata_externalUrl": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"metadata_postSendStatus": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"metadata_errorMessage": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"metadata_recipientDropReasons": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"metadata_calleeObjectId": {
|
||||
"type": ["null", "integer"]
|
||||
},
|
||||
"metadata_calleeObjectType": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"metadata_mediaProcessingStatus": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"metadata_sourceId": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"metadata_priority": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"metadata_isAllDay": {
|
||||
"type": ["null", "boolean"]
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -176,6 +176,172 @@
|
||||
}
|
||||
}
|
||||
},
|
||||
"properties_hs_activity_type": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hs_all_assigned_business_unit_ids": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hs_at_mentioned_owner_ids": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hs_attachment_ids": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hs_body_preview": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hs_body_preview_html": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hs_body_preview_is_truncated": {
|
||||
"type": ["null", "boolean"]
|
||||
},
|
||||
"properties_hs_call_app_id": {
|
||||
"type": ["null", "number"]
|
||||
},
|
||||
"properties_hs_call_authed_url_provider": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hs_call_body": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hs_call_callee_object_id": {
|
||||
"type": ["null", "number"]
|
||||
},
|
||||
"properties_hs_call_callee_object_type": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hs_call_disposition": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hs_call_duration": {
|
||||
"type": ["null", "number"]
|
||||
},
|
||||
"properties_hs_call_external_account_id": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hs_call_external_id": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hs_call_from_number": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hs_call_has_transcript": {
|
||||
"type": ["null", "boolean"]
|
||||
},
|
||||
"properties_hs_call_recording_url": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hs_call_source": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hs_call_status": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hs_call_title": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hs_call_to_number": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hs_call_transcription_id": {
|
||||
"type": ["null", "number"]
|
||||
},
|
||||
"properties_hs_call_video_recording_url": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hs_call_zoom_meeting_uuid": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hs_calls_service_call_id": {
|
||||
"type": ["null", "number"]
|
||||
},
|
||||
"properties_hs_created_by": {
|
||||
"type": ["null", "number"]
|
||||
},
|
||||
"properties_hs_created_by_user_id": {
|
||||
"type": ["null", "number"]
|
||||
},
|
||||
"properties_hs_createdate": {
|
||||
"type": ["null", "string"],
|
||||
"format": "date-time"
|
||||
},
|
||||
"properties_hs_engagement_source": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hs_engagement_source_id": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hs_follow_up_action": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hs_gdpr_deleted": {
|
||||
"type": ["null", "boolean"]
|
||||
},
|
||||
"properties_hs_lastmodifieddate": {
|
||||
"type": ["null", "string"],
|
||||
"format": "date-time"
|
||||
},
|
||||
"properties_hs_merged_object_ids": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hs_modified_by": {
|
||||
"type": ["null", "number"]
|
||||
},
|
||||
"properties_hs_object_id": {
|
||||
"type": ["null", "number"]
|
||||
},
|
||||
"properties_hs_product_name": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hs_queue_membership_ids": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hs_timestamp": {
|
||||
"type": ["null", "string"],
|
||||
"format": "date-time"
|
||||
},
|
||||
"properties_hs_unique_creation_key": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hs_unique_id": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hs_unknown_visitor_conversation": {
|
||||
"type": ["null", "boolean"]
|
||||
},
|
||||
"properties_hs_updated_by_user_id": {
|
||||
"type": ["null", "number"]
|
||||
},
|
||||
"properties_hs_user_ids_of_all_notification_followers": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hs_user_ids_of_all_notification_unfollowers": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hs_user_ids_of_all_owners": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hubspot_owner_assigneddate": {
|
||||
"type": ["null", "string"],
|
||||
"format": "date-time"
|
||||
},
|
||||
"properties_hubspot_owner_id": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hubspot_team_id": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hs_all_owner_ids": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hs_all_team_ids": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hs_all_accessible_team_ids": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"createdAt": {
|
||||
"type": ["null", "string"],
|
||||
"format": "date-time"
|
||||
|
||||
@@ -255,6 +255,251 @@
|
||||
}
|
||||
}
|
||||
},
|
||||
"properties_hs_all_assigned_business_unit_ids": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hs_at_mentioned_owner_ids": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hs_attachment_ids": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hs_body_preview": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hs_body_preview_html": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hs_body_preview_is_truncated": {
|
||||
"type": ["null", "boolean"]
|
||||
},
|
||||
"properties_hs_created_by": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hs_created_by_user_id": {
|
||||
"type": ["null", "number"]
|
||||
},
|
||||
"properties_hs_createdate": {
|
||||
"type": ["null", "string"],
|
||||
"format": "date-time"
|
||||
},
|
||||
"properties_hs_direction_and_unique_id": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hs_email_attached_video_id": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hs_email_attached_video_name": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hs_email_attached_video_opened": {
|
||||
"type": ["null", "boolean"]
|
||||
},
|
||||
"properties_hs_email_attached_video_watched": {
|
||||
"type": ["null", "boolean"]
|
||||
},
|
||||
"properties_hs_email_bcc_email": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hs_email_bcc_firstname": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hs_email_bcc_lastname": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hs_email_bcc_raw": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hs_email_cc_email": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hs_email_cc_firstname": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hs_email_cc_lastname": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hs_email_cc_raw": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hs_email_direction": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hs_email_encoded_email_associations_request": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hs_email_error_message": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hs_email_facsimile_send_id": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hs_email_from_email": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hs_email_from_firstname": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hs_email_from_lastname": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hs_email_from_raw": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hs_email_headers": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hs_email_html": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hs_email_logged_from": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hs_email_media_processing_status": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hs_email_member_of_forwarded_subthread": {
|
||||
"type": ["null", "boolean"]
|
||||
},
|
||||
"properties_hs_email_message_id": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hs_email_migrated_via_portal_data_migration": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hs_email_pending_inline_image_ids": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hs_email_post_send_status": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hs_email_recipient_drop_reasons": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hs_email_send_event_id": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hs_email_send_event_id_created": {
|
||||
"type": ["null", "string"],
|
||||
"format": "date-time"
|
||||
},
|
||||
"properties_hs_email_sender_email": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hs_email_sender_firstname": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hs_email_sender_lastname": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hs_email_sender_raw": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hs_email_sent_via": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hs_email_status": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hs_email_subject": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hs_email_text": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hs_email_thread_id": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hs_email_to_email": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hs_email_to_firstname": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hs_email_to_lastname": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hs_email_to_raw": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hs_email_tracker_key": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hs_email_validation_skipped": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hs_engagement_source": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hs_engagement_source_id": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hs_follow_up_action": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hs_gdpr_deleted": {
|
||||
"type": ["null", "boolean"]
|
||||
},
|
||||
"properties_hs_lastmodifieddate": {
|
||||
"type": ["null", "string"],
|
||||
"format": "date-time"
|
||||
},
|
||||
"properties_hs_merged_object_ids": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hs_modified_by": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hs_object_id": {
|
||||
"type": ["null", "number"]
|
||||
},
|
||||
"properties_hs_product_name": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hs_queue_membership_ids": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hs_timestamp": {
|
||||
"type": ["null", "string"],
|
||||
"format": "date-time"
|
||||
},
|
||||
"properties_hs_unique_creation_key": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hs_unique_id": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hs_updated_by_user_id": {
|
||||
"type": ["null", "number"]
|
||||
},
|
||||
"properties_hs_user_ids_of_all_notification_followers": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hs_user_ids_of_all_notification_unfollowers": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hs_user_ids_of_all_owners": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hubspot_owner_assigneddate": {
|
||||
"type": ["null", "string"],
|
||||
"format": "date-time"
|
||||
},
|
||||
"properties_hubspot_owner_id": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hubspot_team_id": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hs_all_owner_ids": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hs_all_team_ids": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hs_all_accessible_team_ids": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"createdAt": {
|
||||
"type": ["null", "string"],
|
||||
"format": "date-time"
|
||||
|
||||
@@ -172,6 +172,168 @@
|
||||
}
|
||||
}
|
||||
},
|
||||
"properties_hs_activity_type": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hs_all_assigned_business_unit_ids": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hs_at_mentioned_owner_ids": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hs_attachment_ids": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hs_attendee_owner_ids": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hs_body_preview": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hs_body_preview_html": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hs_body_preview_is_truncated": {
|
||||
"type": ["null", "boolean"]
|
||||
},
|
||||
"properties_hs_created_by": {
|
||||
"type": ["null", "number"]
|
||||
},
|
||||
"properties_hs_created_by_user_id": {
|
||||
"type": ["null", "number"]
|
||||
},
|
||||
"properties_hs_createdate": {
|
||||
"type": ["null", "string"],
|
||||
"format": "date-time"
|
||||
},
|
||||
"properties_hs_engagement_source": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hs_engagement_source_id": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hs_follow_up_action": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hs_gdpr_deleted": {
|
||||
"type": ["null", "boolean"]
|
||||
},
|
||||
"properties_hs_i_cal_uid": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hs_internal_meeting_notes": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hs_lastmodifieddate": {
|
||||
"type": ["null", "string"],
|
||||
"format": "date-time"
|
||||
},
|
||||
"properties_hs_meeting_body": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hs_meeting_calendar_event_hash": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hs_meeting_change_id": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hs_meeting_created_from_link_id": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hs_meeting_end_time": {
|
||||
"type": ["null", "string"],
|
||||
"format": "date-time"
|
||||
},
|
||||
"properties_hs_meeting_external_url": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hs_meeting_location": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hs_meeting_location_type": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hs_meeting_outcome": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hs_meeting_pre_meeting_prospect_reminders": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hs_meeting_source": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hs_meeting_source_id": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hs_meeting_start_time": {
|
||||
"type": ["null", "string"],
|
||||
"format": "date-time"
|
||||
},
|
||||
"properties_hs_meeting_title": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hs_meeting_web_conference_meeting_id": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hs_merged_object_ids": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hs_modified_by": {
|
||||
"type": ["null", "number"]
|
||||
},
|
||||
"properties_hs_object_id": {
|
||||
"type": ["null", "number"]
|
||||
},
|
||||
"properties_hs_product_name": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hs_queue_membership_ids": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hs_scheduled_tasks": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hs_timestamp": {
|
||||
"type": ["null", "string"],
|
||||
"format": "date-time"
|
||||
},
|
||||
"properties_hs_unique_creation_key": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hs_unique_id": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hs_updated_by_user_id": {
|
||||
"type": ["null", "number"]
|
||||
},
|
||||
"properties_hs_user_ids_of_all_notification_followers": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hs_user_ids_of_all_notification_unfollowers": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hs_user_ids_of_all_owners": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hubspot_owner_assigneddate": {
|
||||
"type": ["null", "string"],
|
||||
"format": "date-time"
|
||||
},
|
||||
"properties_hubspot_owner_id": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hubspot_team_id": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hs_all_owner_ids": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hs_all_team_ids": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hs_all_accessible_team_ids": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"createdAt": {
|
||||
"type": ["null", "string"],
|
||||
"format": "date-time"
|
||||
|
||||
@@ -113,6 +113,109 @@
|
||||
}
|
||||
}
|
||||
},
|
||||
"properties_hs_all_assigned_business_unit_ids": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hs_at_mentioned_owner_ids": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hs_attachment_ids": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hs_body_preview": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hs_body_preview_html": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hs_body_preview_is_truncated": {
|
||||
"type": ["null", "boolean"]
|
||||
},
|
||||
"properties_hs_created_by": {
|
||||
"type": ["null", "number"]
|
||||
},
|
||||
"properties_hs_created_by_user_id": {
|
||||
"type": ["null", "number"]
|
||||
},
|
||||
"properties_hs_createdate": {
|
||||
"type": ["null", "string"],
|
||||
"format": "date-time"
|
||||
},
|
||||
"properties_hs_engagement_source": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hs_engagement_source_id": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hs_follow_up_action": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hs_gdpr_deleted": {
|
||||
"type": ["null", "boolean"]
|
||||
},
|
||||
"properties_hs_lastmodifieddate": {
|
||||
"type": ["null", "string"],
|
||||
"format": "date-time"
|
||||
},
|
||||
"properties_hs_merged_object_ids": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hs_modified_by": {
|
||||
"type": ["null", "number"]
|
||||
},
|
||||
"properties_hs_note_body": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hs_object_id": {
|
||||
"type": ["null", "number"]
|
||||
},
|
||||
"properties_hs_product_name": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hs_queue_membership_ids": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hs_timestamp": {
|
||||
"type": ["null", "string"],
|
||||
"format": "date-time"
|
||||
},
|
||||
"properties_hs_unique_creation_key": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hs_unique_id": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hs_updated_by_user_id": {
|
||||
"type": ["null", "number"]
|
||||
},
|
||||
"properties_hs_user_ids_of_all_notification_followers": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hs_user_ids_of_all_notification_unfollowers": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hs_user_ids_of_all_owners": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hubspot_owner_assigneddate": {
|
||||
"type": ["null", "string"],
|
||||
"format": "date-time"
|
||||
},
|
||||
"properties_hubspot_owner_id": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hubspot_team_id": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hs_all_owner_ids": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hs_all_team_ids": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hs_all_accessible_team_ids": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"createdAt": {
|
||||
"type": ["null", "string"],
|
||||
"format": "date-time"
|
||||
|
||||
@@ -197,6 +197,193 @@
|
||||
}
|
||||
}
|
||||
},
|
||||
"properties_hs_all_assigned_business_unit_ids": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hs_at_mentioned_owner_ids": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hs_attachment_ids": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hs_body_preview": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hs_body_preview_html": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hs_body_preview_is_truncated": {
|
||||
"type": ["null", "boolean"]
|
||||
},
|
||||
"properties_hs_calendar_event_id": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hs_created_by": {
|
||||
"type": ["null", "number"]
|
||||
},
|
||||
"properties_hs_created_by_user_id": {
|
||||
"type": ["null", "number"]
|
||||
},
|
||||
"properties_hs_createdate": {
|
||||
"type": ["null", "string"],
|
||||
"format": "date-time"
|
||||
},
|
||||
"properties_hs_engagement_source": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hs_engagement_source_id": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hs_follow_up_action": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hs_gdpr_deleted": {
|
||||
"type": ["null", "boolean"]
|
||||
},
|
||||
"properties_hs_lastmodifieddate": {
|
||||
"type": ["null", "string"],
|
||||
"format": "date-time"
|
||||
},
|
||||
"properties_hs_merged_object_ids": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hs_modified_by": {
|
||||
"type": ["null", "number"]
|
||||
},
|
||||
"properties_hs_msteams_message_id": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hs_num_associated_companies": {
|
||||
"type": ["null", "number"]
|
||||
},
|
||||
"properties_hs_num_associated_contacts": {
|
||||
"type": ["null", "number"]
|
||||
},
|
||||
"properties_hs_num_associated_deals": {
|
||||
"type": ["null", "number"]
|
||||
},
|
||||
"properties_hs_num_associated_queue_objects": {
|
||||
"type": ["null", "number"]
|
||||
},
|
||||
"properties_hs_num_associated_tickets": {
|
||||
"type": ["null", "number"]
|
||||
},
|
||||
"properties_hs_object_id": {
|
||||
"type": ["null", "number"]
|
||||
},
|
||||
"properties_hs_product_name": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hs_queue_membership_ids": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hs_scheduled_tasks": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hs_task_body": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hs_task_completion_date": {
|
||||
"type": ["null", "string"],
|
||||
"format": "date-time"
|
||||
},
|
||||
"properties_hs_task_contact_timezone": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hs_task_for_object_type": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hs_task_is_all_day": {
|
||||
"type": ["null", "boolean"]
|
||||
},
|
||||
"properties_hs_task_last_contact_outreach": {
|
||||
"type": ["null", "string"],
|
||||
"format": "date-time"
|
||||
},
|
||||
"properties_hs_task_last_sales_activity_timestamp": {
|
||||
"type": ["null", "string"],
|
||||
"format": "date-time"
|
||||
},
|
||||
"properties_hs_task_priority": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hs_task_probability_to_complete": {
|
||||
"type": ["null", "number"]
|
||||
},
|
||||
"properties_hs_task_relative_reminders": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hs_task_reminders": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hs_task_repeat_interval": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hs_task_send_default_reminder": {
|
||||
"type": ["null", "boolean"]
|
||||
},
|
||||
"properties_hs_task_sequence_enrollment_active": {
|
||||
"type": ["null", "boolean"]
|
||||
},
|
||||
"properties_hs_task_sequence_step_enrollment_id": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hs_task_sequence_step_order": {
|
||||
"type": ["null", "number"]
|
||||
},
|
||||
"properties_hs_task_status": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hs_task_subject": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hs_task_template_id": {
|
||||
"type": ["null", "number"]
|
||||
},
|
||||
"properties_hs_task_type": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hs_timestamp": {
|
||||
"type": ["null", "string"],
|
||||
"format": "date-time"
|
||||
},
|
||||
"properties_hs_unique_creation_key": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hs_unique_id": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hs_updated_by_user_id": {
|
||||
"type": ["null", "number"]
|
||||
},
|
||||
"properties_hs_user_ids_of_all_notification_followers": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hs_user_ids_of_all_notification_unfollowers": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hs_user_ids_of_all_owners": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hubspot_owner_assigneddate": {
|
||||
"type": ["null", "string"],
|
||||
"format": "date-time"
|
||||
},
|
||||
"properties_hubspot_owner_id": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hubspot_team_id": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hs_all_owner_ids": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hs_all_team_ids": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hs_all_accessible_team_ids": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"createdAt": {
|
||||
"type": ["null", "string"],
|
||||
"format": "date-time"
|
||||
|
||||
@@ -42,6 +42,38 @@
|
||||
}
|
||||
}
|
||||
},
|
||||
"properties_hs_created_by_user_id": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hs_createdate": {
|
||||
"type": ["null", "string"],
|
||||
"format": "date-time"
|
||||
},
|
||||
"properties_hs_start_datetime": {
|
||||
"type": ["null", "string"],
|
||||
"format": "date-time"
|
||||
},
|
||||
"properties_hs_end_datetime": {
|
||||
"type": ["null", "string"],
|
||||
"format": "date-time"
|
||||
},
|
||||
"properties_hs_goal_name": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hs_lastmodifieddate": {
|
||||
"type": ["null", "string"],
|
||||
"format": "date-time"
|
||||
},
|
||||
"properties_hs_kpi_value_last_calculated_at": {
|
||||
"type": ["null", "string"],
|
||||
"format": "date-time"
|
||||
},
|
||||
"properties_hs_object_id": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"properties_hs_target_amount": {
|
||||
"type": ["null", "string"]
|
||||
},
|
||||
"createdAt": {
|
||||
"type": ["null", "string"],
|
||||
"format": "date-time"
|
||||
|
||||
@@ -43,6 +43,24 @@
|
||||
}
|
||||
}
|
||||
},
|
||||
"contactListIds_enrolled": {
|
||||
"type": ["null", "integer"]
|
||||
},
|
||||
"contactListIds_active": {
|
||||
"type": ["null", "integer"]
|
||||
},
|
||||
"contactListIds_completed": {
|
||||
"type": ["null", "integer"]
|
||||
},
|
||||
"contactListIds_succeeded": {
|
||||
"type": ["null", "integer"]
|
||||
},
|
||||
"contactListIds_steps": {
|
||||
"type": ["null", "array"],
|
||||
"items": {
|
||||
"type": ["null", "string"]
|
||||
}
|
||||
},
|
||||
"lastUpdatedByUserId": {
|
||||
"type": ["null", "integer"]
|
||||
},
|
||||
|
||||
@@ -154,5 +154,11 @@ class SourceHubspot(AbstractSource):
|
||||
return available_streams
|
||||
|
||||
def get_custom_object_streams(self, api: API, common_params: Mapping[str, Any]):
|
||||
for (entity, fully_qualified_name, schema) in api.get_custom_objects_metadata():
|
||||
yield CustomObject(entity=entity, schema=schema, fully_qualified_name=fully_qualified_name, **common_params)
|
||||
for entity, fully_qualified_name, schema, custom_properties in api.get_custom_objects_metadata():
|
||||
yield CustomObject(
|
||||
entity=entity,
|
||||
schema=schema,
|
||||
fully_qualified_name=fully_qualified_name,
|
||||
custom_properties=custom_properties,
|
||||
**common_params,
|
||||
)
|
||||
|
||||
@@ -74,6 +74,35 @@ def retry_token_expired_handler(**kwargs):
|
||||
)
|
||||
|
||||
|
||||
class RecordUnnester:
|
||||
def __init__(self, fields: Optional[List[str]] = None):
|
||||
self.fields = fields or []
|
||||
|
||||
def unnest(self, records: Iterable[MutableMapping[str, Any]]) -> Iterable[MutableMapping[str, Any]]:
|
||||
"""
|
||||
In order to not make the users query their destinations for complicated json fields, duplicate some nested data as top level fields.
|
||||
For instance:
|
||||
{"id": 1, "updatedAt": "2020-01-01", "properties": {"hs_note_body": "World's best boss", "hs_created_by": "Michael Scott"}}
|
||||
becomes
|
||||
{
|
||||
"id": 1,
|
||||
"updatedAt": "2020-01-01",
|
||||
"properties": {"hs_note_body": "World's best boss", "hs_created_by": "Michael Scott"},
|
||||
"properties_hs_note_body": "World's best boss",
|
||||
"properties_hs_created_by": "Michael Scott"
|
||||
}
|
||||
"""
|
||||
|
||||
for record in records:
|
||||
fields_to_unnest = self.fields + ["properties"]
|
||||
data_to_unnest = {field: record.get(field, {}) for field in fields_to_unnest}
|
||||
unnested_data = {
|
||||
f"{top_level_name}_{name}": value for (top_level_name, data) in data_to_unnest.items() for (name, value) in data.items()
|
||||
}
|
||||
final = {**record, **unnested_data}
|
||||
yield final
|
||||
|
||||
|
||||
def retry_connection_handler(**kwargs):
|
||||
"""Retry helper, log each attempt"""
|
||||
|
||||
@@ -229,16 +258,16 @@ class API:
|
||||
if not response.ok or "results" not in data:
|
||||
self.logger.warn(self._parse_and_handle_errors(response))
|
||||
return ()
|
||||
for metadata in data["results"]:
|
||||
properties = self.get_properties(raw_schema=metadata)
|
||||
schema = self.generate_schema(properties)
|
||||
yield metadata["name"], metadata["fullyQualifiedName"], schema, properties
|
||||
|
||||
return (
|
||||
(metadata["name"], metadata["fullyQualifiedName"], self.generate_schema(raw_schema=metadata)) for metadata in data["results"]
|
||||
)
|
||||
|
||||
def generate_schema(self, raw_schema: Mapping[str, Any]) -> Mapping[str, Any]:
|
||||
properties = {}
|
||||
for field in raw_schema["properties"]:
|
||||
properties[field["name"]] = self._field_to_property_schema(field)
|
||||
def get_properties(self, raw_schema: Mapping[str, Any]) -> Mapping[str, Any]:
|
||||
return {field["name"]: self._field_to_property_schema(field) for field in raw_schema["properties"]}
|
||||
|
||||
def generate_schema(self, properties: Mapping[str, Any]) -> Mapping[str, Any]:
|
||||
unnested_properties = {f"properties_{property_name}": property_value for (property_name, property_value) in properties.items()}
|
||||
schema = {
|
||||
"$schema": "http://json-schema.org/draft-07/schema#",
|
||||
"type": ["null", "object"],
|
||||
@@ -249,6 +278,7 @@ class API:
|
||||
"updatedAt": {"type": ["null", "string"], "format": "date-time"},
|
||||
"archived": {"type": ["null", "boolean"]},
|
||||
"properties": {"type": ["null", "object"], "properties": properties},
|
||||
**unnested_properties,
|
||||
},
|
||||
}
|
||||
|
||||
@@ -292,6 +322,11 @@ class Stream(HttpStream, ABC):
|
||||
denormalize_records: bool = False # one record from API response can result in multiple records emitted
|
||||
granted_scopes: Set = None
|
||||
properties_scopes: Set = None
|
||||
unnest_fields: Optional[List[str]] = None
|
||||
|
||||
@cached_property
|
||||
def record_unnester(self):
|
||||
return RecordUnnester(self.unnest_fields)
|
||||
|
||||
@property
|
||||
@abstractmethod
|
||||
@@ -366,7 +401,12 @@ class Stream(HttpStream, ABC):
|
||||
def get_json_schema(self) -> Mapping[str, Any]:
|
||||
json_schema = super().get_json_schema()
|
||||
if self.properties:
|
||||
json_schema["properties"]["properties"] = {"type": "object", "properties": self.properties}
|
||||
properties = {"properties": {"type": "object", "properties": self.properties}}
|
||||
unnested_properties = {
|
||||
f"properties_{property_name}": property_value for (property_name, property_value) in self.properties.items()
|
||||
}
|
||||
default_props = json_schema["properties"]
|
||||
json_schema["properties"] = {**default_props, **properties, **unnested_properties}
|
||||
return json_schema
|
||||
|
||||
@retry_token_expired_handler(max_tries=5)
|
||||
@@ -461,7 +501,7 @@ class Stream(HttpStream, ABC):
|
||||
|
||||
if self.filter_old_records:
|
||||
records = self._filter_old_records(records)
|
||||
yield from records
|
||||
yield from self.record_unnester.unnest(records)
|
||||
|
||||
next_page_token = self.next_page_token(response)
|
||||
if not next_page_token:
|
||||
@@ -1112,6 +1152,7 @@ class CRMSearchStream(IncrementalStream, ABC):
|
||||
)
|
||||
records = self._flat_associations(records)
|
||||
records = self._filter_old_records(records)
|
||||
records = self.record_unnester.unnest(records)
|
||||
|
||||
for record in records:
|
||||
cursor = self._field_to_datetime(record[self.updated_at_field])
|
||||
@@ -1256,6 +1297,7 @@ class Campaigns(ClientSideIncrementalStream):
|
||||
cursor_field_datetime_format = "x"
|
||||
primary_key = "id"
|
||||
scopes = {"crm.lists.read"}
|
||||
unnest_fields = ["counters"]
|
||||
|
||||
def read_records(
|
||||
self,
|
||||
@@ -1267,7 +1309,7 @@ class Campaigns(ClientSideIncrementalStream):
|
||||
for row in super().read_records(sync_mode, cursor_field=cursor_field, stream_slice=stream_slice, stream_state=stream_state):
|
||||
record, response = self._api.get(f"/email/public/v1/campaigns/{row['id']}")
|
||||
if self.filter_by_state(stream_state=stream_state, record=row):
|
||||
yield {**row, **record}
|
||||
yield from self.record_unnester.unnest([{**row, **record}])
|
||||
|
||||
|
||||
class ContactLists(IncrementalStream):
|
||||
@@ -1286,6 +1328,7 @@ class ContactLists(IncrementalStream):
|
||||
primary_key = "listId"
|
||||
need_chunk = False
|
||||
scopes = {"crm.lists.read"}
|
||||
unnest_fields = ["metaData"]
|
||||
|
||||
|
||||
class ContactsListMemberships(Stream):
|
||||
@@ -1452,6 +1495,8 @@ class EngagementsAll(EngagementsABC):
|
||||
Note: Returns all engagements records ordered by 'createdAt' (not 'lastUpdated') field
|
||||
"""
|
||||
|
||||
unnest_fields = ["associations", "metadata"]
|
||||
|
||||
@property
|
||||
def url(self):
|
||||
return "/engagements/v1/engagements/paged"
|
||||
@@ -1473,6 +1518,7 @@ class EngagementsRecent(EngagementsABC):
|
||||
|
||||
total_records_limit = 10000
|
||||
last_days_limit = 29
|
||||
unnest_fields = ["associations", "metadata"]
|
||||
|
||||
@property
|
||||
def url(self):
|
||||
@@ -1791,6 +1837,7 @@ class Workflows(ClientSideIncrementalStream):
|
||||
cursor_field_datetime_format = "x"
|
||||
primary_key = "id"
|
||||
scopes = {"automation"}
|
||||
unnest_fields = ["contactListIds"]
|
||||
|
||||
|
||||
class Companies(CRMSearchStream):
|
||||
@@ -1813,19 +1860,12 @@ class ContactsMergedAudit(Stream):
|
||||
url = "/contacts/v1/contact/vids/batch/"
|
||||
updated_at_field = "timestamp"
|
||||
scopes = {"crm.objects.contacts.read"}
|
||||
unnest_fields = ["merged_from_email", "merged_to_email"]
|
||||
|
||||
def __init__(self, **kwargs):
|
||||
super().__init__(**kwargs)
|
||||
self.config = kwargs
|
||||
|
||||
def get_json_schema(self) -> Mapping[str, Any]:
|
||||
"""Override get_json_schema defined in Stream class
|
||||
Final object does not have properties field
|
||||
We return JSON schema as defined in :
|
||||
source_hubspot/schemas/contacts_merged_audit.json
|
||||
"""
|
||||
return super(Stream, self).get_json_schema()
|
||||
|
||||
def stream_slices(
|
||||
self, sync_mode: SyncMode, cursor_field: List[str] = None, stream_state: Mapping[str, Any] = None, **kwargs
|
||||
) -> Iterable[Mapping[str, Any]]:
|
||||
@@ -1841,7 +1881,7 @@ class ContactsMergedAudit(Stream):
|
||||
contacts.filter_old_records = False
|
||||
|
||||
for contact in contacts.read_records(sync_mode=SyncMode.full_refresh):
|
||||
if contact["properties"].get("hs_merged_object_ids"):
|
||||
if contact.get("properties_hs_merged_object_ids"):
|
||||
contact_batch.append(contact["id"])
|
||||
|
||||
if len(contact_batch) == max_contacts:
|
||||
@@ -1956,11 +1996,12 @@ class CustomObject(CRMSearchStream, ABC):
|
||||
primary_key = "id"
|
||||
scopes = {"crm.schemas.custom.read", "crm.objects.custom.read"}
|
||||
|
||||
def __init__(self, entity: str, schema: Mapping[str, Any], fully_qualified_name: str, **kwargs):
|
||||
def __init__(self, entity: str, schema: Mapping[str, Any], fully_qualified_name: str, custom_properties: Mapping[str, Any], **kwargs):
|
||||
super().__init__(**kwargs)
|
||||
self.entity = entity
|
||||
self.schema = schema
|
||||
self.fully_qualified_name = fully_qualified_name
|
||||
self.custom_properties = custom_properties
|
||||
|
||||
@property
|
||||
def name(self) -> str:
|
||||
@@ -1971,8 +2012,8 @@ class CustomObject(CRMSearchStream, ABC):
|
||||
|
||||
@property
|
||||
def properties(self) -> Mapping[str, Any]:
|
||||
# do not make extra api queries
|
||||
return self.get_json_schema()["properties"]["properties"]["properties"]
|
||||
# do not make extra api calls
|
||||
return self.custom_properties
|
||||
|
||||
|
||||
class EmailSubscriptions(Stream):
|
||||
|
||||
@@ -297,6 +297,8 @@ class TestSplittingPropertiesFunctionality:
|
||||
assert len(stream_records) == sum([len(ids) for ids in record_ids_paginated])
|
||||
for record in stream_records:
|
||||
assert len(record["properties"]) == NUMBER_OF_PROPERTIES
|
||||
properties = [field for field in record if field.startswith("properties_")]
|
||||
assert len(properties) == NUMBER_OF_PROPERTIES
|
||||
|
||||
def test_stream_with_splitting_properties_with_pagination(self, requests_mock, common_params, api, fake_properties_list):
|
||||
"""
|
||||
@@ -329,6 +331,8 @@ class TestSplittingPropertiesFunctionality:
|
||||
assert len(stream_records) == 5
|
||||
for record in stream_records:
|
||||
assert len(record["properties"]) == NUMBER_OF_PROPERTIES
|
||||
properties = [field for field in record if field.startswith("properties_")]
|
||||
assert len(properties) == NUMBER_OF_PROPERTIES
|
||||
|
||||
def test_stream_with_splitting_properties_with_new_record(self, requests_mock, common_params, api, fake_properties_list):
|
||||
"""
|
||||
|
||||
@@ -30,6 +30,7 @@ from source_hubspot.streams import (
|
||||
Owners,
|
||||
OwnersArchived,
|
||||
Products,
|
||||
RecordUnnester,
|
||||
TicketPipelines,
|
||||
Tickets,
|
||||
Workflows,
|
||||
@@ -402,6 +403,7 @@ def expected_custom_object_json_schema():
|
||||
"updatedAt": {"type": ["null", "string"], "format": "date-time"},
|
||||
"archived": {"type": ["null", "boolean"]},
|
||||
"properties": {"type": ["null", "object"], "properties": {"name": {"type": ["null", "string"]}}},
|
||||
"properties_name": {"type": ["null", "string"]},
|
||||
},
|
||||
}
|
||||
|
||||
@@ -410,7 +412,7 @@ def test_custom_object_stream_doesnt_call_hubspot_to_get_json_schema_if_availabl
|
||||
requests_mock, custom_object_schema, expected_custom_object_json_schema, common_params
|
||||
):
|
||||
stream = CustomObject(entity="animals", schema=expected_custom_object_json_schema,
|
||||
fully_qualified_name="p123_animals", **common_params)
|
||||
fully_qualified_name="p123_animals", custom_properties={"name": {"type": ["null", "string"]}}, **common_params)
|
||||
|
||||
adapter = requests_mock.register_uri(
|
||||
"GET", "/crm/v3/schemas", [{"json": {"results": [custom_object_schema]}}])
|
||||
@@ -446,7 +448,85 @@ def test_contacts_merged_audit_stream_doesnt_call_hubspot_to_get_json_schema(req
|
||||
def test_get_custom_objects_metadata_success(requests_mock, custom_object_schema, expected_custom_object_json_schema, api):
|
||||
requests_mock.register_uri(
|
||||
"GET", "/crm/v3/schemas", json={"results": [custom_object_schema]})
|
||||
for (entity, fully_qualified_name, schema) in api.get_custom_objects_metadata():
|
||||
for (entity, fully_qualified_name, schema, custom_properties) in api.get_custom_objects_metadata():
|
||||
assert entity == "animals"
|
||||
assert fully_qualified_name == "p19936848_Animal"
|
||||
assert schema == expected_custom_object_json_schema
|
||||
|
||||
|
||||
@pytest.mark.parametrize(
|
||||
"input_data, unnest_fields, expected_output",
|
||||
(
|
||||
(
|
||||
[{"id": 1, "createdAt": "2020-01-01", "email": {"from": "integration-test@airbyte.io", "to": "michael_scott@gmail.com"}}],
|
||||
[],
|
||||
[{"id": 1, "createdAt": "2020-01-01", "email": {"from": "integration-test@airbyte.io", "to": "michael_scott@gmail.com"}}]
|
||||
),
|
||||
(
|
||||
[
|
||||
{
|
||||
"id": 1,
|
||||
"createdAt": "2020-01-01",
|
||||
"email": {"from": "integration-test@airbyte.io", "to": "michael_scott@gmail.com"},
|
||||
"properties": {"phone": "+38044-111-111", "address": "31, Cleveland str, Washington DC"}
|
||||
}
|
||||
],
|
||||
[],
|
||||
[
|
||||
{
|
||||
"id": 1,
|
||||
"createdAt": "2020-01-01",
|
||||
"email": {"from": "integration-test@airbyte.io", "to": "michael_scott@gmail.com"},
|
||||
"properties": {"phone": "+38044-111-111", "address": "31, Cleveland str, Washington DC"},
|
||||
"properties_phone": "+38044-111-111",
|
||||
"properties_address": "31, Cleveland str, Washington DC"
|
||||
}
|
||||
]
|
||||
),
|
||||
(
|
||||
[
|
||||
{
|
||||
"id": 1,
|
||||
"createdAt": "2020-01-01",
|
||||
"email": {"from": "integration-test@airbyte.io", "to": "michael_scott@gmail.com"},
|
||||
}
|
||||
],
|
||||
["email"],
|
||||
[
|
||||
{
|
||||
"id": 1,
|
||||
"createdAt": "2020-01-01",
|
||||
"email": {"from": "integration-test@airbyte.io", "to": "michael_scott@gmail.com"},
|
||||
"email_from": "integration-test@airbyte.io",
|
||||
"email_to": "michael_scott@gmail.com",
|
||||
}
|
||||
]
|
||||
),
|
||||
(
|
||||
[
|
||||
{
|
||||
"id": 1,
|
||||
"createdAt": "2020-01-01",
|
||||
"email": {"from": "integration-test@airbyte.io", "to": "michael_scott@gmail.com"},
|
||||
"properties": {"phone": "+38044-111-111", "address": "31, Cleveland str, Washington DC"}
|
||||
}
|
||||
],
|
||||
["email"],
|
||||
[
|
||||
{
|
||||
"id": 1,
|
||||
"createdAt": "2020-01-01",
|
||||
"email": {"from": "integration-test@airbyte.io", "to": "michael_scott@gmail.com"},
|
||||
"email_from": "integration-test@airbyte.io",
|
||||
"email_to": "michael_scott@gmail.com",
|
||||
"properties": {"phone": "+38044-111-111", "address": "31, Cleveland str, Washington DC"},
|
||||
"properties_phone": "+38044-111-111",
|
||||
"properties_address": "31, Cleveland str, Washington DC"
|
||||
}
|
||||
]
|
||||
)
|
||||
)
|
||||
)
|
||||
def test_records_unnester(input_data, unnest_fields, expected_output):
|
||||
unnester = RecordUnnester(fields=unnest_fields)
|
||||
assert list(unnester.unnest(input_data)) == expected_output
|
||||
|
||||
@@ -200,16 +200,34 @@ Now that you have set up the Hubspot source connector, check out the following H
|
||||
|
||||
[Build a single customer view with open-source tools](https://airbyte.com/tutorials/single-customer-view)
|
||||
|
||||
## Unnesting top level properties
|
||||
|
||||
Since version 1.5.0, in order to not make the users query their destinations for complicated json fields, we duplicate most of nested data as top level fields.
|
||||
For instance:
|
||||
|
||||
`{"id": 1, "updatedAt": "2020-01-01", "properties": {"hs_note_body": "World's best boss", "hs_created_by": "Michael Scott"}}`
|
||||
|
||||
becomes
|
||||
|
||||
`{
|
||||
"id": 1,
|
||||
"updatedAt": "2020-01-01",
|
||||
"properties": {"hs_note_body": "World's best boss", "hs_created_by": "Michael Scott"},
|
||||
"properties_hs_note_body": "World's best boss",
|
||||
"properties_hs_created_by": "Michael Scott"
|
||||
}`
|
||||
|
||||
## Changelog
|
||||
|
||||
| Version | Date | Pull Request | Subject |
|
||||
| :------ | :--------- | :------------------------------------------------------- | :--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
|
||||
| 1.4.1 | 2023-08-22 | [29715](https://github.com/airbytehq/airbyte/pull/29715) | Fix python package configuration stream |
|
||||
| 1.4.0 | 2023-08-11 | [29249](https://github.com/airbytehq/airbyte/pull/29249) | Add `OwnersArchived` stream |
|
||||
| 1.3.3 | 2023-08-10 | [29248](https://github.com/airbytehq/airbyte/pull/29248) | Specify `threadId` in `engagements` stream to type string |
|
||||
| 1.3.2 | 2023-08-10 | [29326](https://github.com/airbytehq/airbyte/pull/29326) | Add primary keys to streams `ContactLists` and `PropertyHistory` |
|
||||
| 1.3.1 | 2023-08-08 | [29211](https://github.com/airbytehq/airbyte/pull/29211) | Handle 400 and 403 errors without interruption of the sync |
|
||||
| 1.3.0 | 2023-08-01 | [28909](https://github.com/airbytehq/airbyte/pull/28909) | Add handling of source connection errors |
|
||||
|:--------|:-----------|:---------------------------------------------------------|:-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
|
||||
| 1.5.0 | 2023-09-11 | [30322](https://github.com/airbytehq/airbyte/pull/30322) | Unnest stream schemas |
|
||||
| 1.4.1 | 2023-08-22 | [29715](https://github.com/airbytehq/airbyte/pull/29715) | Fix python package configuration stream |
|
||||
| 1.4.0 | 2023-08-11 | [29249](https://github.com/airbytehq/airbyte/pull/29249) | Add `OwnersArchived` stream |
|
||||
| 1.3.3 | 2023-08-10 | [29248](https://github.com/airbytehq/airbyte/pull/29248) | Specify `threadId` in `engagements` stream to type string |
|
||||
| 1.3.2 | 2023-08-10 | [29326](https://github.com/airbytehq/airbyte/pull/29326) | Add primary keys to streams `ContactLists` and `PropertyHistory` |
|
||||
| 1.3.1 | 2023-08-08 | [29211](https://github.com/airbytehq/airbyte/pull/29211) | Handle 400 and 403 errors without interruption of the sync |
|
||||
| 1.3.0 | 2023-08-01 | [28909](https://github.com/airbytehq/airbyte/pull/28909) | Add handling of source connection errors |
|
||||
| 1.2.0 | 2023-07-27 | [27091](https://github.com/airbytehq/airbyte/pull/27091) | Add new stream `ContactsMergedAudit` |
|
||||
| 1.1.2 | 2023-07-27 | [28558](https://github.com/airbytehq/airbyte/pull/28558) | Improve error messages during connector setup |
|
||||
| 1.1.1 | 2023-07-25 | [28705](https://github.com/airbytehq/airbyte/pull/28705) | Fix retry handler for token expired error |
|
||||
|
||||
Reference in New Issue
Block a user