@magnetcustomer/sdk
v1.0.1
Published
Official MagnetCustomer CRM SDK for Node.js — auto-generated from OpenAPI 3.1 spec
Maintainers
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/sdkQuick 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: '[email protected]' },
});
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.
