Download OpenAPI specification:
REST API для сериса площадок платформы Талант
Добавлены эндпоинты для просмотра и управления тегами (статусами) для площадок и для их назначения на площадки.
Добавлены фильтры по выводу площадки на карту и по тэгам.
Список площадок получил фильтры по городу и региону.
Теперь, при создании несубъектной площадки, можно не передавать name.
В список площадок добавлен фильтр filter_actual_events.
Этот же список площадок, без указания роли, возвращает теперь вообще все площадки,
а не только субъектные.
При обновлении и удалении площадок, рассылаются вебхуки содержащие в объекте в теле запроса поле object_id содержащее ID площадки.
Запрос необходимо выполнять с заголовком X-Role: service-admin.
| X-Role required | string Enum: "service-admin" "organization-admin" Роль, в качестве которой выполняется запрос. При указании роли |
Создание тега (статуса), который может быть назначен на площадки.
Доступно только для роли service-admin.
| X-Role | string Enum: "service-admin" "organization-admin" Роль, в качестве которой выполняется запрос. При указании роли |
| slug required | string (Slug) <= 100 characters ^[a-z0-9]+(-[a-z0-9]+)*$ Строковый идентификатор тега. Может состоять только из строчных букв, цифр и дефисов. |
| name required | string Человекопонятное название тега (статуса). |
| is_public | boolean Default: false Является ли тег публичным. |
{- "slug": "string",
- "name": "string",
- "is_public": false
}{- "id": 0,
- "slug": "string",
- "name": "string",
- "is_public": true
}Изменение параметров тега (статуса) для площадок.
Доступно только для роли service-admin.
| tag_id required | integer ID тега. |
| X-Role | string Enum: "service-admin" "organization-admin" Роль, в качестве которой выполняется запрос. При указании роли |
| slug | string (Slug) <= 100 characters ^[a-z0-9]+(-[a-z0-9]+)*$ Строковый идентификатор тега. Может состоять только из строчных букв, цифр и дефисов. |
| name | string Человекопонятное название тега (статуса). |
| is_public | boolean Является ли тег публичным. |
{- "slug": "string",
- "name": "string",
- "is_public": true
}{- "id": 0,
- "slug": "string",
- "name": "string",
- "is_public": true
}Удаление тега (статуса) для площадок.
Доступно только для роли service-admin.
| tag_id required | integer ID тега. |
| X-Role | string Enum: "service-admin" "organization-admin" Роль, в качестве которой выполняется запрос. При указании роли |
| tag_id | integer Фильтр по ID тега. |
| tag_slug | string (Slug) <= 100 characters ^[a-z0-9]+(-[a-z0-9]+)*$ Фильтр по строковому идентификатору тега. |
| venue_ids | Array of integers Фильтр по ID площадок. Пример использования |
{- "results": [
- {
- "tag_id": 0,
- "tag_slug": "string",
- "venue_id": 0
}
]
}Запрос возвращает 200, если тег tag_slug уже назначен площадке venue_id,
и 404, если не назначен.
| venue_id required | integer ID площадки. |
| tag_slug required | string (Slug) <= 100 characters ^[a-z0-9]+(-[a-z0-9]+)*$ Строковый идентификатор тега. Может состоять только из строчных букв, цифр и дефисов. |
Добавление тега tag_slug площадке venue_id.
Пользователь с ролью organization-admin может назначать только публичные теги
только площадкам своей организации.
Для роли service-admin доступны все теги и площадки.
| venue_id required | integer ID площадки. |
| tag_slug required | string (Slug) <= 100 characters ^[a-z0-9]+(-[a-z0-9]+)*$ Строковый идентификатор тега. Может состоять только из строчных букв, цифр и дефисов. |
| X-Organization-ID | integer ID организации, от администратора которой выполняется запрос. Параметр обязателен для роли |
| X-Role | string Enum: "service-admin" "organization-admin" Роль, в качестве которой выполняется запрос. При указании роли |
Удаление связи тега tag_slug с площадкой venue_id.
Пользователь с ролью organization-admin может удалять только публичные теги
только с площадок своей организации.
Для роли service-admin доступны все теги и площадки.
| venue_id required | integer ID площадки. |
| tag_slug required | string (Slug) <= 100 characters ^[a-z0-9]+(-[a-z0-9]+)*$ Строковый идентификатор тега. Может состоять только из строчных букв, цифр и дефисов. |
| X-Organization-ID | integer ID организации, от администратора которой выполняется запрос. Параметр обязателен для роли |
| X-Role | string Enum: "service-admin" "organization-admin" Роль, в качестве которой выполняется запрос. При указании роли |
Список площадок для поиска, просмотра и редактирования.
Доступная выборка определяется ролью, от которой выполняется запрос.
При запросе списка от service-admin, в выборку попадают все имеющиеся площадки.
Для organization-admin доступны только те, которые были созданы организацией,
от которой выполняется запрос, а также публичные площадки других организаций.
Если нужно получить площадки для управления организацией, нужно также указать
параметр фильтрации organization_id. Если от организации нужно выбрать площадку
для назначения мероприятий, то нужно использовать фильтр unavailable=false.
Аутентификация опциональна и проверяется только при наличии указанной роли.
Параметры deleted и status нельзя использовать совместно.
| name | string Поиск по подстроке в названии площадки. | ||||||||
| subject | boolean Фильтр по статусу субъектности площадки. | ||||||||
| deleted | boolean Фильтр по статусу «удаления» площадки. | ||||||||
| status | string
Фильтр по статусу публичности площадки. | ||||||||
| unavailable | boolean Фильтр по статусу временной недоступности площадки. | ||||||||
| access_for_all | boolean Фильтр по статусу доступности площадки для использования всеми организациями. | ||||||||
| show_on_map | boolean Фильтр по статусу отображения площадки на карте. | ||||||||
| user_id | integer Фильтр по пользователю-автору площадки. | ||||||||
| coordinates | string Фильтр по координатам площадки. Формат | ||||||||
| organization_id | integer Фильтр по организации управляющей площадкой. | ||||||||
| filter_actual_events | boolean Фильтрация площадок по наличию актуальных событий. | ||||||||
| city | string Фильтрация по городу | ||||||||
| region | string Фильтрация по региону | ||||||||
| city_with_region_fallback | boolean При отсуствии результатов выборки фильтрации по городу, будет использована фильтрация по региону. | ||||||||
| tag_id | integer Фильтр по ID тега. | ||||||||
| tag_slug | string (Slug) <= 100 characters ^[a-z0-9]+(-[a-z0-9]+)*$ Фильтр по строковому идентификатору тега. | ||||||||
| X-Organization-ID | integer ID организации, от администратора которой выполняется запрос. Параметр обязателен для роли |
| X-Role | string Enum: "service-admin" "organization-admin" Роль, в качестве которой выполняется запрос. При указании роли |
{- "count": 0,
- "results": [
- {
- "id": 0,
- "created_at": "2019-08-24T14:15:22Z",
- "updated_at": "2019-08-24T14:15:22Z",
- "user_id": 0,
- "organization_id": 0,
- "subject": true,
- "deleted": true,
- "unavailable": true,
- "access_for_all": true,
- "show_on_map": true,
- "name": "string",
- "cover": "f096bc6c-6528-4083-a4a3-3f7a96a61f4f",
- "description": "string",
- "schedule": "string",
- "coordinates": "string",
- "navigation_text": "string",
- "navigation_link": "string",
- "navigation_image": "0b4fdfb2-f924-48cf-8191-e416446e5b4d",
- "cover_url": "string",
- "geodata": {
- "country": "string",
- "federal_district": "string",
- "region_fias": "706cad30-8c32-4b0f-81db-e8837f8c837f",
- "region_with_type": "string",
- "city": "string",
- "city_fias": "35a39070-b204-49c9-b62b-971bf7fe1dc4",
- "city_type_full": "string",
- "settlement": "string",
- "settlement_type_full": "string",
- "city_district_with_type": "string",
- "address": "string",
- "coordinates": "string"
}
}
]
}Создание субъектной или несубъектной площадки.
Доступно только при использовании ролей service-admin и organization-admin.
| X-Organization-ID | integer ID организации, от администратора которой выполняется запрос. Параметр обязателен для роли |
| X-Role | string Enum: "service-admin" "organization-admin" Роль, в качестве которой выполняется запрос. При указании роли |
| subject | boolean Является ли создаваемая площадка субъектной. По умолчанию создается несубъектная. |
| organization_id | integer ID организации. Доступно только с ролью |
| name | string Название площадки. Максимум |
| latitude required | string Широта местоположения площадки. |
| longitude required | string Долгота местоположения площадки. |
| address | string Адрес, полная строка в формате Dadata. |
| navigation_text | string Дополнительное описание как добраться до места. |
| navigation_link | string <url> Ссылка на схему проезда. |
| navigation_image | string <uuid> ID загруженного файла со схемой проезда. |
{- "subject": "VenueNonSubjectCreate",
- "organization_id": 0,
- "name": "string",
- "latitude": "string",
- "longitude": "string",
- "address": "string",
- "navigation_text": "string",
- "navigation_link": "string",
- "navigation_image": "0b4fdfb2-f924-48cf-8191-e416446e5b4d"
}{- "id": 0,
- "created_at": "2019-08-24T14:15:22Z",
- "updated_at": "2019-08-24T14:15:22Z",
- "user_id": 0,
- "organization_id": 0,
- "subject": true,
- "deleted": true,
- "unavailable": true,
- "access_for_all": true,
- "show_on_map": true,
- "name": "string",
- "cover": "f096bc6c-6528-4083-a4a3-3f7a96a61f4f",
- "description": "string",
- "schedule": "string",
- "coordinates": "string",
- "navigation_text": "string",
- "navigation_link": "string",
- "navigation_image": "0b4fdfb2-f924-48cf-8191-e416446e5b4d"
}Чтение любой площадки по ее идентификатору.
| venue_id required | integer ID площадки. |
{- "id": 0,
- "created_at": "2019-08-24T14:15:22Z",
- "updated_at": "2019-08-24T14:15:22Z",
- "user_id": 0,
- "organization_id": 0,
- "subject": true,
- "deleted": true,
- "unavailable": true,
- "access_for_all": true,
- "show_on_map": true,
- "name": "string",
- "cover": "f096bc6c-6528-4083-a4a3-3f7a96a61f4f",
- "description": "string",
- "schedule": "string",
- "coordinates": "string",
- "navigation_text": "string",
- "navigation_link": "string",
- "navigation_image": "0b4fdfb2-f924-48cf-8191-e416446e5b4d",
- "contacts": [
- {
- "id": 0,
- "created_at": "2019-08-24T14:15:22Z",
- "updated_at": "2019-08-24T14:15:22Z",
- "venue_id": 0,
- "ordering": 0.1,
- "type": "email",
- "value": "string",
- "is_preferred": true
}
], - "cover_url": "string",
- "navigation_image_url": "string",
- "cover_ext": "string",
- "navigation_image_ext": "string",
- "geodata": {
- "country": "string",
- "federal_district": "string",
- "region_fias": "706cad30-8c32-4b0f-81db-e8837f8c837f",
- "region_with_type": "string",
- "city": "string",
- "city_fias": "35a39070-b204-49c9-b62b-971bf7fe1dc4",
- "city_type_full": "string",
- "settlement": "string",
- "settlement_type_full": "string",
- "city_district_with_type": "string",
- "address": "string",
- "coordinates": "string"
}
}Обновление площадки доступно только при указании либо роли service-admin, либо organization-admin.
Набор доступных для обновления полей зависит то того является ли обновляемая площадка субъектной или нет.
| venue_id required | integer ID площадки. |
| X-Organization-ID | integer ID организации, от администратора которой выполняется запрос. Параметр обязателен для роли |
| X-Role | string Enum: "service-admin" "organization-admin" Роль, в качестве которой выполняется запрос. При указании роли |
| show_on_map | boolean Должна ли площадка отображаться на карте. |
| organization_id | integer ID организации. Доступно только с ролью |
| name | string Название площадки. Максимум |
| latitude | string Широта местоположения площадки. |
| longitude | string Долгота местоположения площадки. |
| address | string Адрес, полная строка в формате Dadata. |
| navigation_text | string Дополнительное описание как добраться до места. |
| navigation_link | string <url> Ссылка на схему проезда. |
| navigation_image | string <uuid> ID загруженного файла со схемой проезда. |
{- "show_on_map": true,
- "organization_id": 0,
- "name": "string",
- "latitude": "string",
- "longitude": "string",
- "address": "string",
- "navigation_text": "string",
- "navigation_link": "string",
- "navigation_image": "0b4fdfb2-f924-48cf-8191-e416446e5b4d"
}{- "id": 0,
- "created_at": "2019-08-24T14:15:22Z",
- "updated_at": "2019-08-24T14:15:22Z",
- "user_id": 0,
- "organization_id": 0,
- "subject": true,
- "deleted": true,
- "unavailable": true,
- "access_for_all": true,
- "show_on_map": true,
- "name": "string",
- "cover": "f096bc6c-6528-4083-a4a3-3f7a96a61f4f",
- "description": "string",
- "schedule": "string",
- "coordinates": "string",
- "navigation_text": "string",
- "navigation_link": "string",
- "navigation_image": "0b4fdfb2-f924-48cf-8191-e416446e5b4d"
}Удаление площадки доступно только при указании либо роли service-admin, либо organization-admin.
| venue_id required | integer ID площадки. |
| X-Organization-ID | integer ID организации, от администратора которой выполняется запрос. Параметр обязателен для роли |
| X-Role | string Enum: "service-admin" "organization-admin" Роль, в качестве которой выполняется запрос. При указании роли |
Доступно только при использовании с ролью service-admin.
| X-Role | string Enum: "service-admin" "organization-admin" Роль, в качестве которой выполняется запрос. При указании роли |
| name | string <= 200 characters Название площадки. Максимум |
| description required | string <= 1000 characters Описание площадки. |
required | Array of objects (ContactBody) [ 1 .. 10 ] items Контакты площадки. |
{- "name": "string",
- "description": "string",
- "contacts": [
- {
- "ordering": 0.1,
- "type": "email",
- "value": "string",
- "is_preferred": true
}
]
}{- "errors": [
- {
- "field": "string",
- "message": "string",
- "code": "required",
- "param": "string"
}
]
}Доступно только при использовании с ролью service-admin.
| X-Role | string Enum: "service-admin" "organization-admin" Роль, в качестве которой выполняется запрос. При указании роли |
{- "errors": [
- {
- "field": "string",
- "message": "string",
- "code": "required",
- "param": "string"
}
]
}Треуется роль service-admin или organization-admin.
| venue_id required | integer ID площадки. |
| X-Organization-ID | integer ID организации, от администратора которой выполняется запрос. Параметр обязателен для роли |
| X-Role | string Enum: "service-admin" "organization-admin" Роль, в качестве которой выполняется запрос. При указании роли |
| ordering required | number <float> Порядковый номер |
| type required | string (ContactType) Enum: "email" "phone" "vk" "link" Тип контакта. |
| value required | string |
| is_preferred | boolean Является ли этот контакт предпочтительным для связи. |
{- "ordering": 0.1,
- "type": "email",
- "value": "string",
- "is_preferred": true
}{- "id": 0,
- "created_at": "2019-08-24T14:15:22Z",
- "updated_at": "2019-08-24T14:15:22Z",
- "venue_id": 0,
- "ordering": 0.1,
- "type": "email",
- "value": "string",
- "is_preferred": true
}| venue_id required | integer ID площадки. |
| contact_id required | integer ID контакта. |
| X-Organization-ID | integer ID организации, от администратора которой выполняется запрос. Параметр обязателен для роли |
| X-Role | string Enum: "service-admin" "organization-admin" Роль, в качестве которой выполняется запрос. При указании роли |
{- "id": 0,
- "created_at": "2019-08-24T14:15:22Z",
- "updated_at": "2019-08-24T14:15:22Z",
- "venue_id": 0,
- "ordering": 0.1,
- "type": "email",
- "value": "string",
- "is_preferred": true
}Треуется роль service-admin или organization-admin.
| venue_id required | integer ID площадки. |
| contact_id required | integer ID контакта. |
| X-Organization-ID | integer ID организации, от администратора которой выполняется запрос. Параметр обязателен для роли |
| X-Role | string Enum: "service-admin" "organization-admin" Роль, в качестве которой выполняется запрос. При указании роли |
| ordering | number <float> Порядковый номер |
| type | string (ContactType) Enum: "email" "phone" "vk" "link" Тип контакта. |
| value | string |
| is_preferred | boolean Является ли этот контакт предпочтительным для связи. |
{- "ordering": 0.1,
- "type": "email",
- "value": "string",
- "is_preferred": true
}{- "id": 0,
- "created_at": "2019-08-24T14:15:22Z",
- "updated_at": "2019-08-24T14:15:22Z",
- "venue_id": 0,
- "ordering": 0.1,
- "type": "email",
- "value": "string",
- "is_preferred": true
}Треуется роль service-admin или organization-admin.
| venue_id required | integer ID площадки. |
| contact_id required | integer ID контакта. |
| X-Organization-ID | integer ID организации, от администратора которой выполняется запрос. Параметр обязателен для роли |
| X-Role | string Enum: "service-admin" "organization-admin" Роль, в качестве которой выполняется запрос. При указании роли |