July was a big month. We added four new connectors (Gmail, Toast Analytics, HTTP File, and Webhooks), brought ClickHouse online as a destination, and opened up Reverse ETL to the Weld Connect API and MCP Server so AI assistants and custom integrations can activate warehouse data without touching the UI. GitHub sync got a lot smarter, deduplication now works across an entire connection, and we shipped updates to Shopify, TikTok Shop, Amazon, Xero, Stripe, and more.
Here's everything new and improved in Weld this month.
New Features
The Weld MCP Server, in Claude Code
The Weld MCP Server connects your AI agent — Claude Code, Cursor, and more — directly to your Weld workspace, so you can build and manage pipelines in plain language instead of clicking through the UI. Here it is setting up a new connector straight from Claude Code:
Reverse ETL via the Weld Connect API & MCP Server
Reverse ETL syncs can now be created, updated, and managed through the Weld Connect API and the MCP Server, so AI assistants and custom integrations can activate warehouse data into downstream tools programmatically. Everything you can do with a Reverse ETL Sync in the UI is now available through the API and MCP server, across three areas:
Manage syncs
| Tool / endpoint | What it does |
|---|---|
list_reverse_etl_syncs · get_reverse_etl_sync | List all syncs, or fetch one |
create_reverse_etl_sync · update_reverse_etl_sync · delete_reverse_etl_sync | Create, update, and delete syncs |
activate_reverse_etl_sync · deactivate_reverse_etl_sync | Turn a sync's schedule on or off |
get_reverse_etl_object_types · get_reverse_etl_available_operations | Discover destination object types and their write operations |
get_reverse_etl_destination_schema · get_reverse_etl_settings_schema | Resolve mappable properties and the settings schema |
request_reverse_etl_sync_run | Trigger an on-demand run |
Inspect runs
| Tool / endpoint | What it does |
|---|---|
list_reverse_etl_sync_runs · get_reverse_etl_sync_run | List a sync's runs, or fetch one |
Recover failed records
| Tool / endpoint | What it does |
|---|---|
get_reverse_etl_sync_failed_record_errors · get_reverse_etl_sync_failed_record_count | List unresolved record errors and their count |
retry_failed_reverse_etl_sync_records · retry_all_failed_reverse_etl_sync_records | Retry specific records, or all of them |
Attach Transforms & ELT Syncs to Orchestrations
Transforms (models) and ELT syncs can now be attached to and detached from an orchestration workflow via the Weld Connect API and MCP Server, so they run as part of that workflow instead of on their own schedule. Detaching cleanly reverts a transform or sync to its previous schedule.
GitHub Sync Gets Self-Healing
With Weld's GitHub sync, your data models live in a GitHub repository and are managed as code — changes flow between your repo and Weld with full version history, review, and rollback. This month we made that sync far more resilient.
It now surfaces and recovers from materialization problems instead of failing silently. When a sync commits model changes to your repository but a model fails to materialize in the warehouse, the sync is marked Partial and lists exactly which models are affected — so one broken model no longer leaves you guessing about the state of everything else.
Three new capabilities make syncs self-healing:
- Validate on sync: every sync now checks for downstream and stale breakage before it reaches production, and respects each model's
config()materialization and schedule settings, warning you when a materialization type isn't supported. - Retry failed models: re-run just the models that failed to materialize in a Partial sync, straight from the sync detail view, without re-running the whole sync.
- Rebuild out-of-date models: reconcile every published model whose warehouse object has drifted from its query (including models left stale by a later push that never re-touched them) in one click, without re-reading the repo or creating a new commit.

Deduplication Across Streams
Connectors can now remove duplicate rows across all synced data for a connection, not just within a single file or batch. Deduplication is configurable per connector and matches rows either on the configured primary-key fields or on a whole-row checksum, so identical records that arrive across multiple files, streams, or syncs are collapsed into a single row.
Pause & Resume Individual Tables
You can now pause and resume the sync schedule for individual tables within a connection, without pausing the entire sync. This is useful for temporarily stopping a problematic or unnecessary table while the rest of the connection keeps syncing normally.
Downloads Sidebar
CSV exports from model previews and audit logs now run in the background and appear in a new downloads sidebar, so you can keep working while large exports are prepared. The sidebar shows each download's status, lets you cancel in-progress exports, and provides a download link once the file is ready.

