Product

An integrations page in a sprint.

Let your customers connect the tools they use, right inside your product, and let your AI features act in them. Your UI, your brand, Hoook underneath.

connect.ts

const { token } = await hoook.connect.createToken({ userId: "u_42" })

→ open Connect Link inside your app

u_42 signs in to HubSpot · scopes: crm.objects.deals

✓ account apn_7Kx2 connected

await hoook.accounts.list({ userId: "u_42" })

[{ "app": "hubspot", "id": "apn_7Kx2", "healthy": true }]

Before and after

The same integration, shipped.

Without Hoook

  • Each integration is its own project on the roadmap
  • Customers leave for the competitor that has theirs
  • The integration work takes longer than the agent
  • A token expires and the whole flow stops without a word

With Hoook

  • Every app in the catalogue is one setting away
  • Customers connect what they use on day one
  • The integrations are done before you start
  • Hoook refreshes tokens and retries failures for you
How it comes together

How to build in-app integrations with Hoook

  1. 01

    Connect the apps

    Your users link the accounts in-app integrations needs through Connect Link.

    connect.ts

    const { token } = await hoook.connect.createToken({ userId: "u_42" })

    → open Connect Link inside your app

    u_42 signs in to HubSpot · scopes: crm.objects.deals

    ✓ account apn_7Kx2 connected

    await hoook.accounts.list({ userId: "u_42" })

    [{ "app": "hubspot", "id": "apn_7Kx2", "healthy": true }]

  2. 02

    Give the agent its tools

    Load the prebuilt tools through the SDK or the hosted MCP server.

    Claude Code

    claude mcp add --transport http hoook https://mcp.hoook.io

    ✓ Connected to Hoook

    tools: github, linear, slack, notion, stripe and more

    > Open a Linear issue for each failing test and post the list in #eng

    Hoook linear.create_issue ×4, slack.send_message(#eng)

    ✓ 4 issues opened. Summary posted.

  3. 03

    Start on the right event

    A trigger runs it when something happens, or a person asks.

    Event source

    await hoook.triggers.deploy({ userId, id: "stripe-payment-failed", webhookUrl })

    ✓ listening to Stripe for u_42

    invoice.payment_failed · verified · deduplicated

    POST https://your-app.com/agent/events

    agent: opened Linear issue ENG-812 and told #billing

  4. 04

    Watch it run

    Every call is logged, retried on failure and kept in the history.

    Which connected accounts need attention this week?
    Connected accounts8,412
    Refreshed today1,134
    Need reconnecting3
    Tokens refreshed today, by app
    612
    Google
    318
    Slack
    204
    HubSpot
    3
    Revoked

    1,134 tokens refreshed on their own today. Three users revoked access, and each was asked to reconnect.

    Reconnect emails sent
What you get

What Hoook takes off your plate.

Working in days

Prebuilt tools and triggers, so you write the logic, not the plumbing.

Each user's own access

Every action runs in the account of the person it is for.

Guardrails included

Approval for writes, scoped tools and a log of every call.

The evidence

The numbers behind agent integrations

Public documentation from the providers, and our own figures, each labelled with its source.

2 to 6 weeks

to build, test and ship one production OAuth integration in-house, before it needs maintaining.

Hoook estimate
100

connected end users included on the Connect plan, then $2 for each one after that.

Hoook pricing
$0

for the Free plan, which includes credits every month.

Hoook pricing
Why Hoook

Built for agents that act.

Your own UI

Use the frontend SDK to build the page your way.

Your OAuth clients

Customers see your name on every consent screen.

Priced per end user

100 end users on Connect, then $2 for each one after.

Backfill, then live

Import history when a customer connects, then stay in step with triggers.

Book a demo

Thirty minutes on what you are building, with the engineers behind Hoook.

Ask Ivy nowOur assistant answers straight away, then passes you to the team.

We answer within one business day.

Powered bydayrun.ai