Skip to main content
Connect Google Calendar once, then provision its actions as skills so an agent can check open times and book an appointment mid-conversation — the agent collects the details from the caller in natural language and writes the event for you.

Connect

Google Calendar uses OAuth. Start the connect, then finish consent in a browser.
1

Begin the connection

POST /integrations/google_calendar/connect returns an oauthUrl.
2

Grant access in a browser

Open the oauthUrl while signed in to your dashboard. The browser-only callback finishes the connection — it cannot be completed with an API key.
3

Confirm

GET /integrations now lists google_calendar with status: connected and an accountLabel.
curl -X POST https://builder.flowyte.com/api/v1/integrations/google_calendar/connect \
  -H "Authorization: Bearer flowyte_sk_…"
# → { "data": { "oauthUrl": "https://…" } }   # open this in a browser

Provision actions as skills

List the actions, then provision the ones you want onto an agent.
# See what's available
curl https://builder.flowyte.com/api/v1/integrations/google_calendar/actions \
  -H "Authorization: Bearer flowyte_sk_…"

# Provision the important actions (omit "actions" to take all of them)
curl -X POST \
  https://builder.flowyte.com/api/v1/agents/AGENT_ID/integrations/google_calendar/provision \
  -H "Authorization: Bearer flowyte_sk_…" \
  -H "Content-Type: application/json" \
  -d '{ "actions": ["check_availability", "book_appointment"] }'
Each returned item carries created: false when the skill already existed — provisioning is an idempotent no-op, so it is safe to re-run. Actions that still need operator config land disabled as drafts; open them in the dashboard to finish setup.
Action slugs come from GET /integrations/{kind}/actions — read that catalog rather than guessing names, since available actions can grow over time.

In the API

ActionEndpointScope
ConnectPOST /integrations/google_calendar/connectintegrations:write
List actionsGET /integrations/google_calendar/actionsintegrations:read
Provision skillsPOST /agents/{agentId}/integrations/google_calendar/provisionskills:write
Remove skillsDELETE /agents/{agentId}/integrations/google_calendar/provisionskills:write
DisconnectDELETE /integrations/google_calendarintegrations:write
Provisioning edits the agent draft. Publish before phone or chat callers can book.