PUSH-рассылки через API

API-методы для работы с персональными рассылками.

Документация в Swagger

Описание методов API хранится в Swagger по ссылке: https://dashboard.fstrk.io/api/partners/docs/

Для тестирования, необходимо авторизоваться в Fasttrack.

OAuth-авторизация

Для использования Fasttrack API вам понадобится уникальный access_token, которым необходимо передавать заголовке каждого запроса.

Сообщите менеджеру Fasttrack о том, что планируете использовать Fasttrack API и вам необходимо получить access_token для вашего проекта.

После этого проекту присваивается уникальный идентификатор client_id и секретный ключ client_secret, которые нужны для аутентификации при запросе access_token.

Для получения access_token используйте метод:

POST /api/partners/oauth/

Ознакомьтесь c докуметацией данного метода в Swagger по ссылке: https://dashboard.fstrk.io/api/partners/docs/

В ответе вам вернется access_token, который вы можете использовать для подписи запросов к методам Fasttrack API.

Отправить рассылку

API-метод для запуска персональной рассылки.

POST /api/partners/push-messages/

Заголовки

Content-Type

application/json

Authorization

Bearer <token>

Примеры сURL-запросов

Отправить текстовое сообщение пользователю по UUID
curl -X POST \
  https://dashboard.fstrk.io/api/partners/push-message/ \
  -H 'Content-Type: application/json' \
  -H 'Authorization: Bearer <КЛЮЧ_ДОСТУПА>' \
  -d '{
    "chat": {
      "uuid": "00000000-0000-0000-0000-000000000000"
    },
    "content": {
      "type": "TEXT",
      "text": "Тест сообщения"
    }
}'

Структура JSON:

  • chat – Информация о пользователе

    • chat.uuid – Идентификатор пользователя (UUID чата)

  • content – Содержание рассылки

    • content.type – Тип контента (в данном случае TEXT)

    • content.text – Текст сообщения

Запустить узел (сценарий чат-бота) для пользователя по UUID
curl -X POST \
  https://dashboard.fstrk.io/api/partners/push-message/ \
  -H 'Content-Type: application/json' \
  -H 'Authorization: Bearer <КЛЮЧ_ДОСТУПА>' \
  -d '{
    "chat": {
      "uuid": "00000000-0000-0000-0000-000000000000"
    },
    "content": {
      "type": "NODE",
      "node": {
        "name": "Название узла"
      },
      "get_params": {
        "foo": "bar"
      }
    }
}'

Структура JSON:

  • chat – Информация о пользователе

    • chat.uuid – Идентификатор пользователя (UUID чата)

  • content – Содержание рассылки

    • content.type – Тип контента (в данном случае NODE)

    • content.node – Информация об узле

      • content.node.name – Название узла

    • content.get_params – список get-параметров для узла

Отправить текстовое сообщение клиенту по UUID
curl -X POST \
  https://dashboard.fstrk.io/api/partners/push-message/ \
  -H 'Content-Type: application/json' \
  -H 'Authorization: Bearer <КЛЮЧ_ДОСТУПА>' \
  -d '{
    "profile": {
      "uuid": "00000000-0000-0000-0000-000000000000"
    },
    "content": {
      "type": "TEXT",
      "text": "Тест сообщения"
    }
}'

Структура JSON:

  • profile – Информация о клиенте

    • uuid – Идентификатор клиента (UUID профиля)

  • content – Содержание рассылки

    • content.type – Тип контента (в данном случае TEXT)

    • content.text – Текст сообщения

Отправить текстовое сообщение клиенту по номеру телефона
curl -X POST \
  https://dashboard.fstrk.io/api/partners/push-message/ \
  -H 'Content-Type: application/json' \
  -H 'Authorization: Bearer <КЛЮЧ_ДОСТУПА>' \
  -d '{
    "profile": {
      "phone_number": "+79999999999"
    },
    "content": {
      "type": "TEXT",
      "text": "Тест сообщения"
    }
}'

Структура JSON:

  • profile – Информация о клиенте

    • profile.phone_number – Номер телефона клиента

  • content – Содержание рассылки

    • content.type – Тип контента (в данном случае TEXT)

    • content.text – Текст сообщения

Отправить WhatsApp-шаблон клиенту по номеру телефона
curl -X POST \
  https://dashboard.fstrk.io/api/partners/push-message/ \
  -H 'Content-Type: application/json' \
  -H 'Authorization: Bearer <КЛЮЧ_ДОСТУПА>' \
  -d '{
    "profile": {
      "phone_number": "+79999999999",
      "tags": [
        "some_tag",
        "another_tag"
      ],
      "attrs": {
        "profile_key": "some data",
        "profile_another": "some another data"
      }
    },
    "content": {
      "type": "WHATSAPP_TEMPLATE",
      "whatsapp_template": {
        "pid": "test"
      },
      "whatsapp_template_variables": {
        "v1": "Иван",
        "v2": "Иванов"
      }
    }
}'

Структура JSON:

  • profile – Информация о клиенте

    • profile.phone_number – Номер телефона клиента

    • profile.tags – Список тегов, которые нужно добавить клиенту

    • profile.attrs – Список атрибутов, которые нужно добавить клиенту

  • content – Содержание рассылки

    • content.type – Тип контента (в данном случае WHATSAPP_TEMPLATE)

    • content.whatsapp_template – Информация о WhatsApp-шаблоне

      • content.whatsapp_template.pid – Идентификатор шаблона

    • content.whatsapp_template_variables – Переменные для шаблона

Отправить WhatsApp-шаблон клиенту по номеру телефона (используя узел)
curl -X POST \
  https://dashboard.fstrk.io/api/partners/push-message/ \
  -H 'Content-Type: application/json' \
  -H 'Authorization: Bearer <КЛЮЧ_ДОСТУПА>' \
  -d '{
    "profile": {
      "phone_number": "+79999999999"
    },
    "content": {
      "type": "WHATSAPP_TEMPLATE",
      "node": {
        "name": "Название узла"
      },
      "get_params": {
        "v1": "foo",
        "v2": "bar"
      }
    }
}'

Структура JSON:

  • profile – Информация о клиенте

    • profile.phone_number – Номер телефона клиента

  • content – Содержание рассылки

    • content.type – Тип контента (в данном случае WHATSAPP_TEMPLATE)

    • content.node – Информация об узле

      • content.node.name – Название узла

    • content.get_params – список get-параметров для узла

Отменить рассылку

API-метод для отмены запуска рассылки по UUID.

POST /api/partners/push-messages/{ uuid }/cancel/

Заголовки

Authorization

Bearer <token>

Path-параметры

uuid

Идентификатор рассылки (UUID рассылки)

Отменить можно только сообщение, которое еще небыло запущено.

Информация о рассылке

API-метод для получения информации о рассылке по UUID.

GET /api/partners/push-messages/{ uuid }/

Заголовки

Authorization

Bearer <token>

Path-параметры

uuid

Идентификатор рассылки (UUID рассылки)

Список рассылок

API-метод для получения списка рассылок.

GET /api/partners/push-messages/

Заголовки

Authorization

Bearer <token>

Last updated