По умолчанию маркеры доступа пользователей Threads краткосрочные и действуют один час. Однако их можно обменять на долгосрочные.
Долгосрочные маркеры действуют 60 дней и могут обновляться, если с момента их получения прошло не менее 24 часов, срок их действия ещё не истек, а пользователь предоставил приложению разрешение threads_basic. Маркер действует в течение 60 дней с момента обновления. Если не обновить маркер в течение 60 дней, он перестанет действовать, и обновить его уже не удастся.
Теперь можно обновлять долгосрочные маркеры и для закрытых профилей Threads. Кроме того, разрешения, предоставленные приложениям пользователями с закрытыми профилями, теперь действуют 90 дней.
Чтобы обменять краткосрочный маркер пользователя Threads на долгосрочный, используйте конечную точку GET /access_token. Получив долгосрочный маркер, вы сможете использовать его в серверных запросах и пересылать в клиент.
Запрос должен выполняться на сервере и содержать:
В строку запроса можно добавить следующие параметры:
| Имя | Описание |
|---|---|
Строка
| Обязательный параметр. |
Строка
| Обязательный параметр. |
Строка
| Обязательный параметр. |
curl -i -X GET "https://graph.threads.net/access_token ?grant_type=th_exchange_token &client_secret=<THREADS_APP_SECRET> &access_token=<SHORT_LIVED_ACCESS_TOKEN>"
{
"access_token": "<LONG_LIVED_USER_ACCESS_TOKEN>",
"token_type": "bearer",
"expires_in": 5183944 // number of seconds until token expires
}
Чтобы обновить действующий (с неистекшим сроком действия) долгосрочный маркер доступа пользователя Threads, используйте конечную точку GET /refresh_access_token. Обновленный долгосрочный маркер будет работать ещё 60 дней. Если не обновить его за эти 60 дней, он перестанет действовать.
Запрос должен содержать следующие параметры:
| Имя | Описание |
|---|---|
Строка
| Обязательный параметр. |
Строка
| Обязательный параметр. |
curl -i -X GET "https://graph.threads.net/refresh_access_token ?grant_type=th_refresh_token &access_token=<LONG_LIVED_ACCESS_TOKEN>"
{
"access_token": "<LONG_LIVED_USER_ACCESS_TOKEN>",
"token_type": "bearer",
"expires_in": 5183944 // number of seconds until token expires
}