Skip to main content
Narrative provides official SDKs for integrating with the platform programmatically. SDKs simplify authentication, provide type safety, and offer convenient methods for common operations.

Available SDKs

When to use an SDK

ApproachBest for
Web UIManual operations, data exploration, one-off tasks
REST APICustom integrations, languages without SDK support
SDKTypeScript/JavaScript apps, type safety, rapid development

Benefits of using an SDK

  • Type safety - Full TypeScript support with autocomplete
  • Convenience - Pre-built methods for common operations
  • Authentication - Simplified API key management
  • Error handling - Consistent error types and messages
  • Documentation - Inline documentation and examples

Quick comparison

// With SDK
import { NarrativeApi } from '@narrative.io/data-collaboration-sdk-ts';

const api = new NarrativeApi({ apiKey: process.env.NARRATIVE_API_KEY });
const datasets = await api.getDatasets();
// With REST API directly
const response = await fetch('https://api.narrative.io/datasets', {
  headers: {
    'Authorization': `Bearer ${process.env.NARRATIVE_API_KEY}`,
    'Content-Type': 'application/json',
  },
});
const datasets = await response.json();

Getting started

1

Create an API key

Navigate to Settings > API Keys and create a new key with appropriate permissions.
2

Install the SDK

npm install @narrative.io/data-collaboration-sdk-ts
3

Initialize and use

import { NarrativeApi } from '@narrative.io/data-collaboration-sdk-ts';

const api = new NarrativeApi({
  apiKey: process.env.NARRATIVE_API_KEY,
});

const datasets = await api.getDatasets();