GitFlic API


Проекты


Описание структуры JSON-объекта, описывающего проект
Поле Тип Описание
id String Уникальный ID проекта
title String Название проекта
description String Описание проекта
alias String Псевдоним проекта
ownerAlias String Псевдоним владельца проекта
defaultBranch String Дефолтная ветка проекта
workBranch String Рабочая ветка проекта
siteUrl String Сайт проекта
owner Object Владелец проекта, описание структуры
language String Язык проекта
forEducation Boolean Образовательный проект(true) или обычный(false)
forkedFromId String ID проекта от которого был сделан форк
pullMirrorUrl String URL зеркала
allowedMemory String Допустимая память под проект
forkUrl String URL проекта от которого был сделан форк
httpTransportUrl String Ссылка на клонирование проекта по HTTPS
sshTransportUrl String Ссылка на клонирование проекта по SSH
private Boolean Приватный проект(true) или публичный(false)
mirror Boolean Зеркало (true) или обычный проект(false)
Описание структуры JSON-объекта, описывающего владельца проекта
Поле Тип Описание
alias String Псевдоним владельца
type String Тип владельца проекта

GET /project

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

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

Responses

STATUS 200 пример JSON:

Пример ответа
    
{
    "_embedded": {
        "projectModelList": [
           {
                "id": "06a973fb-8007-46c5-b2f0-d72a21b16087",
                "title": "bugs-bunny-fork",
                "description": "Forked repository example",
                "alias": "bugs-bunny-fork",
                "defaultBranch": "master",
                "workBranch": "master",
                "siteUrl": null,
                "owner": {
                    "alias": "team1",
                    "type": "TEAM"
                },
                "language": "Scala",
                "forEducation": false,
                "forkedFromId": "87c79f93-821f-4903-898f-60d08fbbca7b",
                "pullMirrorUrl": null,
                "allowedMemory": "4GB",
                "forkUrl": "https://gitflic.ru/project/team1/bugs-bunny",
                "httpTransportUrl": "https://gitflic.ru/project/team1/bugs-bunny-fork.git",
                "sshTransportUrl": "git@gitflic.ru:team1/bugs-bunny-fork.git",
                "private": false,
                "mirror": false
            },
            {
                "id": "0ed38c25-96cf-476a-a08f-462c972efcc5",
                "title": "jgit-cookbook",
                "description": "",
                "alias": "jgit-cookbook",
                "defaultBranch": "master",
                "workBranch": "master",
                "siteUrl": null,
                "owner": {
                    "alias": "user1",
                    "type": "USER"
                },
                "language": "Markdown",
                "forEducation": false,
                "forkedFromId": null,
                "pullMirrorUrl": "https://github.com/centic9/jgit-cookbook",
                "allowedMemory": "4GB",
                "forkUrl": null,
                "httpTransportUrl": "https://gitflic.ru/project/user1/jgit-cookbook.git",
                "sshTransportUrl": "git@gitflic.ru:user1/jgit-cookbook.git",
                "private": false,
                "mirror": true
            },
            {
                "id": "b40d6604-8294-4866-87b9-e85aea777676",
                "title": "jgit",
                "description": "",
                "alias": "jgit-2",
                "defaultBranch": "master",
                "workBranch": "master",
                "siteUrl": null,
                "owner": {
                    "alias": "user1",
                    "type": "USER"
                },
                "language": "Java",
                "forEducation": false,
                "forkedFromId": null,
                "pullMirrorUrl": null,
                "allowedMemory": "4GB",
                "forkUrl": null,
                "httpTransportUrl": "https://gitflic.ru/project/user1/jgit-2.git",
                "sshTransportUrl": "git@gitflic.ru:user1/jgit-2.git",
                "private": false,
                "mirror": true
            },
            {
                "id": "e96dc53b-4c9b-4c6e-9339-f6c81b11265e",
                "title": "новый проект-4",
                "description": "",
                "alias": "novyj-proekt-4",
                "defaultBranch": "master",
                "workBranch": "master",
                "siteUrl": null,
                "owner": {
                    "alias": "user2",
                    "type": "USER"
                },
                "language": "C++",
                "forEducation": false,
                "forkedFromId": null,
                "pullMirrorUrl": null,
                "allowedMemory": "4GB",
                "forkUrl": null,
                "httpTransportUrl": "https://gitflic.ru/project/user2/novyj-proekt-4.git",
                "sshTransportUrl": "git@gitflic.ru:user2/novyj-proekt-4.git",
                "private": false,
                "mirror": false
            }
        ]
    },
    "page": {
        "size": 10,
        "totalElements": 4,
        "totalPages": 1,
        "number": 0
    }
}
    
  


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

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


GET /project/my

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

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

Responses

STATUS 200 Пример JSON:

Пример ответа
    
{
    "_embedded": {
        "projectModelList": [
            {
                "id": "0ed38c25-96cf-476a-a08f-462c972efcc5",
                "title": "jgit-cookbook",
                "description": "",
                "alias": "jgit-cookbook",
                "defaultBranch": "master",
                "workBranch": "master",
                "siteUrl": null,
                "owner": {
                    "alias": "user1",
                    "type": "USER"
                },
                "language": "Markdown",
                "forEducation": false,
                "forkedFromId": null,
                "pullMirrorUrl": "https://github.com/centic9/jgit-cookbook",
                "allowedMemory": "4GB",
                "forkUrl": null,
                "httpTransportUrl": "https://gitflic.ru/project/user1/jgit-cookbook.git",
                "sshTransportUrl": "git@gitflic.ru:user1/jgit-cookbook.git",
                "private": false,
                "mirror": true
            },
            {
                "id": "b40d6604-8294-4866-87b9-e85aea777676",
                "title": "jgit",
                "description": "",
                "alias": "jgit-2",
                "defaultBranch": "master",
                "workBranch": "master",
                "siteUrl": null,
                "owner": {
                    "alias": "user1",
                    "type": "USER"
                },
                "language": "Java",
                "forEducation": false,
                "forkedFromId": null,
                "pullMirrorUrl": null,
                "allowedMemory": "4GB",
                "forkUrl": null,
                "httpTransportUrl": "https://gitflic.ru/project/user1/jgit-2.git",
                "sshTransportUrl": "git@gitflic.ru:user1/jgit-2.git",
                "private": false,
                "mirror": true
            }
        ]
    },
    "page": {
        "size": 10,
        "totalElements": 2,
        "totalPages": 1,
        "number": 0
    }
}
    
  


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

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


GET /project/shared

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

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

Responses

Пример ответа
    
{
    "_embedded": {
        "projectList": [
            {
                "id": "6518c55d-5c91-4d13-903c-7582d119eda8",
                "title": "мой нов",
                "description": "",
                "alias": "moj-nov",
                "defaultBranch": "master",
                "workBranch": "master",
                "siteUrl": null,
                "owner": {
                    "alias": "user2",
                    "type": "USER"
                },
                "language": "Markdown",
                "forEducation": false,
                "forkedFromId": null,
                "pullMirrorUrl": null,
                "allowedMemory": "4GB",
                "forkUrl": null,
                "httpTransportUrl": "https://gitflic.ru/project/user2/moj-nov.git",
                "sshTransportUrl": "git@gitflic.ru:user2/moj-nov.git",
                "private": false,
                "mirror": false
            }
        ]
    },
    "page": {
        "size": 10,
        "totalElements": 1,
        "totalPages": 1,
        "number": 0
    }
}
    
  



GET /project/{userAlias}/{projectAlias}

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

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

Responses

STATUS 200 - пример JSON:

 {
                "id": "06a973fb-8007-46c5-b2f0-d72a21b16087",
                "title": "bugs-bunny-fork",
                "description": "Forked repository example",
                "alias": "bugs-bunny-fork",
                "defaultBranch": "master",
                "workBranch": "master",
                "siteUrl": null,
                "owner": {
                    "alias": "team1",
                    "type": "TEAM"
                },
                "language": "Scala",
                "forEducation": false,
                "forkedFromId": "87c79f93-821f-4903-898f-60d08fbbca7b",
                "pullMirrorUrl": null,
                "allowedMemory": "4GB",
                "forkUrl": "https://gitflic.ru/project/team1/bugs-bunny",
                "httpTransportUrl": "https://gitflic.ru/project/team1/bugs-bunny-fork.git",
                "sshTransportUrl": "git@gitflic.ru:team1/bugs-bunny-fork.git",
                "private": false,
                "mirror": false
 }
 


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

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


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

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