1.2.0 • Published 3 years ago

@snaptrade/js-fetch-api v1.2.0

Weekly downloads
-
License
ISC
Repository
github
Last release
3 years ago

NPM Version

NPM Downloads

📖 Table of Contents


⚙️ Requirements

  • Node 17 or later
  • You need to have a clientID and a consumerKey. If you don't have one, please send us an email.

🚀 Getting Started

npm i @snaptrade/js-fetch-api

Note : Your consumerKey should always remain a secret! Never hard code it!

const SnapTrade = require("@snaptrade/js-fetch-api");

const const snapTrade = new SnapTrade(
  "CLIENT_ID",
  "CONSUMER_KEY"
);

🕵🏼‍♂️ Authentication

register user

Register user with SnapTrade in order to create secure brokerage authorizations.

Signature:
 registerUser(data: {
    userId: string;
    rsaPublicKey?: string;
  }): Promise<RegisterUserResponseType>
Example:
const registerUser = async () => {
  const registeredUser = await snapTrade.registerUser({
    userId: 'USER_ID',
    rsaPublicKey: 'ssh-rsa RSA_PUBLIC_KEY', //only required if RSA is enabled for the partner
  });
  return registeredUser;
};

login user

Generate a redirect URI to securely login a user to the SnapTrade Connection Portal.

  • optional parameters:
    • broker: provide a broker slug to redirect user directly to the broker portal (or show the auth modal)
    • immediateRedirect: if set to true, user gets redirected back to the partner's app immediately after making a connection.
    • customRedirect: if need to use a different redirect url than the default one.
    • reconnect: provide a authorization id of a broken connection to reconnect.
Signature:
generateRedirectURI({
    userId,
    userSecret,
  }: DefaultQueryParams, data: {broker: string; immediateRedirect: boolean; customRedirect: string, reconnect: string}): Promise<RedirectURIResponseType>
Example:
const redirectURI = async () => {
  const uri = await snapTrade.generateRedirectURI(
    {
      userId: 'USER_ID',
      userSecret: 'USER_SECRET',
    },
    {
      broker: 'ALPACA',
      immediateRedirect: true,
      customRedirect: 'https://passiv.com',
      reconnect: 'b5f262d-4bb9-365d-888a-202bd3b15fa1',
    }
  );
  return uri;
};

delete user

Delete user from SnapTrade, disabling all brokerage authorizations and permanently deleting all data associated with the user.

Signature:
deleteUser({
    userId,
    userSecret,
  }: DefaultQueryParams): Promise<DeleteUserResponseType>
Example:
const deleteUser = async () => {
  const deletedUser = await snapTrade.deleteUser({
    userId: 'USER_ID',
    userSecret: 'USER_SECRET',
  });
  return deletedUser;
};

📑 Full Documentation

Documentations for making requests to other SnapTrade API endpoints using this sdk:


👨🏼‍⚖️ License & copyrights

Licensed under Apache License 2.0.

1.2.0

3 years ago

1.1.9

3 years ago

1.1.8

3 years ago

1.1.7

3 years ago

1.1.6

3 years ago

1.1.5

3 years ago

1.1.4

3 years ago

1.1.1

3 years ago

1.1.0

3 years ago

1.1.3

3 years ago

1.1.2

3 years ago

1.0.9

3 years ago

1.0.8

3 years ago

1.0.7

3 years ago

1.0.2

3 years ago

1.0.6

3 years ago

1.0.5

3 years ago

1.0.4

3 years ago

1.0.3

3 years ago

1.0.1

3 years ago

1.0.0

3 years ago