GitFlic API


Проекты


Описание структуры JSON-объекта, описывающего проект
Поле Тип Описание
id string Уникальный айди проекта
title string Название проекта
description string Описание проекта
alias string Алиас проекта
ownerAlias string Алиас владельца проекта
httpTransportUrl string Ссылка на клонирование проекта по HTTPS
sshTransportUrl string Ссылка на клонирование проекта по SSH
selectorTitle string Селектор названия проекта
private boolean Приватный проект(true) или публичный(false)
selectorOwnerAlias string Селектор алиаса владельца проекта
selectorId string Селектор айди проекта
selectorAlias string Селектор алиаса проекта
selectorColor string Селектор цвета
selectorHash string Селектор хэша

GET /project

Запрос возвращает массив проектов, есть возможность настройки количества отображаемых объектов на странице

Запрос Описание
GET /project Список публичных проектов

Responses

STATUS 200 пример JSON:

Пример ответа
    
{
    "_embedded": {
        "projectList": [
            {
                "id": "ba58e67b-4710-436f-a880-6c4cb3f6070d",
                "title": "project1",
                "description": "",
                "alias": "project1",
                "ownerAlias": "pegasus-org",
                "httpTransportUrl": "https://gitflic.ru/project/pegasus-org/project1.git",
                "sshTransportUrl": "git@gitflic.ru:pegasus-org/project1.git",
                "selectorTitle": "project1",
                "private": false,
                "selectorOwnerAlias": "pegasus-org",
                "selectorId": "ba58e67b-4710-436f-a880-6c4cb3f6070d",
                "selectorAlias": "project1",
                "selectorColor": null,
                "selectorHash": null
            },
            {
                "id": "7884bc81-c003-4327-9d6f-e46eca12fd58",
                "title": "project2",
                "description": null,
                "alias": "project2",
                "ownerAlias": "pegasus",
                "httpTransportUrl": "https://gitflic.ru/project/pegasus/project2.git",
                "sshTransportUrl": "git@gitflic.ru:pegasus/project2.git",
                "selectorTitle": "project2",
                "private": false,
                "selectorOwnerAlias": "pegasus",
                "selectorId": "7884bc81-c003-4327-9d6f-e46eca12fd58",
                "selectorAlias": "project2",
                "selectorColor": null,
                "selectorHash": null
            },
            {
                "id": "879090b7-ec5a-4815-9d01-2cc223673cb9",
                "title": "Project3",
                "description": "project",
                "alias": "project3",
                "ownerAlias": "user1",
                "httpTransportUrl": "https://gitflic.ru/project/user1/project3.git",
                "sshTransportUrl": "git@gitflic.ru:user1/project3.git",
                "selectorTitle": "Project3",
                "private": false,
                "selectorOwnerAlias": "user1",
                "selectorId": "879090b7-ec5a-4815-9d01-2cc223673cb9",
                "selectorAlias": "project3",
                "selectorColor": null,
                "selectorHash": null
            },
            {
                "id": "ab4192a6-cf77-47f4-8b3c-932f58b97a6c",
                "title": "jgit",
                "description": "",
                "alias": "jgit",
                "ownerAlias": "user1",
                "httpTransportUrl": "https://gitflic.ru/project/user1/jgit.git",
                "sshTransportUrl": "git@gitflic.ru:user1/jgit.git",
                "selectorTitle": "jgit",
                "private": false,
                "selectorOwnerAlias": "user1",
                "selectorId": "ab4192a6-cf77-47f4-8b3c-932f58b97a6c",
                "selectorAlias": "jgit",
                "selectorColor": null,
                "selectorHash": null
            }
        ]
    },
    "page": {
        "size": 10,
        "totalElements": 4,
        "totalPages": 1,
        "number": 0
    }
}
    
  


STATUS 403 - Нет прав для доступа.

STATUS 404 - Данные по запросу не найдены.


GET /project/my

Запрос возвращает массив проектов, есть возможность настройки количества отображаемых объектов на странице

Запрос Описание
GET /project/my Список личных проектов

Responses

STATUS 200 Пример JSON:

Пример ответа
    
{
    "_embedded": {
        "projectList": [
           {
                "id": "879090b7-ec5a-4815-9d01-2cc223673cb9",
                "title": "Project3",
                "description": "project",
                "alias": "project3",
                "ownerAlias": "user1",
                "httpTransportUrl": "https://gitflic.ru/project/user1/project3.git",
                "sshTransportUrl": "git@gitflic.ru:user1/project3.git",
                "selectorTitle": "Project3",
                "private": false,
                "selectorOwnerAlias": "user1",
                "selectorId": "879090b7-ec5a-4815-9d01-2cc223673cb9",
                "selectorAlias": "project3",
                "selectorColor": null,
                "selectorHash": null
            },
            {
                "id": "ab4192a6-cf77-47f4-8b3c-932f58b97a6c",
                "title": "jgit",
                "description": "",
                "alias": "jgit",
                "ownerAlias": "user1",
                "httpTransportUrl": "https://gitflic.ru/project/user1/jgit.git",
                "sshTransportUrl": "git@gitflic.ru:user1/jgit.git",
                "selectorTitle": "jgit",
                "private": false,
                "selectorOwnerAlias": "user1",
                "selectorId": "ab4192a6-cf77-47f4-8b3c-932f58b97a6c",
                "selectorAlias": "jgit",
                "selectorColor": null,
                "selectorHash": null
            }
        ]
    },
    "page": {
        "size": 10,
        "totalElements": 2,
        "totalPages": 1,
        "number": 0
    }
}
    
  


STATUS 403 - Нет прав для доступа.

STATUS 404 - Данные по запросу не найдены.


GET /project/shared

Запрос возвращает массив проектов, есть возможность настройки количества отображаемых объектов на странице

Запрос Описание
GET /project/shared Список проектов с вашим участием

Responses

Пример ответа
    
{
    "_embedded": {
        "projectList": [
            {
                "id": "457b92e6-237e-4128-b250-df6c6902a0ff",
                "title": "Comicx Frontend",
                "description": "Комиксный репозиторий",
                "alias": "comicx-frontend",
                "ownerAlias": "user1",
               "httpTransportUrl": "https://gitflic.ru/project/user1/comicx-frontend.git",
                "sshTransportUrl": "git@gitflic.ru:user1/comicx-frontend.git",
                "selectorTitle": "Comicx Frontend",
                "private": false,
                "selectorOwnerAlias": "user1",
                "selectorId": "457b92e6-237e-4128-b250-df6c6902a0ff",
                "selectorAlias": "comicx-frontend",
                "selectorColor": null,
                "selectorHash": null
            }
        ]
    },
    "page": {
        "size": 10,
        "totalElements": 1,
        "totalPages": 1,
        "number": 0
    }
}
    
  



GET /project/{userAlias}/{projectAlias}

Запрос возвращает проект

Запрос Описание
GET /project/{userAlias}/{projectAlias} Получить информацию о проекте по алиасу пользователя
Переменная пути запроса Тип Описание
userAlias String alias пользователя
projectAlias String alias проекта

Responses

STATUS 200 - пример JSON:

{
    "id": "08918853-e008-4fec-b0af-12f5deee47af",
    "title": "Pegasus-parent",
    "description": "тест",
    "alias": "pegasus-parent",
    "ownerAlias": "user1",
    "httpTransportUrl": "https://gitflic.ru/project/user1/pegasus-parent.git",
    "sshTransportUrl": "git@gitflic.ru:user1/pegasus-parent.git",
    "selectorTitle": "Pegasus-parent",
    "private": true,
    "selectorOwnerAlias": "user1",
    "selectorId": "08918853-e008-4fec-b0af-12f5deee47af",
    "selectorAlias": "pegasus-parent",
    "selectorColor": null,
    "selectorHash": null
}


STATUS 403 - Нет прав для доступа.

STATUS 404 - Данные по запросу не найдены.


В данной статье

Документация