Перейти к содержимому

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

Передавайте ключ в HTTP-заголовке:

X-API-Key: wxs_<prefix>_<secret>
import os
import httpx
client = httpx.Client(
base_url="https://wxs.weatherpaper.org",
headers={"X-API-Key": os.environ["WXS_API_KEY"]},
timeout=30,
)
profile = client.get("/api/account/me")
profile.raise_for_status()
print(profile.json())

Zarr gate также принимает ?api_key=..., поскольку не каждый клиент умеет добавлять заголовки к запросам метаданных и чанков. Query-параметр используйте только для доверенных непубличных клиентов: URL может попасть в историю, proxy-логи и трассировку.

  • На локальной машине — переменная окружения или менеджер секретов.
  • В Compose/Kubernetes — secret, а не значение в образе или репозитории.
  • В браузере — не хранить постоянный API-ключ; публичная карта специально работает без него.
  • При подозрении на утечку — создать новый ключ, обновить клиента и отозвать старый по key_id.

API-ключ даёт права пользователя, который его создал. Админские операции дополнительно проверяют is_admin; отдельного «админского токена» в query string нет.