{"record":{"id":"15d9373911b31506","repo":"meteor/meteor","slug":"service-not-configured-15d937","errorCode":null,"errorMessage":"Service not configured","messagePattern":"Service not configured","errorType":"exception","errorClass":"ServiceConfiguration.ConfigError","httpStatus":null,"severity":"error","filePath":"packages/google-oauth/google_server.js","lineNumber":131,"sourceCode":"      idToken: request.idToken,\n      accessToken: request.accessToken,\n      email: request.email,\n      picture: request.imageUrl,\n      ...result.serviceData,\n    },\n    result.options\n  );\n});\n\n// returns an object containing:\n// - accessToken\n// - expiresIn: lifetime of token in seconds\n// - refreshToken, if this is the first authorization request\nconst getTokens = async (query, callback) => {\n  const config = await ServiceConfiguration.configurations.findOneAsync({\n    service: 'google',\n  });\n  if (!config) throw new ServiceConfiguration.ConfigError();\n\n  const content = new URLSearchParams({\n    code: query.code,\n    client_id: config.clientId,\n    client_secret: OAuth.openSecret(config.secret),\n    redirect_uri: OAuth._redirectUri('google', config),\n    grant_type: 'authorization_code',\n  });\n  const request = await OAuth._fetch('https://accounts.google.com/o/oauth2/token', 'POST', {\n    headers: {\n      Accept: 'application/json',\n      'Content-Type': 'application/x-www-form-urlencoded',\n    },\n    body: content,\n  });\n  const response = await request.json();\n\n  if (response.error) {","sourceCodeStart":113,"sourceCodeEnd":149,"githubUrl":"https://github.com/meteor/meteor/blob/5076d2f818d3cac01d0cf8312fa5b2332076a4fb/packages/google-oauth/google_server.js#L113-L149","documentation":"Error \"Service not configured\" thrown in meteor/meteor.","triggerScenarios":"Thrown when Google login is attempted but the service is not configured.","commonSituations":"Missing Google clientId/secret in ServiceConfiguration when handling the OAuth callback.","solutions":["Configure the Google login service with clientId and secret in serviceConfiguration or Meteor.settings.","Run 'meteor add accounts-google' and complete the configuration."],"exampleFix":null,"handlingStrategy":null,"validationCode":null,"typeGuard":null,"tryCatchPattern":null,"preventionTips":[],"tags":[],"backgroundTag":null,"analyzedSha":"5076d2f818d3cac01d0cf8312fa5b2332076a4fb","analyzedAt":"2026-08-13T03:27:40.142Z","schemaVersion":2},"datasetVersion":"2026-08-13T04:17:16.726Z"}