[setup] Register the Jaah Google Search Console

Task 13596 · Asking · Coder · created · updated

**User-only setup task.** Only a person can do the registration steps below (a human sign-in at the vendor). Runner: do NOT attempt the vendor-side steps and do not open a PR. Ask the operator once through AskUserQuestion (header `Human act`) to do the steps; when they say it is done, run **Runner validation** on dev and settle `no_pr` / `no_code_needed`, citing the observed Connect + Test result (never a secret value). If validation fails, name the step that looks wrong and ask once more. A person must do this: registering an app at Google needs a human sign-in. It lets members connect Google Search Console to Jaah with one **Connect Google Search Console** button. ## Steps 1. Sign in to Google with the account that should own Jaah's app (a shared company account, never a personal one), and open the developer console: https://console.cloud.google.com/auth/clients 2. Create a new OAuth app. Name it **Jaah**. 3. In the Google Cloud console project picker, select or create the project named jaah-integrations. Every Jaah Google integration can share this project and its one OAuth client. 4. Open APIs & Services > Library, search for Google Search Console API and select Enable. 5. Open Google Auth Platform > Branding. Set App name to Jaah, the user support email to the shared support mailbox, Application home page to the public homepage of the company that runs this Jaah (its https address), Privacy policy and Terms of service to that company's privacy policy and terms pages, and add its domain under Authorized domains. Select Save. 6. Open Google Auth Platform > Audience. Choose External, then select Publish app so the app is In production rather than Testing (Testing refresh tokens expire after 7 days). 7. Open Google Auth Platform > Data access, select Add or remove scopes, tick .../auth/webmasters.readonly and select Update, then Save. 8. Open Google Auth Platform > Clients, select Create client, choose Application type Web application and name it Jaah. This client is the OAuth app: the redirect URIs (a later step) go under its Authorized redirect URIs, then select Create. 9. Add both redirect URIs exactly as written: `https://app.dev.jaah.ai/api/credentials/connect/callback` (dev) and `https://app.jaah.ai/api/credentials/connect/callback` (prod). 10. Request exactly these scopes: `https://www.googleapis.com/auth/webmasters.readonly`. 11. Copy the app's client ID and client secret. Keep them in your password manager only until the next step is done. 12. In the Jaah console of each environment (dev first, then prod), open **Secrets**, select **New**, and create an **OAuth app** (`oauth_app`) secret on the operator plane named `jaah-google_search_console-app`, with provider `google_search_console`, the client ID and the client secret. 13. Open **Settings > Integrations > OAuth apps > Google Search Console** and pick that secret in the knob `oauth_app.google_search_console`. 14. Never paste the client ID or secret into this task, a comment, a chat or an email. Reply here only with what you did. ## Scopes and why | Scope | Why Jaah asks for it | |---|---| | `https://www.googleapis.com/auth/webmasters.readonly` | Read your sites' search queries, clicks, impressions, index coverage and sitemaps. Read only: agents cannot submit sitemaps or remove URLs | ## Review or verification Google verification: if Google marks webmasters.readonly sensitive, submit the app in Google Auth Platform > Verification Center. Until verified, members see an unverified-app warning and the app is capped at 100 users. ## Runner validation On dev, **Connect Google Search Console** with the Jaah app ends on **Connected** and **Test** passes. Read only the result, never the secret. ## Out of scope No code change. Do not edit the vendor spec, the catalog engine or any other credential. Never paste a client ID or secret anywhere. ## Done means - The operator confirmed the steps are done. - On dev, the vendor's Connect screen no longer says "Jaah app not configured", consent ends on **Connected**, and **Test** passes — cited from what you observed.

Activity

  • Ready
  • Runner started
  • Awaiting response