# Copyright 2015 Google Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. require 'date' require 'google/apis/core/base_service' require 'google/apis/core/json_representation' require 'google/apis/core/hashable' require 'google/apis/errors' module Google module Apis module Oauth2V1 # class Jwk include Google::Apis::Core::Hashable # # Corresponds to the JSON property `keys` # @return [Array] attr_accessor :keys def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) @keys = args[:keys] if args.key?(:keys) end # class Key include Google::Apis::Core::Hashable # # Corresponds to the JSON property `alg` # @return [String] attr_accessor :alg # # Corresponds to the JSON property `e` # @return [String] attr_accessor :e # # Corresponds to the JSON property `kid` # @return [String] attr_accessor :kid # # Corresponds to the JSON property `kty` # @return [String] attr_accessor :kty # # Corresponds to the JSON property `n` # @return [String] attr_accessor :n # # Corresponds to the JSON property `use` # @return [String] attr_accessor :use def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) @alg = args[:alg] if args.key?(:alg) @e = args[:e] if args.key?(:e) @kid = args[:kid] if args.key?(:kid) @kty = args[:kty] if args.key?(:kty) @n = args[:n] if args.key?(:n) @use = args[:use] if args.key?(:use) end end end # class Raw include Google::Apis::Core::Hashable # # Corresponds to the JSON property `keyvalues` # @return [Array] attr_accessor :keyvalues def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) @keyvalues = args[:keyvalues] if args.key?(:keyvalues) end # class Keyvalue include Google::Apis::Core::Hashable # # Corresponds to the JSON property `algorithm` # @return [String] attr_accessor :algorithm # # Corresponds to the JSON property `exponent` # @return [String] attr_accessor :exponent # # Corresponds to the JSON property `keyid` # @return [String] attr_accessor :keyid # # Corresponds to the JSON property `modulus` # @return [String] attr_accessor :modulus def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) @algorithm = args[:algorithm] if args.key?(:algorithm) @exponent = args[:exponent] if args.key?(:exponent) @keyid = args[:keyid] if args.key?(:keyid) @modulus = args[:modulus] if args.key?(:modulus) end end end # class Tokeninfo include Google::Apis::Core::Hashable # The access type granted with this token. It can be offline or online. # Corresponds to the JSON property `access_type` # @return [String] attr_accessor :access_type # Who is the intended audience for this token. In general the same as issued_to. # Corresponds to the JSON property `audience` # @return [String] attr_accessor :audience # The email address of the user. Present only if the email scope is present in # the request. # Corresponds to the JSON property `email` # @return [String] attr_accessor :email # Boolean flag which is true if the email address is verified. Present only if # the email scope is present in the request. # Corresponds to the JSON property `email_verified` # @return [Boolean] attr_accessor :email_verified alias_method :email_verified?, :email_verified # The expiry time of the token, as number of seconds left until expiry. # Corresponds to the JSON property `expires_in` # @return [Fixnum] attr_accessor :expires_in # The issue time of the token, as number of seconds. # Corresponds to the JSON property `issued_at` # @return [Fixnum] attr_accessor :issued_at # To whom was the token issued to. In general the same as audience. # Corresponds to the JSON property `issued_to` # @return [String] attr_accessor :issued_to # Who issued the token. # Corresponds to the JSON property `issuer` # @return [String] attr_accessor :issuer # Nonce of the id token. # Corresponds to the JSON property `nonce` # @return [String] attr_accessor :nonce # The space separated list of scopes granted to this token. # Corresponds to the JSON property `scope` # @return [String] attr_accessor :scope # The obfuscated user id. # Corresponds to the JSON property `user_id` # @return [String] attr_accessor :user_id # Boolean flag which is true if the email address is verified. Present only if # the email scope is present in the request. # Corresponds to the JSON property `verified_email` # @return [Boolean] attr_accessor :verified_email alias_method :verified_email?, :verified_email def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) @access_type = args[:access_type] if args.key?(:access_type) @audience = args[:audience] if args.key?(:audience) @email = args[:email] if args.key?(:email) @email_verified = args[:email_verified] if args.key?(:email_verified) @expires_in = args[:expires_in] if args.key?(:expires_in) @issued_at = args[:issued_at] if args.key?(:issued_at) @issued_to = args[:issued_to] if args.key?(:issued_to) @issuer = args[:issuer] if args.key?(:issuer) @nonce = args[:nonce] if args.key?(:nonce) @scope = args[:scope] if args.key?(:scope) @user_id = args[:user_id] if args.key?(:user_id) @verified_email = args[:verified_email] if args.key?(:verified_email) end end # class Userinfoplus include Google::Apis::Core::Hashable # The user's email address. # Corresponds to the JSON property `email` # @return [String] attr_accessor :email # The user's last name. # Corresponds to the JSON property `family_name` # @return [String] attr_accessor :family_name # The user's gender. # Corresponds to the JSON property `gender` # @return [String] attr_accessor :gender # The user's first name. # Corresponds to the JSON property `given_name` # @return [String] attr_accessor :given_name # The hosted domain e.g. example.com if the user is Google apps user. # Corresponds to the JSON property `hd` # @return [String] attr_accessor :hd # The obfuscated ID of the user. # Corresponds to the JSON property `id` # @return [String] attr_accessor :id # URL of the profile page. # Corresponds to the JSON property `link` # @return [String] attr_accessor :link # The user's preferred locale. # Corresponds to the JSON property `locale` # @return [String] attr_accessor :locale # The user's full name. # Corresponds to the JSON property `name` # @return [String] attr_accessor :name # URL of the user's picture image. # Corresponds to the JSON property `picture` # @return [String] attr_accessor :picture # Boolean flag which is true if the email address is verified. Always verified # because we only return the user's primary email address. # Corresponds to the JSON property `verified_email` # @return [Boolean] attr_accessor :verified_email alias_method :verified_email?, :verified_email def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) @email = args[:email] if args.key?(:email) @family_name = args[:family_name] if args.key?(:family_name) @gender = args[:gender] if args.key?(:gender) @given_name = args[:given_name] if args.key?(:given_name) @hd = args[:hd] if args.key?(:hd) @id = args[:id] if args.key?(:id) @link = args[:link] if args.key?(:link) @locale = args[:locale] if args.key?(:locale) @name = args[:name] if args.key?(:name) @picture = args[:picture] if args.key?(:picture) @verified_email = args[:verified_email] if args.key?(:verified_email) end end end end end