JSPM

@magnetcustomer/sdk

1.0.1
  • ESM via JSPM
  • ES Module Entrypoint
  • Export Map
  • Keywords
  • License
  • Repository URL
  • TypeScript Types
  • README
  • Created
  • Published
  • 0
  • Score
    100M100P100Q61598F
  • License MIT

Official MagnetCustomer CRM SDK for Node.js — auto-generated from OpenAPI 3.1 spec

Package Exports

  • @magnetcustomer/sdk
  • @magnetcustomer/sdk/dist/esm/index.js
  • @magnetcustomer/sdk/dist/index.js

This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (@magnetcustomer/sdk) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.

Readme

@magnetcustomer/sdk

Official Node.js SDK for the MagnetCustomer CRM API.

Auto-generated from the OpenAPI 3.1 specification. Supports TypeScript and JavaScript (CommonJS + ESM).

Installation

npm install @magnetcustomer/sdk

Quick Start

import { Configuration, ContactsApi } from '@magnetcustomer/sdk';

const config = new Configuration({
  basePath: 'https://platform-api.your-tenant.magnetcustomer.com',
  accessToken: 'your-oauth2-token',
});

const contacts = new ContactsApi(config);
const response = await contacts.apiContactsGet({ page: 1, limit: 25 });
console.log(response.data);

Authentication

The SDK uses OAuth2 Bearer tokens. Obtain a token via the Client Credentials flow:

curl -X POST https://magnetcustomer.net/realms/platform/protocol/openid-connect/token \
  -d "grant_type=client_credentials" \
  -d "client_id=YOUR_CLIENT_ID" \
  -d "client_secret=YOUR_CLIENT_SECRET" \
  -d "scope=openid"

Then pass the access_token from the response to the Configuration:

const config = new Configuration({
  basePath: 'https://platform-api.your-tenant.magnetcustomer.com',
  accessToken: tokenResponse.access_token,
});

Available APIs

The SDK covers 60+ API groups:

API Class Description
ActionsApi Campaign actions (enable/disable)
ActivitiesApi Meetings, observations, todos
AuthenticationApi OAuth2 token management
ContactsApi CRM contacts CRUD
DealsApi Deal management
PipelinesApi Sales pipelines
TasksApi Task management
TicketsApi Support tickets
WebhooksApi Webhook configuration
DashboardsApi Analytics dashboards
CampaignsApi Marketing campaigns
SegmentationApi Contact segmentation
StaffsApi Team members
TeamsApi Team management
WorkspacesApi Workspace/BU management
ProcessAutomationApi Workflow automation
IntegrationsApi Third-party integrations
ReportsApi Reporting and analytics

...and 40+ more.

Examples

Create a Contact

import { Configuration, ContactsApi } from '@magnetcustomer/sdk';

const api = new ContactsApi(new Configuration({
  basePath: 'https://platform-api.your-tenant.magnetcustomer.com',
  accessToken: 'your-token',
}));

const result = await api.apiContactsPost({
  body: { name: 'John Doe', email: 'john@example.com' },
});
console.log(result.data);

List Deals with Pagination

import { Configuration, DealsApi } from '@magnetcustomer/sdk';

const api = new DealsApi(new Configuration({
  basePath: 'https://platform-api.your-tenant.magnetcustomer.com',
  accessToken: 'your-token',
}));

const result = await api.apiDealsGet({ page: 1, limit: 25 });
console.log(result.data);

Using a Custom Axios Instance

import axios from 'axios';
import { Configuration, ContactsApi } from '@magnetcustomer/sdk';

const axiosInstance = axios.create({
  timeout: 10000,
  headers: { 'X-Custom-Header': 'value' },
});

const config = new Configuration({
  basePath: 'https://platform-api.your-tenant.magnetcustomer.com',
  accessToken: 'your-token',
});

const api = new ContactsApi(config, undefined, axiosInstance);

Module Formats

Format Entry Point
CommonJS dist/index.js
ESM dist/esm/index.js
TypeScript types dist/index.d.ts

Documentation

Requirements

  • Node.js 14+
  • axios ^1.0 (peer dependency — installed automatically)

License

MIT — see LICENSE.