Управление списком разрешённых адресов флипбука
Управление доступомТочно контролируйте, кто может открыть закрытый флипбук: читайте список разрешённых email-адресов, добавляйте в него, удаляйте из него или заменяйте его целиком через API.
API, используемые в этом обсуждении
Что можно сделать
Когда флипбук закрыт доступом по email, открыть его могут только адреса из его списка разрешённых. API даёт четыре способа управлять этим списком, ни разу не заходя в панель управления:
- Читать текущий список, чтобы не приходилось отслеживать его вручную.
- Добавлять один или несколько адресов (не трогая уже имеющиеся).
- Удалять конкретные адреса.
- Заменять весь список одним вызовом.
Это руководство разбирает каждый способ, точную форму запроса, ответы, которые вы получаете, и единственный подвох, на котором спотыкаются (разницу между добавлением и заменой).
Перед началом
Понадобится:
- API-ключ — передаётся в заголовке
X-Api-Keyв каждом запросе. (Ваш ключ находится на странице API вашего аккаунта.) flipbookIdфлипбука, закрытого доступом по email. Список разрешённых управляет доступом зрителей на флипбуках с доступом по email.- Все запросы идут на базовый URL
https://go.fliplink.me.
Поле EmailsAllowed в запросах на запись передаётся как form-urlencoded (не JSON) и разделяется точками
с запятой (alice@corp.com;bob@corp.com). Запятые тоже принимаются и автоматически преобразуются в точки с запятой.
Четыре эндпоинта одним взглядом
| Цель | Метод и путь | Эффект |
|---|---|---|
| Прочитать список | GET /api/get-email-allow-list/{flipbookId} | Возвращает текущие адреса и их количество |
| Добавить адреса | POST /api/add-email-allow-list/{flipbookId} | Добавляет в список (сохраняет имеющиеся) |
| Удалить адреса | DELETE /api/delete-email-allow-list/{flipbookId} | Удаляет только указанные адреса |
| Заменить весь список | PUT /api/set-email-allow-list/{flipbookId} | Перезаписывает весь список |
Чтение текущего списка
Всегда начинайте отсюда — прочитайте список, чтобы знать его точное состояние, прежде чем что-либо менять.
curl -X GET 'https://go.fliplink.me/api/get-email-allow-list/96464' \
-H 'X-Api-Key: YOUR_API_KEY'
Ответ:
{ "Result": "OK", "EmailsAllowed": ["alice@corp.com", "bob@corp.com"], "Count": 2 }
EmailsAllowed возвращается как аккуратный JSON-массив (а не строка с точками с запятой), а Count — его длина.
Добавление адресов (не стирая остальные)
Чтобы дать доступ новым людям, сохранив всех, кто уже в списке, используйте добавление. Оно аддитивно — никого не удалит.
curl -X POST 'https://go.fliplink.me/api/add-email-allow-list/96464' \
-H 'X-Api-Key: YOUR_API_KEY' \
--data-urlencode 'EmailsAllowed=carol@corp.com;dan@corp.com'
Ответ (полный, обновлённый список):
{ "Result": "OK", "EmailsAllowed": ["alice@corp.com", "bob@corp.com", "carol@corp.com", "dan@corp.com"], "Count": 4 }
Удаление конкретных адресов
Чтобы отозвать доступ у названных людей, используйте удаление. Удаляются только перечисленные вами адреса; все остальные остаются.
curl -X DELETE 'https://go.fliplink.me/api/delete-email-allow-list/96464' \
-H 'X-Api-Key: YOUR_API_KEY' \
--data-urlencode 'EmailsAllowed=carol@corp.com'
Ответ:
{ "Result": "OK", "EmailsAllowed": ["alice@corp.com", "bob@corp.com", "dan@corp.com"], "Count": 3 }
Замена всего списка ⚠️
Замена перезаписывает весь список разрешённых ровно теми адресами, которые вы отправите. В этом и подвох: отправка одного адреса стирает всех остальных.
# Это НЕ добавляет одного человека — это делает список состоящим ТОЛЬКО из этого человека.
curl -X PUT 'https://go.fliplink.me/api/set-email-allow-list/96464' \
-H 'X-Api-Key: YOUR_API_KEY' \
--data-urlencode 'EmailsAllowed=alice@corp.com'
После этого вызова alice@corp.com — единственный адрес, который может просматривать флипбук. Используйте
замену только когда действительно хотите определить весь список с нуля (например, при первичном заполнении
нового флипбука). Для повседневных изменений «дать доступ этому / отозвать у того» используйте добавление и удаление.
Чтобы полностью очистить список, отправьте пустое значение:
curl -X PUT 'https://go.fliplink.me/api/set-email-allow-list/96464' \
-H 'X-Api-Key: YOUR_API_KEY' \
--data-urlencode 'EmailsAllowed='
Возможные ошибки
- Отсутствующий или неверный API-ключ → HTTP
401. Возвращается обычная HTML-страница Unauthorized — тела JSON нет. Проверьте, что заголовокX-Api-Keyприсутствует и указан верно. - Неизвестный
flipbookId(или не принадлежащий вашему ключу) → HTTP200с{ "Result": "ERROR", "Message": "Item not found" }.
Простое правило: Result: "OK" означает, что изменение применено; Result: "ERROR" означает, что нет — читайте
Message, чтобы узнать причину.
Рекомендуемый подход
Для безопасных и предсказуемых изменений:
- GET текущего списка.
- Решите, кого добавить или удалить.
- Используйте добавление / удаление для точечных изменений (они никогда не трогают остальной список).
- Приберегите замену для случаев, когда вы действительно хотите заменить весь список сразу.
- GET снова, чтобы подтвердить финальное состояние.
Этот цикл «прочитать → изменить → перечитать» означает, что вам не нужно отслеживать список в своей системе и вы никогда случайно не сотрёте доступ, применив замену вместо добавления.