3.0.23 • Published 3 days ago

rootfi-api v3.0.23

Weekly downloads
-
License
MIT
Repository
-
Last release
3 days ago

RootFi Node Library

The RootFi Node.js library provides convenient access to the RootFi API from applications written in server-side JavaScript.

Documentation

See the API docs for more information about the API.

Installation

npm install --save rootfi-api
# or
yarn add rootfi-api

Instantiation

import { RootFiClient } from "rootfi-api";

const rootfi = new RootFiClient({
    apiKey: "ROOTFI_API_KEY",
});

Namespaces

The RootFi SDK is organized into categories, each with its own namespace. The available categories are:

  • core: APIs for managing companies and invite links
  • accounting: APIs for managing invoices, bills, and other accounting-related data
  • ecommerce: APIs for managing orders, products, and other e-commerce-related data
  • payments: APIs for managing payments and other payment-related data
  • crm: APIs for managing customers and other CRM-related data
const rootfi = new RootFiClient({
  apiKey: 'ROOTFI_API_KEY',
});

rootfi.accounting. // APIs specific to the Accounting Category

rootfi.payments. // APIs specific to the Payments Category

Usage

Below are code snippets of how you can use the RootFi Typescript SDK.

Get Invoices

import { RootFiClient } from "rootfi-api";

const rootfi = new RootFiClient({ apiKey: "ROOTFI_API_KEY" });

invoices = await rootfi.accounting.invoices.list({ limit: 10, rootfiCompanyID: 234 });

Get Orders

import { RootFiClient } from "rootfi-api";

const rootfi = new RootFiClient({ apiKey: "ROOTFI_API_KEY" });

orders = await rootfi.ecommerce.orders.list({ limit: 10, rootfiCompanyID: 234 });

Get Companies

import { RootFiClient } from "rootfi-api";

const rootfi = new RootFiClient({ apiKey: "ROOTFI_API_KEY" });

const companies = await rootfi.core.companies.list({ limit: 10 });

Paginate Data

RootFi follows cursor-based pagination. The response will include a next and prev property. To get the next page, you can pass in the value of next to the cursor property on the request. Similarly, to get the previous page, you can pass in the value of prev to the cursor property on the request.

import { RootFiClient } from "rootfi-api";

const rootfi = new RootFiClient({ apiKey: "ROOTFI_API_KEY" });

const orders = await rootfi.ecommerce.orders.list({
    limit: 10,
    rootfiCompanyID: 234,
    next: "eyJyb290ZmlfaWQiOjE4ODA2MDZ9",
});

Create Account

import { RootFiClient } from "rootfi-api";

const rootfi = new RootFiClient({ apiKey: "ROOTFI_API_KEY" });

await rootfi.core.inviteLinks.create({
    company_name: "Test Company",
    integration_category: ["ACCOUNTING"],
});

Sample Code for Fetching and Saving Data

Below is a sample code for fetching and saving data from the RootFi API to your database. You can use this as a starting point to build your own data sync process.

import { RootFiClient } from "rootfi-api";
const rootfi = new RootFiClient({ apiKey: "ROOTFI_API_KEY" });

async function fetchAllData() {
    let nextCursor = null;

    do {
        const response = await rootfi.accounting.invoices.list({ next: nextCursor, limit: 100 });
        const data = response.data;

        // Save data to your database

        nextCursor = response.next;
    } while (nextCursor);
}
3.0.23

3 days ago

3.0.22

3 days ago

3.0.21

4 days ago

3.0.20

13 days ago

3.0.19

21 days ago

3.0.18

1 month ago

3.0.17

2 months ago

3.0.16

2 months ago

3.0.14

2 months ago

3.0.15

2 months ago

3.0.13

2 months ago

3.0.12

2 months ago

3.0.10

3 months ago

3.0.11

3 months ago

3.0.8

3 months ago

3.0.7

3 months ago

3.0.6

3 months ago

3.0.9

3 months ago

3.0.5

3 months ago

3.0.4

3 months ago

3.0.3

3 months ago

3.0.2

3 months ago

3.0.1

3 months ago

3.0.0

3 months ago

1.0.2

5 months ago

2.0.1

5 months ago

2.0.0

5 months ago

1.0.1

5 months ago

1.0.0

5 months ago