Indexación en lote de repositorios
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 de repositorio (Beta)
Indexación masiva de repositorios
Indexa varios repositorios (hasta 100) para usarlos en sesiones de Devin.
POST
/
beta
/
v2
/
enterprise
/
repositories
/
bulk-index
Indexación en lote de repositorios
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>"
}
]
}Este endpoint permite indexar varios repositorios a la vez, poniéndolos a disposición de Devin durante las sesiones. Puedes indexar hasta 100 repositorios en una sola solicitud.
La indexación de repositorios es una operación asíncrona. Usa el endpoint Obtener estado del repositorio para comprobar el progreso de la indexación.
⌘I

