Skip to main content
POST
Créer un blueprint au niveau de l’organisation ou du dépôt

Autorisations

Nécessite un utilisateur de service ou un jeton d’accès personnel disposant de l’autorisation ManageRepoBlueprints au niveau de l’organisation. La création de blueprints au niveau de l’organisation nécessite l’autorisation ManageOrgSnapshots.

Comportement

Crée un blueprint de niveau organisation ou dépôt. Un blueprint définit la configuration d’environnement déclarative des sessions Devin. La modification d’un blueprint ne déclenche pas automatiquement un build — vous devez appeler explicitement l’endpoint builds.
Les blueprints n’existent pas indépendamment de votre configuration d’environnement. La création d’un blueprint avec un repo_name ajoute également ce dépôt à l’environnement — il n’existe pas d’endpoint distinct pour enregistrer d’abord le dépôt. Le dépôt est cloné dans l’environnement lors du build suivant, et son indexation est lancée.L’inverse est également vrai : supprimer un dépôt de l’environnement (le commutateur Inclure dans l’environnement dans l’UI) supprime tous les blueprints de ce dépôt, y compris tous ses périmètres d’espace de travail.
Le nom du dépôt doit correspondre à un dépôt auquel Devin peut déjà accéder via votre intégration Git (par exemple owner/repo) ; un dépôt inconnu ou inaccessible renvoie 404 et aucun blueprint n’est créé. Si un blueprint actif existe déjà pour ce dépôt et ce périmètre, la requête renvoie 409 — utilisez plutôt l’endpoint de mise à jour.

Autorisations

Authorization
string
header
requis

Identifiant de compte de service (préfixe : cog_)

Paramètres de chemin

org_id
string
requis

Identifiant d’organisation (préfixe : org-)

Exemple:

"org-abc123def456"

Corps

application/json
contents
string | null

Corps YAML initial facultatif pour le blueprint. Non autorisé avec source='git' (le contenu provient du repo).

repo_name
string | null

S’il est défini, crée un blueprint au niveau du dépôt pour ce dépôt. S’il est omis, crée un blueprint à l’échelle de l’organisation (niveau organisation).

source
enum<string> | null

Uniquement au niveau du dépôt. 'git' lit .devin/blueprint.yaml (et ses fichiers inclus) depuis la branche par défaut du repo et maintient le blueprint synchronisé avec ce fichier ; 'database' stocke le YAML dans Devin. La valeur par défaut est 'database' en cas d’omission.

Options disponibles:
git,
database

Réponse

Réponse réussie

Schéma public de la ressource Blueprint.

Remarque : l’énumération type pourra être étendue à l’avenir ; les clients DOIVENT gérer correctement les valeurs inconnues. Le contenu YAML est récupéré séparément via GET /blueprints/{id}/contents.

blueprint_id
string
requis
created_at
integer
requis
repo_name
string | null
requis
type
enum<string>
requis
Options disponibles:
enterprise,
org,
repo
updated_at
integer
requis
build_on_default_branch_commit
boolean | null

Indique si chaque push vers la branche par défaut du repo déclenche un build de l’environnement. Valeur null sauf s’il s’agit du plan de configuration racine d’un repo.

report_check_runs
boolean | null

Indique si chaque build de commit est signalé sur le commit sous la forme d’une exécution de vérification GitHub. Valeur null sauf s’il s’agit du plan de configuration racine d’un repo.

source
enum<string> | null

Emplacement où le YAML est rédigé : 'git' (synchronisé depuis .devin/blueprint.yaml dans le repo) ou 'database' (modifié via l’API ou l’interface utilisateur). Toujours null pour les blueprints au niveau Enterprise ou organisation.

Options disponibles:
git,
database