{ "auth": { "oauth2": { "scopes": { "https://www.googleapis.com/auth/plus.login": { "description": "Know the list of people in your circles, your age range, and language" }, "https://www.googleapis.com/auth/plus.me": { "description": "Know who you are on Google" }, "https://www.googleapis.com/auth/userinfo.email": { "description": "View your email address" }, "https://www.googleapis.com/auth/userinfo.profile": { "description": "View your basic profile info" } } } }, "basePath": "/", "baseUrl": "https://www.googleapis.com/", "batchPath": "batch/oauth2/v1", "description": "Obtains end-user authorization grants for use with other Google APIs.", "discoveryVersion": "v1", "documentationLink": "https://developers.google.com/accounts/docs/OAuth2", "etag": "\"-iA1DTNe4s-I6JZXPt1t1Ypy8IU/VisqdD00zyRHTdJGbNmo6aMC9IU\"", "icons": { "x16": "https://www.gstatic.com/images/branding/product/1x/googleg_16dp.png", "x32": "https://www.gstatic.com/images/branding/product/1x/googleg_32dp.png" }, "id": "oauth2:v1", "kind": "discovery#restDescription", "methods": { "getCertForOpenIdConnect": { "httpMethod": "GET", "id": "oauth2.getCertForOpenIdConnect", "path": "oauth2/v1/certs", "response": { "$ref": "X509" } }, "getCertForOpenIdConnectRaw": { "httpMethod": "GET", "id": "oauth2.getCertForOpenIdConnectRaw", "path": "oauth2/v1/raw_public_keys", "response": { "$ref": "Raw" } }, "getRobotJwk": { "httpMethod": "GET", "id": "oauth2.getRobotJwk", "parameterOrder": [ "robotEmail" ], "parameters": { "robotEmail": { "description": "The email of robot account.", "location": "path", "required": true, "type": "string" } }, "path": "service_accounts/v1/jwk/{robotEmail}", "response": { "$ref": "Jwk" } }, "getRobotMetadataRaw": { "httpMethod": "GET", "id": "oauth2.getRobotMetadataRaw", "parameterOrder": [ "robotEmail" ], "parameters": { "robotEmail": { "description": "The email of robot account.", "location": "path", "required": true, "type": "string" } }, "path": "service_accounts/v1/metadata/raw/{robotEmail}", "response": { "$ref": "Raw" } }, "getRobotMetadataX509": { "httpMethod": "GET", "id": "oauth2.getRobotMetadataX509", "parameterOrder": [ "robotEmail" ], "parameters": { "robotEmail": { "description": "The email of robot account.", "location": "path", "required": true, "type": "string" } }, "path": "service_accounts/v1/metadata/x509/{robotEmail}", "response": { "$ref": "X509" } }, "tokeninfo": { "description": "Get token info", "httpMethod": "POST", "id": "oauth2.tokeninfo", "parameters": { "access_token": { "description": "The oauth2 access token", "location": "query", "type": "string" }, "id_token": { "description": "The ID token", "location": "query", "type": "string" } }, "path": "oauth2/v1/tokeninfo", "response": { "$ref": "Tokeninfo" } } }, "name": "oauth2", "ownerDomain": "google.com", "ownerName": "Google", "parameters": { "alt": { "default": "json", "description": "Data format for the response.", "enum": [ "json" ], "enumDescriptions": [ "Responses with Content-Type of application/json" ], "location": "query", "type": "string" }, "fields": { "description": "Selector specifying which fields to include in a partial response.", "location": "query", "type": "string" }, "key": { "description": "API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token.", "location": "query", "type": "string" }, "oauth_token": { "description": "OAuth 2.0 token for the current user.", "location": "query", "type": "string" }, "prettyPrint": { "default": "true", "description": "Returns response with indentations and line breaks.", "location": "query", "type": "boolean" }, "quotaUser": { "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. Overrides userIp if both are provided.", "location": "query", "type": "string" }, "userIp": { "description": "IP address of the site where the request originates. Use this if you want to enforce per-user limits.", "location": "query", "type": "string" } }, "protocol": "rest", "resources": { "userinfo": { "methods": { "get": { "description": "Get user info", "httpMethod": "GET", "id": "oauth2.userinfo.get", "path": "oauth2/v1/userinfo", "response": { "$ref": "Userinfoplus" }, "scopes": [ "https://www.googleapis.com/auth/plus.login", "https://www.googleapis.com/auth/plus.me", "https://www.googleapis.com/auth/userinfo.email", "https://www.googleapis.com/auth/userinfo.profile" ] } }, "resources": { "v2": { "resources": { "me": { "methods": { "get": { "description": "Get user info", "httpMethod": "GET", "id": "oauth2.userinfo.v2.me.get", "path": "userinfo/v2/me", "response": { "$ref": "Userinfoplus" }, "scopes": [ "https://www.googleapis.com/auth/plus.login", "https://www.googleapis.com/auth/plus.me", "https://www.googleapis.com/auth/userinfo.email", "https://www.googleapis.com/auth/userinfo.profile" ] } } } } } } } }, "revision": "20180108", "rootUrl": "https://www.googleapis.com/", "schemas": { "Jwk": { "id": "Jwk", "properties": { "keys": { "items": { "properties": { "alg": { "default": "RS256", "type": "string" }, "e": { "type": "string" }, "kid": { "type": "string" }, "kty": { "default": "RSA", "type": "string" }, "n": { "type": "string" }, "use": { "default": "sig", "type": "string" } }, "type": "object" }, "type": "array" } }, "type": "object" }, "Raw": { "id": "Raw", "properties": { "keyvalues": { "items": { "properties": { "algorithm": { "default": "RSA", "type": "string" }, "exponent": { "type": "string" }, "keyid": { "type": "string" }, "modulus": { "type": "string" } }, "type": "object" }, "type": "array" } }, "type": "object" }, "Tokeninfo": { "id": "Tokeninfo", "properties": { "access_type": { "description": "The access type granted with this token. It can be offline or online.", "type": "string" }, "audience": { "description": "Who is the intended audience for this token. In general the same as issued_to.", "type": "string" }, "email": { "description": "The email address of the user. Present only if the email scope is present in the request.", "type": "string" }, "email_verified": { "description": "Boolean flag which is true if the email address is verified. Present only if the email scope is present in the request.", "type": "boolean" }, "expires_in": { "description": "The expiry time of the token, as number of seconds left until expiry.", "format": "int32", "type": "integer" }, "issued_at": { "description": "The issue time of the token, as number of seconds.", "format": "int32", "type": "integer" }, "issued_to": { "description": "To whom was the token issued to. In general the same as audience.", "type": "string" }, "issuer": { "description": "Who issued the token.", "type": "string" }, "nonce": { "description": "Nonce of the id token.", "type": "string" }, "scope": { "description": "The space separated list of scopes granted to this token.", "type": "string" }, "user_id": { "description": "The obfuscated user id.", "type": "string" }, "verified_email": { "description": "Boolean flag which is true if the email address is verified. Present only if the email scope is present in the request.", "type": "boolean" } }, "type": "object" }, "Userinfoplus": { "id": "Userinfoplus", "properties": { "email": { "description": "The user's email address.", "type": "string" }, "family_name": { "description": "The user's last name.", "type": "string" }, "gender": { "description": "The user's gender.", "type": "string" }, "given_name": { "description": "The user's first name.", "type": "string" }, "hd": { "description": "The hosted domain e.g. example.com if the user is Google apps user.", "type": "string" }, "id": { "description": "The obfuscated ID of the user.", "type": "string" }, "link": { "description": "URL of the profile page.", "type": "string" }, "locale": { "description": "The user's preferred locale.", "type": "string" }, "name": { "description": "The user's full name.", "type": "string" }, "picture": { "description": "URL of the user's picture image.", "type": "string" }, "verified_email": { "default": "true", "description": "Boolean flag which is true if the email address is verified. Always verified because we only return the user's primary email address.", "type": "boolean" } }, "type": "object" }, "X509": { "additionalProperties": { "type": "string" }, "id": "X509", "type": "object" } }, "servicePath": "", "title": "Google OAuth2 API", "version": "v1" }