Projects
Get metadata about a file in a project's git repository
Get size, MIME type and path for a single file in the project’s main repository or in one of its imported repositories, without fetching its contents. Required permissions: ListProject
GET
/
api
/
projects
/
v1
/
projects
/
{projectId}
/
repositories
/
{repositoryId}
/
file-metadata
Get metadata about a file in a project's git repository
curl --request GET \
--url https://mycluster.domino.tech/api/projects/v1/projects/{projectId}/repositories/{repositoryId}/file-metadata \
--header 'X-Domino-Api-Key: <api-key>'import requests
url = "https://mycluster.domino.tech/api/projects/v1/projects/{projectId}/repositories/{repositoryId}/file-metadata"
headers = {"X-Domino-Api-Key": "<api-key>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {'X-Domino-Api-Key': '<api-key>'}};
fetch('https://mycluster.domino.tech/api/projects/v1/projects/{projectId}/repositories/{repositoryId}/file-metadata', 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}/file-metadata",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"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"
"net/http"
"io"
)
func main() {
url := "https://mycluster.domino.tech/api/projects/v1/projects/{projectId}/repositories/{repositoryId}/file-metadata"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("X-Domino-Api-Key", "<api-key>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://mycluster.domino.tech/api/projects/v1/projects/{projectId}/repositories/{repositoryId}/file-metadata")
.header("X-Domino-Api-Key", "<api-key>")
.asString();require 'uri'
require 'net/http'
url = URI("https://mycluster.domino.tech/api/projects/v1/projects/{projectId}/repositories/{repositoryId}/file-metadata")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["X-Domino-Api-Key"] = '<api-key>'
response = http.request(request)
puts response.read_body{
"fileMetadata": {
"filePath": "<string>",
"fileSize": 123,
"maxSize": 123,
"mimeType": "<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 being queried. Use _ to refer to the project's main repository.
Query Parameters
Path of the file within the repository
Branch to read the file from. Defaults to the project's default git branch.
Commit SHA to read the file at. Takes precedence over branchName.
Last modified on September 3, 2026
Was this page helpful?
⌘I
Get metadata about a file in a project's git repository
curl --request GET \
--url https://mycluster.domino.tech/api/projects/v1/projects/{projectId}/repositories/{repositoryId}/file-metadata \
--header 'X-Domino-Api-Key: <api-key>'import requests
url = "https://mycluster.domino.tech/api/projects/v1/projects/{projectId}/repositories/{repositoryId}/file-metadata"
headers = {"X-Domino-Api-Key": "<api-key>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {'X-Domino-Api-Key': '<api-key>'}};
fetch('https://mycluster.domino.tech/api/projects/v1/projects/{projectId}/repositories/{repositoryId}/file-metadata', 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}/file-metadata",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"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"
"net/http"
"io"
)
func main() {
url := "https://mycluster.domino.tech/api/projects/v1/projects/{projectId}/repositories/{repositoryId}/file-metadata"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("X-Domino-Api-Key", "<api-key>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://mycluster.domino.tech/api/projects/v1/projects/{projectId}/repositories/{repositoryId}/file-metadata")
.header("X-Domino-Api-Key", "<api-key>")
.asString();require 'uri'
require 'net/http'
url = URI("https://mycluster.domino.tech/api/projects/v1/projects/{projectId}/repositories/{repositoryId}/file-metadata")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["X-Domino-Api-Key"] = '<api-key>'
response = http.request(request)
puts response.read_body{
"fileMetadata": {
"filePath": "<string>",
"fileSize": 123,
"maxSize": 123,
"mimeType": "<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>"
}