Documentation Index
Fetch the complete documentation index at: https://docs.devin.ai/llms.txt
Use this file to discover all available pages before exploring further.
Esta página ofrece ejemplos de código para casos de uso comunes de la API Enterprise v2.
Listar miembros de Enterprise
import os
import requests
API_KEY = os.getenv("DEVIN_API_KEY")
BASE_URL = "https://api.devin.ai/v2/enterprise"
response = requests.get(
f"{BASE_URL}/members",
headers={"Authorization": f"Bearer {API_KEY}"}
)
members = response.json()
for member in members["members"]:
print(f"{member['email']} - {member['role']}")
import os
import requests
API_KEY = os.getenv("DEVIN_API_KEY")
BASE_URL = "https://api.devin.ai/v2/enterprise"
response = requests.post(
f"{BASE_URL}/organizations",
headers={
"Authorization": f"Bearer {API_KEY}",
"Content-Type": "application/json"
},
json={
"name": "Equipo de Ingeniería",
"acu_limit": 1000
}
)
org = response.json()
print(f"Organización creada: {org['id']}")
Obtener métricas de consumo
import os
import requests
API_KEY = os.getenv("DEVIN_API_KEY")
BASE_URL = "https://api.devin.ai/v2/enterprise"
response = requests.get(
f"{BASE_URL}/consumption/cycles",
headers={"Authorization": f"Bearer {API_KEY}"}
)
cycles = response.json()
current_cycle = cycles["cycles"][0]
print(f"Ciclo actual: {current_cycle['start_date']} a {current_cycle['end_date']}")
print(f"ACUs utilizados: {current_cycle['acus_used']}")
Obtener insights de la sesión
import os
import requests
API_KEY = os.getenv("DEVIN_API_KEY")
BASE_URL = "https://api.devin.ai/v2/enterprise"
response = requests.get(
f"{BASE_URL}/sessions/insights",
headers={"Authorization": f"Bearer {API_KEY}"},
params={"limit": 50, "offset": 0}
)
sessions = response.json()
for session in sessions["sessions"]:
print(f"Session {session['id']}: {session['insight']}")
Invitar a miembros a Enterprise
import os
import requests
API_KEY = os.getenv("DEVIN_API_KEY")
BASE_URL = "https://api.devin.ai/v2/enterprise"
response = requests.post(
f"{BASE_URL}/members/invite",
headers={
"Authorization": f"Bearer {API_KEY}",
"Content-Type": "application/json"
},
json={
"emails": ["user1@company.com", "user2@company.com"],
"role": "member"
}
)
result = response.json()
print(f"Invitados {len(result['invited'])} miembros")
Obtener registros de auditoría
import os
import requests
from datetime import datetime, timedelta
API_KEY = os.getenv("DEVIN_API_KEY")
BASE_URL = "https://api.devin.ai/v2/enterprise"
start_date = (datetime.now() - timedelta(days=7)).isoformat()
response = requests.get(
f"{BASE_URL}/audit-logs",
headers={"Authorization": f"Bearer {API_KEY}"},
params={"start_date": start_date, "limit": 100}
)
logs = response.json()
for log in logs["logs"]:
print(f"{log['timestamp']} - {log['action']} by {log['actor']}")
Gestionar permisos de la organización
import os
import requests
API_KEY = os.getenv("DEVIN_API_KEY")
BASE_URL = "https://api.devin.ai/v2/enterprise"
org_id = "your_org_id"
response = requests.post(
f"{BASE_URL}/organizations/{org_id}/permissions",
headers={
"Authorization": f"Bearer {API_KEY}",
"Content-Type": "application/json"
},
json={
"provider": "github",
"repository": "org/repo-name",
"permission": "read"
}
)
print(f"Permiso agregado: {response.json()}")
import os
import requests
API_KEY = os.getenv("DEVIN_API_KEY")
BASE_URL = "https://api.devin.ai/v2/enterprise"
try:
response = requests.get(
f"{BASE_URL}/members",
headers={"Authorization": f"Bearer {API_KEY}"}
)
response.raise_for_status()
data = response.json()
except requests.exceptions.HTTPError as e:
if e.response.status_code == 401:
print("API key inválida")
elif e.response.status_code == 403:
print("Permisos insuficientes - se requiere administrador de Enterprise")
elif e.response.status_code == 429:
print("Límite de velocidad excedido - espere y reintente")
else:
print(f"Error de API: {e}")
¿Necesitas ayuda?
Si tienes preguntas sobre la API o quieres reportar incidencias, envía un correo electrónico a support@cognition.ai