SDK JavaScript / TypeScript
Le SDK officiel @shopimind/sdk-shopimind est le moyen recommandé d'intégrer l'API ShopiMind depuis Node.js.
- Node.js ≥ 14 — CommonJS (
require) et ESM / TypeScript (import) - Types
.d.tsinclus — autocomplétion et vérification de types prêtes à l'emploi - Dépendance runtime unique :
axios - Retry automatique, chunking optionnel, format de retour uniforme (envelope)
Installation
bash
npm install @shopimind/sdk-shopimind
# yarn add @shopimind/sdk-shopimind
# pnpm add @shopimind/sdk-shopimindDétails et épinglage de version : voir Installation.
Quickstart
javascript
const { SpmClient, SpmCustomers } = require('@shopimind/sdk-shopimind');
// 1. Créer un client pour la version d'API v1
const client = SpmClient.getClient('v1', process.env.SHOPIMIND_API_KEY);
// 2. Lire — liste paginée
const page = await SpmCustomers.list(client, { limit: 50 });
console.log(page.data);
// 3. Écrire — synchronisation en lot avec découpage automatique
const res = await SpmCustomers.bulkSave(client, customers, { chunk: true });
if (!res.ok) {
console.error('Échec', res.error);
} else {
console.log(`${res.data.sent_count} envoyés, ${res.data.rejected_count} rejetés`);
}En TypeScript / ESM :
typescript
import { SpmClient, SpmCustomers } from '@shopimind/sdk-shopimind';Pourquoi le SDK plutôt que fetch ?
Sans SDK (fetch brut) | Avec le SDK |
|---|---|
| Vous gérez headers, URL, sérialisation | SpmClient.getClient('v1', key) |
| Vous codez vos propres retries sur 429/5xx | Retry exponentiel intégré |
| Vous découpez vos lots à la main | { chunk: true } aligné sur les limites de l'API |
try/catch partout, formes d'erreur variées | Envelope unique { ok, statusCode, data, error } |
| Pas de types | .d.ts complets |
Aller plus loin
- Installation — registres, Git, versions
- Utilisation — lecture, écriture, ressources imbriquées
- Résilience — retry, chunking, helpers
- Ressources & méthodes — la liste complète
- TypeScript — types et exemples
- Valider un webhook —
SpmRequestValidator - Périmètre & versions — ce que couvre le SDK