FlipLink

Управление списком разрешённых адресов флипбука

Управление доступом

Точно контролируйте, кто может открыть закрытый флипбук: читайте список разрешённых 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 (или не принадлежащий вашему ключу) → HTTP 200 с { "Result": "ERROR", "Message": "Item not found" }.

Простое правило: Result: "OK" означает, что изменение применено; Result: "ERROR" означает, что нет — читайте Message, чтобы узнать причину.

Рекомендуемый подход

Для безопасных и предсказуемых изменений:

  1. GET текущего списка.
  2. Решите, кого добавить или удалить.
  3. Используйте добавление / удаление для точечных изменений (они никогда не трогают остальной список).
  4. Приберегите замену для случаев, когда вы действительно хотите заменить весь список сразу.
  5. GET снова, чтобы подтвердить финальное состояние.

Этот цикл «прочитать → изменить → перечитать» означает, что вам не нужно отслеживать список в своей системе и вы никогда случайно не сотрёте доступ, применив замену вместо добавления.

Похожие обсуждения