Class: Github::Authorizations
- Defined in:
- lib/github_api/authorizations.rb
Overview
OAuth Authorizations API
Constant Summary collapse
- VALID_AUTH_PARAM_NAMES =
%w[ scopes add_scopes remove_scopes note note_url client_id client_secret ].freeze
Constants included from Request
Request::METHODS, Request::METHODS_WITH_BODIES
Constants included from Connection
Constants included from Constants
Constants::ACCEPT, Constants::ACCEPTED_OAUTH_SCOPES, Constants::ACCEPT_CHARSET, Constants::CACHE_CONTROL, Constants::CONTENT_LENGTH, Constants::CONTENT_TYPE, Constants::DATE, Constants::ETAG, Constants::HEADER_LAST, Constants::HEADER_LINK, Constants::HEADER_NEXT, Constants::LOCATION, Constants::META_FIRST, Constants::META_LAST, Constants::META_NEXT, Constants::META_PREV, Constants::META_REL, Constants::OAUTH_SCOPES, Constants::PARAM_PAGE, Constants::PARAM_PER_PAGE, Constants::PARAM_START_PAGE, Constants::RATELIMIT_LIMIT, Constants::RATELIMIT_REMAINING, Constants::SERVER, Constants::USER_AGENT
Constants included from MimeType
Instance Attribute Summary
Attributes inherited from API
Attributes included from Authorization
Instance Method Summary collapse
-
#create(*args) ⇒ Object
Create a new authorization.
-
#delete(*args) ⇒ Object
(also: #remove)
Delete an authorization.
-
#get(*args) ⇒ Object
(also: #find)
Get a single authorization.
-
#list(*args) ⇒ Object
(also: #all)
List authorizations.
-
#revoke(*args) ⇒ Object
Revoke all authorizations for an application.
-
#update(*args) ⇒ Object
(also: #edit)
Update an existing authorization.
Methods inherited from API
#api_methods_in, #append_arguments, #arguments, inherited, #initialize, #method_missing, #process_basic_auth, #set, #setup, #with, #yield_or_eval
Methods included from RateLimit
#ratelimit, #ratelimit_remaining
Methods included from Request
#delete_request, #get_request, #patch_request, #post_request, #put_request, #request
Methods included from Connection
#caching?, #clear_cache, #connection, #default_middleware, #default_options, #stack
Methods included from MimeType
Methods included from Authorization
#auth_code, #authenticated?, #authentication, #authorize_url, #basic_authed?, #client, #get_token
Constructor Details
This class inherits a constructor from Github::API
Dynamic Method Handling
This class handles dynamic methods through the method_missing method in the class Github::API
Instance Method Details
#create(*args) ⇒ Object
Create a new authorization
Inputs
-
:scopes- Optional array - A list of scopes that this authorization is in. -
:note- Optional string - A note to remind you what the OAuth token is for. -
:note_url- Optional string - A URL to remind you what the OAuth token is for.
Examples
github = Github.new :basic_auth => 'login:password'
github.oauth.create
"scopes" => ["public_repo"]
61 62 63 64 65 66 67 68 |
# File 'lib/github_api/authorizations.rb', line 61 def create(*args) _check_if_authenticated arguments(args) do sift VALID_AUTH_PARAM_NAMES end post_request('/authorizations', arguments.params) end |
#delete(*args) ⇒ Object Also known as: remove
Delete an authorization
Examples
github.oauth.delete 'authorization-id'
98 99 100 101 102 103 |
# File 'lib/github_api/authorizations.rb', line 98 def delete(*args) _check_if_authenticated arguments(args, required: [:authorization_id]) delete_request("/authorizations/#{authorization_id}", arguments.params) end |
#get(*args) ⇒ Object Also known as: find
Get a single authorization
Examples
github = Github.new :basic_auth => 'login:password'
github.oauth.get 'authorization-id'
41 42 43 44 45 46 |
# File 'lib/github_api/authorizations.rb', line 41 def get(*args) _check_if_authenticated arguments(args, required: [:authorization_id]) get_request("/authorizations/#{authorization_id}", arguments.params) end |
#list(*args) ⇒ Object Also known as: all
List authorizations
Examples
github = Github.new :basic_auth => 'login:password'
github.oauth.list
github.oauth.list { |auth| ... }
25 26 27 28 29 30 31 32 |
# File 'lib/github_api/authorizations.rb', line 25 def list(*args) _check_if_authenticated arguments(args) response = get_request('/authorizations', arguments.params) return response unless block_given? response.each { |el| yield el } end |
#revoke(*args) ⇒ Object
Revoke all authorizations for an application
Examples
github = Github.new basic_auth: "client_id:client_secret"
github.oauth.revoke 'client-id'
113 114 115 |
# File 'lib/github_api/authorizations.rb', line 113 def revoke(*args) end |
#update(*args) ⇒ Object Also known as: edit
Update an existing authorization
Inputs
-
:scopes- Optional array - A list of scopes that this authorization is in. -
:add_scopes- Optional array - A list of scopes to add to this authorization. -
:remove_scopes- Optional array - A list of scopes to remove from this authorization. -
:note- Optional string - A note to remind you what the OAuth token is for. -
:note_url- Optional string - A URL to remind you what the OAuth token is for.
Examples
github = Github.new :basic_auth => 'login:password'
github.oauth.update "authorization-id", "add_scopes" => ["repo"],
83 84 85 86 87 88 89 90 |
# File 'lib/github_api/authorizations.rb', line 83 def update(*args) _check_if_authenticated arguments(args, required: [:authorization_id]) do sift VALID_AUTH_PARAM_NAMES end patch_request("/authorizations/#{authorization_id}", arguments.params) end |