Indexation groupée de dépôts
curl --request POST \
--url https://api.devin.ai/beta/v2/enterprise/repositories/bulk-index \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"org_id": "<string>",
"repo_names": [
"<string>"
]
}
'import requests
url = "https://api.devin.ai/beta/v2/enterprise/repositories/bulk-index"
payload = {
"org_id": "<string>",
"repo_names": ["<string>"]
}
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({org_id: '<string>', repo_names: ['<string>']})
};
fetch('https://api.devin.ai/beta/v2/enterprise/repositories/bulk-index', 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/beta/v2/enterprise/repositories/bulk-index",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'org_id' => '<string>',
'repo_names' => [
'<string>'
]
]),
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>",
"Content-Type: application/json"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://api.devin.ai/beta/v2/enterprise/repositories/bulk-index"
payload := strings.NewReader("{\n \"org_id\": \"<string>\",\n \"repo_names\": [\n \"<string>\"\n ]\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Authorization", "Bearer <token>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://api.devin.ai/beta/v2/enterprise/repositories/bulk-index")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"org_id\": \"<string>\",\n \"repo_names\": [\n \"<string>\"\n ]\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.devin.ai/beta/v2/enterprise/repositories/bulk-index")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"org_id\": \"<string>\",\n \"repo_names\": [\n \"<string>\"\n ]\n}"
response = http.request(request)
puts response.read_body{
"status": "success"
}{
"detail": [
{
"loc": [
"<string>"
],
"msg": "<string>",
"type": "<string>"
}
]
}Endpoints du dépôt (bêta)
Indexation groupée de dépôts
Indexer plusieurs dépôts (jusqu’à 100) pour les utiliser lors des sessions Devin.
POST
/
beta
/
v2
/
enterprise
/
repositories
/
bulk-index
Indexation groupée de dépôts
curl --request POST \
--url https://api.devin.ai/beta/v2/enterprise/repositories/bulk-index \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"org_id": "<string>",
"repo_names": [
"<string>"
]
}
'import requests
url = "https://api.devin.ai/beta/v2/enterprise/repositories/bulk-index"
payload = {
"org_id": "<string>",
"repo_names": ["<string>"]
}
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({org_id: '<string>', repo_names: ['<string>']})
};
fetch('https://api.devin.ai/beta/v2/enterprise/repositories/bulk-index', 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/beta/v2/enterprise/repositories/bulk-index",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'org_id' => '<string>',
'repo_names' => [
'<string>'
]
]),
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>",
"Content-Type: application/json"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://api.devin.ai/beta/v2/enterprise/repositories/bulk-index"
payload := strings.NewReader("{\n \"org_id\": \"<string>\",\n \"repo_names\": [\n \"<string>\"\n ]\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Authorization", "Bearer <token>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://api.devin.ai/beta/v2/enterprise/repositories/bulk-index")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"org_id\": \"<string>\",\n \"repo_names\": [\n \"<string>\"\n ]\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.devin.ai/beta/v2/enterprise/repositories/bulk-index")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"org_id\": \"<string>\",\n \"repo_names\": [\n \"<string>\"\n ]\n}"
response = http.request(request)
puts response.read_body{
"status": "success"
}{
"detail": [
{
"loc": [
"<string>"
],
"msg": "<string>",
"type": "<string>"
}
]
}Cet endpoint permet d’indexer plusieurs dépôts en une seule fois, afin de les rendre accessibles à Devin pendant les sessions. Vous pouvez indexer jusqu’à 100 dépôts dans une seule requête.
L’indexation des dépôts est une opération asynchrone. Utilisez l’endpoint Obtenir le statut d’indexation du dépôt pour vérifier l’avancement de l’indexation.
⌘I

