Osobné prístupové tokeny

Osobné prístupové tokeny (PAT) umožňujú programový prístup k API TeamDay na automatizáciu, CI/CD potrubí a autentifikáciu agenta.

Rýchly štart

1. Vytvorenie vášho tokenu

  1. Prejdite na Nastavenia → Profil
  2. Prejdite na Osobné prístupové tokeny
  3. Kliknutie na Vytvoriť token
  4. Dajte mu popisný názov (napr. "CI Pipeline", "Automatizácia produkcie")
  5. Vyberte dobu vypršania (odporúčané 90 dní)
  6. Skopírujte token okamžite - bude sa zobraziť iba raz!

2. Použitie vášho tokenu

Zahrňte váš token do hlavičky Authorization:

curl -H "Authorization: Bearer td_your-token-here" \
     https://teamday.ai/api/v1/agents

Alebo ho nastavte ako premennú prostredia:

export TEAMDAY_TOKEN="td_your-token-here"

curl -H "Authorization: Bearer $TEAMDAY_TOKEN" \
     https://teamday.ai/api/v1/agents

Osvedčené postupy bezpečnosti

:::warning Dôležité pokyny na bezpečnosť

  • Nikdy nepridávajte tokeny do správy verzií - Používajte premenné prostredia alebo správcov tajomstiev
  • Rotujte tokeny pravidelne - Nastavte vhodné dátumy vypršania
  • Používajte samostatné tokeny na integráciu - Zjednodušuje revokáciu
  • Pomenujte tokeny popisne - Viete, kde sa každý token používa
  • Revokujte nepoužívané tokeny okamžite - Znížite bezpečnostný povrch
  • Nikdy nezdieľajte tokeny - Každý člen tímu by mal mať svoj vlastný :::

Odporúčania na uloženie

✅ Bezpečné uloženie:

  • Premenné prostredia: export TEAMDAY_TOKEN="..."
  • Správcovia tajomstiev: AWS Secrets Manager, HashiCorp Vault, 1Password
  • Tajomstvá CI/CD: GitHub Secrets, GitLab CI/CD premenné
  • Súbory .env (s .gitignore)

❌ Nezabezpečené uloženie:

  • Pevne zakódované v zdrojovom kóde
  • Zaviazané v repozitáriách git
  • Zdieľané cez Slack/e-mail
  • Uložené v súboroch v čistom texte v zdieľaných jednotkách

Rozsahy a povolenia tokenov

Osobné prístupové tokeny majú rovnaké povolenia ako používateľ, ktorý ich vytvoril:

  • Prístup do organizácie: Token je obmedzený na vašu aktuálnu organizáciu
  • Povolenia používateľa: Dedí povolenia vašej role (admin, člen, divák)
  • Prístup k prostredkom: Môžete pristupovať všetkým prostredkom, ku ktorým máte prístup cez rozhranie
  • Súkromné prostriedky: Prístup k vašim súkromným agentom, priestorom a chatom

Koncové body API s PAT

Po autentifikácii máte prístup k týmto koncovým bodom:

Agenti

# Zoznam všetkých agentov
GET /api/v1/agents

# Vytvorenie agenta
POST /api/v1/agents

# Získanie podrobností agenta
GET /api/v1/agents/{agentId}

# Aktualizácia agenta
PATCH /api/v1/agents/{agentId}

# Vymazanie agenta
DELETE /api/v1/agents/{agentId}

# Vykonanie agenta
POST /api/v1/agents/{agentId}/execute

Úlohy

# Zoznam úloh
GET /api/v1/tasks

# Vytvorenie úlohy
POST /api/v1/tasks

# Získanie podrobností úlohy
GET /api/v1/tasks/{taskId}

# Aktualizácia úlohy
PATCH /api/v1/tasks/{taskId}

Vykonávania

# Zoznam vykonávaní
GET /api/v1/executions

# Získanie podrobností vykonávania
GET /api/v1/executions/{executionId}

# Získanie stromu vykonávania (s delegáciami)
GET /api/v1/executions/{executionId}/tree

# Zrušenie vykonávania
POST /api/v1/executions/{executionId}/cancel

Priestory (Operácie so súbormi)

# Prehľadávanie súborov
GET /api/spaces/{spaceId}/files/browse?path={path}

# Čítanie súboru
GET /api/spaces/{spaceId}/files/read?path={path}

# Zápis súboru
POST /api/spaces/{spaceId}/files/write

# Nahrávanie súboru
POST /api/spaces/{spaceId}/files/upload

Podrobnosti o úplnej dokumentácii koncových bodov nájdete v Referencia API.

Príklad: Vytvorenie a vykonanie agenta

const TEAMDAY_TOKEN = process.env.TEAMDAY_TOKEN!

