Class: MagicAdmin::Resource::User
- Inherits:
-
Object
- Object
- MagicAdmin::Resource::User
- Defined in:
- lib/magic-admin/resource/user.rb
Overview
The user resource and its methods are accessible on the Magic instance by the User attribute. It provides methods to interact with the User.
Instance Attribute Summary collapse
-
#magic ⇒ Object
readonly
attribute reader for magic client object.
Instance Method Summary collapse
-
#get_metadata_by_issuer(issuer) ⇒ Object
Description: Method Retrieves information about the user by the supplied issuer.
-
#get_metadata_by_public_address(public_address) ⇒ Object
Description: Method Retrieves information about the user by the supplied public_address.
-
#get_metadata_by_token(did_token) ⇒ Object
Description: Method Retrieves information about the user by the supplied DID Token.
-
#initialize(magic) ⇒ User
constructor
The constructor allows you to create user object when your application interacting with the Magic API.
-
#logout_by_issuer(issuer) ⇒ Object
Description: Method logs a user out of all Magic SDK sessions by the supplied issuer.
-
#logout_by_public_address(public_address) ⇒ Object
Description: Method logs a user out of all Magic SDK sessions by the supplied public_address.
-
#logout_by_token(did_token) ⇒ Object
Description: Method logs a user out of all Magic SDK sessions by the supplied DID Token.
Constructor Details
#initialize(magic) ⇒ User
The constructor allows you to create user object when your application interacting with the Magic API
Arguments:
magic: A Magic object.
Returns:
A user object that provides access to all the supported resources.
Examples:
User.new(<magic>)
26 27 28 |
# File 'lib/magic-admin/resource/user.rb', line 26 def initialize(magic) @magic = magic end |
Instance Attribute Details
#magic ⇒ Object (readonly)
attribute reader for magic client object
13 14 15 |
# File 'lib/magic-admin/resource/user.rb', line 13 def magic @magic end |
Instance Method Details
#get_metadata_by_issuer(issuer) ⇒ Object
Description:
Method Retrieves information about the user by
the supplied issuer
Arguments:
issuer: Extracted iss component of DID Token generated by a Magic user
on the client-side.
Returns:
Metadata information about the user
40 41 42 43 44 45 |
# File 'lib/magic-admin/resource/user.rb', line 40 def (issuer) headers = MagicAdmin::Util.headers(magic.secret_key) = { params: { issuer: issuer }, headers: headers } magic.http_client .call(:get, "/v1/admin/auth/user/get", ) end |
#get_metadata_by_public_address(public_address) ⇒ Object
Description:
Method Retrieves information about the user by
the supplied public_address
Arguments:
public_address: Extracted The user's Ethereum public address component
of DID Token generated by a Magic user on the client-side.
Returns:
Metadata information about the user
57 58 59 60 |
# File 'lib/magic-admin/resource/user.rb', line 57 def (public_address) issuer = token.construct_issuer_with_public_address(public_address) (issuer) end |
#get_metadata_by_token(did_token) ⇒ Object
Description:
Method Retrieves information about the user by
the supplied DID Token
Arguments:
did_token: A DID Token generated by a Magic user on the client-side.
Returns:
Metadata information about the user
71 72 73 74 |
# File 'lib/magic-admin/resource/user.rb', line 71 def (did_token) issuer = token.get_issuer(did_token) (issuer) end |
#logout_by_issuer(issuer) ⇒ Object
Description:
Method logs a user out of all Magic SDK sessions by
the supplied issuer
Arguments:
issuer: Extracted iss component of DID Token generated by a Magic user
on the client-side.
Returns:
Magic Response
86 87 88 89 90 91 |
# File 'lib/magic-admin/resource/user.rb', line 86 def logout_by_issuer(issuer) headers = MagicAdmin::Util.headers(magic.secret_key) = { params: { issuer: issuer }, headers: headers } magic.http_client .call(:post, "/v2/admin/auth/user/logout", ) end |
#logout_by_public_address(public_address) ⇒ Object
Description:
Method logs a user out of all Magic SDK sessions by
the supplied public_address
Arguments:
public_address: Extracted the user's Ethereum public address component
of DID Token generated by a Magic user on the client-side.
Returns:
Magic Response
103 104 105 106 |
# File 'lib/magic-admin/resource/user.rb', line 103 def logout_by_public_address(public_address) issuer = token.construct_issuer_with_public_address(public_address) logout_by_issuer(issuer) end |
#logout_by_token(did_token) ⇒ Object
Description:
Method logs a user out of all Magic SDK sessions by
the supplied DID Token
Arguments:
did_token: A DID Token generated by a Magic user on the client-side.
Returns:
Magic Response
117 118 119 120 |
# File 'lib/magic-admin/resource/user.rb', line 117 def logout_by_token(did_token) issuer = token.get_issuer(did_token) logout_by_issuer(issuer) end |