Как создать пул-запрос через API Bitbucket? - PullRequest
0 голосов
/ 22 мая 2019

TL; DR : Где я могу найти документацию о том, что передать в запрос POST для создания запроса на извлечение? (Что положить в JSON)


Используя скрипт Groovy, я пытаюсь автоматизировать некоторые задачи, которые включают коммит / push ветки tmp в нескольких проектах. Я хочу автоматически создать pull-запрос между веткой tmp и веткой prod всех этих проектов в конце моего скрипта. Для этого я попытался использовать API REST BitBucket.

Я нашел эту документацию , которая дала мне следующую конечную точку для использования с запросом POST: /rest/api/1.0/projects/{projectKey}/repos/{repositorySlug}/pull-requests. Для этой цели требуется следующий JSON:

{
    "title": "Talking Nerdy",
    "description": "It’s a kludge, but put the tuple from the database in the cache.",
    "state": "OPEN",
    "open": true,
    "closed": false,
    "fromRef": {
        "id": "refs/heads/feature-ABC-123",
        "repository": {
            "slug": "my-repo",
            "name": null,
            "project": {
                "key": "PRJ"
            }
        }
    },
    "toRef": {
        "id": "refs/heads/master",
        "repository": {
            "slug": "my-repo",
            "name": null,
            "project": {
                "key": "PRJ"
            }
        }
    },
    "locked": false,
    "reviewers": [
        {
            "user": {
                "name": "charlie"
            }
        }
    ]
}

Однако я не могу найти никакой информации о том, как построить этот JSON ... Я могу догадаться, что такое title и description, но для чего state, open, closed и т. Д.? Как мне построить правильный fromRef.id? Почему имя репо установлено на null? какие атрибуты являются оптинальными? Если я введу свой логин BitBucket в reviewers[0].user.name, он будет работать? и т.д.

Все ответы, которые я нашел по этому вопросу, являются лишь копией / прошлым того же JSON, и все, кажется, понимают, как это работает без каких-либо объяснений ... Я что-то упустил?

В любом случае, вот мой реальный вопрос: где я могу найти документацию по этому объекту JSON запроса на извлечение?

Спасибо.


РЕДАКТИРОВАТЬ: Это не дубликат этого сообщения , так как это не та же проблема. У меня нет проблем с разрешением / аутентификацией, и мне даже удалось заставить запрос работать, возясь с ним. Я только прошу документацию, потому что я хочу понять, что я делаю, чтобы лучше настроить запрос. Хотя есть некоторые (очень легкие) объяснения в ответах на другой пост , на самом деле он вообще не отвечает на мой вопрос (см. Комментарии).

...