Секрети: токени API для інструментів
Для розробників, у коді: токен до вашого API, збережений зашифрованим, із посиланням {{secret.name}}, записаний раз і ніколи не читаний назад — навіть вами.
Вашому API потрібен токен. Секрет — це місце, де він живе: зашифрований у сховищі, підставлений у виклик лише в момент, коли запит іде назовні, ніколи не показаний назад у панелі, ніколи не залогований, ніколи не видимий моделі.
У панелі: форма інструмента → Секрети (Інструменти та події).
Створити
На формі інструмента, в розділі Секрети: назва і значення. Секрети зберігаються одразу, а не з формою. Назва — slug, унікальний у межах інструмента, і посилатися на нього може лише цей інструмент.
Далі пишіть плейсхолдер там, куди йде токен:
Authorization: Bearer {{secret.api_token}}
або в URL, у значенні параметра запиту чи в шаблоні тіла — у будь-якому рядковому значенні, ніколи в ключі.
Що з ним можна і чого не можна
- Лише запис. API серіалізує секрет як
{ id, name }; значення —write_only. Щоб замінити, запишіть нове значення. Прочитати назад — неможливо: ні вам, ні нам через панель. - Зашифрований у сховищі шифруванням полів платформи.
- Підставляється раз, одним проходом регулярного виразу, тож значення, яке само містить
{{…}}, ніколи не розгортається вдруге. - Сирим у заголовки й тіла, як ви й написали; в URL теж вставляється як є — кладіть токен туди, де його очікує ваш API, зазвичай у заголовок.
- Частина ключа кешу відповідей. Кеш відповідей інструмента хешує повністю розв’язаний запит разом із заголовками, тож секрет ніколи не стає способом, щоб два клієнти поділили кешовану відповідь; сирий запит не зберігається ніколи.
Коли посилання хибне
Невідомий плейсхолдер — назва, якої немає серед секретів цього інструмента, — лишається буквально
як текст {{secret.name}} і надсилається. Ваш API його відхилить, а кнопка перевірки покаже сиру
відповідь — так і знаходиться одруківка.
Два інші секрети
{{user}} — не збережений секрет: це власний токен відвідувача, що увійшов, переданий із кожним
запитом (Ідентичність користувача). Ключ API керування, яким ви
користуєтеся з власних скриптів, — ще інше посвідчення (Автентифікація).
Усі три поділяють правило: вставляється на межі, ніколи не зберігається в розмові, ніколи в лозі.