Passer au contenu principal
Ce guide vous aide à migrer vos intégrations existantes de l’API v1 ou v2 vers les API Organization et Enterprise actuelles. Les anciennes API (v1 et v2) continueront de fonctionner pendant la période de dépréciation, mais toutes les nouvelles fonctionnalités ne sont disponibles que via l’API actuelle.

Ce qui change

Domainev1/v2 (anciennes versions)API actuelle
AuthenticationAPI keys (commencent par apk_user_ ou apk_)Jetons d’utilisateur de service (commencent par cog_)
Base URL/v1/*, /v2/*/v3/organizations/*, /v3/enterprise/*
PaginationPagination par offset (offset + limit)Pagination par curseur (first + after)
ScopingÀ plat — tous les endpoints au même niveauPortée organisationnelle et portée Enterprise
PermissionsAu niveau de la clé (tout ou rien)Basées sur les rôles avec des autorisations granulaires

Étape 1 : Créer un utilisateur de service

Remplacez votre ancienne API key par un utilisateur de service :
  1. Allez dans Settings > Service users
  2. Créez un utilisateur de service avec un rôle adapté
  3. Générez une API key (qui commence par cog_)
  4. Mettez à jour votre intégration pour utiliser la nouvelle clé
# Avant (API key héritée)
curl -H "Authorization: Bearer apk_user_YOUR_LEGACY_KEY" ...

# Après (jeton d'utilisateur de service)
curl -H "Authorization: Bearer cog_YOUR_SERVICE_USER_KEY" ...
Vos anciennes API keys continueront de fonctionner pendant la période de dépréciation. Vous pouvez migrer progressivement.

Étape 2 : Mettre à jour les URL des endpoints

Points de terminaison des sessions

OpérationPoint de terminaison v1Point de terminaison actuel
Créer une sessionPOST /v1/sessionsPOST /v3/organizations/sessions
Lister les sessionsGET /v1/sessionsGET /v3/organizations/sessions
Récupérer une sessionGET /v1/session/{session_id}GET /v3/organizations/sessions/{devin_id}
Envoyer un messagePOST /v1/session/{session_id}/messagePOST /v3/organizations/sessions/{devin_id}/messages
Archiver une sessionPOST /v3/organizations/sessions/{devin_id}/archive
Supprimer une sessionDELETE /v3/organizations/sessions/{devin_id}

Points de terminaison Knowledge

OpérationEndpoint v1Endpoint actuel
Lister les éléments KnowledgeGET /v1/knowledgeGET /v3/organizations/knowledge/notes
Créer un élément KnowledgePOST /v1/knowledgePOST /v3/organizations/knowledge/notes
Mettre à jour un élément KnowledgePUT /v1/knowledge/{note_id}PUT /v3/organizations/knowledge/notes/{note_id}
Supprimer un élément KnowledgeDELETE /v1/knowledge/{note_id}DELETE /v3/organizations/knowledge/notes/{note_id}

Points de terminaison des playbooks

OpérationPoint de terminaison v1/v2Point de terminaison actuel
Lister les playbooksGET /v1/playbooksGET /v3/organizations/playbooks
Créer un playbookPOST /v1/playbooksPOST /v3/organizations/playbooks
Récupérer un playbookGET /v1/playbooks/{playbook_id}GET /v3/organizations/playbooks/{playbook_id}
Mettre à jour un playbookPUT /v1/playbooks/{playbook_id}PUT /v3/organizations/playbooks/{playbook_id}
Supprimer un playbookDELETE /v1/playbooks/{playbook_id}DELETE /v3/organizations/playbooks/{playbook_id}

Points de terminaison des secrets

OpérationPoint de terminaison v1Point de terminaison actuel
Lister les secretsGET /v1/secretsGET /v3/organizations/secrets
Créer un secretPOST /v1/secretsPOST /v3/organizations/secrets
Supprimer un secretDELETE /v1/secrets/{secret_id}DELETE /v3/organizations/secrets/{secret_id}

Points de terminaison réservés à l’Enterprise (nouveaux)

Ces points de terminaison n’ont pas d’équivalent en v1/v2 — ils ne sont disponibles que dans l’API actuelle :
  • GET /v3/enterprise/organizations — Lister les organisations
  • GET /v3/enterprise/audit-logs — Journaux d’audit
  • GET /v3/enterprise/consumption/* — Données d’utilisation et de facturation
  • GET /v3/enterprise/metrics/* — Métriques d’utilisation
  • GET /v3/enterprise/members/users — Gestion des utilisateurs
  • GET /v3/enterprise/roles — Gestion des rôles
  • Provisionnement des utilisateurs de service, listes d’accès IP, plafonds d’ACU et plus encore

Étape 3 : Mettre à jour la pagination

L’API actuelle utilise une pagination par curseur plutôt qu’une pagination par offset :
# Avant (v1/v2 basé sur l'offset)
curl "https://api.devin.ai/v1/sessions?offset=0&limit=25"

# Après (basé sur le curseur)
curl "https://api.devin.ai/v3/organizations/sessions?first=25"
# Ensuite, utilisez `end_cursor` de la réponse pour la page suivante :
curl "https://api.devin.ai/v3/organizations/sessions?first=25&after=CURSOR_VALUE"
Pour plus de détails, consultez Pagination.

Étape 4 : Gérer les modifications du format de réponse

Valeurs d’état de session

L’API actuelle fournit des informations d’état plus détaillées. Consultez la référence de l’endpoint pour connaître le schéma complet.

Réponses d’erreur

Le format d’erreur est toujours le même : code de statut HTTP + corps JSON avec les détails de l’erreur.

Calendrier d’obsolescence

Les API keys héritées affichent une bannière d’obsolescence dans l’interface des paramètres Devin. Pendant la période de transition :
  • Maintenant : les API keys héritées continuent de fonctionner. Les nouvelles organisations peuvent ne pas avoir accès à la création de clés héritées.
  • Période d’obsolescence : les clés héritées et les jetons d’utilisateur de service fonctionnent en parallèle.
  • Fin de vie : les API keys héritées seront bientôt supprimées. Consultez régulièrement vos paramètres Devin pour suivre les annonces.
Nous vous recommandons de migrer vers les utilisateurs de service dès que possible afin de bénéficier du contrôle d’accès basé sur les rôles, de l’attribution de session et des nouvelles fonctionnalités.

Besoin d’aide ?

En cas de problème pendant la migration, contactez-nous via votre canal d’assistance Devin habituel ou écrivez-nous à support@cognition.ai.