Projects
Update the default git reference of a repository in a project
Set the default git reference Domino uses for the project’s main repository or for one of its imported repositories. Runs and workspaces started after the update read the repository at this reference. Required permissions: Edit
PUT
/
api
/
projects
/
v1
/
projects
/
{projectId}
/
repositories
/
{repositoryId}
/
default-ref
Update the default git reference of a repository in a project
curl --request PUT \
--url https://mycluster.domino.tech/api/projects/v1/projects/{projectId}/repositories/{repositoryId}/default-ref \
--header 'Content-Type: application/json' \
--header 'X-Domino-Api-Key: <api-key>' \
--data '
{
"value": "<string>"
}
'import requests
url = "https://mycluster.domino.tech/api/projects/v1/projects/{projectId}/repositories/{repositoryId}/default-ref"
payload = { "value": "<string>" }
headers = {
"X-Domino-Api-Key": "<api-key>",
"Content-Type": "application/json"
}
response = requests.put(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'PUT',
headers: {'X-Domino-Api-Key': '<api-key>', 'Content-Type': 'application/json'},
body: JSON.stringify({value: '<string>'})
};
fetch('https://mycluster.domino.tech/api/projects/v1/projects/{projectId}/repositories/{repositoryId}/default-ref', 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://mycluster.domino.tech/api/projects/v1/projects/{projectId}/repositories/{repositoryId}/default-ref",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "PUT",
CURLOPT_POSTFIELDS => json_encode([
'value' => '<string>'
]),
CURLOPT_HTTPHEADER => [
"Content-Type: application/json",
"X-Domino-Api-Key: <api-key>"
],
]);
$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://mycluster.domino.tech/api/projects/v1/projects/{projectId}/repositories/{repositoryId}/default-ref"
payload := strings.NewReader("{\n \"value\": \"<string>\"\n}")
req, _ := http.NewRequest("PUT", url, payload)
req.Header.Add("X-Domino-Api-Key", "<api-key>")
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.put("https://mycluster.domino.tech/api/projects/v1/projects/{projectId}/repositories/{repositoryId}/default-ref")
.header("X-Domino-Api-Key", "<api-key>")
.header("Content-Type", "application/json")
.body("{\n \"value\": \"<string>\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://mycluster.domino.tech/api/projects/v1/projects/{projectId}/repositories/{repositoryId}/default-ref")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Put.new(url)
request["X-Domino-Api-Key"] = '<api-key>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"value\": \"<string>\"\n}"
response = http.request(request)
puts response.read_body{
"defaultRef": {
"refType": "head",
"value": "<string>"
},
"metadata": {
"notices": [
"<string>"
],
"requestId": "<string>"
}
}{
"error": "<string>"
}{
"code": "UNAUTHORIZED",
"message": "Authentication is required to access this resource."
}{
"code": "FORBIDDEN",
"message": "You do not have permission to perform this action."
}{
"error": "<string>"
}{
"error": "<string>"
}Authorizations
DominoApiKeyBearerAuthentication
Path Parameters
ID of the project the repository belongs to
ID of the repository to update. Use _ to refer to the project's main repository.
Body
application/json
The new default git reference
Last modified on October 1, 2026
Was this page helpful?
⌘I
Update the default git reference of a repository in a project
curl --request PUT \
--url https://mycluster.domino.tech/api/projects/v1/projects/{projectId}/repositories/{repositoryId}/default-ref \
--header 'Content-Type: application/json' \
--header 'X-Domino-Api-Key: <api-key>' \
--data '
{
"value": "<string>"
}
'import requests
url = "https://mycluster.domino.tech/api/projects/v1/projects/{projectId}/repositories/{repositoryId}/default-ref"
payload = { "value": "<string>" }
headers = {
"X-Domino-Api-Key": "<api-key>",
"Content-Type": "application/json"
}
response = requests.put(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'PUT',
headers: {'X-Domino-Api-Key': '<api-key>', 'Content-Type': 'application/json'},
body: JSON.stringify({value: '<string>'})
};
fetch('https://mycluster.domino.tech/api/projects/v1/projects/{projectId}/repositories/{repositoryId}/default-ref', 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://mycluster.domino.tech/api/projects/v1/projects/{projectId}/repositories/{repositoryId}/default-ref",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "PUT",
CURLOPT_POSTFIELDS => json_encode([
'value' => '<string>'
]),
CURLOPT_HTTPHEADER => [
"Content-Type: application/json",
"X-Domino-Api-Key: <api-key>"
],
]);
$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://mycluster.domino.tech/api/projects/v1/projects/{projectId}/repositories/{repositoryId}/default-ref"
payload := strings.NewReader("{\n \"value\": \"<string>\"\n}")
req, _ := http.NewRequest("PUT", url, payload)
req.Header.Add("X-Domino-Api-Key", "<api-key>")
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.put("https://mycluster.domino.tech/api/projects/v1/projects/{projectId}/repositories/{repositoryId}/default-ref")
.header("X-Domino-Api-Key", "<api-key>")
.header("Content-Type", "application/json")
.body("{\n \"value\": \"<string>\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://mycluster.domino.tech/api/projects/v1/projects/{projectId}/repositories/{repositoryId}/default-ref")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Put.new(url)
request["X-Domino-Api-Key"] = '<api-key>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"value\": \"<string>\"\n}"
response = http.request(request)
puts response.read_body{
"defaultRef": {
"refType": "head",
"value": "<string>"
},
"metadata": {
"notices": [
"<string>"
],
"requestId": "<string>"
}
}{
"error": "<string>"
}{
"code": "UNAUTHORIZED",
"message": "Authentication is required to access this resource."
}{
"code": "FORBIDDEN",
"message": "You do not have permission to perform this action."
}{
"error": "<string>"
}{
"error": "<string>"
}