1. GET /repos/{owner}/{repo} β ΠΏΠΎΠ»ΡΡΠΈΡΡ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ ΠΎ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΈ
ΠΠΏΠΈΡΠ°Π½ΠΈΠ΅
ΠΠΎΠ·Π²ΡΠ°ΡΠ°Π΅Ρ ΠΏΠΎΠ΄ΡΠΎΠ±Π½ΡΡ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ ΠΎ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΈ: Π½Π°Π·Π²Π°Π½ΠΈΠ΅, Π²Π»Π°Π΄Π΅Π»ΡΡΠ°, ΠΎΠΏΠΈΡΠ°Π½ΠΈΠ΅, Π½Π°ΡΡΡΠΎΠΉΠΊΠΈ ΠΏΡΠΈΠ²Π°ΡΠ½ΠΎΡΡΠΈ, ΠΏΡΠ°Π²Π° ΡΠ΅ΠΊΡΡΠ΅Π³ΠΎ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ ΠΈ Π΄ΡΡΠ³ΡΡ ΠΌΠ΅ΡΠ°ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ.
β οΈ ΠΠΎΡΡΡΠΏ ΠΊ ΠΏΡΠΈΠ²Π°ΡΠ½ΡΠΌ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡΠΌ Π²ΠΎΠ·ΠΌΠΎΠΆΠ΅Π½ ΡΠΎΠ»ΡΠΊΠΎ ΠΏΡΠΈ Π½Π°Π»ΠΈΡΠΈΠΈ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΡΡΠΈΡ ΠΏΡΠ°Π² Ρ Π°ΡΡΠ΅Π½ΡΠΈΡΠΈΡΠΈΡΠΎΠ²Π°Π½Π½ΠΎΠ³ΠΎ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ.
ΠΠ°ΡΠ°ΠΌΠ΅ΡΡΡ URL
| ΠΠ°ΡΠ°ΠΌΠ΅ΡΡ | ΠΠ±ΡΠ·Π°ΡΠ΅Π»ΡΠ½ΡΠΉ | ΠΠΏΠΈΡΠ°Π½ΠΈΠ΅ |
|---|---|---|
owner | ΠΠ° | ΠΠ»Π°Π΄Π΅Π»Π΅Ρ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡ (ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ ΠΈΠ»ΠΈ ΠΎΡΠ³Π°Π½ΠΈΠ·Π°ΡΠΈΡ) |
repo | ΠΠ° | ΠΠ°Π·Π²Π°Π½ΠΈΠ΅ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡ (Π±Π΅Π· ΡΠ°ΡΡΠΈΡΠ΅Π½ΠΈΡ .git) |
Π’Π΅Π»ΠΎ Π·Π°ΠΏΡΠΎΡΠ°
ΠΠ΅ ΡΡΠ΅Π±ΡΠ΅ΡΡΡ.
ΠΡΠΈΠΌΠ΅Ρ Π·Π°ΠΏΡΠΎΡΠ°
curl -X GET "https://api.gitverse.ru/repos/awesome-org/project-x" \
-H "Authorization: Bearer YOUR_TOKEN" \
-H "Accept: application/vnd.gitverse.object+json;version=latest"ΠΡΠ²Π΅Ρ (200 OK)
ΠΡΠΈΠΌΠ΅Ρ JSON-ΠΎΡΠ²Π΅ΡΠ°:
{
"id": 54321,
"name": "project-x",
"full_name": "awesome-org/project-x",
"private": false,
"owner": {
"login": "awesome-org",
"id": 11223,
"avatar_url": "https://gitverse.ru/avatars/awesome-org.png"
},
"html_url": "https://gitverse.ru/awesome-org/project-x",
"description": "ΠΡΠΈΠΌΠ΅Ρ ΠΏΡΠΎΠ΅ΠΊΡΠ° Π΄Π»Ρ Π΄Π΅ΠΌΠΎΠ½ΡΡΡΠ°ΡΠΈΠΈ API",
"fork": false,
"created_at": "2024-01-15T08:30:00Z",
"updated_at": "2025-03-22T14:12:00Z",
"pushed_at": "2025-04-01T09:45:00Z",
"homepage": "https://project-x.example.com",
"size": 2048,
"stargazers_count": 42,
"watchers_count": 10,
"language": "TypeScript",
"has_issues": true,
"has_wiki": false,
"has_pages": true,
"has_downloads": true,
"default_branch": "main",
"permissions": {
"admin": false,
"push": true,
"pull": true
},
"clone_url": "https://gitverse.ru/awesome-org/project-x.git",
"ssh_url": "git@gitverse.ru:awesome-org/project-x.git",
"forks_count": 5,
"open_issues_count": 3,
"visibility": "public",
"archived": false,
"disabled": false,
"allow_merge_commit": true,
"allow_rebase_merge": true,
"allow_squash_merge": true,
"delete_branch_on_merge": false,
"is_template": false,
"topics": ["api", "example", "gitverse"]
}Π€ΠΎΡΠΌΠ°Ρ ΠΎΡΠ²Π΅ΡΠ°
application/vnd.gitverse.object+json;version=1
ΠΠΎΠ»Ρ ΠΎΡΠ²Π΅ΡΠ°
| ΠΠΎΠ»Π΅ | Π’ΠΈΠΏ | ΠΠΏΠΈΡΠ°Π½ΠΈΠ΅ |
|---|---|---|
id | integer | Π£Π½ΠΈΠΊΠ°Π»ΡΠ½ΡΠΉ ΡΠΈΡΠ»ΠΎΠ²ΠΎΠΉ ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΎΡ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡ |
name | string | ΠΠ°Π·Π²Π°Π½ΠΈΠ΅ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡ |
full_name | string | ΠΠΎΠ»Π½ΠΎΠ΅ ΠΈΠΌΡ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡ (owner/repo) |
private | boolean | ΠΡΠΈΠ·Π½Π°ΠΊ ΠΏΡΠΈΠ²Π°ΡΠ½ΠΎΡΡΠΈ: true β ΠΏΡΠΈΠ²Π°ΡΠ½ΡΠΉ, false β ΠΏΡΠ±Π»ΠΈΡΠ½ΡΠΉ |
owner | object | ΠΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ ΠΎ Π²Π»Π°Π΄Π΅Π»ΡΡΠ΅: login (ΡΡΡΠΎΠΊΠ°), id (ΡΠ΅Π»ΠΎΠ΅ ΡΠΈΡΠ»ΠΎ), avatar_url (ΡΡΡΠΎΠΊΠ°) |
html_url | string | Π‘ΡΡΠ»ΠΊΠ° Π½Π° ΡΡΡΠ°Π½ΠΈΡΡ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡ Π² Π²Π΅Π±-ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠ΅ |
description | string ΠΈΠ»ΠΈ null | ΠΠΏΠΈΡΠ°Π½ΠΈΠ΅ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡ |
fork | boolean | Π―Π²Π»ΡΠ΅ΡΡΡ Π»ΠΈ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ ΡΠΎΡΠΊΠΎΠΌ |
created_at | string | ΠΠ°ΡΠ° ΠΈ Π²ΡΠ΅ΠΌΡ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ (ISO 8601) |
updated_at | string | ΠΠ°ΡΠ° ΠΏΠΎΡΠ»Π΅Π΄Π½Π΅Π³ΠΎ ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΡ ΠΌΠ΅ΡΠ°Π΄Π°Π½Π½ΡΡ |
pushed_at | string | ΠΠ°ΡΠ° ΠΏΠΎΡΠ»Π΅Π΄Π½Π΅Π³ΠΎ ΠΏΡΡΠ° |
homepage | string ΠΈΠ»ΠΈ null | URL Π΄ΠΎΠΌΠ°ΡΠ½Π΅ΠΉ ΡΡΡΠ°Π½ΠΈΡΡ ΠΏΡΠΎΠ΅ΠΊΡΠ° |
size | integer | Π Π°Π·ΠΌΠ΅Ρ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡ Π² ΠΊΠΈΠ»ΠΎΠ±Π°ΠΉΡΠ°Ρ |
stargazers_count | integer | ΠΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Π΅ΠΉ, ΠΏΠΎΡΡΠ°Π²ΠΈΠ²ΡΠΈΡ Β«Π·Π²Π΅Π·Π΄ΡΒ» |
watchers_count | integer | ΠΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ Π½Π°Π±Π»ΡΠ΄Π°ΡΠ΅Π»Π΅ΠΉ |
language | string ΠΈΠ»ΠΈ null | ΠΡΠ½ΠΎΠ²Π½ΠΎΠΉ ΡΠ·ΡΠΊ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΡ |
has_issues | boolean | ΠΠΊΠ»ΡΡΠ΅Π½Ρ Π»ΠΈ Π·Π°Π΄Π°ΡΠΈ (issues) |
has_wiki | boolean | ΠΠΊΠ»ΡΡΠ΅Π½Π° Π»ΠΈ Π²ΠΈΠΊΠΈ |
has_pages | boolean | Π Π°Π·Π²Π΅ΡΠ½ΡΡΡ Π»ΠΈ GitVerse Pages |
has_downloads | boolean | ΠΠΊΠ»ΡΡΠ΅Π½Ρ Π»ΠΈ Π·Π°Π³ΡΡΠ·ΠΊΠΈ ΡΠ°ΠΉΠ»ΠΎΠ² |
default_branch | string | ΠΠΌΡ ΠΎΡΠ½ΠΎΠ²Π½ΠΎΠΉ Π²Π΅ΡΠΊΠΈ |
permissions | object | ΠΡΠ°Π²Π° ΡΠ΅ΠΊΡΡΠ΅Π³ΠΎ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ: admin, push, pull (Π²ΡΠ΅ β boolean) |
clone_url | string | Π‘ΡΡΠ»ΠΊΠ° Π΄Π»Ρ ΠΊΠ»ΠΎΠ½ΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΠΏΠΎ HTTPS |
ssh_url | string | Π‘ΡΡΠ»ΠΊΠ° Π΄Π»Ρ ΠΊΠ»ΠΎΠ½ΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΠΏΠΎ SSH |
forks_count | integer | ΠΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ ΡΠΎΡΠΊΠΎΠ² |
open_issues_count | integer | ΠΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ ΠΎΡΠΊΡΡΡΡΡ Π·Π°Π΄Π°Ρ ΠΈ PR |
visibility | string | ΠΠΈΠ΄ΠΈΠΌΠΎΡΡΡ: public, private ΠΈΠ»ΠΈ internal |
archived | boolean | ΠΡΡ ΠΈΠ²ΠΈΡΠΎΠ²Π°Π½ Π»ΠΈ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ |
disabled | boolean | ΠΡΠΊΠ»ΡΡΠ΅Π½ Π»ΠΈ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ |
allow_merge_commit | boolean | Π Π°Π·ΡΠ΅ΡΠ΅Π½ΠΎ Π»ΠΈ ΡΠΎΠ·Π΄Π°Π½ΠΈΠ΅ merge-ΠΊΠΎΠΌΠΌΠΈΡΠΎΠ² |
allow_rebase_merge | boolean | Π Π°Π·ΡΠ΅ΡΠ΅Π½ΠΎ Π»ΠΈ rebase-ΡΠ»ΠΈΡΠ½ΠΈΠ΅ |
allow_squash_merge | boolean | Π Π°Π·ΡΠ΅ΡΠ΅Π½ΠΎ Π»ΠΈ squash-ΡΠ»ΠΈΡΠ½ΠΈΠ΅ |
delete_branch_on_merge | boolean | Π£Π΄Π°Π»ΡΡΡ Π»ΠΈ Π²Π΅ΡΠΊΡ ΠΏΠΎΡΠ»Π΅ ΡΠ»ΠΈΡΠ½ΠΈΡ |
is_template | boolean | Π―Π²Π»ΡΠ΅ΡΡΡ Π»ΠΈ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ ΡΠ°Π±Π»ΠΎΠ½ΠΎΠΌ |
topics | array[string] | Π‘ΠΏΠΈΡΠΎΠΊ ΡΠ΅ΠΌ (ΡΠ΅Π³ΠΎΠ²) ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡ |
π‘ ΠΠΎΠ»Π΅
parent(Π΅ΡΠ»ΠΈ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ ΡΠ²Π»ΡΠ΅ΡΡΡ ΡΠΎΡΠΊΠΎΠΌ) ΡΠΎΠ΄Π΅ΡΠΆΠΈΡ ΠΏΠΎΠ»Π½ΡΠΉ ΠΎΠ±ΡΠ΅ΠΊΡ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡ Ρ ΡΠ΅ΠΌΠΈ ΠΆΠ΅ ΠΏΠΎΠ»ΡΠΌΠΈ. ΠΠ½Π°Π»ΠΎΠ³ΠΈΡΠ½ΠΎ βtemplate_repository, Π΅ΡΠ»ΠΈ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ ΡΠΎΠ·Π΄Π°Π½ ΠΈΠ· ΡΠ°Π±Π»ΠΎΠ½Π°.
ΠΠΎΠ΄Ρ ΠΎΡΠ²Π΅ΡΠ°
| ΠΠΎΠ΄ | Π‘ΡΠ°ΡΡΡ | ΠΠΏΠΈΡΠ°Π½ΠΈΠ΅ |
|---|---|---|
| 200 | OK | ΠΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ ΠΎ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΈ ΡΡΠΏΠ΅ΡΠ½ΠΎ ΠΏΠΎΠ»ΡΡΠ΅Π½Π° |
| 400 | Bad Request | ΠΠ΅ΠΊΠΎΡΡΠ΅ΠΊΡΠ½ΡΠ΅ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΡ Π·Π°ΠΏΡΠΎΡΠ° |
| 401 | Unauthorized | ΠΠ΅ ΠΏΠ΅ΡΠ΅Π΄Π°Π½ ΠΈΠ»ΠΈ Π½Π΅Π²Π°Π»ΠΈΠ΄Π΅Π½ ΡΠΎΠΊΠ΅Π½ Π°Π²ΡΠΎΡΠΈΠ·Π°ΡΠΈΠΈ |
| 403 | Forbidden | ΠΠ΅Ρ Π΄ΠΎΡΡΡΠΏΠ° ΠΊ ΠΏΡΠΈΠ²Π°ΡΠ½ΠΎΠΌΡ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡ |
| 404 | Not Found | Π Π΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ {owner}/{repo} Π½Π΅ ΡΡΡΠ΅ΡΡΠ²ΡΠ΅Ρ |
| 422 | Unprocessable Entity | ΠΡΠΈΠ±ΠΊΠ° ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠΈ Π·Π°ΠΏΡΠΎΡΠ° |
| 500 | Internal Server Error | ΠΠ½ΡΡΡΠ΅Π½Π½ΡΡ ΠΎΡΠΈΠ±ΠΊΠ° ΡΠ΅ΡΠ²Π΅ΡΠ° |