CLIАутентификация

CLI

Аутентификация

Войдите через браузер или с личным API-ключом и узнайте, какой из способов приоритетнее, если на машине заданы оба.

CLI поддерживает два способа входа: через браузер или с личным API-ключом. Браузер проще на своём компьютере, ключ подходит для CI и серверов.

Вход через браузер

auth:login открывает Sofia в браузере. Вы подтверждаете доступ, и CLI получает его на локальном адресе (http://127.0.0.1:<port>/callback). Это поток OAuth2 authorization code с PKCE; ключ копировать не нужно.

sofia auth:login
  • --scopes "<s1 s2>": запрашиваемые области доступа. По умолчанию — все области ресурсов и offline_access.
  • --no-browser: выводит адрес вместо того, чтобы открыть его, — для машины без браузера.
sofia auth:login --scopes "posts:read posts:write offline_access"
sofia auth:login --no-browser

Где хранятся учётные данные

После auth:login CLI хранит сессию в ~/.sofia/credentials.json (папка 0700, файл 0600). Просроченный токен обновляется сам, и файл перезаписывается.

{
  "apiUrl": "https://api.sofia-post.com",
  "clientId": "…",
  "accessToken": "…",
  "refreshToken": "…",
  "expiresAt": "…",
  "scope": "…"
}

Проверка и выход

auth:status показывает аккаунт, от имени которого работает CLI. auth:logout удаляет файл с учётными данными.

sofia auth:status
sofia auth:logout

auth:logout лишь удаляет учётные данные на этом компьютере: у Sofia API нет конечной точки отзыва, поэтому доступ остаётся действительным, пока вы не отзовёте его в Sofia в разделе Настройки › Подключённые приложения.

Использовать личный API-ключ

Создайте ключ в Sofia в разделе Настройки › API › Личный доступ и экспортируйте его как SOFIA_API_KEY. auth:login не нужен: это способ для CI и серверов. Подробнее о ключах — в разделе Аутентификация.

export SOFIA_API_KEY="sk_live_…"
sofia establishments:list

Что приоритетнее

Учётные данные из браузера приоритетнее SOFIA_API_KEY. Чтобы использовать ключ на машине, где вы уже вошли, сначала выполните sofia auth:logout.

Переменные окружения

ПеременнаяПо умолчаниюНазначение
SOFIA_API_KEY—Личный API-ключ (Настройки › API › Личный доступ).
SOFIA_API_URLhttps://api.sofia-post.comДругой экземпляр API (стенд, локальный).
SOFIA_CLIENT_IDКлиент «Sofia CLI»Другой публичный OAuth-клиент для auth:login.

Готовы публиковать? Переходите к постам.

Эта страница была полезной?