ΠŸΡƒΠ±Π»ΠΈΡ‡Π½Ρ‹ΠΉ APIЗапросы Π½Π° слияниС6. PATCH /repos/{owner}/{repo}/pulls/{pull_number} β€” pΠ΅Π΄Π°ΠΊΡ‚ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ запроса Π½Π° слияниС

6. PATCH /repos/{owner}/{repo}/pulls/{pull_number} β€” pΠ΅Π΄Π°ΠΊΡ‚ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ запроса Π½Π° слияниС

ОписаниС

ΠžΠ±Π½ΠΎΠ²Π»ΡΠ΅Ρ‚ ΠΌΠ΅Ρ‚Π°Π΄Π°Π½Π½Ρ‹Π΅ ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‰Π΅Π³ΠΎ запроса Π½Π° слияниС: Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΠΊ, описаниС, Ρ†Π΅Π»Π΅Π²ΡƒΡŽ Π²Π΅Ρ‚ΠΊΡƒ ΠΈ Π΄Ρ€ΡƒΠ³ΠΈΠ΅ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹. НС влияСт Π½Π° содСрТимоС ΠΊΠΎΠΌΠΌΠΈΡ‚ΠΎΠ² ΠΈΠ»ΠΈ Ρ„Π°ΠΉΠ»ΠΎΠ² β€” Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π½Π° Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚Ρ‹ самого PR.

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

ΠŸΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π’ΠΈΠΏΠžΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹ΠΉΠžΠΏΠΈΡΠ°Π½ΠΈΠ΅
ownerstringΠ”Π°Π’Π»Π°Π΄Π΅Π»Π΅Ρ† рСпозитория (ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒ ΠΈΠ»ΠΈ организация)
repostringДаНазваниС рСпозитория
pull_numberintegerДаНомСр pull request Π² Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΈ

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

Π”Π°Π½Π½Ρ‹ΠΉ ΠΌΠ΅Ρ‚ΠΎΠ΄ Π½Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹ запроса.

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

Π€ΠΎΡ€ΠΌΠ°Ρ‚: application/json
Поля ΡΠ²Π»ΡΡŽΡ‚ΡΡ ΠΎΠΏΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½Ρ‹ΠΌΠΈ β€” ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠ΅Ρ€Π΅Π΄Π°Π²Π°Ρ‚ΡŒ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Ρ‚Π΅, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π½ΡƒΠΆΠ½ΠΎ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡ‚ΡŒ.

{
  "title": "Новый Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΠΊ",
  "body": "ОбновлСнноС описаниС PR",
  "state": "open" | "closed",
  "base": "main",
  "maintainer_can_modify": true
}
ΠŸΠΎΠ»Π΅Π’ΠΈΠΏΠžΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹ΠΉΠ’ΠΎΠ·ΠΌΠΎΠΆΠ½Ρ‹Π΅ значСния / ОписаниС
titlestringНСтНовый Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΠΊ PR
bodystringНСтНовоС описаниС (Ρ‚Π΅Π»ΠΎ) PR
statestringНСтopen β€” оставляСт PR ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚Ρ‹ΠΌ, closed β€” Π·Π°ΠΊΡ€Ρ‹Π²Π°Π΅Ρ‚ Π΅Π³ΠΎ
basestringΠΠ΅Ρ‚Π˜ΠΌΡ Π½ΠΎΠ²ΠΎΠΉ Ρ†Π΅Π»Π΅Π²ΠΎΠΉ Π²Π΅Ρ‚ΠΊΠΈ (Π² ΠΊΠΎΡ‚ΠΎΡ€ΡƒΡŽ сливаСтся PR)
maintainer_can_modifybooleanΠΠ΅Ρ‚Π Π°Π·Ρ€Π΅ΡˆΠΈΡ‚ΡŒ ΠΌΠ΅ΠΉΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Π°ΠΌ рСпозитория ΠΈΠ·ΠΌΠ΅Π½ΡΡ‚ΡŒ Π²Π΅Ρ‚ΠΊΡƒ Π°Π²Ρ‚ΠΎΡ€Π°

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

curl -X PATCH "https://api.gitverse.ru/repos/gitverse/example-repo/pulls/42" \
  -H "Authorization: Bearer YOUR_TOKEN" \
  -H "Accept: application/vnd.gitverse.object+json;version=1" \
  -H "Content-Type: application/json" \
  -d '{
        "title": "feat(auth): add OAuth2 support",
        "body": "Implements OAuth2 login flow with external providers.",
        "base": "main"
      }'

ΠžΡ‚Π²Π΅Ρ‚ (200 OK)

ΠŸΡ€ΠΈΠΌΠ΅Ρ€ JSON-ΠΎΡ‚Π²Π΅Ρ‚Π°:

