Repository klonen
curl --request POST \
--url https://api.devin.ai/v2/enterprise/organizations/{org_id}/clone \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"repo_path": "<string>",
"pull_repo_commands": [
"<string>"
],
"repo_note": "<string>",
"run_lint_commands": [
"<string>"
],
"run_project_commands": [
"<string>"
],
"run_tests_commands": [
"<string>"
],
"update_dependencies_commands": [
"<string>"
]
}
'import requests
url = "https://api.devin.ai/v2/enterprise/organizations/{org_id}/clone"
payload = {
"repo_path": "<string>",
"pull_repo_commands": ["<string>"],
"repo_note": "<string>",
"run_lint_commands": ["<string>"],
"run_project_commands": ["<string>"],
"run_tests_commands": ["<string>"],
"update_dependencies_commands": ["<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({
repo_path: '<string>',
pull_repo_commands: ['<string>'],
repo_note: '<string>',
run_lint_commands: ['<string>'],
run_project_commands: ['<string>'],
run_tests_commands: ['<string>'],
update_dependencies_commands: ['<string>']
})
};
fetch('https://api.devin.ai/v2/enterprise/organizations/{org_id}/clone', 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/v2/enterprise/organizations/{org_id}/clone",
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([
'repo_path' => '<string>',
'pull_repo_commands' => [
'<string>'
],
'repo_note' => '<string>',
'run_lint_commands' => [
'<string>'
],
'run_project_commands' => [
'<string>'
],
'run_tests_commands' => [
'<string>'
],
'update_dependencies_commands' => [
'<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/v2/enterprise/organizations/{org_id}/clone"
payload := strings.NewReader("{\n \"repo_path\": \"<string>\",\n \"pull_repo_commands\": [\n \"<string>\"\n ],\n \"repo_note\": \"<string>\",\n \"run_lint_commands\": [\n \"<string>\"\n ],\n \"run_project_commands\": [\n \"<string>\"\n ],\n \"run_tests_commands\": [\n \"<string>\"\n ],\n \"update_dependencies_commands\": [\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/v2/enterprise/organizations/{org_id}/clone")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"repo_path\": \"<string>\",\n \"pull_repo_commands\": [\n \"<string>\"\n ],\n \"repo_note\": \"<string>\",\n \"run_lint_commands\": [\n \"<string>\"\n ],\n \"run_project_commands\": [\n \"<string>\"\n ],\n \"run_tests_commands\": [\n \"<string>\"\n ],\n \"update_dependencies_commands\": [\n \"<string>\"\n ]\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.devin.ai/v2/enterprise/organizations/{org_id}/clone")
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 \"repo_path\": \"<string>\",\n \"pull_repo_commands\": [\n \"<string>\"\n ],\n \"repo_note\": \"<string>\",\n \"run_lint_commands\": [\n \"<string>\"\n ],\n \"run_project_commands\": [\n \"<string>\"\n ],\n \"run_tests_commands\": [\n \"<string>\"\n ],\n \"update_dependencies_commands\": [\n \"<string>\"\n ]\n}"
response = http.request(request)
puts response.read_body{
"created_at": "2023-11-07T05:31:56Z",
"org_id": "<string>",
"snapshot_id": "<string>",
"status": "<string>",
"ami_id": "<string>"
}{
"detail": [
{
"loc": [
"<string>"
],
"msg": "<string>",
"type": "<string>"
}
]
}Repository-Verwaltung
Ein Repository in eine Organisation klonen
Ein Repository in den Snapshot einer Organisation klonen
POST
/
v2
/
enterprise
/
organizations
/
{org_id}
/
clone
Repository klonen
curl --request POST \
--url https://api.devin.ai/v2/enterprise/organizations/{org_id}/clone \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"repo_path": "<string>",
"pull_repo_commands": [
"<string>"
],
"repo_note": "<string>",
"run_lint_commands": [
"<string>"
],
"run_project_commands": [
"<string>"
],
"run_tests_commands": [
"<string>"
],
"update_dependencies_commands": [
"<string>"
]
}
'import requests
url = "https://api.devin.ai/v2/enterprise/organizations/{org_id}/clone"
payload = {
"repo_path": "<string>",
"pull_repo_commands": ["<string>"],
"repo_note": "<string>",
"run_lint_commands": ["<string>"],
"run_project_commands": ["<string>"],
"run_tests_commands": ["<string>"],
"update_dependencies_commands": ["<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({
repo_path: '<string>',
pull_repo_commands: ['<string>'],
repo_note: '<string>',
run_lint_commands: ['<string>'],
run_project_commands: ['<string>'],
run_tests_commands: ['<string>'],
update_dependencies_commands: ['<string>']
})
};
fetch('https://api.devin.ai/v2/enterprise/organizations/{org_id}/clone', 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/v2/enterprise/organizations/{org_id}/clone",
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([
'repo_path' => '<string>',
'pull_repo_commands' => [
'<string>'
],
'repo_note' => '<string>',
'run_lint_commands' => [
'<string>'
],
'run_project_commands' => [
'<string>'
],
'run_tests_commands' => [
'<string>'
],
'update_dependencies_commands' => [
'<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/v2/enterprise/organizations/{org_id}/clone"
payload := strings.NewReader("{\n \"repo_path\": \"<string>\",\n \"pull_repo_commands\": [\n \"<string>\"\n ],\n \"repo_note\": \"<string>\",\n \"run_lint_commands\": [\n \"<string>\"\n ],\n \"run_project_commands\": [\n \"<string>\"\n ],\n \"run_tests_commands\": [\n \"<string>\"\n ],\n \"update_dependencies_commands\": [\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/v2/enterprise/organizations/{org_id}/clone")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"repo_path\": \"<string>\",\n \"pull_repo_commands\": [\n \"<string>\"\n ],\n \"repo_note\": \"<string>\",\n \"run_lint_commands\": [\n \"<string>\"\n ],\n \"run_project_commands\": [\n \"<string>\"\n ],\n \"run_tests_commands\": [\n \"<string>\"\n ],\n \"update_dependencies_commands\": [\n \"<string>\"\n ]\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.devin.ai/v2/enterprise/organizations/{org_id}/clone")
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 \"repo_path\": \"<string>\",\n \"pull_repo_commands\": [\n \"<string>\"\n ],\n \"repo_note\": \"<string>\",\n \"run_lint_commands\": [\n \"<string>\"\n ],\n \"run_project_commands\": [\n \"<string>\"\n ],\n \"run_tests_commands\": [\n \"<string>\"\n ],\n \"update_dependencies_commands\": [\n \"<string>\"\n ]\n}"
response = http.request(request)
puts response.read_body{
"created_at": "2023-11-07T05:31:56Z",
"org_id": "<string>",
"snapshot_id": "<string>",
"status": "<string>",
"ami_id": "<string>"
}{
"detail": [
{
"loc": [
"<string>"
],
"msg": "<string>",
"type": "<string>"
}
]
}Erfordert den persönlichen API key eines Enterprise-Administrators.
Klon t ein Git-Repository in einer Organisation und erstellt eine neue Snapshot-Version.
Autorisierungen
Persönlicher API Key (apk_user_*) nur für Enterprise-Administratoren
Pfadparameter
Body
application/json
Repository-Pfad im Format „owner/repo_name“ (z. B. „acme/my-project“)
Beispiel:
"owner/repo_name"
Befehle zum Pull des Repositories. Es empfiehlt sich, dieses Feld leer zu lassen, da es automatisch generiert wird.
Antwort
Erfolgreiche Antwort
Antwort auf die Erstellung eines Snapshots.
Zeitstempel der Erstellung des Snapshots
Organisations-ID, zu der der Snapshot gehört
ID des erstellten Snapshots
Status des Snapshots (z. B. „pending“, „available“)
AMI-ID des Snapshots (kann null sein, wenn er noch erstellt wird)
⌘I

