Outreach Integration

Push your Superkabe cold call list straight into an Outreach sequence. One click from the cold-call list page; idempotent on email; no CSV juggling.

What this integration does

  • Cold-call-list export. The cold-call list page gets an Export to Outreach button alongside Download CSV. Click it to push every prospect on the list into a chosen Outreach sequence under a chosen mailbox.
  • Pick or create. The sequence dropdown lists every enabled sequence in your Outreach workspace. The first option is + Create new sequence, which spins up an empty sequence inline — you fill the steps inside Outreach's editor.
  • Idempotent. Prospects are upserted on email; re-exporting the same list never creates duplicates. Already-in-sequence prospects are skipped, not re-added.
  • Background-safe. Each export runs as a background job — close the tab and Superkabe finishes the push. Status updates land in the recent-exports table on the Outreach integration page.

One-time setup (admin)

You only do this once per Superkabe deployment. Customers connect to your central Outreach OAuth app — they never have to register their own.

1. Register a Superkabe OAuth app in Outreach

  1. Sign in at accounts.outreach.io with the developer-account user that should own the app.
  2. App Management → New OAuth Application → name it "Superkabe", add a logo + description.
  3. Set the Redirect URI to:
    https://api.superkabe.com/api/integrations/outreach/callback
  4. Add OAuth scopes:
    • profile.read
    • prospects.read + prospects.write
    • sequences.read + sequences.write
    • sequenceStates.write
    • mailboxes.read
    • tags.read
  5. Save → grab the Application ID and Application Secret from the app detail page.

2. Set the env vars

Add these to Railway (production) or your .env (local):

OUTREACH_CLIENT_ID=…
OUTREACH_CLIENT_SECRET=…
OUTREACH_REDIRECT_URI=https://api.superkabe.com/api/integrations/outreach/callback

Restart the backend. The first user to click Connect Outreach on the integrations page is bounced to Outreach's consent screen, approves the scopes, and lands back on Superkabe with a green Connected badge.

User flow (per customer)

  1. Connect. Dashboard → Integrations → Outreach → Connect Outreach. The user approves the OAuth scopes once. Outreach rotates refresh tokens on every refresh — Superkabe writes the new tokens back automatically.
  2. Open the cold call list. Either Today's Call List or any Custom List you've generated. Click Export to Outreach next to Download CSV.
  3. Pick (or create) a sequence. The dropdown shows your enabled sequences with their active-prospect count. Pick one, or pick + Create new sequence… and name it inline. The new sequence is created empty — you fill the steps inside Outreach's editor.
  4. Pick a mailbox. Sequences run under a specific Outreach mailbox; pick the one to send through.
  5. Export. Click Export. The job is queued and runs in the background. Watch progress in the recent-exports table on the Outreach integration page (or refresh the cold-call list page).

Limits + behavior

  • Per-export cap. 5,000 prospects per export. Larger lists should be split — Outreach's own per-call rate limits make a single 50K push impractical anyway.
  • Tags. Every prospect Superkabe creates is tagged Superkabe in Outreach so you can filter for them later.
  • Re-exports. Re-exporting the same list to the same sequence is a no-op for already-in prospects. Prospects in other sequences aren't affected.
  • Disconnect wipes tokens. Disconnect from the integration page wipes the encrypted access + refresh tokens and cancels any in-flight exports. Prospects already pushed to Outreach stay in Outreach.
  • Rate-limits. Outreach returns 429 with Retry-After when you exceed your account-wide budget. Superkabe honors the header once before failing the chunk; the worker resumes from the next prospect on the next tick.

Privacy + compliance

When you export from Superkabe, you're responsible for ensuring your prospects have a lawful basis (consent, legitimate interest, contract) for outbound contact under your jurisdiction's rules — Superkabe is the processor, you're the controller of both the source data and what happens once it lands in Outreach.

Superkabe's suppression list still applies on the Superkabe side — leads marked unsubscribed_at in Superkabe will not be eligible for the cold call list in the first place, so they never reach Outreach. If a prospect unsubscribes inside Outreach later, that flag stays in Outreach; we don't pull data back from this integration.