Skip to main content
This guide is for direct JavaScript/TypeScript integration. If you’re using one of our supported frameworks, we recommend using their dedicated SDKs instead:These framework-specific SDKs provide better integration and additional features tailored to each framework.

Installation

Terminal

Initialization

1

Set the Atlas API key in the environment variables

You can get it from the Atlas Dashboard.
.env
2

Create the Atlas Client

To initialize the Atlas SDK, you need to instantiate the Atlas Client with your API key:
src/atlas/client.ts

Core Features

The Atlas JavaScript client provides several methods to interact with Atlas services:

Feature Management

Register Features

Register features that your application uses:
The feature registration is used to ensure that the feature is registered in Atlas. If the feature is not registered, it will be registered automatically and an alert will be sent to the administrators.

Check Feature Access

Check if a customer has access to specific features:

Customer Management

Get Customer Features

Retrieve all features a customer may have access to:

Get Customer Details

Get detailed information about a customer:

Pricing Model

Get information about your pricing model:

Limit-based features

Sometimes, just having a feature as enabled or disabled is not enough, and our pricing models require limits to be set. For example, 5 users per account, or 20GB of storage. Setting this up with Atlas is very easy. And, if at some point the limits change, you won’t need to change the code again! When initializing the Atlas client, you can configure a limit callback for a feature. This callback will be called when a limit-based feature is checked. The callback should return the number of usages for the feature. For example:
src/atlas/client.ts

Usage-based features

Usage-based and credit-based features allow you to bill customers based on their consumption. These features track usage events and apply billing according to your pricing model configuration.

Reporting events

To bill your customers correctly, your application must send an event to Atlas each time a usage-based feature is consumed. To do this, you can use the enqueueEvents method of the Atlas client.

Batching events

To optimize performance and avoid rate limits, the Atlas client automatically batches usage events before sending them. You can customize this batching behavior by configuring the eventsFlushAt (number of events) and eventsFlushInterval (time in milliseconds) options during client initialization.
src/index.ts
You can also trigger a manual flush of all enqueued events at any time using the flushEvents method. This is particularly useful for ensuring no events are lost during a graceful shutdown of your application.