API REST
Référence des endpoints déjà documentés, de leurs erreurs et webhooks. Les nouveaux contrats de gestion des standards sont présentés séparément.
Clients, projets et services : contrat prévu
Pour les nouveaux standards N1/N2/N3, la gestion prévue couvre clients/organisations, projets, services, rattachements, quotas et mesure d’usage. Les identités, groupes, comptes techniques, rôles et permissions doivent limiter chaque opération au périmètre autorisé ; rotation, expiration, révocation et audit font partie du contrat cible.
Les opérations de création, mise à jour, export, restauration et suppression avec rétention restent à qualifier, y compris les refus interprojets. Détacher une application ne doit pas supprimer implicitement une ressource utilisée ailleurs. Ce contrat ne fournit aucun nouvel endpoint exécutable.
Ce contrat général conserve la portée de la feuille de route du 5 septembre 2026 : voir les lignes IAM et cycle de vie. Les opérations effectivement observées depuis figurent dans le registre N0–N3, avec leurs limites. Elles ne qualifient pas automatiquement l’ensemble de ce contrat ; la référence ci-dessous conserve son périmètre historique.
API REST versionnée, JSON over HTTPS. Tous les endpoints requièrent un Bearer token. Base URL : https://console.di2amp.com/api/v1.
Authentification
Bearer token dans l'en-tête Authorization. Génération de token dans le dashboard, onglet « API tokens ». Scopes RBAC pour limiter les permissions.
https://console.di2amp.com/api/v1/apps
Erreurs
Codes HTTP standard. Corps JSON au format problème détaillé.
| Code | Signification | Action |
|---|---|---|
| 400 | Requête mal formée | Vérifier le JSON envoyé |
| 401 | Token invalide ou expiré | Régénérer le token |
| 403 | Permission insuffisante | Vérifier les scopes du token |
| 404 | Ressource introuvable | Vérifier l'ID |
| 429 | Rate limit dépassé | Voir l'en-tête Retry-After |
| 500-599 | Erreur côté serveur | Réessayer avec backoff |
Pagination
Cursor-based. Paramètres limit (max 100) et cursor.
Rate limiting
1000 requêtes par minute par token. En-têtes de réponse :
X-RateLimit-Limit: limite par minuteX-RateLimit-Remaining: requêtes restantesX-RateLimit-Reset: timestamp Unix de resetRetry-After(sur 429) : secondes à attendre
Endpoints principaux
Apps
/v1/apps/v1/apps/v1/apps/{id}/v1/apps/{id}/v1/apps/{id}Releases et déploiements
/v1/apps/{id}/releases/v1/apps/{id}/releases/{rid}/v1/apps/{id}/releases/{rid}/rollbackConfiguration
/v1/apps/{id}/config/v1/apps/{id}/configAddons
/v1/apps/{id}/addons/v1/apps/{id}/addons/v1/apps/{id}/addons/{aid}Logs et métriques
/v1/apps/{id}/logs/v1/apps/{id}/logs/stream (SSE)/v1/apps/{id}/metrics?range=1hDomaines
/v1/apps/{id}/domains/v1/apps/{id}/domains/v1/apps/{id}/domains/{did}Réseau
/v1/apps/{id}/dedicated_ip/v1/apps/{id}/dedicated_ip/v1/apps/{id}/dedicated_ipAllouer une IP publique dédiée pour l'app. 10 €/mois par IP allouée. L'enregistrement DNS A est créé automatiquement sur app-{id}.runtime.di2amp.com. Cycle de vie : pending → active → releasing → released.
Agents IA
/v1/tenant/agents/v1/tenant/agents/v1/apps/{id}/agents/{name}/insightsFacturation
/v1/tenant/usage/v1/tenant/invoices/v1/tenant/invoices/{id}/pdfWebhooks
Vous configurez un endpoint HTTPS, on vous envoie les events JSON signés HMAC-SHA256 avec l'en-tête X-Paas-Signature.
Events disponibles : release.created, release.deployed, release.failed, app.created, app.deleted, addon.created, incident.opened, incident.resolved.
Spec OpenAPI
Spec OpenAPI 3.1 complète disponible sur console.di2amp.com/api/openapi.json. Téléchargeable, importable dans Postman, utilisable pour générer un client dans n'importe quel langage.