More platform improvements
- Start date presets: The start date picker for limiting historical data on an ELT sync now includes quick-pick presets (Today, 30/90 days ago, this year, and the last three calendar years) plus a Clear action.
- Jump to a model in the sidebar: Opening a model from search, ⌘K, or a saved draft now expands its folder path in the model editor sidebar and scrolls it into view automatically.
- Create Custom Reports via MCP: A new
create_custom_reportstool lets AI assistants create GAQL (Google Ads) and ShopifyQL (Shopify) custom reports and attach them to ELT syncs in a single, batchable call.
New Destinations
ClickHouse
ClickHouse is now available as a Weld ELT destination. Sync data from any source into ClickHouse Cloud or a self-hosted instance over its HTTP interface, with append, merge, and full-copy load strategies and automatic schema evolution as your source schemas change.
New Connectors
Gmail
Gmail is now available as a Weld connector. Sync your mailbox (profile, labels, threads, and messages) into your data warehouse via OAuth, with incremental syncs for threads and messages. Gmail also supports Reverse ETL: send a SQL or dbt model on a schedule as a file attachment (CSV, Parquet, NDJSON, or JSON array) to the recipient email addresses you configure, straight from your connected Gmail account.

9 total changes
| Table/column | Change type | Notes |
|---|---|---|
profile | New stream | |
label | New stream | |
thread | New stream | |
message | New stream | |
message | ||
message_label | New table | |
message_classification_label_value | New table | |
message_part | New table | |
message_classification_label_value | ||
message_classification_label_value_field | New table | |
message_part | ||
message_part_header | New table | |
Toast Analytics
Toast Analytics provides pre-aggregated daily analytics across your restaurant locations: sales, checks, labor, menu performance, and payouts. The connector syncs data per restaurant, per business day, and supports historical backfill.
13 total changes
| Table/column | Change type | Notes |
|---|---|---|
analytics_restaurants_information | New table | Active restaurant locations accessible via your partner credentials |
analytics_aggregated_sales | New table | Daily aggregated sales metrics per restaurant — guest count, order counts, net/gross sales, discounts, voids, refunds, and hourly labor summary |
analytics_check | New table | Individual check-level data including totals, discounts, taxes, tips, and gratuity |
analytics_labor | New table | Daily labor totals per restaurant — hours, costs, and sales-per-labor-hour |
analytics_labor_by_job | New table | Daily labor broken down by job — hours, costs, and sales efficiency |
analytics_labor_by_employee | New table | Daily labor broken down by employee — hours, costs, and employee details |
analytics_menu | New table | Daily menu-level sales performance — quantities sold, revenue, discounts, voids, and waste |
analytics_menu_by_menu | New table | Daily sales performance grouped by menu |
analytics_menu_by_menu_item | New table | Daily sales performance grouped by menu item |
analytics_payout_by_settled_date | New table | Payout summary by settlement date — transaction count, payment/refund amounts, fees, withholding, and payout status |
analytics_payout_by_payments | New table | Individual payment-level payout records including card brand, type, tip, and gratuity |
analytics_payout_by_sales_date | New table | Payout summary aggregated by sales date |
analytics_guest_by_payment | New table | Guest visit data linked to individual payments, including card fingerprint for repeat-guest analysis |
Explore Toast Analytics documentation →
HTTP File
The HTTP File connector fetches a single CSV or NDJSON file from any HTTPS URL and loads it into your destination, with no server, storage credentials, or file-transfer protocol required. Point Weld at a data export endpoint or a report generated by another system, add an optional authentication header if the URL is gated behind an API key, and Weld downloads it on each sync.

Explore HTTP File documentation →
Webhooks
The new Webhooks connector lets any system push data into your warehouse — no polling required. Name a table and Weld gives it its own endpoint URL; every POST request sent there becomes a row. Add one table per event type, and choose how payloads are stored: Unpacked parses the JSON and infers a schema, or Packed keeps each payload as a single stringified JSON value.

