Miles Blog Product Aug 17, 2026

Connect Miles to anything.

Paste an API key. Ask Miles in Slack. That's the whole integration. Today we're publishing fourteen recipes — Luma, Stripe, Granola, Pipedrive, Fathom, and more — no Zapier, no code.

M Miles Team · 6 min read
gtm-team Miles (Work) is online
B
brandon 9:41 AM
@Miles (Work) who registered for Thursday's AI Infra Happy Hour on Luma in the last 24 hours, and what company did they put?
M
Miles (Work) 9:41 AM
12 new registrations since yesterday morning — 9 approved, 3 pending. Companies from the registration question:
Supermicro ×3 · AMD ×2 · Vultr ×2 · WEKA · Modius · Latticework · 2 unlisted
Newest: Kim N. (AMD, 8:12 AM) · Sherry F. (Supermicro, 7:50 AM) · Cecilia L. (vCluster, 6:31 AM)
Want me to approve the 3 pending, or drop the full list into a Sheet?

Real request shape, real API — GET /v1/events/guests/list on Luma's public API. Names illustrative.

Every team runs on a dozen tools that don't talk to each other. Your events live in Luma, revenue in Stripe, meeting notes in Granola, pipeline in Pipedrive — and the person who has to reconcile them is you, at 11pm, with fourteen tabs open.

Miles already had native integrations for the big ones — Gmail, Google Calendar, Docs, Sheets, Slack, SendGrid, Instantly, Recall.ai. But "native" doesn't scale to the long tail, and the long tail is where your actual work lives. So we built Connected APIs: point Miles at any REST API that takes an API key, tell it how the API works in plain English, and it becomes something Miles can use — from Slack, or inside an agent run.

No Zapier. No webhooks to wire. No code. Two minutes in Settings.

How it works

Three fields and a paste. That's genuinely it.

Step 1

Add the key as a secret

Settings → Environment. Name it LUMA_API_KEY. It's encrypted at rest and injected server-side — Miles the model never sees the value, and neither does Slack.

Step 2

Register the API

Settings → Connected APIs. Name, base URL, how it authenticates (Bearer / header / query / Basic), which secret — and usage notes: the endpoints and quirks, in plain English. Paste ours from the cookbook.

Step 3

Ask Miles

Mention @Miles (Work) in Slack, or use it in an agent. Miles reads your notes, picks the endpoint, calls it, and answers. Reads run instantly. Anything that changes data shows you the exact request and waits for your Confirm.

