Что такое API?
API (Application Programming Interface) - интерфейс программирования приложений или программный интерфейс приложения. Это набор/описание способов и методов, при помощи которых одна система может взаимодействовать с другой.
На проектах Eventicious используется два вида API - публичное и внутреннее.
- Внутреннее API разрабатывается и используется для нужд пользовательского интерфейса мобильного приложения и desktop-версии Event.Rocks.
- Публичное (внешнее) API разрабатывается для внешних потребителей, для клиентов, и решает вопросы интеграции со сторонними сервисами, с целью автоматизации внесения и передачи данных (т.е. контента) в нашу систему.
Общее/краткое описание возможностей публичного (внешнего) API Eventicious
Актуальная документация для разработчиков доступна по адресу:
- На русском языке https://documenter.getpostman.com/view/19584337/2sA3QwdVkc
- На английском языке https://documenter.getpostman.com/view/36445713/2sA3XV7Jnq
Примеры реализации - https://documenter.getpostman.com/view/19584337/UVeNo3yX#intro (максимально заточена на ивенты, на мероприятия; далее мы планируем ее обновить и на обучающее программы)
ВАЖНО! Отметим, что чаще всего корректная настройка выгрузки к нам информации по API это добавление новой информации к уже выгруженной ранее. То есть, не удаление уже отправленной к Ивентишес информации, и с нуля отправка новой, а добавление новой информации к уже загруженной. Таким образом можно будет вручную при необходимости править информацию в админке, а также это не затронет важный системный профиль Команда организатора, от которого публикуются пуш-уведомления в ленте.
Информация для менеджеров Ивентишес.
С помощью публичного API Eventicious можно:
- Управлять расписанием мероприятия (Создавать/изменять/удалять):
- Залы;
- Доклады, события и информационные блоки;
- Теги выступлений;
- Докладчиков и модераторов;
- Материалы и ссылки к выступлениям.
- Выгружать вопросы заданные к выступлениям;
- Управлять участниками/докладчиками (Создавать/изменять/удалять);
- Синхронизировать изменения участников с внешней системой;
- Управлять группами участников (Создавать/изменять/удалять);
- Синхронизировать «Избранное» участников в расписании (В обе стороны);
- Управлять экспонентами выставки (Создавать/изменять/удалять);
- Управлять геймификацией приложения (Ручное начисление и списание баллов).
Что необходимо для начала работы с публичным API Eventicious?
Вне зависимости от того, какие данные будут выгружаться из внешней системы в систему Eventicious, шаги следующие:
- Запросить у вашего менеджера проекта секретный ключ авторизации, для начала, для тестового события, где вы сможете настроить и протестировать выгрузку данных;
- Получить доступ к этому тестовому событию в административной зоне Eventicious, для контроля выгрузки и корректности выгружаемых данных;
- Если на тестовом событии все идет хорошо, и у вас не возникло никаких проблем, запросить такие же данные, только уже от продакшен-события;
- Перенастроить вашу систему выгрузки (Вписав секретный ключ авторизации от боевого события), и сделать несколько тестовых прогонов;
- Если все работает и ошибок не выявлено, удалить тестовые данные, и начать полноценную выгрузку.
Нюансы
- Внесение изменений в сущности, выгруженные с использованием публичного API Eventicious, необходимо производить только через публичное API Eventicious, чтобы исключить перетирание внесенных вручную изменений.
- External ID присваивается на стороне выгрузки, является произвольным, но может быть только числовым.
- ВАЖНО! Во избежание технических неполадок и/или нагрузок, настоятельно рекомендуем, если это возможно, делать выгрузку API только НОВОЙ информации, без перезаписи с нуля уже существующей.
Это, во-первых, не вызовет проблем, если, условно, некий Вася Иванов, переименовав себя в мобильном приложении на Василия, после очередной выгрузки API не обнаружит себя снова Васей.
Во-вторых, это снизит нагрузку на сервер, так как не будет огромного количества запросов от API на обновление.
F.A.Q.
— Можно ли выгрузить список участников из вашей системы через ваше публичное API?
Нет, такой возможности в настоящее время нет
— Как можно проверить ваши настройки не используя событие, в котором ведется работа?
Тестирование выгрузки данных мероприятия, используя публичное API Eventicious, можно провести на тестовом событии.
Для настройки авторизации запросите у вашего менеджера проекта доступ в тестовое событие, прислав ему ваши электронные почты. Также менеджер вышлет вам ID события, инструкции по API и секретный ключ.
Чтобы проверить корректность выгрузки:
- Через панель администрирования: Откройте ссылку - https://admin.eventicious.com/ и пройдите регистрацию под учетной записью. Или, вам уже могло прийти электронное письмо, на данный адрес, с просьбой завершить регистрацию. Если нужно открыть доступ кому-то еще, пришлите, пожалуйста, список электронных адресов;
- Через мобильное приложение: Установите наше приложение-контейнер Event.Rocks, открыв на мобильном устройстве ссылку - https://store.eventicious.com/eventrocks На экране выбора события, введите секретное слово (ID события). Регистрация и авторизация свободные.
В случае, если данные выгружаются, но не появляются в нашей системе, просьба прислать лог-файлы выгрузки, обязательно, с уточнением часового пояса, и указанием нескольких конкретных примеров, например, не выгрузились участники такие-то.
— У нас не работает ваше API?
Пришлите вашему менеджеру проекта запрос, скриншот, и информацию - что отвечает система. Какие методы используются. После этого команда Eventicious проверит информацию и даст ответ.