Conversation
Add connector resource module supporting 12 OAuth providers: googlecalendar, googledrive, gmail, googlesheets, googledocs, googleslides, slack, notion, salesforce, hubspot, linkedin, tiktok. - Zod discriminated union schema with type discriminator per provider - JSDoc links to official OAuth scope documentation for each provider - JSONC file reading with validation (filename must match type field) - API response schemas for upstream connector state - Unit tests with fixtures for valid, invalid, and mismatched connectors Part of: #184 Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Add API client methods for OAuth connector operations: - listConnectors: list all connectors for current app - syncConnector: sync connector with exact scope matching - getOAuthStatus: poll OAuth authorization status - removeConnector: remove a connector integration Also update response schemas and clean up verbose comments. Co-authored-by: Claude Opus 4.5 <noreply@anthropic.com>
* feat(connectors): implement push logic for syncing connectors Add pushConnectors function that: - Syncs all local connectors via /sync endpoint - Removes upstream-only connectors not in local config - Returns typed results (synced, removed, needs_oauth, error) Includes unit tests covering all scenarios. Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com> * feat(connectors): add OAuth flow handling with browser redirect and polling (#192) * feat(connectors): add OAuth flow handling with browser redirect and polling Add runOAuthFlow function that: - Opens OAuth redirect URL in browser - Polls getOAuthStatus until ACTIVE or FAILED - Returns PENDING on timeout (5 minutes) Uses p-wait-for TimeoutError for robust timeout detection. Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com> * connectors: base44 connectors push (#194) * final connector work sofi 1 * scopes --------- Co-authored-by: Claude Opus 4.5 <noreply@anthropic.com> --------- Co-authored-by: Claude Opus 4.5 <noreply@anthropic.com>
Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
Change provider field from closed enum to flexible union that accepts both known providers (googlecalendar, notion, slack, etc.) and any arbitrary provider string. This enables users to configure custom OAuth providers without waiting for first-class Base44 support. Schema changes: - Add GenericConnectorSchema for arbitrary provider types - Update ConnectorResourceSchema to union of specific + generic schemas - Update IntegrationTypeSchema to accept known enum OR any non-empty string - Only reject empty strings Test coverage: - Verify known providers continue to work - Verify arbitrary providers are accepted - Verify empty strings are rejected - All 137 tests passing Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
Co-authored-by: Cursor <cursoragent@cursor.com> # Conflicts: # .gitignore # src/cli/commands/connectors/push.ts # src/core/resources/connector/api.ts # src/core/resources/connector/config.ts # src/core/resources/connector/index.ts # src/core/resources/connector/push.ts # src/core/resources/connector/schema.ts # tests/cli/testkit/Base44APIMock.ts # tests/core/connectors.spec.ts
🚀 Package Preview Available!Install this PR's preview build with npm: npm i @base44-preview/cli@0.0.32-pr.251.6527707Prefer not to change any import paths? Install using npm alias so your code still imports npm i "base44@npm:@base44-preview/cli@0.0.32-pr.251.6527707"Or add it to your {
"dependencies": {
"base44": "npm:@base44-preview/cli@0.0.32-pr.251.6527707"
}
}
Preview published to npm registry — try new features instantly! |
|
README check ran. 5 discrepancies found that need to be fixed:
Please update README.md manually or re-run this check after granting write permissions. |
|
README check ran. 4 issue(s) found and applied: (1) Added missing |
|
README check ran. 8 issues found and applied: (1) Added 'eject' command to table, (2) Added 'connectors pull' command, (3) Added 'connectors push' command, (4) Added 'types generate' command, (5) Updated 'create' description, (6) Updated 'deploy' description, (7) Updated 'link' description, (8) Updated 'logout' and 'whoami' descriptions. README.md has been updated in this branch. |
|
README check ran. 4 issue(s) found and applied: added missing commands (eject, connectors pull/push, types generate) and updated command descriptions to match code. README.md has been updated in this branch. |
|
README check ran. 7 issues found and applied: (1) Updated 'create' description to match code, (2) Updated 'deploy' description with full resource list, (3) Uncommented and updated 'eject' command, (4) Updated 'link' description, (5) Updated 'logout' description to match code, (6) Added 'connectors pull' and 'connectors push' commands, (7) Added 'types generate' command, (8) Updated agent command descriptions with full details. README.md has been updated in this branch. |
|
README check ran. 7 issues found and applied: Added missing commands (eject, connectors pull, connectors push, types generate), updated command descriptions to match source code (create, deploy, link, logout, whoami, agents pull/push, entities push). README.md has been updated in this branch. |
|
README check ran. 5 issues found and applied: (1) added missing eject command, (2) added missing connectors pull/push commands, (3) added missing types generate command, (4) updated descriptions to match code exactly. README.md has been updated in this branch. |
|
README check ran. 6 issue(s) found and applied: added missing commands (logout, eject, connectors pull/push, types generate) and updated command descriptions to match code. README.md has been updated in this branch. |
|
README check ran. Found 7 issue(s) and applied fixes: Added missing |
Note
Description
Adds comprehensive support for Stripe as a connector type in the Base44 CLI. Stripe is handled as a special connector that uses a different provisioning flow than OAuth-based connectors, requiring dedicated API endpoints and synchronization logic. This implementation allows users to install, sync, and remove Stripe integrations through the
connectors push,connectors pull, anddeploycommands.Related Issue
None
Type of Change
Changes Made
Core Infrastructure:
installStripe,getStripeStatus,removeStripe) inconnector/api.tsInstallStripeResponseSchema,StripeStatusResponseSchema,RemoveStripeResponseSchema)STRIPE_CONNECTOR_TYPEconstant andStripeSyncResulttype to distinguish Stripe from OAuth connectorspullAllConnectors()function that fetches both OAuth and Stripe connectors in parallelPush/Pull Logic:
pushConnectors()to handle both OAuth and Stripe connectors separately with appropriate sync logicwriteConnectors()to acceptConnectorResource[]instead of raw API response formatCLI Commands:
connectors pushcommand to display Stripe provisioning results with claim URLs and dashboard linksconnectors pullcommand to fetch and save Stripe connector filesdeploycommand to show Stripe provisioning output after deploymentOAuthSyncResult,StripeSyncResult,SharedSyncResult)Testing:
with-stripe-connectorfor integration testingBase44APIMock.tsUtilities:
getConnectorsUrl()helper function to generate connector dashboard URLsTesting
npm test)Checklist
Additional Notes
claim_urlis optional in the API response and may be null for already-provisioned accounts🤖 Generated by Claude | 2026-02-16 23:47 UTC