0.0.21 • Published 4 years ago

blockdemy-sso v0.0.21

Weekly downloads
-
License
MIT
Repository
-
Last release
4 years ago
$ yarn add blockdemy-sso
import BlockdemySSO from 'blockdemy-sso'

// SSO_URL is the SSO API Url. 
// It can be changed to use on development with a localhost url
const SSO_URL = 'https://api.id.blockdemy.com'
const API_KEY = '<API_KEY>'

const SingleSignOn = new BlockdemySSO(API_KEY, SSO_URL);

// Examples
const start = async () => {
  const user = await SingleSignOn.getUserById(/* Valid user id */);

  // Use user here
}

In order to use the mongoose plugin to autopopulate users using their ssoId, you just need to add the following into your user schema:

import SingleSignOn from 'path/to/your/blockdemy-sso/instance';

const UserSchema = new Schema({
  /* ... */
  ssoId: { type: Schema.Types.ObjectId }
  /* ... */
});

UserSchema.plugin(SingleSignOn.populateUsers);

Every method corresponds with the GraphQL API query endpoint with the same name They can be checked at our Blockdemy SSO Playground

MethodparamsreturnsDescription
usersById(ids)ids: ArrayStringArrayObjectRecover the list of users given valid ids
user(id)id: StringObjectRecover user given a valid id
userFromToken(token)token: StringObjectRecover user given a jwt token
userByUsername(username)username: StringObjectRecover user given a valid username
userByAddress(address)address: StringObjectRetrieve the user that owns an ethereum address
usernameExists(username)username: StringBooleanIndicates if an username has been taken
userEmailExists(email)email: StringBooleanIndicates if an email has been taken and verified
userHasEthAddress(userId, address)userId: String, address: StringBooleanIndicates if an specific user owns an ethereum address
userEthAddressExists(address)address: StringBooleanIndicates if an ethereum address has been taken before
userSearch(query, filters, params)query: Object, filters: Object, params: ObjectArrayObjectRecover a list of users given valid filters and parameters for search
organization(id)id: StringObjectRecover organization given a valid id
organizationByIdentifier(identifier)identifier: StringObjectRecover organization given a valid identifier
organizationsByIds(ids)ids: ArrayStringArrayObjectRecover the list of organizations given valid ids
MethodparamsreturnsDescription
userEdit(userId, user)userId: String, user: ObjectObjectEdit user data and retrieves the new user
userAddEthAddress(userId, user)userId: String, address: String, signature: StringObjectAdd ethereum address validated with a signature to user
userEditPassword(userId, newPassword, oldPassword)userId: String, newPassword: String, oldPassword: StringObjectChange password tu user using its last password to validate

This project is licensed under the MIT License

0.0.21

4 years ago

0.0.20

4 years ago

0.0.19

4 years ago

0.0.17

4 years ago

0.0.18

4 years ago

0.0.16

4 years ago

0.0.15

4 years ago

0.0.14

4 years ago

0.0.13

4 years ago

0.0.12

4 years ago

0.0.11

4 years ago

0.0.10

4 years ago

0.0.9

4 years ago

0.0.8

4 years ago

0.0.7

4 years ago

0.0.6

4 years ago

0.0.5

4 years ago

0.0.4

4 years ago

0.0.3

4 years ago

0.0.2

4 years ago

0.0.1

4 years ago