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
Plays video artifacts inline in the library. This system extension owns the detail renderer for video files, drawing a native player pointed at the…
Enter a valid instance URL (https:// is required unless it is localhost).
cinatra install cinatra-ai/video-artifact
Hand this agent a small batch of rows — companies, contacts, claims, anything — together with a plain-language research goal, and it will look…
Enter a valid instance URL (https:// is required unless it is localhost).
cinatra install cinatra-ai/web-research-agent
An advisory reviewer that checks new or updated Cinatra agent extensions for the kinds of quality issues a strict validator misses. It flags naming…
Enter a valid instance URL (https:// is required unless it is localhost).
cinatra install cinatra-ai/code-reviewer-agent
A generic content auditor that improves another agent's output before it ships. Point it at any content bundle, choose the audit skills you want…
Enter a valid instance URL (https:// is required unless it is localhost).
cinatra install cinatra-ai/auditor-agent
Turn a blog idea into a polished markdown draft, ready to review and publish. Hand the agent an idea — title, summary, and outline…
Enter a valid instance URL (https:// is required unless it is localhost).
cinatra install cinatra-ai/blog-draft-writer-agent
Turn a published blog post into a short, native-feeling LinkedIn promotional post. Give the agent the blog title, excerpt, body, and the company behind…
Enter a valid instance URL (https:// is required unless it is localhost).
cinatra install cinatra-ai/blog-linkedin-writer-agent
Reviews
There are no reviews yet.