class Github::Client::Authorizations
OAuth Authorizations
API
Public Instance Methods
Create a new authorization
@see developer.github.com/v3/oauth_authorizations/#create-a-new-authorization
@param [Hash] params @option params [Array] :scopes
A list of scopes that this authorization is in.
@option params [String] :note
Required. A note to remind you what the OAuth token is for.
@option params [String] :note_url
A URL to remind you what the OAuth token is for.
@option params [String] :client_id
The 20 character OAuth app client key for which to create the token.
@option params [String] :client_secret
The 40 character OAuth app client secret for which to create the token.
@option params [String] :fingerprint
A unique string to distinguish an authorization from others created for the same client ID and user.
@example
github = Github.new basic_auth: 'login:password' github.oauth.create scopes: ["public_repo"], note: 'amdmin script'
@api public
# File lib/github_api/client/authorizations.rb, line 77 def create(*args) raise_authentication_error unless authenticated? arguments(args) do assert_required :note, :scopes end post_request('/authorizations', arguments.params) end
Delete an authorization
@see developer.github.com/v3/oauth_authorizations/#delete-an-authorization
@example
github = Github.new github.oauth.delete 'authorization-id'
@api public
# File lib/github_api/client/authorizations.rb, line 127 def delete(*args) raise_authentication_error unless authenticated? arguments(args, required: [:id]) delete_request("/authorizations/#{arguments.id}", arguments.params) end
Get a single authorization
@see developer.github.com/v3/oauth_authorizations/#get-a-single-authorization
@example
github = Github.new basic_auth: 'login:password' github.oauth.get 'authorization-id'
@return [ResponseWrapper]
@api public
# File lib/github_api/client/authorizations.rb, line 45 def get(*args) raise_authentication_error unless authenticated? arguments(args, required: [:id]) get_request("/authorizations/#{arguments.id}", arguments.params) end
List authorizations
@see developer.github.com/v3/oauth_authorizations/#list-your-authorizations
@example
github = Github.new basic_auth: 'login:password' github.auth.list github.auth.list { |auth| ... }
@api public
# File lib/github_api/client/authorizations.rb, line 24 def list(*args) raise_authentication_error unless authenticated? arguments(args) response = get_request('/authorizations', arguments.params) return response unless block_given? response.each { |el| yield el } end
Update an existing authorization
@see developer.github.com/v3/oauth_authorizations/#update-an-existing-authorization
@param [Hash] inputs @option inputs [Array] :scopes
Optional array - A list of scopes that this authorization is in.
@option inputs [Array] :add_scopes
Optional array - A list of scopes to add to this authorization.
@option inputs [Array] :remove_scopes
Optional array - A list of scopes to remove from this authorization.
@option inputs [String] :note
Optional string - A note to remind you what the OAuth token is for.
@optoin inputs [String] :note_url
Optional string - A URL to remind you what the OAuth token is for.
@option params [String] :fingerprint
A unique string to distinguish an authorization from others created for the same client ID and user.
@example
github = Github.new basic_auth: 'login:password' github.oauth.update "authorization-id", add_scopes: ["repo"]
@api public
# File lib/github_api/client/authorizations.rb, line 110 def update(*args) raise_authentication_error unless authenticated? arguments(args, required: [:id]) patch_request("/authorizations/#{arguments.id}", arguments.params) end
Protected Instance Methods
# File lib/github_api/client/authorizations.rb, line 137 def raise_authentication_error raise ArgumentError, 'You can only access your own tokens' \ ' via Basic Authentication' end