--- Название: Ключи API --- # Ключи API Glarus BI может создавать ключи API для идентификации программных запросов к API. Для установки разрешения для API ключа, вы можете прописать ключ в [группе](./managing.md#groups). ## Честное предупреждение об API Glarus BI Мы не делаем версионность для [Glarus BI API](../api-documentation.md). Мы редко меняем конечные точки API, и почти никога не удаляем их, но если вы пишете год, которые полагается на API, есть вероятность, что вам придется обновлять ваш код в будущем. Однако, иногда приятно работать с API, когда идет управление разрешениями для большого числа людей и групп, или при массовом архивировании, или при создании контента. Поэтому мы добавили возможность создавать ключи API для идентификации ваших программных запросов. ## Создание API ключа Чтобы создать API ключ: 1. Кликаем на **Шестеренку** вверху справа. 2. Выбираем **Настройки администратора**. 3. Идем в раздел **Настройки**. 4. Кликаем на закладку **Аутентификация** в меню слева. 5. Скользим до **API ключей** и щелкам на **Управлять**. 6. Щелкаем на кнопку **Создать API ключKey**. 7. Вводим **Имя ключа**. Вы можете иметь несколько API ключей, а имя ключа поможет вам запомнить для чего используется ключ. 8. Выбираем **[Группу](./managing.md#groups)**. Ключ будет иметь такие же разрешения, как и группа. 9. Кликаем на **Создать**. 10. Копируем сгенерированный API ключ и сохраняем его где-нибудь в безопасном месте. Glarus BI не сможет вам показать этот ключ снова. Если вы потеряете этот ключ, вам придется генерить новый. ## Управление API ключами Чтобы посмотреть и управлять текущими API ключами: 1. Кликаем на **Шестеренку** вверху справа. 2. Выбираем **Настройки администратора**. 3. Идем в раздел **Настройки**. 4. Кликаем на закладку **Аутентификация** в меню слева. 5. Скользим до **API ключей** и щелкам на **Управлять**. ### Редактирование API ключей Чтобы отредактировать API ключ, нужно прокрутить до ключа, который вы хотите редактировать и кликнуть на значок **карандаш**. Glarus BI раскроет модуль **Редактирование API ключа** где можно редактировать: - Имя ключа - Группу принадлежности. - Изменить или заново сгенерировать ключ. Glarus BI заменит текущий ключ новым ключом API. Восстановить старый ключ при этом будет невозможно. ### Удаление API ключей Восстановить ключ после удаления будет невозможно. Вам придется создать новый ключ. Чтобы удалить API ключ: 1. Кликаем на **Шестеренку** вверху справа. 2. Выбираем **Настройки администратора**. 3. Идем в раздел **Настройки**. 4. Кликаем на закладку **Аутентификация** в меню слева. 5. Прокручиваем до **API ключей** и жмем на **Управление**. 6. Выбираем ключ, который требуется удалить и щелкаем на значок **мусорного ведра** icon. 7. Glarus BI раскроет модуль **Удаления API ключей**. Щелкайте на кнопку **Удалить API ключ**. ### Glarus BI перенесет API ключи, связанные с группой, которая удаляется на группу "Все пользователи" Если вы привязали ключи API к какой-либо группе, а затем эта группа удаляется, то API ключи все еще будут работать, но Glarus BI применит данные ключи к группе "Все пользователи". Если вы хотите поменять их группу, то придется сделать это вручную. ## Пример запросов `GET` Вот несколько запросов `GET` которые возвращаются группы в Glarus BI. Данные примеры подразумевают, что вы запускаете Glarus BI локально с портом по умолчанию: 3000. ### Пример `curl` Замените `YOUR_API_KEY` API ключом, которые вы сгенерировали выше. ```sh curl \ -H 'x-api-key: YOUR_API_KEY' \ -X GET 'http://localhost:3000/api/permissions/group' ``` ### Приме JavaScrip Предполагаем, что вы установили ключ как переменную среду как: ```sh export METABASE_API_KEY="YOUR_API_KEY" ``` Здесь базовый запрос `GET` используя `fetch` чтобы получить список групп. Вы можете скопировать код, сохранить его как файл (например, как `api-test.js`), и запустить код с командой `node api-test.js`. ```js // Предполагая, что вы установили ключ с процессом // `export METABASE_API_KEY="YOUR_KEY_HERE"` const API_KEY = process.env.METABASE_API_KEY; const init = { headers: { "Content-Type": "application/json", "X-API-KEY": API_KEY, }, }; const host = "http://127.0.0.1:3000"; async function getGroups() { const response = await fetch(`${host}/api/permissions/group`, init); return response.json(); } getGroups().then(groups => console.log("Groups in your Metabase:", groups)); ``` ## Еще почитать - [Список Glarus BI API](../api-documentation.md). - [Работая с Glarus BI API](https://www.metabase.com/learn/administration/metabase-api).