Module: Parse::API::Users
- Included in:
- Client
- Defined in:
- lib/parse/api/users.rb
Overview
Defines the User class interface for the Parse REST API
Instance Method Summary collapse
- #create_user(body, headers: {}, **opts) ⇒ Parse::Response
Create a new user.
- #current_user(session_token, headers: {}, **opts) ⇒ Parse::Response
Find user matching this active session token.
- #delete_user(id, headers: {}, **opts) ⇒ Parse::Response
Delete a User record given an objectId.
- #fetch_user(id, headers: {}, **opts) ⇒ Parse::Response
Fetch a User for a given objectId.
- #find_users(query = {}, headers: {}, **opts) ⇒ Parse::Response
Find users matching a set of constraints.
- #login(username, password, headers: {}, **opts) ⇒ Parse::Response
Login a user.
- #logout(session_token, headers: {}, **opts) ⇒ Parse::Response
Logout a user by deleting the associated session.
- #request_password_reset(email, headers: {}, **opts) ⇒ Parse::Response
Request a password reset for a registered email.
- #set_service_auth_data(id, service_name, auth_data, headers: {}, **opts) ⇒ Parse::Response
Set the authentication service OAUth data for a user.
- #signup(username, password, email = nil, body: {}, **opts) ⇒ Parse::Response
Signup a user given a username, password and, optionally, their email.
- #update_user(id, body = {}, headers: {}, **opts) ⇒ Parse::Response
Update a User record given an objectId.
Instance Method Details
#create_user(body, headers: {}, **opts) ⇒ Parse::Response
Create a new user.
55 56 57 58 59 60 61 62 63 | # File 'lib/parse/api/users.rb', line 55 def create_user(body, headers: {}, **opts) headers.merge!({ Parse::Protocol::REVOCABLE_SESSION => "1" }) if opts[:session_token].present? headers.merge!({ Parse::Protocol::SESSION_TOKEN => opts[:session_token] }) end response = request :post, USER_PATH_PREFIX, body: body, headers: headers, opts: opts response.parse_class = Parse::Model::CLASS_USER response end |
#current_user(session_token, headers: {}, **opts) ⇒ Parse::Response
Find user matching this active session token.
43 44 45 46 47 48 | # File 'lib/parse/api/users.rb', line 43 def current_user(session_token, headers: {}, **opts) headers.merge!({ Parse::Protocol::SESSION_TOKEN => session_token }) response = request :get, "#{USER_PATH_PREFIX}/me", headers: headers, opts: opts response.parse_class = Parse::Model::CLASS_USER response end |
#delete_user(id, headers: {}, **opts) ⇒ Parse::Response
Delete a User record given an objectId.
95 96 97 | # File 'lib/parse/api/users.rb', line 95 def delete_user(id, headers: {}, **opts) request :delete, "#{USER_PATH_PREFIX}/#{id}", headers: headers, opts: opts end |
#fetch_user(id, headers: {}, **opts) ⇒ Parse::Response
Fetch a User for a given objectId.
24 25 26 | # File 'lib/parse/api/users.rb', line 24 def fetch_user(id, headers: {}, **opts) request :get, "#{USER_PATH_PREFIX}/#{id}", headers: headers, opts: opts end |
#find_users(query = {}, headers: {}, **opts) ⇒ Parse::Response
Find users matching a set of constraints.
33 34 35 36 37 | # File 'lib/parse/api/users.rb', line 33 def find_users(query = {}, headers: {}, **opts) response = request :get, USER_PATH_PREFIX, query: query, headers: headers, opts: opts response.parse_class = Parse::Model::CLASS_USER response end |
#login(username, password, headers: {}, **opts) ⇒ Parse::Response
Login a user.
115 116 117 118 119 120 121 122 123 | # File 'lib/parse/api/users.rb', line 115 def login(username, password, headers: {}, **opts) # Probably pass Installation-ID as header query = { username: username, password: password } headers.merge!({ Parse::Protocol::REVOCABLE_SESSION => "1" }) # headers.merge!( { Parse::Protocol::INSTALLATION_ID => ''} ) response = request :get, LOGIN_PATH, query: query, headers: headers, opts: opts response.parse_class = Parse::Model::CLASS_USER response end |
#logout(session_token, headers: {}, **opts) ⇒ Parse::Response
Logout a user by deleting the associated session.
130 131 132 133 134 | # File 'lib/parse/api/users.rb', line 130 def logout(session_token, headers: {}, **opts) headers.merge!({ Parse::Protocol::SESSION_TOKEN => session_token }) opts.merge!({ use_master_key: false, session_token: session_token }) request :post, LOGOUT_PATH, headers: headers, opts: opts end |
#request_password_reset(email, headers: {}, **opts) ⇒ Parse::Response
Request a password reset for a registered email.
104 105 106 107 | # File 'lib/parse/api/users.rb', line 104 def request_password_reset(email, headers: {}, **opts) body = { email: email } request :post, REQUEST_PASSWORD_RESET, body: body, opts: opts, headers: headers end |
#set_service_auth_data(id, service_name, auth_data, headers: {}, **opts) ⇒ Parse::Response
Set the authentication service OAUth data for a user. Deleting or unlinking is done by setting the authData of the service name to nil.
85 86 87 88 | # File 'lib/parse/api/users.rb', line 85 def set_service_auth_data(id, service_name, auth_data, headers: {}, **opts) body = { authData: { service_name => auth_data } } update_user(id, body, opts) end |
#signup(username, password, email = nil, body: {}, **opts) ⇒ Parse::Response
Signup a user given a username, password and, optionally, their email.
143 144 145 146 147 | # File 'lib/parse/api/users.rb', line 143 def signup(username, password, email = nil, body: {}, **opts) body = body.merge({ username: username, password: password }) body[:email] = email || body[:email] create_user(body, opts) end |
#update_user(id, body = {}, headers: {}, **opts) ⇒ Parse::Response
Update a User record given an objectId.
71 72 73 74 75 | # File 'lib/parse/api/users.rb', line 71 def update_user(id, body = {}, headers: {}, **opts) response = request :put, "#{USER_PATH_PREFIX}/#{id}", body: body, opts: opts response.parse_class = Parse::Model::CLASS_USER response end |