Module: Twttr::Client::Endpoint::V2::Users

Included in:
Twttr::Client
Defined in:
lib/twttr/client/endpoint/v2/users.rb,
lib/twttr/client/endpoint/v2/users/follows.rb

Overview

Defined Under Namespace

Modules: Follows

Constant Summary collapse

ME_PATH =
"#{V2::V2_PATH}/users/me"
USERS_PATH =
"#{V2::V2_PATH}/users"
USER_BY_USERNAME_PATH =
"#{V2::V2_PATH}/users/by/username/%<username>s"
USER_PATH =
"#{V2::V2_PATH}/users/%<user_id>s"

Instance Method Summary collapse

Instance Method Details

#meObject



15
16
17
18
# File 'lib/twttr/client/endpoint/v2/users.rb', line 15

def me
  response = get(ME_PATH, query_params: { 'user.fields': config.user_fields })
  Model::User.new(response['data'], self)
end

#user(user_id) ⇒ Object



20
21
22
23
24
# File 'lib/twttr/client/endpoint/v2/users.rb', line 20

def user(user_id)
  response = get(USER_PATH, params: { user_id: user_id },
                            query_params: { 'user.fields': config.user_fields })
  Model::User.new(response['data'], self)
end

#user_by_username(username) ⇒ Object



26
27
28
29
30
# File 'lib/twttr/client/endpoint/v2/users.rb', line 26

def user_by_username(username)
  response = get(USER_BY_USERNAME_PATH, params: { username: username },
                                        query_params: { 'user.fields': config.user_fields })
  Model::User.new(response['data'], self)
end

#users(user_ids) ⇒ Object



32
33
34
35
36
# File 'lib/twttr/client/endpoint/v2/users.rb', line 32

def users(user_ids)
  response = get(USERS_PATH,
                 query_params: { ids: user_ids.join(','), 'user.fields': config.user_fields })
  response['data'].map { |v| Model::User.new(v, self) }
end