Class: Github::Client::Users

Inherits:
API
  • Object
show all
Defined in:
lib/github_api/client/users.rb

Defined Under Namespace

Classes: Emails, Followers, Keys

Constant Summary collapse

VALID_USER_PARAMS_NAMES =
%w[
  name
  email
  blog
  company
  location
  hireable
  bio
].freeze

Constants included from MimeType

MimeType::MEDIA_LOOKUP

Constants included from Github::Constants

Github::Constants::ACCEPT, Github::Constants::ACCEPTED_OAUTH_SCOPES, Github::Constants::ACCEPT_CHARSET, Github::Constants::CACHE_CONTROL, Github::Constants::CONTENT_LENGTH, Github::Constants::CONTENT_TYPE, Github::Constants::DATE, Github::Constants::ETAG, Github::Constants::HEADER_LAST, Github::Constants::HEADER_LINK, Github::Constants::HEADER_NEXT, Github::Constants::LOCATION, Github::Constants::META_FIRST, Github::Constants::META_LAST, Github::Constants::META_NEXT, Github::Constants::META_PREV, Github::Constants::META_REL, Github::Constants::OAUTH_SCOPES, Github::Constants::PARAM_PAGE, Github::Constants::PARAM_PER_PAGE, Github::Constants::PARAM_START_PAGE, Github::Constants::RATELIMIT_LIMIT, Github::Constants::RATELIMIT_REMAINING, Github::Constants::RATELIMIT_RESET, Github::Constants::SERVER, Github::Constants::USER_AGENT

Instance Attribute Summary

Attributes inherited from API

#current_options

Instance Method Summary collapse

Methods inherited from API

after_callbacks, after_request, #api_methods_in, #arguments, before_callbacks, before_request, clear_request_methods!, #disable_redirects, #execute, extend_with_actions, extra_methods, #extract_basic_auth, extract_class_name, #filter_callbacks, inherited, #initialize, internal_methods, method_added, #method_missing, #module_methods_in, namespace, request_methods, require_all, #respond_to?, root!, #run_callbacks, #set, #yield_or_eval

Methods included from Request::Verbs

#delete_request, #get_request, #head_request, #options_request, #patch_request, #post_request, #put_request

Methods included from RateLimit

#ratelimit, #ratelimit_remaining, #ratelimit_reset

Methods included from MimeType

#lookup_media, #parse

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

#get(*args) ⇒ Object Also known as: find

Get a single unauthenticated user

Get the authenticated user

Examples:

github = Github.new
github.users.get user: 'user-name'
github = Github.new oauth_token: '...'
github.users.get


68
69
70
71
72
73
74
75
76
# File 'lib/github_api/client/users.rb', line 68

def get(*args)
  params = arguments(args).params

  if user_name = params.delete('user')
    get_request("/users/#{user_name}", params)
  else
    get_request("/user", params)
  end
end

#list(*args) ⇒ Object Also known as: all

List all users.

This provides a dump of every user, in the order that they signed up for GitHub.

Examples:

users = Github::Users.new
users.list

Parameters:

  • params (Hash)
  • [Integer] (Hash)

    a customizable set of options



46
47
48
49
50
51
52
# File 'lib/github_api/client/users.rb', line 46

def list(*args)
  arguments(args)

  response = get_request("/users", arguments.params)
  return response unless block_given?
  response.each { |el| yield el }
end

#update(*args) ⇒ Object

Update the authenticated user

Examples:

github = Github.new oauth_token: '..'
github.users.update
  name: "monalisa octocat",
  email: "[email protected]",
  blog: "https://github.com/blog",
  company: "GitHub",
  location: "San Francisco",
  hireable: true,
  bio: "There once..."

Parameters:



109
110
111
112
113
114
115
# File 'lib/github_api/client/users.rb', line 109

def update(*args)
  arguments(args) do
    permit VALID_USER_PARAMS_NAMES
  end

  patch_request("/user", arguments.params)
end
pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy