ΠŸΡƒΠ±Π»ΠΈΡ‡Π½Ρ‹ΠΉ APIΠ Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΈ5. GET /repos/{owner}/{repo}/contents/{path} β€” ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ содСрТимоС Ρ„Π°ΠΉΠ»Π° ΠΈΠ»ΠΈ ΠΏΠ°ΠΏΠΊΠΈ

5. GET /repos/{owner}/{repo}/contents/{path} β€” ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ содСрТимоС Ρ„Π°ΠΉΠ»Π° ΠΈΠ»ΠΈ ΠΏΠ°ΠΏΠΊΠΈ

ОписаниС

Π’ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ ΠΌΠ΅Ρ‚Π°Π΄Π°Π½Π½Ρ‹Π΅ Ρ„Π°ΠΉΠ»Π° ΠΈΠ»ΠΈ список содСрТимого Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΎΡ€ΠΈΠΈ. ΠŸΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ Ρ„ΠΈΠ»ΡŒΡ‚Ρ€Π°Ρ†ΠΈΡŽ ΠΏΠΎ Π²Π΅Ρ‚ΠΊΠ΅/Ρ‚Π΅Π³Ρƒ ΠΈ Π²Ρ‹Π±ΠΎΡ€ уровня Π΄Π΅Ρ‚Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ ΠΎ ΠΊΠΎΠΌΠΌΠΈΡ‚Π΅.

⚠️ Для получСния содСрТимого Ρ„Π°ΠΉΠ»Π° возвращаСтся Base64-кодированная строка Π² ΠΏΠΎΠ»Π΅ content.
Для Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΎΡ€ΠΈΠΈ β€” массив ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ² с ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠ΅ΠΉ ΠΎ Π²Π»ΠΎΠΆΠ΅Π½Π½Ρ‹Ρ… элСмСнтах.

ΠŸΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹ URL

ΠŸΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠžΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹ΠΉΠžΠΏΠΈΡΠ°Π½ΠΈΠ΅
ownerΠ”Π°Π’Π»Π°Π΄Π΅Π»Π΅Ρ† рСпозитория (ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒ ΠΈΠ»ΠΈ организация)
repoДаНазваниС рСпозитория
pathΠ”Π°ΠŸΡƒΡ‚ΡŒ ΠΊ Ρ„Π°ΠΉΠ»Ρƒ ΠΈΠ»ΠΈ Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΎΡ€ΠΈΠΈ (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, src/, README.md)

ΠŸΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹ запроса (query)

ΠŸΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π’ΠΈΠΏΠžΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹ΠΉΠžΠΏΠΈΡΠ°Π½ΠΈΠ΅ΠŸΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ
refstringΠΠ΅Ρ‚Π˜ΠΌΡ ΠΊΠΎΠΌΠΌΠΈΡ‚Π°, Π²Π΅Ρ‚ΠΊΠΈ ΠΈΠ»ΠΈ Ρ‚Π΅Π³Π°. Если Π½Π΅ ΡƒΠΊΠ°Π·Π°Π½ β€” ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ Π²Π΅Ρ‚ΠΊΠ° ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ (default_branch)β€”
scopestringΠΠ΅Ρ‚Π£Ρ€ΠΎΠ²Π΅Π½ΡŒ Π΄Π΅Ρ‚Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ ΠΎ ΠΊΠΎΠΌΠΌΠΈΡ‚Π΅: full β€” полная, fast β€” Ρ‚ΠΎΠ»ΡŒΠΊΠΎ SHA ΠΈ Π΄Π°Ρ‚Π°fast

Π’Π΅Π»ΠΎ запроса

Π”Π°Π½Π½Ρ‹ΠΉ ΠΌΠ΅Ρ‚ΠΎΠ΄ Π½Π΅ Ρ‚Ρ€Π΅Π±ΡƒΠ΅Ρ‚ Ρ‚Π΅Π»Π° запроса.

ΠŸΡ€ΠΈΠΌΠ΅Ρ€ запроса

ΠŸΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ содСрТимоС Ρ„Π°ΠΉΠ»Π°

curl -X GET "https://api.gitverse.ru/repos/alice/my-project/contents/README.md" \
  -H "Authorization: Bearer YOUR_TOKEN" \
  -H "Accept: application/vnd.gitverse.object+json;version=1"

ΠŸΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ содСрТимоС Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΎΡ€ΠΈΠΈ Π² ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠΉ Π²Π΅Ρ‚ΠΊΠ΅

curl -X GET "https://api.gitverse.ru/repos/alice/my-project/contents/src?ref=dev&scope=full" \
  -H "Authorization: Bearer YOUR_TOKEN" \
  -H "Accept: application/vnd.gitverse.object+json;version=1"

ΠžΡ‚Π²Π΅Ρ‚

Для Ρ„Π°ΠΉΠ»Π° (200 OK)

{
  "type": "file",
  "encoding": "base64",
  "size": 123,
  "name": "README.md",
  "path": "README.md",
  "content": "IyBN... (Base64)",
  "sha": "a1b2c3d4...",
  "url": "https://api.gitverse.ru/repos/alice/my-project/contents/README.md",
  "html_url": "https://gitverse.ru/alice/my-project/blob/main/README.md",
  "git_url": "https://api.gitverse.ru/repos/alice/my-project/git/blobs/a1b2c3d4...",
  "download_url": "https://gitverse.ru/alice/my-project/raw/main/README.md",
  "language": "Markdown",
  "_links": {
    "self": "https://api.gitverse.ru/repos/alice/my-project/contents/README.md",
    "git": "https://api.gitverse.ru/repos/alice/my-project/git/blobs/a1b2c3d4...",
    "html": "https://gitverse.ru/alice/my-project/blob/main/README.md"
  }
}

Для Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΎΡ€ΠΈΠΈ (200 OK)

[
  {
    "type": "file",
    "name": "index.js",
    "path": "src/index.js",
    "sha": "f1e2d3c4...",
    "size": 456,
    "url": "https://api.gitverse.ru/repos/alice/my-project/contents/src/index.js",
    "html_url": "https://gitverse.ru/alice/my-project/blob/main/src/index.js",
    "git_url": "https://api.gitverse.ru/repos/alice/my-project/git/blobs/f1e2d3c4...",
    "download_url": "https://gitverse.ru/alice/my-project/raw/main/src/index.js",
    "_links": {
      "self": "https://api.gitverse.ru/repos/alice/my-project/contents/src/index.js",
      "git": "https://api.gitverse.ru/repos/alice/my-project/git/blobs/f1e2d3c4...",
      "html": "https://gitverse.ru/alice/my-project/blob/main/src/index.js"
    }
  },
  {
    "type": "dir",
    "name": "utils",
    "path": "src/utils",
    "sha": "9a8b7c6d...",
    "size": 0,
    "url": "https://api.gitverse.ru/repos/alice/my-project/contents/src/utils",
    "html_url": "https://gitverse.ru/alice/my-project/tree/main/src/utils",
    "git_url": "https://api.gitverse.ru/repos/alice/my-project/git/trees/9a8b7c6d...",
    "download_url": null,
    "_links": {
      "self": "https://api.gitverse.ru/repos/alice/my-project/contents/src/utils",
      "git": "https://api.gitverse.ru/repos/alice/my-project/git/trees/9a8b7c6d...",
      "html": "https://gitverse.ru/alice/my-project/tree/main/src/utils"
    }
  }
]

Π€ΠΎΡ€ΠΌΠ°Ρ‚ ΠΎΡ‚Π²Π΅Ρ‚Π°

application/vnd.gitverse.object+json;version=1

Поля ΠΎΡ‚Π²Π΅Ρ‚Π° (Ρ„Π°ΠΉΠ»)

ПолСВипОписаниС
typestringΠ’ΠΈΠΏ: "file", "dir", "symlink" ΠΈΠ»ΠΈ "submodule"
encodingstringΠšΠΎΠ΄ΠΈΡ€ΠΎΠ²ΠΊΠ° содСрТимого (base64 для Ρ„Π°ΠΉΠ»ΠΎΠ²)
sizeintegerΠ Π°Π·ΠΌΠ΅Ρ€ Π² Π±Π°ΠΉΡ‚Π°Ρ… (для Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΎΡ€ΠΈΠΉ β€” 0)
namestringИмя Ρ„Π°ΠΉΠ»Π° ΠΈΠ»ΠΈ ΠΏΠ°ΠΏΠΊΠΈ
pathstringΠŸΠΎΠ»Π½Ρ‹ΠΉ ΠΏΡƒΡ‚ΡŒ ΠΎΡ‚ корня рСпозитория
contentstring ΠΈΠ»ΠΈ nullΠ‘ΠΎΠ΄Π΅Ρ€ΠΆΠΈΠΌΠΎΠ΅ Ρ„Π°ΠΉΠ»Π° Π² Base64 (Ρ‚ΠΎΠ»ΡŒΠΊΠΎ для type: "file")
shastringSHA-Ρ…Π΅Ρˆ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° Git
urlstringAPI-ссылка Π½Π° этот ΠΎΠ±ΡŠΠ΅ΠΊΡ‚
html_urlstringБсылка Π½Π° Π²Π΅Π±-интСрфСйс
git_urlstringБсылка Π½Π° Git-ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ (blob/tree)
download_urlstring ΠΈΠ»ΠΈ nullΠŸΡ€ΡΠΌΠ°Ρ ссылка для скачивания (null для Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΎΡ€ΠΈΠΉ)
languagestring ΠΈΠ»ΠΈ nullΠ―Π·Ρ‹ΠΊ программирования (Ссли ΠΏΡ€ΠΈΠΌΠ΅Π½ΠΈΠΌΠΎ)
_linksobjectΠžΠ±ΡŠΠ΅ΠΊΡ‚ со ссылками: self, git, html

ΠšΠΎΠ΄Ρ‹ ΠΎΡ‚Π²Π΅Ρ‚Π°

ΠšΠΎΠ΄Π‘Ρ‚Π°Ρ‚ΡƒΡΠžΠΏΠΈΡΠ°Π½ΠΈΠ΅
200OKУспСшно ΠΏΠΎΠ»ΡƒΡ‡Π΅Π½ΠΎ содСрТимоС Ρ„Π°ΠΉΠ»Π° ΠΈΠ»ΠΈ Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΎΡ€ΠΈΠΈ
206Partial ContentЧастичный ΠΎΡ‚Π²Π΅Ρ‚ (ΠΏΡ€ΠΈ scope=fast)
400Bad RequestНСкоррСктныС ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹ запроса
401UnauthorizedНС ΠΏΠ΅Ρ€Π΅Π΄Π°Π½ ΠΈΠ»ΠΈ Π½Π΅Π²Π°Π»ΠΈΠ΄Π΅Π½ Ρ‚ΠΎΠΊΠ΅Π½ Π°Π²Ρ‚ΠΎΡ€ΠΈΠ·Π°Ρ†ΠΈΠΈ
403ForbiddenНСт доступа ΠΊ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΡŽ ΠΈΠ»ΠΈ ΠΏΡƒΡ‚ΠΈ
500Internal Server ErrorВнутрСнняя ошибка сСрвСра

Π’Ρ‹ нашли Ρ‡Ρ‚ΠΎ искали?