base44 connectors push
Push local connector configurations to Base44, adding new connectors, updating scopes, and handling OAuth authorization. Remote connectors missing locally are only removed with--force.
Usage
Options
Removing Connectors (--force)
By default, connectors push only adds and updates — remote connectors that aren’t in your local files are left alone. This matches functions deploy, and keeps connectors set up outside the project (for example Stripe installed through the API or MCP, or a connector created with connectors initiate) from being removed by accident.
Pass --force to also remove remote connectors that aren’t in your local files. The CLI warns you and asks for confirmation:
--json, CI/CD, no TTY), --force requires -y/--yes or the command throws. Without --force, there is no confirmation prompt.
Warning: Removing Stripe deletes its sandbox, keys, and claim link. Backend functions that use a removed connector fail until it is set up again.
If your connectors directory is empty, the command exits with No local connectors found - nothing to push and removes nothing, even with --force.
Projectless Mode
connectors push can run without a local project by passing --app-id (or setting BASE44_APP_ID). In that mode there’s no config.jsonc to read connectors from, so files are read from ./connectors by default — override with --dir.
JSON Output
Pass the global--json flag to get a machine-readable result instead of human-oriented log lines and prompts (OAuth authorization is skipped automatically in --json mode, same as any non-interactive run):
What It Does
- Reads local connectors from your
base44/connectors/directory - Syncs with Base44 - updates scopes for existing connectors
- Adds new connectors - new OAuth connector types trigger authorization; Stripe is provisioned automatically
- Removes unlisted connectors (only with
--force) - connectors not in your local files are removed from Base44
OAuth Authorization Flow
When you add a new connector, it needs to be authorized:- The CLI detects which connectors need authorization
- You’re prompted: “Open browser to authorize now?”
- If you accept, the browser opens to the OAuth provider (Google, Slack, etc.)
- You log into your account and approve the requested permissions
- The browser closes and the CLI confirms authorization
Example Output
Pushing connectors (no new authorization needed)
Pushing new connectors (authorization required)
Pushing Stripe (no OAuth required)
Stripe is provisioned automatically — no browser flow is needed:Removing connectors
If you delete a connector file locally and push with--force, it is removed (without --force, it stays on Base44):
CI/CD Environments
In non-interactive environments (no TTY, such as CI/CD pipelines), the OAuth flow is skipped automatically:npx base44 connectors push locally to complete authorization for new connectors.
Skipping Authorization
If you choose not to authorize immediately, the connectors remain in a pending state:Summary Status Meanings
Troubleshooting
Related Commands
- connectors-create.md - How to create connector configuration files
- connectors-pull.md - Pull connectors from Base44 to local files