FlipLink

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

Участники команды

Получайте список, читайте, создавайте, обновляйте, активируйте, деактивируйте и удаляйте участников команды вашего аккаунта, включая папки, которыми ограничен каждый участник.

API, используемые в этом обсуждении

Что-то в этом руководстве неточно или устарело?

Что можно сделать

Участники команды — это пользователи-вендоры вашего аккаунта. API позволяет управлять ими от начала до конца и контролировать, какими папками ограничен каждый участник (участник видит только флипбуки внутри назначенных ему папок). Пароли никогда не возвращаются ни одним из этих эндпоинтов.

  • Получить список участников команды вашего аккаунта, отфильтрованный по статусу активности.
  • Прочитать одного участника по его ID участника, включая назначенные ему папки.
  • Создать или обновить участника, задав его имя, email, пароль, изображение профиля и область папок.
  • Активировать или деактивировать участника, управляя тем, может ли он входить в систему.
  • Удалить (мягко удалить) участника, что деактивирует его, сохраняя его историю нетронутой.

Перед началом

  • API-ключ — передаётся в заголовке X-Api-Key или как Authorization: Bearer YOUR_API_KEY в каждом запросе.
  • Все запросы идут на базовый URL https://go.fliplink.me.
  • Несколько эндпоинтов принимают параметр пути {memberId} — это ID участника команды из List Team Members, а не ID флипбука. Передача неизвестного ID возвращает ошибку, сообщение которой зависит от эндпоинта: Get Team Member возвращает «Team member not found», а Set Team Member Active и Delete Team Member возвращают «Item not found».
  • Эндпоинты записи (set-team-member и set-team-member-active) принимают тело в формате form-urlencoded (не JSON).

Список участников команды

GET /api/list-team-members выводит список участников команды вашего аккаунта с их данными доступа, включая папки, назначенные каждому участнику. Фильтруйте по IsActive (1 = активные, по умолчанию; 0 = неактивные).

curl -X GET 'https://go.fliplink.me/api/list-team-members?IsActive=1' \
  -H 'X-Api-Key: YOUR_API_KEY'

Ответ:

{
  "Result": "OK",
  "Items": [
    {
      "ID": 45452,
      "Name": "Jane Doe",
      "Email": "member@example.com",
      "IsActive": "True",
      "PhotoIMG": "",
      "Total": 0
    }
  ]
}

Получить одного участника команды

GET /api/get-team-member/{memberId} возвращает одного участника по его ID участника — имя, email, статус подтверждения email (IsEmailVerified) и назначенные ему папки. Участник возвращается обёрнутым в объект Item, а Folders — это список папок, к которым он имеет доступ, разделённый запятыми (пусто = без ограничения по папкам). memberId — это ID участника команды из List Team Members, а не ID флипбука.

curl -X GET 'https://go.fliplink.me/api/get-team-member/96216' \
  -H 'X-Api-Key: YOUR_API_KEY'

Ответ:

{
  "Result": "OK",
  "Item": {
    "ID": 45452,
    "Email": "member@example.com",
    "Name": "Jane Doe",
    "Phone": "",
    "PhotoIMG": "",
    "IsEmailVerified": false,
    "Folders": "Marketing,Sales"
  }
}

Создать или обновить участника команды

POST /api/set-team-member создаёт нового участника команды или обновляет существующего, управляя тем, кто может получить доступ к вашему аккаунту, и — через поле Folders — тем, какими папками он ограничен. Опустите ID или отправьте -1, чтобы создать; отправьте ID больше 0, чтобы обновить. При успехе записывается запись в журнал аудита. Тело — form-urlencoded.

Несколько замечаний из спецификации:

  • Имя участника — это одно поле Name; полей FirstName/LastName нет.
  • Folders — это список имён папок, разделённый запятыми (например, Marketing,Sales); оставьте пустым для отсутствия ограничения по папкам. Участник может получить доступ только к флипбукам внутри этих папок.
  • Password — открытый текст, шифруется на стороне сервера; если оставить его пустым при обновлении, сохраняется существующий пароль.
  • Email не должен уже принадлежать пользователю FlipLink, а email-адреса с алиасом + отклоняются.
curl -X POST 'https://go.fliplink.me/api/set-team-member' \
  -H 'X-Api-Key: YOUR_API_KEY' \
  --data-urlencode 'Name=Jane' \
  --data-urlencode 'Email=jane@example.com' \
  --data-urlencode 'ID=-1' \
  --data-urlencode 'Password=' \
  --data-urlencode 'ProfileImage=' \
  --data-urlencode 'Folders='

Ответ (создание):

{
  "Result": "OK",
  "Message": "Team member created"
}

Когда ID указан (путь обновления), сообщение вместо этого — «Updated successfully».

Активировать или деактивировать участника команды

PUT /api/set-team-member-active/{memberId} активирует или деактивирует участника, управляя тем, может ли он входить в систему и получать доступ к аккаунту. Тело — form-urlencoded с единственным полем IsActive.

curl -X PUT 'https://go.fliplink.me/api/set-team-member-active/96216' \
  -H 'X-Api-Key: YOUR_API_KEY' \
  --data-urlencode 'IsActive=true'

Ответ:

{
  "Result": "OK",
  "Message": "Updated successfully"
}

Удалить участника команды

DELETE /api/delete-team-member/{memberId} — это мягкое удаление (деактивация); участники команды никогда не удаляются жёстко. Он деактивирует участника (REST-алиас для set-team-member-active с IsActive=false). Его история платежей и ссылки в журнале аудита остаются нетронутыми, и его можно повторно активировать позже через PUT /api/set-team-member-active (IsActive=true).

curl -X DELETE 'https://go.fliplink.me/api/delete-team-member/96216' \
  -H 'X-Api-Key: YOUR_API_KEY'

Ответ:

{
  "Result": "OK",
  "Message": "Team member deactivated"
}

Возможные ошибки

  • Отсутствующий или неверный API-ключ → HTTP 401. Возвращается обычная HTML-страница Unauthorized — тела JSON нет. Проверьте, что заголовок X-Api-Key (или Authorization: Bearer) присутствует и указан верно. Это относится ко всем пяти эндпоинтам.
  • Нет участника команды с таким ID в Get Team Member (например, вы передали ID флипбука) → HTTP 200 с сообщением Team member not found.
  • ID элемента не найден или не принадлежит вашему ключу в Set Team Member Active и Delete Team Member → HTTP 200 с сообщением Item not found.
  • Неизвестное поле тела запроса или опечатка в нём в Set Team Member и Set Team Member Active → HTTP 200 с сообщением Unknown field(s) '…'. Expected: ….

Примечания

  • Параметр пути {memberId} — это всегда ID участника команды из List Team Members, никогда не ID флипбука.
  • Пароли никогда не возвращаются ни одним из этих эндпоинтов.
  • Folders ограничивает участника конкретными папками; пустое значение означает отсутствие ограничения по папкам.