Uwierzytelnianie
Format API key, opcje nagłówków, scope i praktyki bezpieczeństwa dla Qamera AI API.
Każde zapytanie do Qamera AI API musi zawierać prawidłowy API key. Zapytania bez uwierzytelnienia otrzymują odpowiedź 401 Unauthorized.
Format API key
Klucze mają następujący format:
mk_live_<keyId>.<secret>
| Część | Opis |
|---|---|
mk_live_ | Stały prefiks wskazujący na klucz produkcyjny. |
<keyId> | Unikalny identyfikator klucza, używany do wyszukiwania i audytu. |
<secret> | Sekretna część, wyświetlana tylko raz w momencie utworzenia. |
Przykład:
mk_live_7f3a2b1c.kP9xmWqLzR4tNvYs
Przekazywanie klucza
Możesz się uwierzytelnić za pomocą jednego z dwóch nagłówków:
Nagłówek X-Api-Key (zalecany)
curl -X GET https://app.qamera.ai/api/external/products \ -H "X-Api-Key: mk_live_7f3a2b1c.kP9xmWqLzR4tNvYs"
Nagłówek Authorization Bearer
curl -X GET https://app.qamera.ai/api/external/products \ -H "Authorization: Bearer mk_live_7f3a2b1c.kP9xmWqLzR4tNvYs"
Obie metody są równoważne. Jeśli oba nagłówki są obecne, X-Api-Key ma pierwszeństwo.
Uzyskiwanie API key
- Zaloguj się do Qamera AI i otwórz zespołowy workspace.
- Przejdź do Ustawienia → API Keys.
- Kliknij Wygeneruj nowy klucz.
- Natychmiast skopiuj pełną wartość klucza. Sekretna część nie jest przechowywana w postaci jawnej i nie można jej później odzyskać.
Każde konto zespołowe może mieć wiele aktywnych kluczy. Klucze są przypisane do konta, które je utworzyło, i dziedziczą saldo kredytów tego konta.
Scope
API key mają przypisane scope, które kontrolują dozwolone operacje.
| Scope | Uprawnienia |
|---|---|
content.register | Tworzenie zamówień, uruchamianie generowania treści (endpointy POST). |
content.read | Odczyt produktów, zamówień, zadań i wyników (endpointy GET). Planowane. |
queue.nudge | Zmiana priorytetów zadań w kolejce. Planowane. |
Obecnie wszystkie klucze są wydawane z scope content.register. Zapytania do endpointu wymagającego scope, którego Twój klucz nie posiada, otrzymają odpowiedź 403 Forbidden.
Bezpieczeństwo
- Hashowane przechowywanie — Sekrety kluczy są hashowane algorytmem bcrypt przed zapisem. Qamera AI nie może odzyskać utraconego sekretu.
- Izolacja per konto — Klucze należą do konkretnego konta zespołowego. Nie mogą uzyskać dostępu do danych innych kont.
- Wygaśnięcie — Klucze mogą mieć skonfigurowaną datę wygaśnięcia. Wygasłe klucze zwracają
401 Unauthorized. - Unieważnienie — Możesz unieważnić klucz w dowolnym momencie z poziomu Ustawienia → API Keys. Unieważnienie działa natychmiast.
- Śledzenie użycia — Każdy klucz rejestruje znacznik czasu
last_used_at. Całe generowanie treści uruchomione przez klucz jest śledzone za pośrednictwemcg_ordersicg_jobsna potrzeby audytu.
Najlepsze praktyki
- Przechowuj klucze w zmiennych środowiskowych lub menedżerze sekretów. Nigdy nie zapisuj ich w repozytorium kodu.
- Używaj osobnych kluczy dla różnych środowisk (development, staging, produkcja).
- Okresowo rotuj klucze i unieważniaj te, które nie są już potrzebne.
- Monitoruj
last_used_at, aby wykrywać nieużywane lub potencjalnie skompromitowane klucze.