Enter a valid instance URL (https:// is required unless it is localhost).
cinatra install cinatra-ai/google-oauth-connector
Google OAuth
Set up Google sign-in for your workspace and connect every Google-backed service through a single shared OAuth client. One Google Cloud project, configured once, becomes the identity foundation that Gmail, Google Calendar, and YouTube all reuse when an account is linked.
Setup. In the Google Cloud Console go to APIs & Services → Credentials → Create credentials → OAuth client ID and choose application type Web application. Copy the client ID and secret, then open the Google OAuth connector setup page in your Cinatra workspace, paste both values, and click Save Google OAuth. The page shows two redirect URIs that must be registered in Google Cloud before the OAuth flow will work.
Configuration notes. The client secret is write-only: the setup page never displays a saved secret. Leave the secret field blank when saving to keep the existing value. The connector status shows "Connected" once a Google account is linked, "Setup required" if credentials are missing, and "Not connected" if no account has been linked yet.
API contract. The package exports googleOAuthConnectorPackage (a HostRequiredPackageDefinition descriptor) from the default entry. The ./setup-page export provides the React server component for the setup UI; ./actions exports saveGoogleOAuthConnectionAction. Runtime OAuth logic is injected via the SDK's requireGoogleOAuthConnectionProvider() DI slot; this package has no direct runtime dependency on it.
Development. Run npm test (Vitest) to execute the test suite and npm run lint to check style. No live Google credentials are needed to run tests.
Troubleshooting. If saving returns an error, confirm the OAuth client in Google Cloud is type Web application. If status stays "Setup required" after saving, reload the page to confirm the client ID was stored. If the OAuth redirect fails, verify both redirect URIs shown on the setup page are registered exactly in Google Cloud.
Works with
- Gmail
- Google Calendar
- YouTube
Capabilities
- Sign in to your Cinatra workspace with a Google account
- Connect Google-backed services without configuring a separate OAuth client for each
- Switch the workspace's Google identity provider in one place when credentials need to be rotated
- Add Google Cloud Console link + steps to OAuth settings panel (#22)
- ci: adopt source-leak-gate (#1)
- ci: adopt source-leak-gate (#3)
- chore: add .gitignore (#5)
- Render the Google OAuth setup as a full page instead of a modal (#4)
- ci: adopt org gates — SHA-pin all uses: refs, bump source-leak-gate to v0.1.0, add actions-pinned + gitignore gate callers (#7)
- chore: keep internal planning notes untracked (#8)
- Show a friendly save-failed toast instead of the caught error message (#9)
- chore: npm files allowlist + git-archive export-ignore (packaging hygiene) (#10)
- chore: drop the empty src/tests/ dir entry from source archives (#11)
- ci: adopt the org ui-design-system gate (#12)
- ci(release): grant contents: write + pin reusable workflow to .github HEAD (#13)
- chore: Configure Renovate (#14)
- ci: repin reusable release workflow (immutable-safe decoration + corrected build-input provisioning) (#16)
- ci: add truthful-attribution-gate in WARN mode (#17)
- ci: adopt the reusable extension->host IoC conformance gate (org-wide rollout) (#18)
- ci: tag-driven GitHub release on v* (#19)
- ci: adopt secret-scan-gate (#20)
- release: bump google-oauth-connector to 0.1.1 (#23)
- Initial release.
- Unreleased
- docs(readme): expand README to the org standard (#24) (#25)
- ci(ui-gate): ramp raw-JSX block to error (#26)
- ci: adopt source-leak-gate (#27)
- ci: adopt source-leak-gate (#28)
- ci(ui-gate): re-vendor preset with Block-C (dynamic-import ban) + bump pin to v0.1.1 (#29)
- chore: strip private engineering-tracker refs from public source (#30)
- chore: strip private tracker references from workflow comments (#33)
- fix(setup): remove the extension-rendered connection-status pill (#34)
- chore: backfill cinatra.sdkAbiRange ^2 (#35)
- ci(release): pin reusable-extension-release to gated v0.1.1 (release-approval wall) (#36)
- chore: add cinatra.vendor connector provenance metadata (#37)
- chore(deps): declare cinatra.consumes for closure-gate enrollment (#38)
- chore(deps): align zod pin to ^4.4.3 (#39)
More from Cinatra
A short, outline-shaped note that captures a future blog post before anyone writes it. Blog Ideas hold a working title, an angle, a few…
Enter a valid instance URL (https:// is required unless it is localhost).
cinatra install cinatra-ai/blog-idea-artifact
Edit Drupal content from plain-language instructions. Tell the agent which node to change and what to change about it, and it reads the page,…
Enter a valid instance URL (https:// is required unless it is localhost).
cinatra install cinatra-ai/drupal-agent
A security-review helper that sits beside the agent-authoring chat experience. It reads a draft agent definition and flags the fuzzy risks a deterministic linter…
Enter a valid instance URL (https:// is required unless it is localhost).
cinatra install cinatra-ai/security-reviewer-agent
Link one or more LinkedIn accounts to your workspace so agents can publish posts to a member's own feed or to any organization page…
Enter a valid instance URL (https:// is required unless it is localhost).
cinatra install cinatra-ai/linkedin-connector
A finished, publish-ready blog article in Markdown. Blog Posts cover both articles generated by Cinatra's blog pipeline and posts uploaded from an existing CMS…
Enter a valid instance URL (https:// is required unless it is localhost).
cinatra install cinatra-ai/blog-post-artifact
Create a WordPress draft from a Cinatra blog post — body, hero image, and metadata — and pause for your confirmation before anything goes…
Enter a valid instance URL (https:// is required unless it is localhost).
cinatra install cinatra-ai/blog-wordpress-publish-agent
Reviews
There are no reviews yet.