{
  "id": 12345,
  "number": 42,
  "state": "open",
  "title": "feat(auth): add OAuth2 support",
  "body": "Implements OAuth2 login flow with external providers.",
  "created_at": "2025-10-10T08:30:00Z",
  "updated_at": "2025-10-23T15:45:00Z",
  "closed_at": null,
  "merged_at": null,
  "merged": false,
  "mergeable": true,
  "is_draft": false,
  "locked": false,
  "maintainer_can_modify": true,
  "merge_commit_sha": "a1b2c3d4e5f6789012345678901234567890abcd",
  "html_url": "https://gitverse.ru/gitverse/example-repo/pull/42",
  "diff_url": "https://gitverse.ru/gitverse/example-repo/pull/42.diff",
  "patch_url": "https://gitverse.ru/gitverse/example-repo/pull/42.patch",
  "url": "https://api.gitverse.ru/repos/gitverse/example-repo/pulls/42",
  "comments": 5,
  "user": {
    "login": "alice",
    "id": 789,
    "avatar_url": "https://gitverse.ru/avatars/789.png",
    "html_url": "https://gitverse.ru/alice"
  },
  "assignees": [],
  "labels": [],
  "milestone": null,
  "requested_reviewers": [],
  "requested_teams": [],
  "base": {
    "label": "gitverse:main",
    "ref": "main",
    "sha": "f00dcafe1234567890abcdef1234567890abcdef",
    "repo": {
      "id": 1111,
      "name": "example-repo",
      "full_name": "gitverse/example-repo",
      "private": false,
      "owner": {
        "login": "gitverse",
        "id": 100,
        "avatar_url": "https://gitverse.ru/avatars/100.png",
        "html_url": "https://gitverse.ru/gitverse"
      },
      "html_url": "https://gitverse.ru/gitverse/example-repo",
      "description": "An example repository",
      "fork": false,
      "url": "https://api.gitverse.ru/repos/gitverse/example-repo",
      "ssh_url": "git@gitverse.ru:gitverse/example-repo.git",
      "clone_url": "https://gitverse.ru/gitverse/example-repo.git",
      "default_branch": "main"
    },
    "repo_id": 1111
  },
  "head": {
    "label": "alice:feature/auth",
    "ref": "feature/auth",
    "sha": "a1b2c3d4e5f6789012345678901234567890abcd",
    "repo": {
      "id": 1111,
      "name": "example-repo",
      "full_name": "gitverse/example-repo",
      "private": false,
      "owner": {
        "login": "gitverse",
        "id": 100,
        "avatar_url": "https://gitverse.ru/avatars/100.png",
        "html_url": "https://gitverse.ru/gitverse"
      },
      "html_url": "https://gitverse.ru/gitverse/example-repo",
      "description": "An example repository",
      "fork": false,
      "url": "https://api.gitverse.ru/repos/gitverse/example-repo",
      "ssh_url": "git@gitverse.ru:gitverse/example-repo.git",
      "clone_url": "https://gitverse.ru/gitverse/example-repo.git",
      "default_branch": "main"
    },
    "repo_id": 1111
  }
}

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

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

Поля ΠΎΡ‚Π²Π΅Ρ‚Π°

ПолСВипОписаниС
idintegerΠ£Π½ΠΈΠΊΠ°Π»ΡŒΠ½Ρ‹ΠΉ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ pull request
numberintegerНомСр PR Π² Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΈ
statestringБостояниС: open, closed
titlestringΠ—Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΠΊ PR
bodystringОписаниС (Ρ‚Π΅Π»ΠΎ) PR
created_atstringΠ”Π°Ρ‚Π° создания
updated_atstringΠ”Π°Ρ‚Π° послСднСго обновлСния
closed_atstringnull
merged_atstringnull
mergedbooleanΠ‘Ρ‹Π» Π»ΠΈ PR слит
mergeablebooleanМоТно Π»ΠΈ ΡΠ»ΠΈΡ‚ΡŒ Π±Π΅Π· ΠΊΠΎΠ½Ρ„Π»ΠΈΠΊΡ‚ΠΎΠ²
is_draftbooleanЯвляСтся Π»ΠΈ Ρ‡Π΅Ρ€Π½ΠΎΠ²ΠΈΠΊΠΎΠΌ
lockedbooleanΠ—Π°Π±Π»ΠΎΠΊΠΈΡ€ΠΎΠ²Π°Π½ Π»ΠΈ ΠΎΡ‚ ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠ΅Π²
maintainer_can_modifybooleanΠœΠΎΠ³ΡƒΡ‚ Π»ΠΈ ΠΌΠ΅ΠΉΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Ρ‹ ΠΈΠ·ΠΌΠ΅Π½ΡΡ‚ΡŒ Π²Π΅Ρ‚ΠΊΡƒ Π°Π²Ρ‚ΠΎΡ€Π°
merge_commit_shastringnull
html_urlstringБсылка Π½Π° PR Π² Π²Π΅Π±-интСрфСйсС
diff_url / patch_urlstringБсылки Π½Π° diff ΠΈ patch
urlstringAPI-ссылка Π½Π° PR
commentsintegerΠšΠΎΠ»ΠΈΡ‡Π΅ΡΡ‚Π²ΠΎ ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠ΅Π²
userobjectАвтор PR
assigneesarrayНазначСнныС участники
labelsarrayΠœΠ΅Ρ‚ΠΊΠΈ
milestoneobjectnull
requested_reviewersarrayΠ—Π°ΠΏΡ€ΠΎΡˆΠ΅Π½Π½Ρ‹Π΅ Ρ€Π΅Π²ΡŒΡŽΠ΅Ρ€Ρ‹
requested_teamsarrayΠ—Π°ΠΏΡ€ΠΎΡˆΠ΅Π½Π½Ρ‹Π΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹
baseobjectЦСлСвая Π²Π΅Ρ‚ΠΊΠ° ΠΈ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ
headobjectΠ˜ΡΡ…ΠΎΠ΄Π½Π°Ρ Π²Π΅Ρ‚ΠΊΠ° ΠΈ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ

