---
title: "Slack konektor"
description: "Kompletný sprievodca integráciou Slack na odosielanie notifikácií, synchronizáciu dát kanálov a spúšťanie automatizácií Brevo zo Slack udalostí cez Tajo."
url: https://tajo.io/sk/docs/connectors/custom/slack/
markdown: https://tajo.io/sk/docs/connectors/custom/slack.md
lang: sk-SK
robots: noindex
---

Požiadajte o skorý prístup

Zadajte svoje meno a pracovnú e-mailovú adresu. Pošleme vám odkaz na potvrdenie žiadosti o prístup k Tajo.

# Slack konektor

Stav konektora: Plánované Zatiaľ nevytvorené. Tajo tento konektor dnes neprevádzkuje.

| Zdrojové pole | Cieľové pole | Ukážková hodnota |
| --- | --- | --- |
| `record.id` | `source_id` | `record_1042` |
| `record.updated_at` | `updated_at` | `2026-10-18T08:00:00Z` |
| `record.value` | `value` | `sample_value` |

Prepoj svoj Slack workspace s Brevo cez Tajo pre notifikácie marketingu v reálnom čase, tímové upozornenia na zákaznícke udalosti a automatizáciu workflowov spúšťanú interakciami v Slack.

## Prehľad

| Vlastnosť | Hodnota |
| --- | --- |
| **Platforma** | Slack |
| **Kategória** | Vlastná integrácia |
| **Zložitosť nastavenia** | Ľahké |
| **Oficiálna integrácia** | Nie |
| **Synchronizované dáta** | Používatelia, Kanály, Správy, Udalosti |
| **API Base URL** | `https://slack.com/api` |

## Funkcie

- **Marketingové upozornenia** - Posielajaj notifikácie v reálnom čase pre udalosti kampaní, nových odberateľov a príjmové míľniky
- **Notifikácie udalostí zákazníkov** - Upozorni tímy na akcie zákazníkov s vysokou hodnotou z Brevo
- **Spúšťače workflowov** - Použi interakcie Slack (kliknutia na tlačidlá, odoslania formulárov) na spúšťanie automatizácií Brevo
- **Smerovanie podľa kanálov** - Smeruj notifikácie do konkrétnych kanálov podľa typu udalosti alebo segmentu zákazníka
- **Synchronizácia používateľov** - Namapuj používateľov workspace Slack na kontakty Brevo pre internú komunikáciu
- **Interaktívne správy** - Posielajaj bohaté správy s tlačidlami a akciami pre tímové workflowy
- **Naplánované správy** - Plánuj notifikácie pre denné/týždenné marketingové súhrny
- **Podpora vlákien** - Zoskupuj súvisiace notifikácie vo vláknach pre organizovanú komunikáciu

## Predpoklady

Predtým, než začneš, uisti sa, že máš:

