📝 Python

API-ключи: что это и как с ними работать

0
Author
04e5cc8b-58ac-4bdc-bdee-661bbb
📅
Published
08.05.2026
⏱️
Reading time
1 min
👁️
Views
27
🌱
Level
Beginner

Большинство публичных API требуют API-ключ — уникальную строку символов, которая идентифицирует тебя как пользователя сервиса.

Зачем нужен API-ключ

Без ключа любой мог бы делать неограниченное количество запросов и перегрузить сервер. Ключ позволяет сервису:

  • Знать кто делает запросы
  • Считать их количество и применять лимиты
  • Отключить доступ при злоупотреблении

Это не защита от взлома — ключ скорее как пропуск: он говорит «я зарегистрированный пользователь».

Как выглядит API-ключ

Обычно это длинная случайная строка:

a1b2c3d4e5f6789012345678abcdef01

Разные сервисы называют его по-разному: API key, access token, app id, client secret. Принцип один.

Как передаётся ключ в запросе

Три распространённых способа:

1. Query-параметр (как в OpenWeatherMap):

https://api.openweathermap.org/data/2.5/weather?appid=ТВОЙ_КЛЮЧ

В коде через params={"appid": API_KEY}.

2. Заголовок Authorization (как в GitHub):

Authorization: Bearer ТВОЙ_ТОКЕН

В коде через headers={"Authorization": f"Bearer {TOKEN}"}.

3. Заголовок X-API-Key:

X-API-Key: ТВОЙ_КЛЮЧ

Документация каждого API говорит какой способ использовать.

Как не надо хранить ключ

Никогда не пиши ключ прямо в коде:

# НЕЛЬЗЯ — если попадёт в git, ключ станет публичным
API_KEY = "a1b2c3d4e5f6789012345678abcdef01"

Боты непрерывно сканируют GitHub в поисках ключей. После публикации ключа — меняй его немедленно.

Правильный способ: файл .env

# .env — этот файл не коммитится в git
OPENWEATHER_API_KEY=a1b2c3d4e5f6789012345678abcdef01
from dotenv import load_dotenv
import os

load_dotenv()
API_KEY = os.getenv("OPENWEATHER_API_KEY")

Файл .env хранится только у тебя локально. Добавь его в .gitignore.

Лимиты и бесплатные тарифы

Большинство API предоставляют бесплатный тариф с ограничением на количество запросов:

Сервис Бесплатный лимит
OpenWeatherMap 1 000 запросов/день
NASA API 1 000 запросов/час
GitHub API 5 000 запросов/час

При превышении лимита сервер возвращает статус 429 Too Many Requests.

Ключ не работает сразу после регистрации

Некоторые сервисы (например OpenWeatherMap) активируют ключ через 10–60 минут после создания. В этот период запросы возвращают ошибку 401. Это нормально — просто подожди.

Потерял или скомпрометировал ключ

Зайди в личный кабинет сервиса и создай новый ключ. Старый отзови. Большинство сервисов позволяют иметь несколько ключей.

Your reaction to the article

💬 Comments (0)

🔐 Sign in to leave a comment
🚪 Login
💭

No comments yet

Be the first to share your opinion about this article!

🔗 Similar

Similar articles

Continue learning with these materials

📝

Модуль datetime: работа с датами и временем

datetime — стандартный модуль Python для работы с датами и временем. Входит в стандартную библиотеку,...

📅 08.05.2026 👁️ 30
📝

.env файлы и переменные окружения: секреты вне ко…

Представь что ты написал программу с API-ключом прямо в коде и залил её на GitHub....

📅 08.05.2026 👁️ 35
📝

Виртуальные окружения в Python: зачем и как

Когда начинаешь второй Python-проект и ставишь pip install requests — эта библиотека устанавливается глобально, для...

📅 08.05.2026 👁️ 31

Did you like the article?

Subscribe to our updates and receive new articles first. Grow with PyLand!