Consulter la consommation quotidienne
curl --request GET \
--url https://api.devin.ai/v3/enterprise/consumption/daily \
--header 'Authorization: Bearer <token>'import requests
url = "https://api.devin.ai/v3/enterprise/consumption/daily"
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/enterprise/consumption/daily', 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/enterprise/consumption/daily",
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/enterprise/consumption/daily"
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/enterprise/consumption/daily")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.devin.ai/v3/enterprise/consumption/daily")
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{
"consumption_by_date": [
{
"acus": 123,
"acus_by_product": {
"cascade": 123,
"devin": 123,
"terminal": 123,
"automation": 123,
"review": 123
},
"date": 123
}
],
"total_acus": 123
}{
"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"
}Consommation (Enterprise)
Consulter la consommation quotidienne
Récupère la consommation quotidienne d’ACU pour l’ensemble de l’entreprise.
Renvoie le total d’ACU et la consommation détaillée par date.
Comportement lié au fuseau horaire : les cycles de facturation utilisent minuit, heure normale du Pacifique (PST), comme limite de journée, ce qui correspond à 08:00:00 UTC. Pour aligner les données de consommation avec celles affichées dans le tableau de bord Devin, passez des horodatages Unix qui tiennent compte de ce décalage horaire (par exemple, 1733385600 pour le 5 décembre 2025 à minuit, heure PST).
GET
/
v3
/
enterprise
/
consumption
/
daily
Consulter la consommation quotidienne
curl --request GET \
--url https://api.devin.ai/v3/enterprise/consumption/daily \
--header 'Authorization: Bearer <token>'import requests
url = "https://api.devin.ai/v3/enterprise/consumption/daily"
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/enterprise/consumption/daily', 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/enterprise/consumption/daily",
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/enterprise/consumption/daily"
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/enterprise/consumption/daily")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.devin.ai/v3/enterprise/consumption/daily")
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{
"consumption_by_date": [
{
"acus": 123,
"acus_by_product": {
"cascade": 123,
"devin": 123,
"terminal": 123,
"automation": 123,
"review": 123
},
"date": 123
}
],
"total_acus": 123
}{
"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"
}L’API de consommation est réservée aux comptes disposant d’un plan Enterprise. Les Teams et les
organisations self-serve reçoivent une réponse
403 ; il n’existe aucun toggle par compte que le support pourrait activer.Répartition par produit
Chaque entrée de date de la réponse comporte un objetacus_by_product qui ventile la consommation totale d’ACU par produit : devin, automation, cascade, terminal et review (Devin Review). Vous pouvez ainsi voir comment la consommation se répartit entre les produits pour chaque jour. Lorsque les données par produit ne sont pas disponibles pour devin, cascade ou terminal, la valeur par défaut est 0.0. Les champs automation et review valent null lorsque les données de consommation spécifiques à leur produit ne sont pas disponibles.
devin: sessions lancées par une personne ou par un utilisateur de service, y compris les sessions d’analyse de code et d’astreinte.automation: sessions et étapes de code exécutées par des automatisations. Avant l’ajout de ce champ, cette utilisation était comptabilisée sousdevin.
Autorisations
Nécessite un utilisateur de service ou un jeton d’accès personnel disposant de l’autorisationViewAccountConsumption au niveau de l’entreprise.
