cURL
curl --request POST \
--url https://api.example.com/api/v1/repositories/fork \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"source_org": "<string>",
"source_repo": "<string>",
"source_tag": "<string>",
"repo_name": "<string>",
"tag_name": "<string>"
}
'import requests
url = "https://api.example.com/api/v1/repositories/fork"
payload = {
"source_org": "<string>",
"source_repo": "<string>",
"source_tag": "<string>",
"repo_name": "<string>",
"tag_name": "<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({
source_org: '<string>',
source_repo: '<string>',
source_tag: '<string>',
repo_name: '<string>',
tag_name: '<string>'
})
};
fetch('https://api.example.com/api/v1/repositories/fork', 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.example.com/api/v1/repositories/fork",
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([
'source_org' => '<string>',
'source_repo' => '<string>',
'source_tag' => '<string>',
'repo_name' => '<string>',
'tag_name' => '<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.example.com/api/v1/repositories/fork"
payload := strings.NewReader("{\n \"source_org\": \"<string>\",\n \"source_repo\": \"<string>\",\n \"source_tag\": \"<string>\",\n \"repo_name\": \"<string>\",\n \"tag_name\": \"<string>\"\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.example.com/api/v1/repositories/fork")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"source_org\": \"<string>\",\n \"source_repo\": \"<string>\",\n \"source_tag\": \"<string>\",\n \"repo_name\": \"<string>\",\n \"tag_name\": \"<string>\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.example.com/api/v1/repositories/fork")
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 \"source_org\": \"<string>\",\n \"source_repo\": \"<string>\",\n \"source_tag\": \"<string>\",\n \"repo_name\": \"<string>\",\n \"tag_name\": \"<string>\"\n}"
response = http.request(request)
puts response.read_body{
"commit_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"reference": "<string>",
"repo_name": "<string>",
"tag_name": "<string>",
"vm_id": "<string>"
}{
"error": "<string>",
"success": true
}{
"error": "<string>",
"success": true
}{
"error": "<string>",
"success": true
}Post apiv1repositoriesfork
POST
/
api
/
v1
/
repositories
/
fork
cURL
curl --request POST \
--url https://api.example.com/api/v1/repositories/fork \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"source_org": "<string>",
"source_repo": "<string>",
"source_tag": "<string>",
"repo_name": "<string>",
"tag_name": "<string>"
}
'import requests
url = "https://api.example.com/api/v1/repositories/fork"
payload = {
"source_org": "<string>",
"source_repo": "<string>",
"source_tag": "<string>",
"repo_name": "<string>",
"tag_name": "<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({
source_org: '<string>',
source_repo: '<string>',
source_tag: '<string>',
repo_name: '<string>',
tag_name: '<string>'
})
};
fetch('https://api.example.com/api/v1/repositories/fork', 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.example.com/api/v1/repositories/fork",
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([
'source_org' => '<string>',
'source_repo' => '<string>',
'source_tag' => '<string>',
'repo_name' => '<string>',
'tag_name' => '<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.example.com/api/v1/repositories/fork"
payload := strings.NewReader("{\n \"source_org\": \"<string>\",\n \"source_repo\": \"<string>\",\n \"source_tag\": \"<string>\",\n \"repo_name\": \"<string>\",\n \"tag_name\": \"<string>\"\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.example.com/api/v1/repositories/fork")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"source_org\": \"<string>\",\n \"source_repo\": \"<string>\",\n \"source_tag\": \"<string>\",\n \"repo_name\": \"<string>\",\n \"tag_name\": \"<string>\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.example.com/api/v1/repositories/fork")
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 \"source_org\": \"<string>\",\n \"source_repo\": \"<string>\",\n \"source_tag\": \"<string>\",\n \"repo_name\": \"<string>\",\n \"tag_name\": \"<string>\"\n}"
response = http.request(request)
puts response.read_body{
"commit_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"reference": "<string>",
"repo_name": "<string>",
"tag_name": "<string>",
"vm_id": "<string>"
}{
"error": "<string>",
"success": true
}{
"error": "<string>",
"success": true
}{
"error": "<string>",
"success": true
}Authorizations
Bearer authentication header of the form Bearer <token>, where <token> is your auth token.
Body
application/json
Request body for POST /api/v1/repositories/fork
The organization that owns the source public repository
The source repository name
The tag to fork (e.g. "latest", "v1.0")
Name for the new repository in your org (defaults to source_repo if omitted)
Tag name in the new repo (defaults to source_tag if omitted)
Response
Repository forked successfully
Response body for POST /api/v1/repositories/fork
The new commit in your org (snapshot of the forked VM)
Full reference: repo_name:tag_name
The new repository name in your org
The tag name pointing to the forked commit
The new VM that was created from the fork
⌘I