Explore Webhooks documentation →
Connector Updates
Shopify: Metaobjects, Balance Transactions & Payouts
Shopify now syncs a Metaobject stream, covering custom metaobject definitions like store locations, brands, or FAQs, so you can query custom Shopify data structures directly from your warehouse. Stores using Shopify Payments also get new Balance Transactions and Payouts streams, giving you visibility into individual payment transactions and payout batches.
5 total changes
| Table/column | Change type | Notes |
|---|---|---|
metaobject | New stream | |
balance_transaction | New stream | |
payout | New stream | |
metaobject | ||
metaobject_field | New table | |
balance_transaction | ||
balance_transaction_adjustments_orders | New table | |
TikTok Shop: Seller Affiliate Orders & Return Orders
TikTok Shop adds a Seller Affiliate Order stream, covering affiliate order status, commission rates, and per-SKU commission, refund, and return details, plus a Return Orders stream with return status, reasons, shipping fee and discount breakdowns, and line-level detail.
9 total changes • 1 possible breaking change
| Table/column | Change type | Notes |
|---|---|---|
seller_affiliate_order | New stream | |
return_order | New stream | |
seller_affiliate_order | ||
seller_affiliate_order_skus | New table | |
affiliate_creator_order_sku | ||
commission and fee amount columns | Updated Column | Fields such as price_amount, estimated_commission_amount, and actual_commission_amount changed from string to double. |
return_order | ||
return_order_line_items | New table | |
return_order_seller_next_action_response | New table | |
return_order_discount_amount | New table | |
return_order_shipping_fee_amount | New table | |
return_order_line_items | ||
return_order_sub_line_items | New table | |
Amazon Selling Partner: Fulfillment Orders & Faster Reports
Amazon Selling Partner now syncs Fulfillment Order data, including shipments, shipment items, package tracking, returns, and payment information. Report-based streams also generate faster: Weld now fetches ASINs and other report data through Amazon's report endpoint with reduced polling delays and parallel marketplace requests, and the Vendor Central catalog items stream now syncs incrementally.
9 total changes
| Table/column | Change type | Notes |
|---|---|---|
fulfillment_order | New stream | |
fulfillment_order | ||
fulfillment_order_item | New table | |
fulfillment_shipment | New table | |
fulfillment_return_item | New table | |
fulfillment_return_authorization | New table | |
fulfillment_payment_information | New table | |
fulfillment_shipment | ||
fulfillment_shipment_item | New table | |
fulfillment_shipment_package_tracking | New table | |
fulfillment_shipment_package_tracking | ||
fulfillment_shipment_package_tracking_event | New table | |
Xero: Five New Streams
Xero now supports five additional streams: Accounts, Bank Transactions, Budgets, Credit Notes, and Tracking Categories, with nested line items, allocations, and payments where applicable.
Bank Transactions and Budgets rely on new Xero scopes. Reconnect the Xero account to grant them if you'd like to sync those streams.
14 total changes
| Table/column | Change type | Notes |
|---|---|---|
account | New stream | |
bank_transaction | New stream | |
budget | New stream | |
credit_note | New stream | |
tracking_category | New stream | |
bank_transaction | ||
bank_transaction_line_item | New table | Line items for each bank transaction |
budget | ||
budget_tracking | New table | |
budget_line | New table | |
budget_tracking | ||
budget_tracking_option | New table | |
budget_line | ||
budget_balance | New table | |
credit_note | ||
credit_note_payment | New table | |
credit_note_allocation | New table | |
credit_note_line_item | New table | |
tracking_category | ||
tracking_category_option | New table | |
Stripe: Faster Incremental Event Syncs
The Stripe Event stream now syncs incrementally, only fetching events created since the last sync instead of re-fetching the full event history each time. This makes syncs faster and reduces load on your Stripe account, especially for high-volume workspaces.
Google Drive & OneDrive: Reverse ETL Destinations
Google Drive and Microsoft OneDrive can now be used as Reverse ETL destinations. Every sync writes a new file containing the full dataset from your source model. Choose CSV, Parquet, NDJSON, or JSON array, with optional gzip compression.
Linear: Create Customers via Reverse ETL
Linear is now supported as a Reverse ETL destination for creating customers: push customer records from your warehouse models straight into Linear.
Additional Connector Updates
- Amazon Vendor Central: New Purchase Order Status stream with item-level status, ordered quantity, and acknowledgement details.
- QuickBooks: New Profit & Loss report stream with period-level P&L by account, plus a summary grouped by section.
- Klaviyo: The Events stream now periodically re-syncs a short lookback window, catching events Klaviyo reports late or updates after they were first synced.
- LaunchDarkly: The Context stream is now incrementally synced for faster syncs, and gained a new Context Attribute table.
- MySQL: New configurable connection timeout for connections to slower or heavily-loaded databases.
- SFTP: Optional deduplication of rows across all synced files, not just within a single file.
Bug Fixes
- Lineage view freezing on large workspaces: Opening the lineage graph for a large workspace no longer freezes the browser tab. Tracing dependencies now runs in linear time instead of blowing up on graphs with many diamond-shaped dependency patterns.
- Excel Reverse ETL: Fixed a
NonBlankCellOffSheeterror by clearing the target columns of the table before each run. - ELT append mode (Postgres): Selecting Append mode on an incremental Postgres sync no longer silently flips back to Merge when the stream has no primary keys.
- Klaviyo deleted flows: Flow reports no longer fail when a flow has been deleted and returns a null date field.
- Shopify ShopifyQL: Corrected the data types returned for ShopifyQL date columns.
On the Blog: Shopify Sales Reporting
Running Shopify? Two recent guides walk through building a sales report that matches your Shopify admin exactly — gross sales, discounts, reversals, net and total sales:
- How to Build a Shopify Sales Report with SQL — reconstruct the numbers in plain SQL, with a free BigQuery template to start from.
- Shopify dbt Models: A Production Sales Report That Matches the Admin — a warehouse-native dbt blueprint: the event grain that makes the numbers reconcile, multi-store staging, multi-currency handling, and a test suite to keep it accurate.
That's a wrap for July! For the full technical details, check out the July 2026 release notes.
Questions or feedback? Reach out to us anytime.