The usage notes are the trick. They're not config — they're the same paragraph you'd Slack a new hire: "Guest list is GET /v1/events/guests/list?event_id=…; checked-in means checked_in_at is set; paginate with next_cursor." Miles reads them on every call, so it hits real endpoints instead of guessing. And when it learns something the notes didn't cover — a required parameter, a pagination quirk — it can save that back to the notes itself, so the next call (yours or your agents') skips the trial and error.

Five things you can do today

We verified fourteen APIs against their vendors' docs and wrote the notes for you. These five are the ones that made us grin. Each card is copy-paste ready — the full notes are in the cookbook.

Luma — events

Every RSVP, approval, check-in and registration answer, from Slack. Guest-list questions are all plain reads, so they answer instantly. Adding or approving guests asks for a Confirm.

T
troy 4:02 PM
@Miles (Work) how many people actually checked in at Thursday's event vs registered? Drop the no-shows into a Sheet.
M
Miles (Work) 4:02 PM
84 registered, 61 checked in (73%). I put the 23 no-shows in AIS Happy Hour — no-shows with name, email, company, and RSVP time — link in thread. Want a re-invite draft for the next one?

Stripe — revenue

The founder questions — what came in, who's late, who churned — without opening the dashboard. Create a read-only restricted key and writes fail by design; you get the answers, not the risk.

B
bill 8:15 AM
@Miles (Work) how much did we collect this week, and is anything overdue?
M
Miles (Work) 8:15 AM
$48,200 across 9 payments Mon–Sun, up from $31,900 last week. Two open invoices are past due:
Acme Corp — $12,000 · 14 days late · net-30
Northwind — $3,500 · 5 days late
I can draft a friendly nudge to Acme's billing contact if you want.

Granola — meeting notes

Your Granola notes and full transcripts, on demand, from Slack. Miles pulls the note, reads what was actually said, and does the thing Granola doesn't — the follow-up.

G
gracelyn 2:20 PM
@Miles (Work) pull my Granola notes from the Vultr call this morning — what did we agree on, and draft the follow-up.
M
Miles (Work) 2:21 PM
Found it — Vultr × IgniteGTM sync, 38 min, 4 attendees. Three commitments:
1. They send the co-marketing brief by Friday
2. We propose two dates for the webinar in September
3. Intro to their DevRel lead (you owe this one)
Follow-up drafted below, addressed to all four — say send when it reads right.

Pipedrive — pipeline

A CRM where every read is a true GET, which means the Slack conversation never stalls. Pipeline totals, stale deals, activity gaps — instantly. Logging a call or moving a stage asks for a Confirm.

B
brandon 7:58 AM
@Miles (Work) pipeline total by stage, and flag any deal with no activity in 14 days.
M
Miles (Work) 7:58 AM
$1.42M open across 27 deals.
Qualified $310k (9) · Proposal $540k (8) · Negotiation $425k (6) · Contract sent $145k (4)
Stale (14+ days, no activity): HyperAccel ($60k, 19d) · Chiri ($22k, 16d) · Dorado ($18k, 15d). Want me to draft check-ins for all three?

Fathom — call recordings

The most accessible meeting-notes recipe: Fathom's API is included on its free plan. Summaries, action items, and transcripts by customer domain — ask across every call with an account, not just one.

N
nina 11:05 AM
@Miles (Work) summaries and action items from every Fathom call with acme.com this month, and every pricing objection they raised.
M
Miles (Work) 11:06 AM
3 calls with acme.com in August (Aug 4, 12, 15). Open action items: 5 — 2 ours, 3 theirs. Pricing came up on all three:
Aug 4 — "seat minimums don't fit a 6-person team"
Aug 12 — asked for annual pricing before committing
Aug 15 — wants the Team tier features at Pro price for a pilot
Pattern: it's the seat minimum, not the price. Want a one-pager on the pilot option?

…and nine more, ready to paste

Same two-minute setup. Some of these implement reads as POST requests — Miles treats those the way it treats every write and asks for a Confirm first. It's a feature, not a bug: you always see exactly what's about to be sent.

Built so you can hand it a key

Giving an AI your Stripe key should feel uncomfortable. We designed Connected APIs so it doesn't have to.

The model never sees the key

Requests are assembled server-side and the secret is injected on the way out. Miles reasons about what to ask, never with what. Nothing to leak into a Slack thread or a transcript.

Writes wait for you

Every POST, PUT, PATCH, and DELETE stages a Confirm card showing the exact method, URL, and body. Nothing fires until you click. Reads run instantly, because reads can't hurt you.

Fenced by design

A connection can only call paths under its registered base URL, auth headers can't be overridden, and everything an API returns is treated as data — if a response contains instructions aimed at Miles, it reports them, it doesn't follow them.

B
brandon 3:14 PM
@Miles (Work) add jane@acme.com as an approved guest to the Sept 12 dinner on Luma.
M
Miles (Work) 3:14 PM
Ready to send — this one changes data, so it needs your go-ahead:
POST https://public-api.luma.com/v1/events/guests/add
{ "event_id": "evt-9k2…", "guests": [{ "email": "jane@acme.com" }], "approval_status": "approved" }
Confirm Cancel

A few honest notes

  • Where it runs. Connected APIs work from Slack — mention @Miles (Work), the team bot, on the Team plan — and inside agent runs (Pro and up). The in-app chat can set up a connection for you — "connect me to Luma" — but the calls happen in Slack and agents.
  • Static keys only, for now. If a service authenticates with OAuth and short-lived tokens — Salesforce, Greenhouse's new API, Outreach — Connected APIs can't refresh those yet. It's next on the list, and the same work unlocks a native Zapier app.
  • Not a Zapier replacement — a Zapier escape. Zapier moves data between tools on a schedule. This lets you ask a question across tools and get an answer, right now, in the place you already work. Different job. (You can still wire Miles into Zapier via our public API and webhooks.)

What's next

This is the first post on the Miles blog, and Connected APIs is the kind of feature we'll keep coming back to — every new recipe makes Miles more useful for someone. Next up: OAuth connections, a native Zapier listing, and recipes people ask for. Tell us which tool you're stitching together by hand at 11pm — support@heymiles.app — and there's a decent chance the notes are already written.


M
Miles Team — most of these recipes came straight from the GTM and recruiting teams who run their week on Miles. If yours isn't here yet, tell us.
Two minutes, no code

Your tools, one conversation.

Grab a key, paste the notes, ask Miles. Start free — Connected APIs are included on Pro and Team.