Passer au contenu principal

Portail des développeurs ECOSIRE

Créez des intégrations puissantes avec notre API REST complète. Plus de 818 points de terminaison, spécifications OpenAPI complètes et SDK TypeScript.

818+
Points de terminaison de l'API
57
Modules
REST
Architecture
11
Paramètres régionaux pris en charge
API

Démarrage rapide

Soyez opérationnel avec l’API ECOSIRE en quelques minutes

1

Authentifier

Utilisez OAuth2 via Authentik ou des clés API pour obtenir un jeton de porteur JWT pour l'accès à l'API.

POST /api/auth/login
2

Passez votre premier appel

Utilisez le jeton du porteur dans l’en-tête Authorization pour appeler n’importe quel point de terminaison d’API.

# Lister tous les contacts
curl -H "Authorization: Bearer $TOKEN" \
https://api.ecosire.com/api/contacts
3

Appelez un point de terminaison public

Le catalogue d'applications est ouvert : pas de clé, rien à installer. N'importe quel client HTTP convient.

const res = await fetch(
"https://api.ecosire.com/api/apps/platforms"
);
const platforms = await res.json();
57 Modules

Modules API

Explorez 57 modules couvrant tous les aspects des opérations de l'entreprise

Noyau

AuthUsersContactsProductsOrdersProjectsSettings

Finances

AccountingSalesPurchaseBillingInvoicing

Opérations

InventoryManufacturingPOSRentalPlanning

Ressources humaines

EmployeesRecruitmentTime OffAttendanceExpensesPayrollAppraisals

Marketing et croissance

Email MarketingEventsMarketing AutomationAnalyticsAffiliatesLoyalty

IA et automatisation

ECOSIRE AISelf-Evolving EngineContent GenerationSEO Scanner
Security

Authentification

Deux méthodes d'authentification pour répondre à vos besoins d'intégration

Cookies Http uniquement

Authentification sécurisée basée sur les cookies pour les applications de navigateur. Les jetons ne sont jamais exposés à JavaScript.

  • Automatique avec l'application web
  • HttpOnly, Sécurisé, SameSite=Lax
  • Rotation des jetons d'actualisation sur 7 jours

Jeton du porteur

Utilisez les jetons du porteur JWT pour les intégrations de serveur à serveur et les clients API.

// Authorization header
Authorization: Bearer <your_jwt_token>
// Or via HttpOnly cookie
Cookie: ecosire_auth=<token>
Interactive

API Playground

Try any endpoint directly from your browser. Select an endpoint, fill in parameters, and send live requests to the ECOSIRE API.

ECOSIRE API Playground
POST/auth/login

Login with email and password

Code Snippet
curl -X POST \ \
  "https://api.ecosire.com/api/auth/login" \ \
  -H "Content-Type: application/json" \
  -d '{   "email": "user@example.com",   "password": "secret" }'
HTTP

Exemples de code HTTP

Rien à installer. Appelez l'API avec le client HTTP fourni avec votre langage : chaque requête ci-dessous fonctionne sur l'API en production.

Exemples de code

Catalogue, licences et outils d'agents, en curl, TypeScript, Python, PHP et Ruby

1. Lister les plateformes

Toutes les plateformes du catalogue d'applications, avec le nombre d'applications répertoriées et le nombre d'applications installables dès aujourd'hui. Aucune clé requise.

curl -s "https://api.ecosire.com/api/apps/platforms" \
  -H "User-Agent: my-integration/1.0"

# 200 OK — no key needed
# [
#   { "platform": "odoo", "slug": "odoo", "label": "Odoo",
#     "appCount": <apps listed>, "sellableCount": <ready to install today> },
#   ...
# ]
Webhooks

Webhook Events

ECOSIRE sends real-time webhook events to your server when key actions occur — payments, subscriptions, license activations, and more.

Webhook Event Tester

Explore all 8 webhook events, generate cURL commands, and verify HMAC signatures.

Checkout Completed

checkout.session.completed

Fired when a customer completes payment in a Stripe Checkout Session.

Trigger: Customer pays for a product in the storefront. Auto-grants licenses and creates order.

Example JSON payload delivered to your webhook endpoint for checkout.session.completed.

json
{
  "id": "evt_1ABCxyz",
  "object": "event",
  "type": "checkout.session.completed",
  "created": 1711000000,
  "data": {
    "object": {
      "id": "cs_live_abc123",
      "object": "checkout.session",
      "customer_email": "customer@company.com",
      "amount_total": 24900,
      "currency": "usd",
      "mode": "payment",
      "payment_status": "paid",
      "metadata": {
        "userId": "usr_01HXYZ",
        "productIds": "[\"prd_01HODOOCRM\"]"
      }
    }
  }
}