ПодполС user, assignees[i], merged_by

ПолСВипОписаниС
loginstringΠ›ΠΎΠ³ΠΈΠ½ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ
idintegerΠ£Π½ΠΈΠΊΠ°Π»ΡŒΠ½Ρ‹ΠΉ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€
avatar_urlstringБсылка Π½Π° Π°Π²Π°Ρ‚Π°Ρ€
html_urlstringБсылка Π½Π° ΠΏΡ€ΠΎΡ„ΠΈΠ»ΡŒ

ПодполС labels[i]

ПолСВипОписаниС
idintegerΠ˜Π΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ ΠΌΠ΅Ρ‚ΠΊΠΈ
namestringНазваниС
colorstringЦвСт (в HEX бСз #)
descriptionstringОписаниС
exclusivebooleanЯвляСтся Π»ΠΈ ΠΈΡΠΊΠ»ΡŽΡ‡Π°ΡŽΡ‰Π΅ΠΉ
is_archivedbooleanАрхивирована Π»ΠΈ
urlstringAPI-ссылка Π½Π° ΠΌΠ΅Ρ‚ΠΊΡƒ

ПодполС milestone

ПолСВипОписаниС
idintegerΠ˜Π΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ Π²Π΅Ρ…ΠΈ
titlestringНазваниС
descriptionstringОписаниС
statestringБостояниС (open / closed)
due_onstringΠ‘Ρ€ΠΎΠΊ выполнСния
created_atstringΠ”Π°Ρ‚Π° создания
updated_atstringΠ”Π°Ρ‚Π° обновлСния
closed_atstringnull
open_issuesintegerΠžΡ‚ΠΊΡ€Ρ‹Ρ‚Ρ‹Π΅ Π·Π°Π΄Π°Ρ‡ΠΈ
closed_issuesintegerΠ—Π°ΠΊΡ€Ρ‹Ρ‚Ρ‹Π΅ Π·Π°Π΄Π°Ρ‡ΠΈ

Подполя base и head

ПолСВипОписаниС
labelstringΠ’ Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Π΅ owner:ref
refstringИмя Π²Π΅Ρ‚ΠΊΠΈ
shastringSHA послСднСго ΠΊΠΎΠΌΠΌΠΈΡ‚Π° Π² Π²Π΅Ρ‚ΠΊΠ΅
repoobjectΠ˜Π½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡ ΠΎ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΈ
repo_idintegerΠ˜Π΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ рСпозитория

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

ΠšΠΎΠ΄Π‘Ρ‚Π°Ρ‚ΡƒΡΠžΠΏΠΈΡΠ°Π½ΠΈΠ΅
200OKЗапрос Π½Π° слияниС ΡƒΡΠΏΠ΅ΡˆΠ½ΠΎ ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½
400Bad RequestНСкоррСктныС Π΄Π°Π½Π½Ρ‹Π΅ Π² Ρ‚Π΅Π»Π΅ запроса
401UnauthorizedΠ’ΠΎΠΊΠ΅Π½ отсутствуСт ΠΈΠ»ΠΈ нСдСйствитСлСн
403ForbiddenНСдостаточно ΠΏΡ€Π°Π² для рСдактирования PR
404Not FoundΠ Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ ΠΈΠ»ΠΈ запрос Π½Π° слияниС Π½Π΅ Π½Π°ΠΉΠ΄Π΅Π½
500Internal Server ErrorВнутрСнняя ошибка сСрвСра

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