curl --request GET \
--url https://api.devin.ai/v3/organizations/{org_id}/automations/schemas \
--header 'Authorization: Bearer <token>'import requests
url = "https://api.devin.ai/v3/organizations/{org_id}/automations/schemas"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://api.devin.ai/v3/organizations/{org_id}/automations/schemas', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.devin.ai/v3/organizations/{org_id}/automations/schemas",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://api.devin.ai/v3/organizations/{org_id}/automations/schemas"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Authorization", "Bearer <token>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://api.devin.ai/v3/organizations/{org_id}/automations/schemas")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.devin.ai/v3/organizations/{org_id}/automations/schemas")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Authorization"] = 'Bearer <token>'
response = http.request(request)
puts response.read_body{
"default_net_policy": {
"allow": [
{
"hostname": "<string>"
}
]
},
"sources": {},
"update_semantics": "<string>",
"security_profile": {
"governs_network": true,
"mcp_servers": [
"<string>"
],
"name": "<string>"
}
}{
"status": 123,
"title": "<string>",
"detail": "<string>",
"error_code": "<string>",
"errors": [
{}
],
"instance": "<string>",
"type": "about:blank"
}{
"status": 123,
"title": "<string>",
"detail": "<string>",
"error_code": "<string>",
"errors": [
{}
],
"instance": "<string>",
"type": "about:blank"
}{
"status": 123,
"title": "<string>",
"detail": "<string>",
"error_code": "<string>",
"errors": [
{}
],
"instance": "<string>",
"type": "about:blank"
}{
"status": 123,
"title": "<string>",
"detail": "<string>",
"error_code": "<string>",
"errors": [
{}
],
"instance": "<string>",
"type": "about:blank"
}{
"status": 123,
"title": "<string>",
"detail": "<string>",
"error_code": "<string>",
"errors": [
{}
],
"instance": "<string>",
"type": "about:blank"
}{
"status": 123,
"title": "<string>",
"detail": "<string>",
"error_code": "<string>",
"errors": [
{}
],
"instance": "<string>",
"type": "about:blank"
}Obtenir les schémas d’événements d’automatisation
Renvoie tous les schémas d’événements de déclencheur pris en charge, indexés par source puis par nom d’événement.
Chaque schéma décrit les champs de la charge utile de l’événement, les opérateurs pris en charge par
ses conditions et les verbes replies valides, afin que les appelants puissent
construire des triggers valides pour les endpoints de création et de mise à jour.
curl --request GET \
--url https://api.devin.ai/v3/organizations/{org_id}/automations/schemas \
--header 'Authorization: Bearer <token>'import requests
url = "https://api.devin.ai/v3/organizations/{org_id}/automations/schemas"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://api.devin.ai/v3/organizations/{org_id}/automations/schemas', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.devin.ai/v3/organizations/{org_id}/automations/schemas",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://api.devin.ai/v3/organizations/{org_id}/automations/schemas"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Authorization", "Bearer <token>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://api.devin.ai/v3/organizations/{org_id}/automations/schemas")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.devin.ai/v3/organizations/{org_id}/automations/schemas")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Authorization"] = 'Bearer <token>'
response = http.request(request)
puts response.read_body{
"default_net_policy": {
"allow": [
{
"hostname": "<string>"
}
]
},
"sources": {},
"update_semantics": "<string>",
"security_profile": {
"governs_network": true,
"mcp_servers": [
"<string>"
],
"name": "<string>"
}
}{
"status": 123,
"title": "<string>",
"detail": "<string>",
"error_code": "<string>",
"errors": [
{}
],
"instance": "<string>",
"type": "about:blank"
}{
"status": 123,
"title": "<string>",
"detail": "<string>",
"error_code": "<string>",
"errors": [
{}
],
"instance": "<string>",
"type": "about:blank"
}{
"status": 123,
"title": "<string>",
"detail": "<string>",
"error_code": "<string>",
"errors": [
{}
],
"instance": "<string>",
"type": "about:blank"
}{
"status": 123,
"title": "<string>",
"detail": "<string>",
"error_code": "<string>",
"errors": [
{}
],
"instance": "<string>",
"type": "about:blank"
}{
"status": 123,
"title": "<string>",
"detail": "<string>",
"error_code": "<string>",
"errors": [
{}
],
"instance": "<string>",
"type": "about:blank"
}{
"status": 123,
"title": "<string>",
"detail": "<string>",
"error_code": "<string>",
"errors": [
{}
],
"instance": "<string>",
"type": "about:blank"
}Autorisations
Nécessite un utilisateur de service ou un jeton d’accès personnel disposant de l’autorisationViewOrgAutomations au niveau de l’organisation.
Utilisation
Appelez cet endpoint avant de créer des automatisations : il renvoie tous les types d’événements déclencheurs pris en charge (classés par source, puis par nom d’événement), ainsi que leurs champs de charge utile, les opérateurs pris en charge par leurs conditions et les verbesreplies valides, afin de vous permettre de construire des triggers valides pour les endpoints de création et de mise à jour. Les sources non activées pour l’organisation sont omises.Autorisations
Identifiant de compte de service (préfixe : cog_)
Paramètres de chemin
ID d’organisation (préfixe : org-)
"org-abc123def456"
Paramètres de requête
Résoudre default_net_policy et security_profile pour une opération de création qui attribue à security_profile.profile_id l’ID de ce profil. Nécessite l’autorisation de gestion des profils de sécurité.
Réponse
Réponse réussie
Politique réseau que les clients doivent utiliser comme base pour les nouvelles automatisations : la politique du déploiement limitée à Git Manager (ajoutez uniquement les destinations nécessaires à la tâche), ou null lorsque le profil de sécurité applicable (voir security_profile) possède une politique réseau. Dans ce cas, les sessions utilisent la politique du profil ; omettez session_settings.net_policy sauf si la tâche nécessite des restrictions supplémentaires.
Show child attributes
Show child attributes
Source d'événement → nom de l'événement → schéma.
Show child attributes
Show child attributes
Sémantique PATCH active pour cette organisation : « replace_groups » (un groupe de configuration présent dans la requête remplace intégralement le groupe enregistré) ou « merge_patch » (RFC 7396 pour les objets : les membres omis d'un groupe présent conservent leurs valeurs enregistrées, les valeurs null explicites les effacent ; l'appartenance à une liste est toujours intégralement remplacée — pour supprimer un élément, renvoyez la liste sans cet élément — mais chaque élément envoyé est fusionné avec l'élément enregistré du même type lorsque ce type apparaît exactement une fois de chaque côté ; les types répétés doivent être réindiqués dans leur intégralité). Énumération ouverte : les clients doivent tolérer de nouvelles valeurs.
Profil de sécurité applicable aux sessions d’automatisation de cette organisation, ou null si aucun ne s’applique.
Show child attributes
Show child attributes

