SDK TypeScript

@addrova/sdk est le client officiel pour Node 18 ou plus, les navigateurs, Deno et Bun. Il utilise le fetch natif, n'a aucune dépendance d'exécution, fournit des builds ESM et CommonJS, et ses types sont générés depuis la spécification OpenAPI.

Installation

Le paquet est privé et n'est pas encore publié sur npm ; construisez-le depuis le dépôt. [À VÉRIFIER : publication sur npm]

cd sdk/js && npm ci && npm run build

Géocoder, inverse, autocomplétion, réparation

import { Addrova } from "@addrova/sdk";

const client = new Addrova(); // clé : process.env.ADDROVA_API_KEY (ou { apiKey })
const r = await client.geocode("4 place d'Armes, Belfort", { country: "FR" });
console.log(r.results[0].label, r.results[0].location, r.attribution);

await client.reverse(47.6376, 6.8626);
await client.autocomplete("4 place d'ar", { focus: [47.64, 6.86], session: "checkout-123" });
await client.repair({ address: "4 pl darmes belfor", country: "FR" });
await client.usage();
await client.coverage(); // pays couverts, sources, licences

Fichiers par lot

import { Addrova } from "@addrova/sdk";

const client = new Addrova();
const csvText = "adresse\n4 place d'Armes Belfort\n";
const job = await client.submitBatch(csvText, { addressColumn: "adresse" });
await client.waitBatch(job.id);
const csv = await client.batchResult(job.id);
await client.deleteBatch(job.id);

Erreurs et nouvelles tentatives

  • Nouvelles tentatives sur 429 rate_limited (en respectant Retry-After), les erreurs 5xx et les erreurs réseau, avec backoff exponentiel et gigue ; maxRetries vaut 3 par défaut. Un dépôt de lot n'est pas rejoué après une erreur serveur.
  • Erreurs typées : AuthenticationError, InvalidRequestError, NotFoundError, ConflictError, RateLimitError, QuotaExceededError, ServerError et TransportError, avec status, code et requestId.

Confidentialité et navigateurs

geocode envoie l'adresse dans le corps d'un POST ; le SDK ne journalise rien. Dans un navigateur, n'exposez pas une clé live dans une page publique : utilisez une clé restreinte par origine ou un relais côté serveur.