Provider Connect and Settings
These endpoints power provider-specific integration onboarding and configuration.Endpoints
Slack
GET /api/integrations/slack/connectGET /api/integrations/slack/callback
HubSpot
GET /api/integrations/hubspot/connectGET /api/integrations/hubspot/callbackPATCH /api/integrations/hubspot/settings
Stripe Connect
GET /api/integrations/stripe/connectGET /api/integrations/stripe/callbackGET /api/integrations/stripe/statusPATCH /api/integrations/stripe/settingsDELETE /api/integrations/stripe/disconnect
Shopify pixel bridge
OPTIONS /api/integrations/shopify/pixelPOST /api/integrations/shopify/pixel?installationId=...
Auth and permission model
Connect/settings/status/disconnect
- Requires authenticated workspace session.
- Typical permission:
integrations:manage(statususesintegrations:read). - Integrations entitlement gate applies to connect/setup routes.
Callback routes
- OAuth callbacks are browser redirects, not JSON API mutations.
- Callback verifies OAuth
state, active user session, and membership to target workspace. - Success/failure returns dashboard redirect with status query params.
Shopify pixel
- Public CORS-enabled ingestion route.
- No dashboard auth; verifies
installationIdand installation type. - Rate limited by IP.
Settings payloads
Stripe settings
PATCH /api/integrations/stripe/settings
HubSpot settings
PATCH /api/integrations/hubspot/settings
leadTriggerEvent values:
dealCreatedlifecycleStageReached
Shopify pixel payload
POST /api/integrations/shopify/pixel?installationId=inst_xxx
checkoutTokenrequired.- At least one of
clickIdorrefCoderequired. - Invalid click-id formats are discarded.
- Stores checkout-to-attribution mapping for later conversion attribution.
Common errors
400: invalid settings payload, missing callback params, invalid Shopify payload401/403: missing auth, workspace access denied, permission denied404: provider installation not found where required422: provider not configured in environment503: cache/state backend unavailable for OAuth state handling