1. Slack workspace s admin prístupom
2. Slack aplikáciu vytvorenú na [api.slack.com/apps](https://api.slack.com/apps)
3. Bot token s požadovanými scopes
4. Brevo účet s API prístupom
5. Tajo účet

## Autentifikácia

### Bot Token (odporúčané)

Nainštaluj Slack aplikáciu do svojho workspace a použi bot token pre API prístup.

1. Vytvor aplikáciu na [api.slack.com/apps](https://api.slack.com/apps)
2. Pridaj požadované OAuth scopes pod “OAuth & Permissions”
3. Nainštaluj aplikáciu do workspace
4. Skopíruj Bot User OAuth Token (`xoxb-...`)

```bash
curl -X POST "https://slack.com/api/chat.postMessage" \
  -H "Authorization: Bearer xoxb-YOUR-BOT-TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"channel": "C01234567", "text": "Hello from Tajo!"}'
```

### OAuth 2.0

Pre distribúciu tvojej Slack integrácie do viacerých workspaces:

```bash
# Authorization URL
https://slack.com/oauth/v2/authorize?
  client_id={client_id}&
  scope=chat:write,channels:read,users:read&
  redirect_uri={redirect_uri}

# Token exchange
curl -X POST "https://slack.com/api/oauth.v2.access" \
  -d "client_id={client_id}" \
  -d "client_secret={client_secret}" \
  -d "code={auth_code}"
```

#### Požadované Bot scopes

```
chat:write           # Send messages
channels:read        # List channels
channels:history     # Read channel messages
users:read           # List workspace users
users:read.email     # Read user email addresses
reactions:write      # Add reactions to messages
files:write          # Upload files
```

Prístup k e-mailu používateľa

Scope `users:read.email` je potrebný na zhodu používateľov Slack s kontaktmi Brevo. Bez neho bude mapovanie používateľov obmedzené na zobrazované mená.

## Konfigurácia

### Základné nastavenie

```yaml
connectors:
  slack:
    enabled: true
    bot_token: "${SLACK_BOT_TOKEN}"
    signing_secret: "${SLACK_SIGNING_SECRET}"

    # Notification channels
    channels:
      marketing: "C01234567"
      sales: "C01234568"
      support: "C01234569"
      alerts: "C01234570"

    # Event routing
    notifications:
      new_subscriber:
        channel: marketing
        template: subscriber_alert
      high_value_order:
        channel: sales
        template: order_alert
      support_ticket:
        channel: support
        template: ticket_alert
```

### Mapovanie polí

Namapuj dáta používateľov Slack na atribúty kontaktov v Brevo:

#### Predvolené mapovania

| Parameter | Type | Description |
| --- | --- | --- |
| `profile.email` required | string | E-mail používateľa (unikátny identifikátor pre zhodu s Brevo) |
| `real_name` optional | string | Celé meno, rozdelené na FIRSTNAME/LASTNAME |
| `profile.phone` optional | string | Mapuje sa na atribút SMS |
| `profile.title` optional | string | Pracovná pozícia |
| `tz` optional | string | Časové pásmo používateľa |
| `is_admin` optional | boolean | Stav admin workspace |
| `team_id` optional | string | ID tímu workspace |
| `status_text` optional | string | Vlastný status používateľa |

## API metódy

### Správy

| Metóda | Endpoint | Popis |
| --- | --- | --- |
| `POST` | `chat.postMessage` | Odoslanie správy do kanálu |
| `POST` | `chat.update` | Aktualizácia existujúcej správy |
| `POST` | `chat.delete` | Odstránenie správy |
| `POST` | `chat.scheduleMessage` | Naplánovaná správa |
| `POST` | `chat.postEphemeral` | Odoslanie ephemeral správy používateľovi |

### Kanály

| Metóda | Endpoint | Popis |
| --- | --- | --- |
| `GET` | `conversations.list` | Zoznam kanálov |
| `GET` | `conversations.info` | Informácie o kanáli |
| `GET` | `conversations.members` | Zoznam členov kanálu |
| `GET` | `conversations.history` | Správy kanálu |

### Používatelia

| Metóda | Endpoint | Popis |
| --- | --- | --- |
| `GET` | `users.list` | Zoznam používateľov workspace |
| `GET` | `users.info` | Informácie o používateľovi |
| `GET` | `users.lookupByEmail` | Vyhľadanie používateľa podľa e-mailu |
| `GET` | `users.conversations` | Zoznam kanálov používateľa |

### Interakcie

| Metóda | Endpoint | Popis |
| --- | --- | --- |
| `POST` | `views.open` | Otvorenie modálneho zobrazenia |
| `POST` | `views.update` | Aktualizácia modálneho zobrazenia |
| `POST` | `reactions.add` | Pridanie emoji reakcie |

## Udalosti

### Notifikácie Brevo → Slack

| Udalosť | Trigger | Akcia v Slack |
| --- | --- | --- |
| `new_subscriber` | Kontakt vytvorený v Brevo | Odoslanie do #marketing |
| `campaign_sent` | E-mailová kampaň odoslaná | Odoslanie súhrnu do #marketing |
| `order_placed` | Objednávka s vysokou hodnotou | Odoslanie do #sales s detailmi |
| `cart_abandoned` | Košík opustený 30 min | Odoslanie do #sales pre follow-up |
| `ticket_created` | Otvorený support ticket | Odoslanie do #support |
| `unsubscribed` | Kontakt sa odhlásil | Odoslanie upozornenia do #marketing |

### Spúšťače Slack → Brevo

| Udalosť Slack | Trigger | Akcia v Brevo |
| --- | --- | --- |
| `message_action` | Vlastná skratka správy | Pridanie kontaktu do zoznamu alebo spustenie automatizácie |
| `block_actions` | Kliknutie na tlačidlo v správe | Aktualizácia atribútu kontaktu alebo odoslanie e-mailu |
| `view_submission` | Odoslaný modálny formulár | Vytvorenie kontaktu alebo spustenie workflowu |

## Ukážky kódu

### Inicializácia konektora

```javascript
import { TajoClient } from '@tajo/sdk';

const tajo = new TajoClient({
  apiKey: process.env.TAJO_API_KEY,
  brevoApiKey: process.env.BREVO_API_KEY
});

// Connect Slack
await tajo.connectors.connect('slack', {
  botToken: process.env.SLACK_BOT_TOKEN,
  signingSecret: process.env.SLACK_SIGNING_SECRET
});
```

### Odosielanie marketingových notifikácií

```javascript
// Send a notification when a high-value order is placed
await tajo.slack.notify({
  channel: 'sales',
  event: 'order_placed',
  data: {
    customerEmail: 'customer@example.com',
    orderValue: '$1,250.00',
    products: ['Premium Widget', 'Pro Service'],
    isFirstOrder: true
  },
  template: {
    blocks: [
      {
        type: 'header',
        text: { type: 'plain_text', text: 'New High-Value Order' }
      },
      {
        type: 'section',
        fields: [
          { type: 'mrkdwn', text: '*Customer:*\ncustomer@example.com' },
          { type: 'mrkdwn', text: '*Amount:*\n$1,250.00' }
        ]
      },
      {
        type: 'actions',
        elements: [
          {
            type: 'button',
            text: { type: 'plain_text', text: 'View in Brevo' },
            url: 'https://app.brevo.com/contacts'
          }
        ]
      }
    ]
  }
});
```

### Spracovanie interakcií Slack

```javascript
import crypto from 'crypto';

app.post('/slack/interactions', async (req, res) => {
  // Verify Slack request signature
  const timestamp = req.headers['x-slack-request-timestamp'];
  const signature = req.headers['x-slack-signature'];
  const sigBasestring = `v0:${timestamp}:${req.rawBody}`;
  const mySignature = 'v0=' + crypto
    .createHmac('sha256', process.env.SLACK_SIGNING_SECRET)
    .update(sigBasestring)
    .digest('hex');

  if (signature !== mySignature) {
    return res.status(401).send('Unauthorized');
  }

  const payload = JSON.parse(req.body.payload);

  // Handle button actions
  if (payload.type === 'block_actions') {
    await tajo.connectors.handleWebhook('slack', {
      type: 'interaction',
      action: payload.actions[0].action_id,
      userId: payload.user.id,
      payload
    });
  }

  res.status(200).send();
});
```

## Obmedzenia rýchlosti

Slack API rate limity používajú vrstvený systém:

| Tier | Limit | Bežné metódy |
| --- | --- | --- |
| Tier 1 | 1 požiadavka/minútu | `chat.delete`, `conversations.kick` |
| Tier 2 | 20 požiadaviek/minútu | `conversations.history`, `users.info` |
| Tier 3 | 50 požiadaviek/minútu | `conversations.list`, `users.list` |
| Tier 4 | 100 požiadaviek/minútu | `chat.postMessage` |
| Špeciálne | Rôzne | `chat.postMessage` do toho istého kanálu: 1/sek |

Ďalšie limity:

- **Web API**: Burst limit s krátkodobým throttlovanjem
- **Events API**: Opakované pokusy doručenia 3-krát
- **Incoming Webhooks**: 1 správa/sekundu na URL webhooku
- **Block Kit**: Maximum 50 blokov na správu

Frekvencia príspevkov do kanálu

Príspevky do toho istého kanálu sú obmedzené na približne 1 správu za sekundu. Dávkuj notifikácie alebo použi vlákna na vyhnutie sa rate limitovaniu.

## Riešenie problémov

### Bežné problémy

| Problém | Príčina | Riešenie |
| --- | --- | --- |
| `not_authed` | Neplatný bot token | Preinštaluj aplikáciu a skopíruj nový bot token |
| `channel_not_found` | Bot nie je v kanáli | Pozvi bota do cieľového kanálu |
| `missing_scope` | Požadovaný scope nie je udelený | Pridaj scope a preinštaluj aplikáciu |
| Udalosť nie je prijatá | Event subscription nie je nastavená | Nakonfiguruj URL Event Subscriptions |
| Timeout interakcie | Odpoveď > 3 sekundy | Okamžite odpovedz 200, spracuj asynchrónne |

### Debug režim

Zapni verbose logovanie:

```yaml
connectors:
  slack:
    debug: true
    log_level: verbose
    log_events: true
```

### Test pripojenia

```bash
tajo connectors test slack
# ✓ Bot token valid
# ✓ Workspace accessible
# ✓ Channels readable
# ✓ Message posting enabled
# ✓ Event subscriptions active
```

## Odporúčané postupy

1. **Použi Block Kit** - Vytváraj bohaté, interaktívne správy s frameworkom Block Kit od Slack
2. **Odpovedaj rýchlo** - Potvrdzuj interakcie do 3 sekúnd, spracovávaj asynchrónne
3. **Zoskupuj súvisiace správy vo vláknach** - Zoskupuj súvisiace notifikácie vo vláknach na zníženie šumu
4. **Smeruj podľa kanálu** - Posielajaj rôzne typy udalostí do príslušných tímových kanálov
5. **Zahrň akčné tlačidlá** - Pridaj tlačidlá “View in Brevo” pre rýchly prístup k zákazníckym dátam
6. **Implementuj unfurling** - Zobrazuj bohaté náhľady pre Brevo odkazy zdieľané v Slack

## Bezpečnosť

- **Bot Token** - Prístupový token s obmedzeným rozsahom OAuth a jemnými oprávneniami
- **Podpisovanie požiadaviek** - Overenie podpisu HMAC SHA-256 pre prichádzajúce požiadavky
- **OAuth 2.0** - Priemyselne štandardná autorizácia pre distribúciu do viacerých workspaces
- **TLS šifrovanie** - Všetka API komunikácia šifrovaná cez HTTPS
- **Rotácia tokenov** - Automatická rotácia tokenov pre zvýšenú bezpečnosť

## Súvisiace zdroje

- [Slack API dokumentácia](https://api.slack.com/methods)
- [Slack Block Kit Builder](https://app.slack.com/block-kit-builder)
- [Slack Events API](https://api.slack.com/events-api)
- [Brevo konektor](https://tajo.io/sk/docs/connectors/marketing/brevo)
- [Customer Sync skill](https://tajo.io/sk/docs/skills/data-sync/customer-sync)
