Get details of an existing repo.
curl --request GET \
--url https://api.diversion.dev/v0/repos/{repo_id} \
--header 'Authorization: Bearer <token>'import requests
url = "https://api.diversion.dev/v0/repos/{repo_id}"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://api.diversion.dev/v0/repos/{repo_id}', 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.diversion.dev/v0/repos/{repo_id}",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>"
],
]);
$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://api.diversion.dev/v0/repos/{repo_id}"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Authorization", "Bearer <token>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://api.diversion.dev/v0/repos/{repo_id}")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.diversion.dev/v0/repos/{repo_id}")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Authorization"] = 'Bearer <token>'
response = http.request(request)
puts response.read_body{
"repo_name": "repo-name",
"repo_id": "example_id",
"size_bytes": 123,
"owner_user_id": "<string>",
"created_timestamp": 123,
"description": "<string>",
"default_branch_id": "<string>",
"default_branch_name": "<string>",
"sync_git_repo_url": "<string>"
}{
"status": 403,
"detail": "User not authorized to perform the requested action on the resource",
"title": "<string>",
"type": "<string>"
}Repository Manipulation
Get repository details
Retrieves detailed repository information including:
- Name
- Description
- Size in bytes
- Owner ID
- Creation timestamp
- Digest method
- Default branch details
- Git sync configuration (if enabled)
- Organization ID (if part of an organization)
- Default auto-forwarding status
Requirements: Requires READ access to the repository.
Returns:
404 Not Foundif the repository doesn’t exist or user lacks access
GET
/
repos
/
{repo_id}
Get details of an existing repo.
curl --request GET \
--url https://api.diversion.dev/v0/repos/{repo_id} \
--header 'Authorization: Bearer <token>'import requests
url = "https://api.diversion.dev/v0/repos/{repo_id}"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://api.diversion.dev/v0/repos/{repo_id}', 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.diversion.dev/v0/repos/{repo_id}",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>"
],
]);
$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://api.diversion.dev/v0/repos/{repo_id}"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Authorization", "Bearer <token>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://api.diversion.dev/v0/repos/{repo_id}")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.diversion.dev/v0/repos/{repo_id}")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Authorization"] = 'Bearer <token>'
response = http.request(request)
puts response.read_body{
"repo_name": "repo-name",
"repo_id": "example_id",
"size_bytes": 123,
"owner_user_id": "<string>",
"created_timestamp": 123,
"description": "<string>",
"default_branch_id": "<string>",
"default_branch_name": "<string>",
"sync_git_repo_url": "<string>"
}{
"status": 403,
"detail": "User not authorized to perform the requested action on the resource",
"title": "<string>",
"type": "<string>"
}Authorizations
OAuth2OAuth2
This API uses OAuth 2 with the implicit grant flow
Path Parameters
The repo ID of the repository. Repo name can be used instead of the ID, but usage of ID for permanent linking and API requests is preferred.
Required string length:
3 - 128Example:
"example_id"
Response
Repo object with the requested identifier
Required string length:
1 - 128Example:
"repo-name"
Example:
"example_id"
Seconds since epoch UTC
Optional URL of the git repository being synced with the repo

