Réponse exemple
GET/v1/changelog/personalizedRésumé de la dernière release publiée, personnalisé pour le workspace courant.Cet endpoint renvoie le résumé de la dernière release publiée de l'API Coffrify, mais réécrit spécifiquement pour le workspace authentifié. La personnalisation s'appuie sur les endpoints REST et les outils MCP que ce workspace a réellement utilisés sur les 30 derniers jours, ainsi que sur ses actions console récentes : les changements qui touchent vos intégrations sont remontés en priorité (tone:"warn", tag:"Vous concerne"), les autres sont classés en Nouveau, Amélioration ou Sans impact.
Le résultat est mis en cache 24 heures par workspace. Le cache est invalidé automatiquement dès que la signature d'usage change (nouveaux endpoints/outils appelés) ou qu'une nouvelle release est publiée. L'endpoint est fail-safe : si le service IA est indisponible, il renvoie les items génériques de la release avec fallback:true au lieu d'une erreur 500. S'il n'existe aucune release publiée, release vaut null et items est un tableau vide.
Authentification
Requiert une clé API valide, aucun scope spécifique n'est exigé. Présentez la clé via l'en-tête Authorization: Bearer cof_live_... (ou cof_test_..., cof_rk_..., cof_mcp_...). Le workspace ciblé est déduit de la clé : la personnalisation porte toujours sur le workspace propriétaire du jeton.
Paramètres de requête
Cet endpoint n'accepte aucun paramètre de requête ni filtre. Le workspace et la release sont entièrement déterminés côté serveur.
Réponse
La réponse est un objet personalized_changelog. Champs clés : release décrit la release source (id, name, published_at) ou vaut null si aucune release n'est publiée ; items est la liste des entrées personnalisées ; cached indique si la réponse provient du cache 24h ; fallback vaut true quand les items génériques ont été servis faute de personnalisation IA ; generated_at et expires_at bornent la validité du cache (tous deux null quand release est null).
| Champ | Type | Description |
|---|---|---|
| object | string | Toujours personalized_changelog. |
| release | object | null | Release source : id, name, published_at. null si aucune release publiée. |
| items | array | Liste d'items. Chaque item : tone (info | ok | warn | violet), tag (Vous concerne | Nouveau | Amélioration | Sans impact), title, body. |
| cached | boolean | true si la réponse vient du cache 24h, false si elle vient d'être générée. |
| fallback | boolean | true si les items génériques ont été servis (IA indisponible). |
| generated_at | string | null | Horodatage ISO 8601 de génération du cache. null sans release. |
| expires_at | string | null | Horodatage ISO 8601 d'expiration du cache (24h). null sans release. |
Erreurs
| Code | Quand | Résolution |
|---|---|---|
| 401 missing_api_key | En-tête Authorization absent. | Ajoutez Authorization: Bearer cof_live_.... |
| 401 invalid_api_key | Clé inconnue ou format invalide (mauvais préfixe). | Vérifiez la clé et son préfixe (cof_live_, cof_test_, cof_rk_, cof_mcp_). |
| 401 revoked_api_key | Clé révoquée ou désactivée. | Générez une nouvelle clé dans la console. |
| 401 expired_api_key | Clé expirée. | Renouvelez la clé. |
| 403 ip_not_allowed | IP appelante hors de l'allowlist de la clé. | Appelez depuis une IP autorisée ou ajustez l'allowlist. |
| 429 rate_limited | Quota par minute des endpoints expensive dépassé. | Respectez l'en-tête Retry-After et réduisez la fréquence d'appel. |
| 500 internal_error | Erreur serveur inattendue. | Réessayez ; persistez avec le request_id retourné en cas d'échec répété. |
Voir aussi
- GET /v1/welcome : point d'entrée d'introspection de la clé et du workspace.
- GET /v1/webhooks : liste des webhooks, souvent référencés dans les items
Vous concerne. - Documentation des limites de débit : https://docs.coffrify.com/api/rate-limits