Ověřování
TeamDay API používá pro ověřování osobní přístupové tokeny (PAT). Všechny požadavky API musí zahrnovat platný token v hlavičce Authorization.
Získání přístupového tokenu
Krok 1: Vygenerovat token
- Přihlaste se ke svému účtu TeamDay na cc.teamday.ai
- Přejděte na Settings → API Access
- Klikněte na Generate New Token
- Volitelně nastavte vlastní vypršení (7-365 dnů, výchozí: 90 dnů)
- Zkopírujte token ihned - už ho neuvidíte!
Krok 2: Bezpečné uložení
Váš token bude vypadat takto:
td_AbCdEfGhIjKlMnOpQrStUvWxYz0123456789AbCdE
Formát tokenu:
- Prefix:
td_(identifikuje TeamDay tokeny) - Délka: 43 alfanumerických znaků po prefixu
- Kódování: Base64url (bezpečné URL)
Uložte do proměnných prostředí:
# Unix/Linux/macOS
export TEAMDAY_TOKEN="td_your-actual-token-here"
# Windows (PowerShell)
$env:TEAMDAY_TOKEN="td_your-actual-token-here"
# Nebo do .env souboru (pro místní vývoj)
TEAMDAY_TOKEN=td_your-actual-token-here
Použití vašeho tokenu
Zahrňte token v hlavičce Authorization se schématem Bearer:
Authorization: Bearer td_your-actual-token-here
Příklady požadavků
Vypsat agenty:
curl https://cc.teamday.ai/api/v1/agents \
-H "Authorization: Bearer $TEAMDAY_TOKEN"
Vytvořit agenta:
curl -X POST https://cc.teamday.ai/api/v1/agents \
-H "Authorization: Bearer $TEAMDAY_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"name": "Výzkumný asistent",
"role": "Výzkum a analýza",
"systemPrompt": "Jste užitečný výzkumný asistent.",
"visibility": "private"
}'
Získat detaily spuštění:
curl https://cc.teamday.ai/api/v1/executions/exec_123 \
-H "Authorization: Bearer $TEAMDAY_TOKEN"
Bezpečnostní funkce tokenů
Šifrování v klidovém stavu
Tokeny jsou chráněny zabezpečením na úrovni podniku:
- Hashování: SHA-256 hash uložen v databázi (nevratné)
- Šifrování: AES-256-GCM šifrování pro metadata tokenů
- Žádné uložení v prostém textu: Původní token se po vytvoření nikdy neuloží
Automatické ověřování
Každý požadavek API ověřuje:
- Formát tokenu - Správný prefix a délka
- Vyhledání hashe - Token existuje v databázi
- Vypršení - Token není vypršelý
- Rozsah organizace - Uživatel patří do organizace
- Sledování poslední používání - Aktualizováno při každém požadavku
Rozsah
Každý token je vymezen na:
- Uživatel: Token patří konkrétnímu uživateli (tvůrci)
- Organizace: Dědí členství uživatele v organizaci
- Oprávnění: Používá oprávnění role uživatele
Důležité: Tokeny dědí oprávnění uživatele, který je vytvořil. Pokud je přístup uživatele odvolán, jeho tokeny přestanou pracovat okamžitě.
Správa tokenů
Zobrazení aktivních tokenů
Zobrazit všechny vaše aktivní tokeny v Settings → API Access:
- Název tokenu (volitelný štítek)
- Datum vytvoření
- Časová značka poslední použití
- Datum vypršení
- Rozsah oprávnění
Odvolání tokenů
Okamžité odvolání tokenu:
- Přejděte na Settings → API Access
- Najděte token v seznamu
- Klikněte na Revoke
- Potvrďte smazání
Kdy odvolat:
- Token byl kompromitován nebo odhalen
- Člen týmu opustil organizaci
- Token již není potřeba
- Rotace přihlašovacích údajů (bezpečnostní osvědčený postup)
Vypršení tokenu
Výchozí vypršení: 90 dnů
Vlastní vypršení:
- Minimum: 7 dnů
- Maximum: 365 dnů
Co se stane po vypršení:
- Požadavky API vrátí
401 Unauthorized - Chybová zpráva:
"Token expired" - Token se automaticky vyčistí (měkké smazání)
Automatické obnovení: Není podporováno. Vygenerujte nový token před vypršením.
Chybové odpovědi
Chybějící token
Požadavek:
curl https://cc.teamday.ai/api/v1/agents
Odpověď:
{
"error": true,
"statusCode": 401,
"statusMessage": "Unauthorized",
"message": "Authorization header required"
}
Neplatný token
Požadavek:
curl https://cc.teamday.ai/api/v1/agents \
-H "Authorization: Bearer invalid_token"
Odpověď:
{
"error": true,
"statusCode": 401,
"statusMessage": "Unauthorized",
"message": "Invalid or expired token"
}
Vypršelý token
Požadavek:
curl https://cc.teamday.ai/api/v1/agents \
-H "Authorization: Bearer td_expired_token"
Odpověď:
{
"error": true,
"statusCode": 401,
"statusMessage": "Unauthorized",
"message": "Token expired"
}
Nejlepší bezpečnostní praktiky
Ano ✅
- Uložit tokeny do proměnných prostředí - Nikdy je nekódujte do zdroje
- Používat samostatné tokeny na integraci - Snadnější sledování a odvolání
- Nastavit vhodné doby vypršení - Kratší pro vysoce rizikové prostředí
- Pravidelně rotovat tokeny - Zejména pro produkční systémy
- Okamžitě odvolat v případě kompromitace - Lépe být bezpečný
- Používat pouze HTTPS - Nikdy neodesílat tokeny přes prosté HTTP
- Sledovat používání tokenu - Pravidelně kontrolovat časové značky poslední používání
Ne ❌
- Nikdy nezavazovat tokeny do Git - Použijte
.gitignorepro.envsoubory - Nikdy nesdílejte tokeny - Každá integrace by měla mít vlastní
- Nikdy nezaznamenávejte tokeny - Vynechat z protokolů aplikace
- Nikdy neodesílat v parametrech URL - Použít pouze záhlaví
- Nikdy nepoužívat v různých prostředích - Dev/staging/prod by měly mít samostatné tokeny
- Nikdy nsculptovat na straně klienta - Tokeny jsou určeny pouze pro serverovou stranu
Příklad proměnných prostředí
# .env (přidat do .gitignore!)
TEAMDAY_TOKEN=td_your-actual-token-here
# Použití v kódu
const token = process.env.TEAMDAY_TOKEN
const response = await fetch('https://cc.teamday.ai/api/v1/agents', {
headers: {
'Authorization': `Bearer ${token}`,
'Content-Type': 'application/json'
}
})
Strategie rotace tokenů
Doporučený plán rotace:
- Vývoj: 90 dnů (výchozí)
- Staging: 60 dnů
- Produkce: 30 dnů
- Vysoká bezpečnost: 7 dnů
Jak rotovat bez výpadků:
- Vygenerovat nový token (starý ještě neodvolávejte)
- Aktualizovat aplikace aby používaly nový token
- Nasadit a ověřit že nový token funguje
- Sledovat 24-48 hodin (zkontrolovat používání starého tokenu)
- Odvolat starý token když je potvrzen nepoužívaný
Omezení sazby
Aktuální status: Žádná omezení sazby nejsou vynucena
Nejlepší praktiky:
- Implementovat exponenciální zpětné zpoždění pro opakované pokusy
- Ukládat do mezipaměti odpovědi, je-li vhodné
- Používat rozumné sazby požadavků (< 100 req/min doporučeno)
Budoucnost: Omezení sazby mohou být zavedena. Poskytneme předem oznámení a dokumentaci.
OAuth (Již brzy)
Plánované funkce:
- Podpora OAuth 2.0 pro třetí stranu
- Limitovaná oprávnění (pouze čtení, zápis, správce)
- API klíče na úrovni organizace
Testování vašeho tokenu
Rychlý test:
# Měl by vrátit seznam agentů (nebo prázdné pole)
curl https://cc.teamday.ai/api/v1/agents \
-H "Authorization: Bearer $TEAMDAY_TOKEN"
# Příklad úspěšné odpovědi
[
{
"id": "agent_123",
"name": "Můj agent",
"role": "Asistent",
"createdAt": "2025-12-09T12:00:00Z"
}
]
Pokud vidíte 401 Unauthorized:
- Ověřte, že je token zkopírován správně (bez extra mezer)
- Zkontrolujte, že token nevypršel v Settings → API Access
- Potvrďte, že uživatel má stále přístup do organizace
- Zkuste vygenerovat nový token
Potřebujete pomoc?
Token nefunguje?
- Zkontrolujte reference chyb pro odstraňování problémů
- Ověřte formát:
td_+ 43 znaků - Potvrďte, že není vypršelý v dashboardu
Otázky?
- 📧 E-mail: [email protected]
- 💬 Discord: Připojit se ke komunitě
Poslední aktualizace: 9. prosince 2025