The model: catalog → connect → provision
1
Browse the catalog
GET /integrations/catalog returns every connectable provider — its display name, category,
a short blurb, a logo slug, how many actions it exposes, whether it ships a preset pack
(hasPack), and whether your org has already connected it. The dashboard renders this as a card
grid; you can render your own. A provider with actionCount: 0 and hasPack: true is
pack-based — install its Connector Pack rather
than provisioning individual actions.2
Connect the provider
POST /integrations/{kind}/connect. OAuth providers return an oauthUrl to open in a
browser; API-key providers accept { "credentials": { … } } and connect immediately.3
Provision actions as skills
POST /agents/{agentId}/integrations/{kind}/provision creates one skill per action. Omit
actions to provision every important action, or pass a list of action slugs.4
Publish
Provisioning edits the agent draft. Publish so phone and chat serve
the new skills.
Beyond pre-built actions: map fields yourself
For any provider whose schema can be introspected, you’re not limited to its pre-built actions — discover its full schema and map any field onto your agent:1
Discover the schema
POST /integrations/{kind}/discover introspects the provider into a normalized catalog of
every object, field, relationship, and operation.2
Read it
GET /integrations/{kind}/schema returns that catalog to map from.3
Map a binding
POST /agents/{id}/integrations/{kind}/bindings maps an operation’s inputs to your agent’s
parameters and projects the fields you want back — compiling to a skill.- Auto-map from a goal —
POST /agents/{agentId}/integrations/{kind}/bindings/autoturns a plain-language goal into a validated binding (saved as a draft to review). - Install a preset pack — providers that ship a Connector Pack install ready-made skills in
one call:
POST /agents/{agentId}/integrations/{kind}/pack/install.
Live vs reserved
The catalog only lists providers you can connect today. Reserved providers (for example Calendly, Square, OpenTable) are coming soon and do not appear yet.
Need something not listed? Build a custom integration with an
http_webhook skill that calls your own endpoint.
In the API
GET /integrations and the catalog return status only — connected tokens are stored
encrypted and never echoed back.Authorization: Bearer flowyte_sk_… (see
Authentication). Never send an organization header with an API key.