View Categories

Connect REST APIs to Excel Without VBA or Power Query

VBA Macros & M Code Write, debug, maintain manually
MANUAL
SQL Over API Data SELECT, JOIN, aggregate in Excel
SQL
EXCEL + API NO VBA REQUIRED

Call REST APIs from Excel. No VBA Required.

Stop wrestling with VBA macros and Power Query M code to get API data into Excel. Query Streams gives you 6 pre-built API connectors with SQL-queryable tables, encrypted caching, a pre-built query library, and Nova AI — delivered to both Microsoft Excel and Google Sheets.

VBA-Free 6 Connectors SQL Over APIs Query Library Nova AI

Query Streams is a secure, real-time data integration platform that connects REST API data to Microsoft Excel and Google Sheets through SQL — no VBA macros, no Power Query M code, no manual JSON parsing. Learn more at QueryStreams.com and sign up for free to start querying APIs with SQL directly from your Excel workbook.

The API-in-Excel Problem

Excel users increasingly need data from REST APIs — Stripe payment records, HubSpot CRM contacts, Shopify orders, Google Analytics traffic metrics. According to Postman’s State of the API Report, the average organization now manages dozens of API integrations. But getting that API data into an Excel spreadsheet has always meant choosing between two imperfect options: VBA macros or Power Query. Both require significant technical effort, and neither gives you SQL-level querying over the results. If you have been searching for a way to call an API from Excel without writing code, you are not alone.

VBA Macros: Fragile and Hard to Maintain

The classic way to call a REST API from Excel is VBA. You write Sub procedures using XMLHTTP or WinHTTP objects to construct HTTP requests, set headers, pass authentication tokens, send the request, and parse the JSON response. The problem: VBA has no native JSON parser, so you either install a third-party library or write your own parsing logic. Error handling is minimal — a single API schema change, an expired OAuth token, or a rate limit response can break the entire macro silently. Pagination requires manual cursor or offset logic. There is no caching, no encryption, and no way to run SQL against the results. For a one-time data pull from a single endpoint, VBA works. For production workflows that multiple team members depend on, VBA macros become a maintenance liability that only the person who wrote them can debug.

Power Query: Limited REST API Support

Power Query’s Web.Contents function can call REST APIs, but the limitations are significant for anything beyond basic GET requests. OAuth 2.0 support is incomplete — many APIs, including Stripe and HubSpot, require custom token refresh flows that Power Query’s M language handles poorly or not at all. Pagination requires recursive function calls in M code, which is non-trivial for most Excel users. There is no built-in rate limiting management. Complex JSON responses with nested arrays and objects require multiple Transform and Expand steps. And Power Query has no SQL layer — you get M language transformations, not SQL JOINs, CTEs, or window functions. Power Query is a strong tool for connecting to databases and flat files. As a REST API connector for Excel, it falls short quickly when the API requires OAuth, pagination, or nested data structures.

How Query Streams Connects REST APIs to Excel

Query Streams takes a fundamentally different approach to Excel API integration. Instead of making you write VBA macros or wrestle with Power Query M code, it provides pre-built API connectors that normalize REST API data into SQL-queryable tables. The Query Streams Network Agent runs inside your network, syncs API data into an encrypted DuckDB cache, and the Microsoft Excel add-in lets you run SQL queries against that cached data — or pick from 20-50 pre-built queries per connector without writing any SQL at all.

6 Pre-Built API Connectors

Stripe, HubSpot, Shopify, GA4, Google Search Console, and ShipStation. Authenticate once, and data flows into SQL-ready tables automatically.

Full SQL Over API Data

Write JOINs, CTEs, window functions, and aggregations against your API data. Not M code. Not VBA. Standard SQL.

Encrypted DuckDB Cache

API data syncs to an AES-256-GCM encrypted local cache. SQL queries run at database speed, not at API round-trip speed.

20-50 Pre-Built Queries

Each connector ships with a ready-to-run query library. Revenue by product, churn analysis, order fulfillment rates — no SQL editing required.

Nova AI Assistant

Describe what you need in plain English. Nova reads your API table schema, generates validated SQL, and executes it live.

Excel + Google Sheets

Native add-ins for both Microsoft Excel and Google Sheets. One platform, both spreadsheet ecosystems, shared query library.

6 Pre-Built API Connectors with Encrypted Caching

Where VBA and Power Query require you to configure every API from scratch, the Query Streams API Connector ships with 6 pre-built integrations that are ready to use in about 5 minutes each: Stripe (payments, subscriptions, invoices, refunds), HubSpot (contacts, deals, companies, pipelines), Shopify (orders, products, customers, inventory), Google Analytics 4 (traffic, events, conversions, user behavior), Google Search Console (search queries, pages, click-through rates, impressions), and ShipStation (shipments, orders, carriers, fulfillment). Each connector handles authentication, pagination, rate limiting, and data normalization automatically — the exact things that make VBA macros and Power Query M code so difficult to maintain.

All synced API data is stored in a local DuckDB cache on the Network Agent, encrypted at rest with AES-256-GCM. Per-table sync scheduling lets you set different refresh intervals for different API endpoints — sync high-priority tables like Stripe charges every 15 minutes while less critical tables sync daily. Per-table data retention gives you control over how long cached data is kept: 1 day, 7 days, 30 days, 90 days, 1 year, or forever. This architecture reduces API call volume, eliminates rate limit headaches, and means your SQL queries run against local data at database speed rather than waiting for live API round-trips. Your API credentials (tokens, keys) are stored locally on the Agent and never transmitted to the Query Streams cloud.

Beyond APIs: Query Streams also connects to 10 SQL databases — Microsoft SQL Server, PostgreSQL, MySQL, MariaDB, SQLite, Microsoft Access, Oracle, Snowflake, Google BigQuery, and DuckDB. One platform replaces both your database connector and your API data tool. Explore all supported data sources on the features hub.

SQL Over API Data: Query, Don’t Parse

The core difference between Query Streams and VBA or Power Query for REST API access in Excel is what happens after data arrives. With VBA, you get a raw JSON string that you parse character by character. With Power Query, you expand nested columns through multiple transformation steps. With Query Streams, each API’s data is automatically normalized into SQL-queryable tables. You write standard SQL — JOINs across API endpoints, aggregations, window functions, CTEs, subqueries — the full SQL language against your API data.

For example, to analyze Stripe revenue by product with refund rates, a VBA approach requires multiple separate HTTP calls across different Stripe endpoints, manual JSON parsing for each response, and spreadsheet formulas to combine the results. With Query Streams, you write a single SQL query that JOINs stripe_charges, stripe_products, and stripe_refunds tables — and the result streams into your Excel workbook instantly. Query Streams also supports parallel query execution: launch multiple saved queries into multiple worksheet tabs at the same time and the Agent streams each concurrently, regardless of result size.

Nova AI: Describe Data, Get SQL

Not everyone on your team knows SQL, and not everyone should have to. Nova AI bridges the gap between plain English and validated SQL. Describe what you need — “show me Stripe revenue by product for the last 90 days with refund rates” — and Nova reads your actual API table schema, generates dialect-specific SQL, validates it, and executes the query live. Nova works with both database tables and API connector tables, so an analyst can ask questions across Stripe payment data and a PostgreSQL accounting database in the same conversation. For Excel users who have been relying on VBA macros or Power Query as their API connector, Nova eliminates the need to understand JSON structures, API documentation, or SQL syntax entirely.

Nova AI
Don’t know SQL? Nova AI builds the query for you.
Try Nova
1
Describe what
data you need
Nova
Nova reads schema
& builds the SQL
Save & run from
Excel or Sheets
I need total Stripe revenue by product for last quarter, broken down monthly. It’s for our Excel sales dashboard.
Nova
Found stripe_charges and stripe_products in your API connector schema. Here’s the query — run it to preview results, then save it to your library for your Excel dashboard.
Copy Run Save
SELECT
    p.name                          AS product,
    DATE_TRUNC('month', c.created)  AS month,
    SUM(c.amount) / 100.0           AS revenue
FROM   stripe_charges   c
JOIN   stripe_products  p ON c.product_id = p.id
WHERE  c.created >= DATE_TRUNC('quarter', NOW() - INTERVAL '3 months')
GROUP BY product, month
ORDER BY month, revenue DESC

Query Streams vs VBA vs Power Query

The comparison below shows how Query Streams’ API connector for Excel differs from VBA macros and Power Query for connecting REST APIs to a spreadsheet. VBA and Power Query offer flexibility for ad-hoc API calls, but Query Streams provides a managed, SQL-first approach with pre-built connectors, caching, and AI assistance.

Feature Query Streams VBA Macros Power Query
How you access API data SQL queries against cached, normalized tables HTTP requests in VBA code with manual JSON parsing Web.Contents in M code with manual expansion steps
API authentication Managed per connector (OAuth, API keys — automatic refresh) Manual token handling in VBA code Limited OAuth support; many APIs require workarounds
Pagination Automatic per connector Manual cursor/offset logic Recursive M functions (complex to write)
SQL support Full SQL: JOINs, CTEs, window functions, aggregations None None — M language only
Pre-built queries 20-50 per API connector in the Query Library None — write everything from scratch None — build each query manually
Local caching Encrypted DuckDB (AES-256-GCM) with configurable retention None — every call hits the live API Power Query cache (unencrypted, limited control)
Rate limiting Managed by sync scheduler with configurable intervals Manual — user must manage request timing None — user must manage manually
AI assistance Nova AI: plain English to validated, dialect-specific SQL None None
Google Sheets support Native Google Sheets add-on (same query library) N/A — Excel only N/A — Excel only
Query sharing Share interactive queries — recipients run without seeing SQL Share .xlsm macro files Share .xlsx files with embedded queries
Database support 10 SQL databases + 6 API connectors in one platform None — APIs only via custom code Various via built-in connectors
Error handling Built-in retry logic, rate limit management, error reporting Manual On Error handling in VBA M language try/otherwise blocks
Maintenance Auto-updating Network Agent; connectors maintained by Query Streams Manual code maintenance — API changes break macros Manual M code maintenance
Setup time per API ~5 minutes (authenticate and select tables) Hours (write, test, debug VBA code) 30-60 minutes (configure Web.Contents, handle pagination)
Supported APIs 6 deep integrations (Stripe, HubSpot, Shopify, GA4, GSC, ShipStation) Any REST API (manual code required) Any REST API (manual M code required)
When VBA or Power Query still makes sense: If you need to call a niche REST API that is not among Query Streams’ 6 pre-built connectors — and you are comfortable writing and maintaining code — VBA or Power Query can handle that specific endpoint. Query Streams’ API Connector is built for deep, SQL-ready integration with 6 high-demand APIs, not for broad coverage of every REST endpoint. You can also use both: Query Streams for Stripe, HubSpot, and Shopify data, and Power Query for a niche internal API.

The Query Streams Network Agent installs on Windows, Linux, or macOS and makes outbound-only connections — no inbound firewall rules needed. Deploy multiple Agents across your entire infrastructure: on-premise servers, AWS EC2, Azure VMs, Google Cloud, or any environment globally. All agents self-maintain with automatic updates and present their data sources as a unified dropdown list in the Excel add-in or Google Sheets add-on. The automation engine can also sync query results on a schedule to Airtable, Smartsheet, SeaTable, Baserow, and Anvil.Works — with both Append mode (10-150x faster incremental updates) and Full Sync mode (drift correction).

Frequently Asked Questions

