Why qPipe
Everything you need to trust your marketing data
qPipe handles extraction, flattening, deduplication, scheduling, backfills, and monitoring — so your team gets reliable data without maintaining pipelines.
Connect once
Securely connect via OAuth2, service accounts, or API keys. Tokens are encrypted (AES-256-GCM) and refreshed automatically — connect once and forget it.
Prebuilt schemas
60+ predefined, reusable report schemas across platforms — campaigns, ad groups, keywords, stats, conversions and more. No field-mapping from scratch.
Your warehouse
Load to BigQuery, ClickHouse, or Supabase/PostgreSQL — or several at once. Tables are auto-created and data is flattened into clean tabular rows.
Reliable by design
Full job history, live progress, credential health tracking, and email failure digests so you know the moment something needs attention.
Built for teams
Organize work into accounts with owner / editor / viewer roles. Owners can share credentials into accounts without ever exposing the secret.
Always fresh
Cron-based incremental syncs, separate full-refresh schedules, and automatic historical backfills that walk back to any start date.
How it works
From scattered platforms to a warehouse in three steps
Connect
Add a credential for a platform — OAuth in a popup, or paste an API key. Tokens are encrypted and auto-refreshed. Connect once.
Configure a data source
Pick the platform account(s), choose a report schema, set your lookback window and (optionally) a destination and schedule. Run a test extraction instantly.
Let it run
qPipe syncs on schedule, backfills history, deduplicates, and lands clean rows in your warehouse. Watch progress and health from the dashboard.
Integrations
15+ sources across ads, analytics, search, CRM & finance
Each integration has a full credential flow, account listing, prebuilt schemas, and extraction — with more added regularly.
Google Ads
OAuth2 (recursive MCC hierarchy)
Customer, Campaigns, Ad Groups, Keywords, Search Terms, Stats + Conversion Stats, Change Log
Meta Ads
OAuth2 (Business Manager hierarchy)
Campaigns, Ad Sets, Ads, Ad Creatives, Stats incl. purchases & purchase value
TikTok Ads
OAuth2
Campaigns, Campaign Stats, Campaign Conversion Stats
Microsoft Ads
OAuth2 via Azure AD
Campaigns, Ad Groups, Stats + Conversion Stats
Pinterest Ads
OAuth2
Campaign Stats, Ad Group Stats, Ad Stats
LinkedIn Ads
OAuth2
Campaign Stats
Google Analytics 4
OAuth2 (analytics.readonly)
Session Stats, Key Events, Ecommerce Transactions
Google Search Console
OAuth2 (webmasters.readonly)
Query, Page, Country Performance, Full Breakdown
Facebook Page Insights
Shared Meta OAuth2
Page Insights
Upsales
API key
Users, Companies, Contacts, Opportunities, Orders, Products, Activities and more (14 schemas)
Kleer
API key (token + company)
Clients, Suppliers, Client/Supplier Invoices (+ rows), Payroll, Expenses
Qvalento Budget
API key (Bearer)
Budget Entries, Budget Daily
CJ Affiliate
API key (PAT + advertiser CID)
Advertiser Commissions, Commission Items (SKU-level)
Currencylayer
API key
Historical exchange rates
Google Sheets
OAuth2 (spreadsheets.readonly)
Custom mapping from any sheet / range (no fixed schema)
Your data, your warehouse
Load clean data where you already work
Send one source to multiple destinations at once. Tables are auto-created and rows are flattened for analytical databases and BI tools. You own the data.
Google BigQuery
OAuth2 or Service Account
Auto-creates dataset & table, partitioned, with delete-before-load dedup.
bigquery://project.marketing.ads_stats
ClickHouse
Username / password (SSL)
ReplacingMergeTree engine, bulk insert, automatic dedup by key.
clickhouse://host:8443/marketing
Supabase / PostgreSQL
Direct Postgres connection (SSL)
Upsert (ON CONFLICT), auto-creates tables with keys, batched inserts.
postgres://db:5432/marketing
On the roadmap: Snowflake and S3/GCS (Parquet) — more destinations coming.
Monitoring & reliability
Know the moment something needs attention
qPipe is built for high-volume pulls, with each extraction running in its own isolated compute instance — and full visibility into every job.
Scheduled syncs & backfills
Run a lightweight daily incremental sync and a periodic full refresh independently. Automatic backfills walk back to any start date.
Dashboard & job history
Per-account overview of source counts, rows extracted/loaded, recent jobs, and active backfills — every run recorded with status and duration.
Credential health
Failures are tracked; affected credentials and data sources are flagged, then cleared automatically on re-authentication.
Email failure digests
Configurable per user (immediate, daily, or weekly, with timezone), aggregating failures across all of your accounts.
Smart rate-limit handling
Adaptive throttling, exponential backoff with jitter, and scheduler-level retry escalation keep syncs within platform limits.
Schema drift protection
Sources run against a pinned schema snapshot. Additive changes apply automatically; breaking changes require an explicit, reviewed upgrade.
Security & trust
Your secrets stay secret
Security is built into every layer — from encrypted credentials to tenant isolation. qPipe orchestrates extraction and loading; your reporting data lands in your destination, and only run metadata is retained.
AES-256-GCM
encryption for every stored credential
Encrypted credentials
All tokens, API keys, and connection strings are encrypted with AES-256-GCM before storage. Secrets never appear in API responses, logs, or error messages.
Automatic token refresh
OAuth tokens are refreshed proactively before expiry, at point of use.
Managed identity
Authentication is handled by Clerk — email/password, Google OAuth, and passkeys/MFA supported.
Row-level security
Data is isolated per tenant at the database layer (Postgres RLS). There is no cross-tenant override anywhere.
Credential sharing without exposure
Owners can share a credential into an account so teammates use it by name — but never read or export the secret.
Least-privilege API tokens
Programmatic tokens are scoped (read / run), limited to chosen accounts, expirable, revocable, and stored only as a hash.
Developer API
Automate pipelines with a REST API
A versioned /api/v1 surface with token auth lets you list accounts, data sources, jobs, schedules and backfills — and trigger syncs from CI, orchestrators, or dashboards.
- Scoped tokens (read / run), limited to chosen accounts, expirable and revocable.
- Created and managed from the in-app Developer → API page, with a built-in reference and curl examples.
Available on Enterprise plans. Talk to sales to enable it.
1# Trigger a sync from CI, an orchestrator, or a dashboard2curl -X POST https://app.qpipe.io/api/v1/data-sources/ds_123/sync \3-H "Authorization: Bearer qp_live_..." \4-H "Content-Type: application/json"56# List recent jobs with their status7curl https://app.qpipe.io/api/v1/jobs \8-H "Authorization: Bearer qp_live_..."