@cx-reports/api-client
TypeScript icon, indicating that this package has built-in type declarations

0.1.7 • Public • Published

TypeScript API Client for CxReports

NPM Version

This library allows you to connect to the CxReports API from your applications.

Installation

npm install @cx-reports/api-client

Example Usage

import { CxReportsClient } from "@cx-reports/api-client";

const client = new CxReportsClient({
  baseUrl: "[cx-reports-server-url]",
  authToken: "[your-personal-access-token]",
  defaultWorkspaceId: "[id or code of the workspace]",
  defaultTimezone: "UTC"
});

// export a report to PDF
let pdf = client.downloadPDF({ reportId: 123, params: {} });

// fetch all reports of type invoice
let reports = await client.getReports({ type: "invoice" });

// get all available report types
let types = await client.getReportTypes();

// get all available workspaces
let workspaces = await client.getWorkspaces();

// create a web token to authenticate iframe preview
let nonce = await client.createNonceAuthToken();

// get a preview URL of a report or report type
let url = client.getReportPreviewURL({
  reportType: "invoice",
  params: {},
  data: {},
  tmpDataId: 1
  nonce,
});

The current timezone of your server can be obtained using new Intl.DateTimeFormat().resolvedOptions().timeZone.

Examples

The examples folder provides the usage examples.

To set up your environment variables:

  1. Rename the .env.sample file to .env.
  2. Open the .env file in your text editor.
  3. Replace the placeholder values with your actual values.

License

MIT License

Package Sidebar

Install

npm i @cx-reports/api-client

Weekly Downloads

1

Version

0.1.7

License

MIT

Unpacked Size

42.1 kB

Total Files

65

Last publish

Collaborators

  • ognjenst
  • mstijak