Can I call a REST API from Excel without writing VBA code? +
Yes. Query Streams provides 6 pre-built API connectors (Stripe, HubSpot, Shopify, GA4, Google Search Console, ShipStation) that normalize API data into SQL-queryable tables. You access the data through the Excel add-in by selecting a saved query and clicking run — no VBA macros, no HTTP requests, no JSON parsing. Each connector also ships with 20-50 pre-built queries in the Query Library so you may not need to write SQL either.
How is Query Streams different from Power Query for REST APIs? +
Power Query can call REST APIs via Web.Contents, but it requires M code for pagination, has limited OAuth 2.0 support, and provides no SQL layer. Query Streams handles authentication, pagination, and rate limiting automatically through pre-built connectors. You query the cached data with standard SQL — JOINs, CTEs, window functions — rather than M language transformations. Query Streams also works with Google Sheets, not just Excel.
Which REST APIs does Query Streams support as pre-built connectors? +
Query Streams currently offers 6 pre-built API connectors: Stripe (payments, subscriptions, invoices), HubSpot (contacts, deals, companies), Shopify (orders, products, customers), Google Analytics 4 (traffic, events, conversions), Google Search Console (search queries, pages, click-through rates), and ShipStation (shipments, orders, carriers). Each connector normalizes API responses into SQL tables and includes pre-built queries ready to run from Excel.
Do I need to install anything to connect REST APIs to Excel? +
Yes, two components: the Query Streams Network Agent (installs on any Windows, Linux, or macOS machine in your network — takes about 5 minutes) and the Microsoft Excel add-in (installs from the Office Add-ins store). The Agent syncs API data into an encrypted local cache and the Excel add-in lets you run SQL queries against that data. You can also install the Google Sheets add-on for cross-platform access.
Can I write SQL JOINs across different API endpoints in Excel? +
Yes. Each API connector normalizes its data into multiple SQL tables (e.g., Stripe has stripe_charges, stripe_customers, stripe_products, stripe_refunds, and more). You can write JOINs across those tables, use aggregations, window functions, CTEs, and subqueries — the full DuckDB SQL dialect. You can also JOIN API connector tables with your traditional database tables if you have both connected through the same Agent.
Does Query Streams work with Google Sheets too, or just Excel? +
Query Streams has native add-ins for both Microsoft Excel and Google Sheets. They share the same query library, the same API connectors, and the same saved queries. A query you create for your Excel dashboard can be run from Google Sheets by a teammate, and vice versa. VBA macros and Power Query are Excel-only solutions; Query Streams covers both spreadsheet platforms.
How does the encrypted DuckDB API cache work? +
Each API connector syncs data from the REST API into a local DuckDB database on the Network Agent. This cache is encrypted at rest with AES-256-GCM. You configure per-table sync intervals (how often the Agent pulls fresh data from the API) and per-table data retention (how long cached data is kept: 1 day, 7 days, 30 days, 90 days, 1 year, or forever). Your SQL queries execute against this local cache at database speed — not against the live API — which eliminates latency and rate limit concerns.
Can I share API queries with team members who don’t know SQL? +
Yes. Save any query — whether it runs against a database or an API connector — and share it with anyone in your organization. The recipient opens it in the Excel add-in or Google Sheets add-on, adjusts any available filter values, and clicks run. They get live results without seeing the SQL code, schema, or API credentials. This is something VBA macros and Power Query cannot offer: the ability to share the interactive capability to run a query, not just a static data export.
Is Query Streams a good alternative to Power Query for REST APIs? +
If you use Power Query primarily as an API connector for Excel and find yourself struggling with OAuth flows, pagination logic, or M code complexity, Query Streams is a strong Power Query API alternative for the 6 supported APIs. It handles authentication, pagination, and rate limiting automatically, gives you SQL instead of M code, and adds AI query generation through Nova AI. Power Query remains excellent for connecting to databases and flat files directly within Excel; Query Streams extends your reach to both APIs and databases with a unified SQL interface.

Get Started

Get API Data in Excel — Without the VBA Headaches

Connect Stripe, HubSpot, Shopify, GA4, and more. Run SQL against cached API data. Get results in Microsoft Excel and Google Sheets — no macros, no M code, no JSON parsing.

Related guides: API Connector | Databases in Microsoft Excel | Text to SQL with Nova AI | Automation and Integration | All Features

Category: Articles

Tags: API Connector, Excel, REST API, VBA Alternative, Power Query Alternative, Stripe, HubSpot, Shopify

Meta Description: Connect REST APIs to Excel without VBA. SQL over Stripe, HubSpot, Shopify. Try free.

Updated on June 26, 2026

Powered by BetterDocs