// 1. Vytvorit agenta
const agent = await fetch('https://teamday.ai/api/v1/agents', {
  method: 'POST',
  headers: {
    'Authorization': `Bearer ${TEAMDAY_TOKEN}`,
    'Content-Type': 'application/json',
  },
  body: JSON.stringify({
    name: 'Recenzent kódu',
    role: 'Starší vývojár',
    systemPrompt: 'Recenzujete kód na kvalitu, bezpečnosť a osvedčené postupy.',
    visibility: 'organization',
  }),
}).then(r => r.json())

console.log(`Agent vytvorený: ${agent.id}`)

// 2. Vykonanie agenta
const execution = await fetch(`https://teamday.ai/api/v1/agents/${agent.id}/execute`, {
  method: 'POST',
  headers: {
    'Authorization': `Bearer ${TEAMDAY_TOKEN}`,
    'Content-Type': 'application/json',
  },
  body: JSON.stringify({
    message: 'Zrecenzujte autentifikačný kód v src/auth.ts',
    spaceId: 'space_your-workspace',
    stream: false,
  }),
}).then(r => r.json())

console.log(`Recenzia dokončená:`, execution.messages)

Používanie tokenov v CI/CD

GitHub Actions

name: Nasadenie s agentom TeamDay

on:
  push:
    branches: [main]

jobs:
  deploy:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v3

      - name: Nasadenie prostredníctvom agenta TeamDay
        env:
          TEAMDAY_TOKEN: ${{ secrets.TEAMDAY_TOKEN }}
        run: |
          curl -X POST https://teamday.ai/api/v1/agents/char_deploy_bot/execute \
            -H "Authorization: Bearer $TEAMDAY_TOKEN" \
            -H "Content-Type: application/json" \
            -d '{
              "message": "Nasaďte commit ${{ github.sha }} do produkcie",
              "spaceId": "space_production",
              "stream": false
            }'

GitLab CI

deploy:
  stage: deploy
  script:
    - |
      curl -X POST https://teamday.ai/api/v1/agents/${AGENT_ID}/execute \
        -H "Authorization: Bearer ${TEAMDAY_TOKEN}" \
        -H "Content-Type: application/json" \
        -d "{\"message\": \"Nasadenie ${CI_COMMIT_SHA}\"}"
  only:
    - main

Správa tokenov

Prezeranie vašich tokenov

Prejdite na Nastavenia → Profil → Osobné prístupové tokeny a pozrite si:

  • Názov tokenu a dátum vytvorenia
  • Časová pečiatka posledného použitia
  • Dátum vypršania
  • Maskovaná hodnota tokenu (na identifikáciu)

Revokácia tokenov

Kliknutie na ikonu koša vedľa ľubovoľného tokenu, aby ste ho okamžite revokovali. To bude:

  • Natrvalo neplatne token
  • Zastavenie všetkých požiadaviek API pomocou tokenu
  • Odstránenie tokenu z vášho účtu

:::warning Upozornenie Revokácia tokenu praskne všetky skripty, CI/CD potrubí alebo integrácie, ktoré ho používajú. Pred revokáciou si ujistite, že tieto systémy aktualizujete. :::

Vypršanie tokenu

Tokeny sa automaticky stanú platnými na základe doby vypršania, ktorú ste vybrali:

  • 7 dní - Na testovanie a krátkodobé použitie
  • 30 dní - Pre mesačnú automatizáciu
  • 90 dní - Odporúčané na produkčné použitie
  • 180 dní - Pre dlhodobé integrácie
  • 365 dní - Maximálne vypršanie (vyžaduje opatrné riadenie bezpečnosti)

Keď staký token vypršia, budete musieť vytvoriť nový.

Riešenie problémov

Chyba "Neplatný token"

Možné príčiny:

  • Token vypršal
  • Token bol revokovaný
  • Token bol skopírovaný nesprávne (chýba predpona alebo znaky)

Riešenie: Vytvorte nový token a aktualizujte premenné prostredia.

Chyba "Zakázané"

Možné príčiny:

  • Váš účet nemá povolenie na požadovanú operáciu
  • Token je z inej organizácie

Riešenie: Skontrolujte členstvo v organizácii a povolenia rolí.

Token nefunguje v požiadavkách

Kontrolný zoznam:

  • ✅ Zahrňte úplný token s predponou td_
  • ✅ Používajte hlavičku Authorization: Bearer (nie len Authorization)
  • ✅ Žiadne extra medzery alebo nové riadky v hodnote tokenu
  • ✅ Token nie je expirovaný
  • ✅ Token patrí správnej organizácii

Súvisiaca dokumentácia

Potrebujete pomoc?

Ak zažívate problémy s osobnými prístupovými tokenmi: