Перейти к содержанию

Компании


Описание структуры JSON-объекта, описывающего компанию

Поле Тип Описание
id String Уникальный ID компании
alias String Псевдоним компании
title String Название компании
description String Описание компании
url String Ссылка на сайт компании
contactPhone String Контактный телефон компании
contactEmail String Контактный email компании
ownerAlias String Псевдоним владельца компании
avatar String Ссылка на аватар компании
private Boolean Приватная компания (true) или публичная (false)
selectorTitle String Селектор названия компании
selectorId String Селектор ID
isDeleted Boolean Компания удалена true или нет false
selectorOwnerAlias String Селектор псевдонима владельца компании
hexColor String Код цвета
selectorAlias String Псевдоним селектора компании
selectorColor String Цвет селектора
selectorHash String Хэш селектора

Метод для получения списка компаний

GET /company

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

Responses

STATUS 200 - пример JSON:

Пример ответа
    
{
    "_embedded": {
        "companyList": [
            {
                "id": "7c7e495a-aaaa-aaaa-aaaa-68becefbde5f",
                "alias": "testovaya-kompaniya",
                "title": "тестовая компания",
                "description": "Пример описания",
                "url": "test1.com",
                "contactPhone": null,
                "contactEmail": "user@gitflic.ru",
                "ownerAlias": "user1",
                "avatar": "https://gitflic.ru/upload/img/6c482659-aaaa-aaaa-aaaa-d4086f2d8251.jpg",
                "private": false,
                "selectorTitle": "тестовая компания",
                "selectorId": "7c7e495a-aaaa-aaaa-aaaa-68becefbde5f",
                "selectorOwnerAlias": null,
                "hexColor": null,
                "selectorAlias": null,
                "selectorColor": null,
                "selectorHash": null,
            },
            {
                "id": "f931a10b-aaaa-aaaa-aaaa-16f4d4decda1",
                "alias": "publichnaya-kompaniya",
                "title": "публичная компания",
                "description": "Пример описания",
                "url": null,
                "contactPhone": "+79991234567",
                "contactEmail": "user@gitflic.ru",
                "ownerAlias": "user1",
                "avatar": "https://gitflic.ru/upload/img/4b0fab04-aaaa-aaaa-aaaa-ec70560fcae2.jpg",
                "private": false,
                "selectorTitle": "публичная компания",
                "selectorId": "f931a10b-aaaa-aaaa-aaaa-16f4d4decda1",
                "selectorOwnerAlias": null,
                "hexColor": null,
                "selectorAlias": null,
                "selectorColor": null,
                "selectorHash": null,
            }
        ]
    },
    "page": {
        "size": 10,
        "totalElements": 2,
        "totalPages": 1,
        "number": 0
    }
}
    
  

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

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


Метод получения компании активного пользователя

GET /company/my

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

Responses

STATUS 200 - пример JSON:

Пример ответа
    
{
    "_embedded": {
        "companyList": [
            {
                "id": "7c7e495a-aaaa-aaaa-aaaa-68becefbde5f",
                "alias": "testovaya-kompaniya",
                "title": "тестовая компания",
                "description": "Пример описания",
                "url": "test1.com",
                "contactPhone": null,
                "contactEmail": "user@gitflic.ru",
                "ownerAlias": "user1",
                "avatar": "https://gitflic.ru/upload/img/6c482659-aaaa-aaaa-aaaa-d4086f2d8251.jpg",
                "private": false,
                "selectorTitle": "тестовая компания",
                "selectorId": "7c7e495a-aaaa-aaaa-aaaa-68becefbde5f",
                "selectorOwnerAlias": null,
                "hexColor": null,
                "selectorAlias": null,
                "selectorColor": null,
                "selectorHash": null,
            },
            {
                "id": "f931a10b-aaaa-aaaa-aaaa-16f4d4decda1",
                "alias": "publichnaya-kompaniya",
                "title": "публичная компания",
                "description": "Пример описания",
                "url": null,
                "contactPhone": "+79991234567",
                "contactEmail": "user@gitflic.ru",
                "ownerAlias": "user1",
                "avatar": "https://gitflic.ru/upload/img/4b0fab04-aaaa-aaaa-aaaa-ec70560fcae2.jpg",
                "private": false,
                "selectorTitle": "публичная компания",
                "selectorId": "f931a10b-aaaa-aaaa-aaaa-16f4d4decda1",
                "selectorOwnerAlias": null,
                "hexColor": null,
                "selectorAlias": null,
                "selectorColor": null,
                "selectorHash": null,
            }
        ]
    },
    "page": {
        "size": 10,
        "totalElements": 2,
        "totalPages": 1,
        "number": 0
    }
}
    
  

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

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


Метод получения компании с участием пользователя

GET /company/shared {#shared}

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

Responses

STATUS 200 - пример JSON:

Пример ответа
    
{
    "_embedded": {
        "companyList": [
            {
                "id": "7c7e495a-aaaa-aaaa-aaaa-68becefbde5f",
                "alias": "testovaya-kompaniya",
                "title": "тестовая компания",
                "description": "Пример описания",
                "url": "test1.com",
                "contactPhone": null,
                "contactEmail": "user@gitflic.ru",
                "ownerAlias": "user1",
                "avatar": "https://gitflic.ru/upload/img/6c482659-aaaa-aaaa-aaaa-d4086f2d8251.jpg",
                "private": false,
                "selectorTitle": "тестовая компания",
                "selectorId": "7c7e495a-aaaa-aaaa-aaaa-68becefbde5f",
                "selectorOwnerAlias": null,
                "hexColor": null,
                "selectorAlias": null,
                "selectorColor": null,
                "selectorHash": null,
            },
            {
                "id": "f931a10b-aaaa-aaaa-aaaa-16f4d4decda1",
                "alias": "publichnaya-kompaniya",
                "title": "публичная компания",
                "description": "Пример описания",
                "url": null,
                "contactPhone": "+79991234567",
                "contactEmail": "user@gitflic.ru",
                "ownerAlias": "user1",
                "avatar": "https://gitflic.ru/upload/img/4b0fab04-aaaa-aaaa-aaaa-ec70560fcae2.jpg",
                "private": false,
                "selectorTitle": "публичная компания",
                "selectorId": "f931a10b-aaaa-aaaa-aaaa-16f4d4decda1",
                "selectorOwnerAlias": null,
                "hexColor": null,
                "selectorAlias": null,
                "selectorColor": null,
                "selectorHash": null,
            }
        ]
    },
    "page": {
        "size": 10,
        "totalElements": 2,
        "totalPages": 1,
        "number": 0
    }
}
    
  

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

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


Метод для получения компании по названию

GET /company/{companyAlias}

Запрос возвращает компанию

Переменная пути запроса Тип Описание
companyAlias String Алиас компании

Responses

STATUS 200 - пример JSON:

Пример ответа
    
        {
            "id": "f931a10b-aaaa-aaaa-aaaa-16f4d4decda1",
            "alias": "publichnaya-kompaniya",
            "title": "публичная компания",
            "description": "Пример описания",
            "url": null,
            "contactPhone": "+79991234567",
            "contactEmail": "user@gitflic.ru",
            "ownerAlias": "user1",
            "avatar": "https://gitflic.ru/upload/img/4b0fab04-aaaa-aaaa-aaaa-ec70560fcae2.jpg",
            "private": false,
            "selectorTitle": "публичная компания",
            "selectorId": "f931a10b-aaaa-aaaa-aaaa-16f4d4decda1",
            "selectorOwnerAlias": null,
            "hexColor": null,
            "selectorAlias": null,
            "selectorColor": null,
            "selectorHash": null,
        }
    
  

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

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


Метод для создания компании

POST /company

Запрос создает и возвращает компанию

Request

Поддерживаемый формат json

Структура тела POST-запроса:

Параметр Описание
title Название компании
isPrivate Приватная компания или нет. Принимает true или false
alias Алиас компании
description Описание компании

Пример JSON объекта

{
    "title": "company",
    "isPrivate": "true",
    "alias": "company",
    "description": "description"
}

Responses

STATUS 200 - пример JSON:

Пример ответа
    
        {
            "id": "f931a10b-aaaa-aaaa-aaaa-16f4d4decda1",
            "alias": "company",
            "title": "company",
            "description": "description",
            "url": null,
            "contactPhone": null,
            "contactEmail": null,
            "ownerAlias": "user",
            "avatar": "https://gitflic.ru/upload/img/4b0fab04-aaaa-aaaa-aaaa-ec70560fcae2.jpg",
            "private": true,
            "selectorTitle": "company",
            "selectorId": "f931a10b-aaaa-aaaa-aaaa-16f4d4decda1",
            "selectorOwnerAlias": null,
            "hexColor": null,
            "selectorAlias": null,
            "selectorColor": null,
            "selectorHash": null,
        }
    
  

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

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


Метод добавления пользователя в компанию

POST /company/{companyAlias}/member/invite

Запрос добавляет пользователя в компанию с указанной ролью

Переменная пути запроса Тип Описание
companyAlias String Псевдоним компании, в которую необходимо добавить пользователя

Request

Поддерживаемый формат json

Структура тела POST-запроса:

Параметр Описание
userAlias Псевдоним пользователя, который будет добавлен в компанию
role Роль, с которой будет добавлен пользователь. Возможные значения: GUEST - гость, REPORTER - докладчик, DEVELOPER - разработчик и ADMIN - администратор
{
    "userAlias" : "user",
    "role" : "ADMIN"
}

Responses

STATUS 200 - Пользователю отправлено приглашение в компанию.

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

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


Метод изменения роли пользователя в компании

PUT /company/{companyAlias}/member/role

Запрос изменяет роль пользователя в компании

Переменная пути запроса Тип Описание
companyAlias String Псевдоним компании, в которой необходимо изменить роль пользователя

Request

Поддерживаемый формат json

Структура тела POST-запроса:

Параметр Описание
userAlias Псевдоним пользователя, роль которого будет изменена в компании
role Измененная роль пользователя. Возможные значения: GUEST - гость, REPORTER - докладчик, DEVELOPER - разработчик и ADMIN - администратор
{
    "userAlias" : "user",
    "role" : "ADMIN"
}

Responses

STATUS 200 - Изменена роль пользователя.

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

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


Метод удаления пользователя из компании{#memberDelete}

DELETE /company/{companyAlias}/member/{userAlias}

Запрос удаляет пользователя из компании

Переменная пути запроса Тип Описание
companyAlias String Псевдоним компании, из которой необходимо удалить пользователя
userAlias String Псевдоним пользователя, которого необходимо удалить из компании

Responses

STATUS 200 - Пользователь удален из компании.

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

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