Чат-центр в iframe
OAuth-авторизация
Для работы с Fasttrack API вам понадобится уникальный access_token
, который необходимо передавать в заголовке для каждого запроса.
Следуйте инструкции ниже, чтобы получить ключ доступа для вашего проекта.
Подготовьте redirect_uri
redirect_uri
— это URL, на который Fasttrack выполняет редирект после успешной авторизации. В параметрах запроса будет передан временный код (code
), который необходимо использовать для получения access_token
.
Зарегистрируйте приложение в Fasttrack
На данный момент регистрация клиентских приложений для работы с API Fasttrack осуществляется вручную через менеджера проекта.
Обратитесь к менеджеру проекта с запросом на подключение к Fasttrack API и предоставьте ваш redirect_uri
для регистрации приложения.
После регистрации вы получите:
client_id
— уникальный идентификатор вашего приложения;client_secret
— секретный ключ, используемый для аутентификации.
Параметр client_secret используется для подтверждения подлинности приложения в процессе OAuth. Это чувствительный параметр, который необходимо защищать так же, как и любые другие учётные данные.
Получите временный код
Сформируйте URL следующего вида:
https://dashboard.fstrk.io/integrations/oauth/?{параметры}
Параметры после знака ?
:
client_id
* — идентификатор вашего приложения (выдаётся при регистрации);redirect_uri
* — URL, на который будет выполнен редирект после авторизации;state
— произвольная строка, которая будет возвращена вместе с кодом (используется для проверки целостности запроса).
https://dashboard.fstrk.io/integrations/oauth/?client_id=1&redirect_uri=https://example.com/oauth/&state=dummy
Откройте сформированную ссылку в браузере. Вы будете перенаправлены на страницу выбора проекта. Если у вас доступ к нескольким проектам, выберите тот, для которого требуется получить access_token
.
После выбора проекта вы будете перенаправлены на указанный redirect_uri
. В адресной строке будут переданы параметры code
и state
.
Получите access_token
Получив временный код (code
), используйте его в API-запросе для получения access_token
в рамках авторизации OAuth.
curl -X POST \
--location https://dashboard.fstrk.io/api/partners/oauth/ \
--header 'Content-Type: application/json' \
--data '{
"client_id": "<CLIENT_ID>",
"client_secret": "<CLIENT_SECRET>",
"grant_type": "code",
"code": "<CODE>"
}'
В случае успешного запроса API возвращает HTTP-статус 200 OK
и JSON-ответ, содержащий access_token
.
{
"access_token": "string"
}
Список доменов
Для безопасной работы чат-центра Fasttrack во встраиваемом режиме (<iframe>
) необходимо заранее указать один или несколько доменов, с которых будет осуществляться загрузка интерфейса и выполняться связанные с ним запросы.
Соберите список всех доменов, с которых планируется загрузка чат-центра и передайте список вашему менеджеру — он добавит эти домены в настройки проекта.
Чат-центр загрузится в <iframe> только при обращении с доменов, добавленных в белый список. Все остальные попытки загрузки будут автоматически заблокированы.
Авторизация операторов
Чат-центр может быть открыт только от имени оператора, зарегистрированного в Fasttrack. Такой оператор должен быть заранее добавлен в систему, успешно авторизован и иметь права доступа к интерфейсу и необходимому функционалу чат-цента.
Ссылка для iframe
Для загрузки чат-центра необходимо получить временную ссылку в контексте конкретного клиента и оператора. Эта ссылка будет использоваться в качестве значения src
для тега <iframe>
.
Загрузка чат-центра осуществляется по временной ссылке, сформированной на основе переданных данных о клиенте и операторе.
Ссылка создаётся через API и содержит токен, который определяет рабочий контекст: от имени какого оператора и для какого клиента должен быть открыт интерфейс.
Полученная ссылка используется в атрибуте src
тега <iframe> и обеспечивает корректную авторизацию, а также загрузку чата с клиентом.
Метод для получения ссылки на чат-центр:
POST /api/partners/iframe/
Тело запроса:
{
"operator": {
"uuid": "378737c4-e659-479a-9ba9-5307b81084a5"
// "email": "[email protected]"
},
"profile": {
"uuid": "f6e9f169-f4ce-4e3b-b340-d9b36133aec1"
// "phone_number": "+79991112233",
// "external_id": "client-123"
}
}
Пример запроса:
curl -X POST \
--location https://dashboard.fstrk.io/api/partners/iframe/ \
--header "Content-Type: application/json" \
--header "Authorization: Bearer <access_token>" \
--data '{
"operator": {
"uuid": "378737c4-e659-479a-9ba9-5307b81084a5"
// или "email": "[email protected]"
},
"profile": {
"uuid": "f6e9f169-f4ce-4e3b-b340-d9b36133aec1"
// или "external_id": "client-123"
// или "phone_number": "+79991112233"
}
}'
Промер ответа:
{
"url": "https://dashboard.fstrk.io/chat-center/...<временная ссылка с токеном>",
"expired_at": "2025-05-20T21:15:27.121669+00:00"
}
url
— одноразовая ссылка, по которой загружается чат-центр в нужном контексте (оператор + клиент). Используется в <iframe>.expired_at
— срок действия ссылки. После истечения срока необходимо запросить новую.
Тестирование
Протестировать загрузку чат-центра можно по ссылке: https://fstrk.cc/example/iframe
Вставьте ссылку в поле URL for iframe и уберите фокус с поля. Если все корректно, то в окне ниже отобразится чат-центр.
Last updated