appId and externalUserId, and Runtools scopes tool credentials, usage, audit, and channel identities to that product user.
What You Build
Hosted Connect
Let end users connect Gmail, Stripe, Slack, HubSpot, API-key tools, and other integrations to your product.
Run agents for a product user
Start agent runs with
endUser so tools resolve only that user’s app-scoped credentials.Execute tools directly
Call Tool Hub actions with Hosted Connect scope from your backend.
Product channels
Let users chat over Telegram, WhatsApp, Slack, Discord, iMessage, or SMS while tools still use their Hosted Connect credentials.
Product Identity
Your product owns login, billing, permissions, and user records. Runtools only needs stable identifiers:- Hosted Connect sessions
- Agent runs
- Direct tool execution
- Product channel identity links
- Usage and audit exports
Connect User-Owned Tools
Create a Hosted Connect session from your server:connectUrl in the browser. Runtools handles OAuth, API-key collection, refresh, encrypted storage, and reconnect states.
Run With That User’s Credentials
Agents:connect_required. It does not fall back to builder Connected Apps, org defaults, or another product user’s credentials.
Product Channels
For chat products, the developer connects the channel once. End users simply message the bot or number. Runtools links the provider sender identity to your product user:Where To Go Next
Hosted Connect guide
Full setup, OAuth policy, direct tool execution, API-key tools, usage, and audit.
Tools API
Direct Tool Hub execution, including end-user scope.
Channels SDK
Bind product channels and link provider senders to product users.
OAuth & Connected Apps
Internal Runtools-user credentials, and how they differ from Hosted Connect.