All Webhook Events

Event
checkout.session.completed
invoice.paid
customer.subscription.deleted
customer.subscription.updated
charge.refunded
payment_intent.payment_failed
license.validated
license.activated

Verify webhook signatures in production

Always verify the stripe-signature header for Stripe events using your STRIPE_WEBHOOK_SECRET. For license events, verify the X-License-Signature header using ECOSIRE_LICENSE_SECRET. Unverified events should be rejected with 401.

Reference

Error Codes

All API errors follow RFC 7807 (Problem Details for HTTP APIs). Every error includes a machine-readable code and human-readable message.

StatusMeaning
200OK
201Created
204No Content
400Bad Request
401Unauthorized
403Forbidden
404Not Found
409Conflict
422Unprocessable
429Too Many Requests
500Server Error
Error Response Shape
{
  "statusCode": 422,
  "error": "Unprocessable Entity",
  "message": "Validation failed",
  "details": [
    { "field": "email", "message": "Invalid email address" },
    { "field": "password", "message": "Must be at least 8 characters" }
  ]
}
Rate Limits

Limites de taux

Limites d'utilisation équitables pour garantir la stabilité de l'API pour tous les utilisateurs

Point de terminaisonLimite de taux
POST /support5/min
POST /crm/capture10/min
POST /ecosire-ai/ask20/min
POST /licenses/validate30/min
POST /licenses/activate10/min
POST /newsletter/subscribe5/min
Authenticated endpoints100/min

Rate Limit Response Headers

X-RateLimit-LimitMaximum requests allowed in the window
X-RateLimit-RemainingRequests remaining in the current window
X-RateLimit-ResetUnix timestamp when the window resets
Retry-AfterSeconds to wait before retrying (on 429)
API Keys

API Key Management

Create and manage API keys from your dashboard. Each key can be scoped to specific permissions and rotated independently.

Create API Keys

Generate new API keys from Dashboard → Settings → API Keys. Each key has a name, optional expiry date, and role scope.

Scoped Permissions

Keys can be scoped to read-only, read-write, or admin. Admin keys can manage other keys and access all endpoints.

Key Rotation

Rotate keys at any time without downtime. The old key remains valid for 24 hours after rotation for a smooth transition.

Usage Analytics

View per-key request counts, error rates, and last-used timestamps from the API Keys dashboard page.

Environment Keys

Maintain separate keys for development, staging, and production. Production keys log all requests for audit purposes.

Webhook Secrets

Webhook endpoints also use a separate ECOSIRE_LICENSE_SECRET for HMAC-SHA256 signature verification on license events.

Using an API Key

# Pass the key as a Bearer token in the Authorization header
curl https://api.ecosire.com/api/contacts \
  -H "Authorization: Bearer ecos_live_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"

# Or use HttpOnly cookies (browser-based auth — set automatically on login)
# Cookie: ecosire_auth=<jwt_token>
FAQ

Foire aux questions

Questions courantes sur l'API ECOSIRE

Comment puis-je accéder à l'API ?

Inscrivez-vous à un compte ECOSIRE et accédez à Tableau de bord > Clés API pour générer vos informations d'identification API. L'accès à l'API est disponible sur tous les forfaits.

Existe-t-il un niveau gratuit ?

Oui, tous les comptes ECOSIRE incluent un accès API. Les limites tarifaires varient selon le forfait. Le niveau gratuit prend en charge jusqu'à 1 000 appels API par jour.

Quelles méthodes d'authentification sont prises en charge ?

Nous prenons en charge OAuth2 via Authentik (recommandé pour les applications Web), les jetons de support JWT (pour le serveur à serveur) et les clés API (pour les intégrations simples).

Avez-vous un support pour les webhooks ?

Oui, ECOSIRE prend en charge les webhooks pour les notifications d'événements en temps réel. Configurez les points de terminaison des webhooks dans Tableau de bord > Paramètres > Webhooks.

Qu'est-ce que le SLA de disponibilité de l'API ?

Nous ne publions pas de pourcentage de disponibilité : nous publions le système qui le sous-tend. L'API tourne en cluster redondant multi-instances derrière des contrôles de santé, les mises en production se font par rechargement sans interruption plutôt que par redémarrage, et l'état du service en direct ainsi que l'historique des incidents sont sur status.ecosire.com. Les engagements de réponse en cas d'incident figurent dans votre contrat de support, pas dans un chiffre marketing.

Prêt à construire ?

Obtenez votre clé API et commencez à créer des intégrations en quelques minutes.