tremendous
TypeScript icon, indicating that this package has built-in type declarations

3.0.1 • Public • Published

A node.js client library for the Tremendous API.

[!NOTE] This branch includes the v3 version of the Tremendous Node.JS client, a new version based on our API schema docs. If you are using the v2 versions, please check our UPGRADING guide

Installation

$ npm install tremendous

Getting started

All API requests require an access token. A sandbox access token is assigned upon signup through the Tremendous Sandbox Environment. Once you are ready to move to production, you will be assigned a production access token.

Authentication

Getting started

All endpoints require a Configuration object with a basePath and an accessToken for either your Production or Sandbox account:

import { Configuration, Environments } from "tremendous";

// when you are testing your code with the sandbox environment:
const configuration = new Configuration({
  basePath: Environments.testflight,
  accessToken: "YOUR-TESTFLIGHT-TOKEN",
});

// when you are ready to use the API:
const configuration = new Configuration({
  basePath: Environments.production,
  accessToken: "YOUR-PRODUCTION-TOKEN",
});

Examples

Submitting an order:

import { OrdersApi, CreateOrderRequest } from "tremendous";

const orders = new OrdersApi(configuration);
const params: CreateOrderRequest = {
  payment: {
    funding_source_id: "[FUNDING SOURCE ID HERE]",
  },
  reward:
    {
      delivery: {
        method: "EMAIL"
      },
      recipient: {
        name: "Recipient Name",
        email: "recipient@domain"
      },
      value: {
        denomination: 5.0,
        currency_code: "USD",
      },
       campaign_id: "[CAMPAIGN_ID]",
    }
};

const { data } = await orders.createOrder(params);
console.log(`Order created! ID: ${data.order.id}`);

Retrieving an Order and a Reward

import { OrdersApi, RewardsApi } from "tremendous";

const orders = new OrdersApi(configuration);
const rewards = new RewardsApi(configuration);

const { order } = (await orders.getOrder("[ORDER_ID]")).data;
const { reward } = (await rewards.getReward("[REWARD_ID]")).data;

console.log(`The order status is ${order.status}`);
console.log(`The reward was delivered to ${reward.recipient.email}`);

Listing products:

import { ProductsApi } from "tremendous";

const client = new ProductsApi(configuration);

const { data } = await client.listProducts();

data.products.forEach(product => { /* */ });

Listing funding sources:

import { FundingSourcesAPI } from "tremendous";

const client = new FundingSourcesAPI(configuration);

const { data } = await client.listFundingSources();

data.fundingSources.forEach(product => { /* */ });

Package Sidebar

Install

npm i tremendous

Weekly Downloads

268

Version

3.0.1

License

MIT

Unpacked Size

592 kB

Total Files

15

Last publish

Collaborators

  • tremendous