@privy-io/privy-node
TypeScript icon, indicating that this package has built-in type declarations

0.0.2 • Public • Published

@privy-io/privy-node

Privy's Node client allows you to interact with the Privy API from server-side Node applications.

For interacting with user data in the browser, use @privy-io/privy-browser.

https://www.privy.io

build npm version

Documentation

See https://docs.privy.io/.

Requirements

Node 14 and higher is supported.

Installation

npm i @privy-io/privy-node

Basic usage

Initialize the Privy client using a session that can fetch tokens from Privy through your backend.

import {PrivyClient} from '@privy-io/privy-node';

const client = new PrivyClient(
  process.env.PRIVY_API_KEY,
  process.env.PRIVY_API_SECRET,
);

Using the Privy node client, configure your Privy datastore.

// GET fields
const fields = await client.listFields();

// CREATE new field
const field = await client.createField({name: name, description: 'A field'});

// DELETE access group
await client.deleteAccessGroup(accessGroupId);

// GET permisions for a user
const permissions = await client.getUserPermissions(userId);

Using privy-node, you can also read and write some data for a given user.

const userId = "0x123";

// To write...
const [email, ssn] = await client.put(userId, [
  {field: "email", value: "foo@example.com"},
  {field: "ssn", value: "123-45-6789"},
]);

// To read...
const [email, ssn] = await client.get(userId, ["email", "ssn"]);
console.log(email.text());
console.log(ssn.text());

Testing

The test runner looks for files with a .test.ts extension. There are two groups of tests: unit and integration.

Unit

To run unit tests:

npm test

Integration

Some of the tests are currently expected to be run against a running instance of the API. To successfully run those, you will need to create a .env file in the root of ./privy-node with the following fields:

PRIVY_API_URL=<privy api url>
PRIVY_KMS_URL=<privy kms url>
PRIVY_API_KEY=<your public key>
PRIVY_API_SECRET=<your private key>

To run integration tests:

npm run test-integration

Package Sidebar

Install

npm i @privy-io/privy-node

Weekly Downloads

0

Version

0.0.2

License

Apache-2.0

Unpacked Size

148 kB

Total Files

57

Last publish

Collaborators

  • koleok
  • joshnaviprivy
  • payton-privy
  • privy-bot
  • ankushswar1
  • ahollenbach
  • asta-li
  • sternhenri