---
title: "Конектор Jira"
description: "Пълно ръководство за интеграция с Jira Cloud за синхронизация на issue-та, проекти и данни за активност на екипа с Brevo чрез Tajo."
url: https://tajo.io/bg/docs/connectors/custom/jira/
markdown: https://tajo.io/bg/docs/connectors/custom/jira.md
lang: bg-BG
robots: noindex
---

Заявете ранен достъп

Въведете собственото си име и служебен имейл адрес. Ще ви изпратим връзка за потвърждение на заявката за достъп до Tajo.

# Конектор Jira

Статус на конектора: Планиран Все още не е изграден. Tajo не изпълнява този конектор днес.

| Поле източник | Целево поле | Примерна стойност |
| --- | --- | --- |
| `record.id` | `source_id` | `record_1042` |
| `record.updated_at` | `updated_at` | `2026-10-18T08:00:00Z` |
| `record.value` | `value` | `sample_value` |

Свържете вашата Jira Cloud инстанция с Brevo за проследяване на issue-та, видими за клиентите, видимост на тикети за поддръжка и известия за етапи на проекта чрез Tajo.

## Преглед

| Свойство | Стойност |
| --- | --- |
| **Платформа** | Jira Cloud |
| **Категория** | Персонализирана |
| **Сложност на настройка** | Умерена |
| **Официална интеграция** | Не |
| **Синхронизирани данни** | Issue-та, проекти, потребители, събития |
| **Тип на API** | REST API v3 |
| **Автентикация** | OAuth 2.0 (3LO) / API Token (Basic Auth) |
| **Base URL** | `https://your-domain.atlassian.net/rest/api/3/` |

## Функции

- **Синхронизация на събития за issue-та** – Препращайте събития за създаване, обновяване и разрешаване на issue-та към времевите линии на контактите в Brevo
- **Проследяване на клиентски тикети** – Свързвайте Jira issue-тата с контакти в Brevo за видимост на поддръжката
- **Сигнали за етапи на проекта** – Задействайте кампании в Brevo при release-и на версии и завършване на спринтове
- **Данни за капацитета на екипа** – Синхронизирайте метрики за натовареност за оперативни dashboards
- **Събития за промяна на статус** – Проследявайте преходите в работния процес на issue-тата като събития в Brevo
- **Синхронизация на коментари** – Препращайте видимите за клиентите коментари към логове за активност в Brevo

## Предварителни условия

Преди да започнете, уверете се, че имате:

1. Jira Cloud инстанция (Jira Software, Jira Service Management или Jira Work Management)
2. Администраторски достъп за създаване на OAuth приложения или генериране на API токени
3. Имейл на Atlassian акаунта, асоцииран с вашия API токен
4. Акаунт в Brevo с API достъп
5. Акаунт в Tajo с активен абонамент

## Автентикация

Jira Cloud поддържа множество методи за автентикация.

### Опция 1: OAuth 2.0 (3LO) – препоръчително

1. Отидете на [developer.atlassian.com](https://developer.atlassian.com/console/myapps/)
2. Щракнете върху **Create** > **OAuth 2.0 integration**
3. Конфигурирайте callback URL: `https://app.tajo.io/callbacks/jira`
4. Добавете следните обхвати:

```
read:jira-work
read:jira-user
write:jira-work
read:me
```

Структура на API URL за OAuth 2.0:

```
https://api.atlassian.com/ex/jira/{cloudId}/rest/api/3/{resource}
```

### Опция 2: API Token (Basic Auth)

1. Отидете на [id.atlassian.com/manage/api-tokens](https://id.atlassian.com/manage/api-tokens)
2. Щракнете върху **Create API token**
3. Наименувайте го “Tajo Integration”

```bash
# Basic Auth: email as username, API token as password
curl -X GET "https://your-domain.atlassian.net/rest/api/3/myself" \
  -u "email@example.com:$JIRA_API_TOKEN" \
  -H "Accept: application/json"
```

Ограничения на API токените

API токените са свързани с индивидуални потребителски акаунти. Ако потребителят бъде деактивиран, интеграцията се счупва. Използвайте OAuth 2.0 за продукционни разгръщания.

### Свързване към Tajo

```bash
# Using OAuth 2.0
tajo connectors install jira \
  --client-id $JIRA_CLIENT_ID \
  --client-secret $JIRA_CLIENT_SECRET \
  --cloud-id $JIRA_CLOUD_ID

# Using API Token
tajo connectors install jira \
  --site-url your-domain.atlassian.net \
  --email admin@example.com \
  --api-token $JIRA_API_TOKEN
```

## Конфигурация

### Основна настройка

```yaml
connectors:
  jira:
    enabled: true
    site_url: "your-domain.atlassian.net"
    auth_type: "oauth2"  # or "basic"

    sync:
      issues: true
      projects: true
      users: true
      comments: true
      worklogs: false

    projects:
      - key: "SUPPORT"
        sync_to_list: 22
      - key: "PRODUCT"
        sync_to_list: 23

    issue_types:
      - Bug
      - Story
      - Task
      - Support Request
```

### Мапване на полета

Мапвайте полета за Jira issue-та и потребители към атрибути в Brevo:

```yaml
field_mapping:
  # User fields
  accountId: JIRA_ACCOUNT_ID
  emailAddress: email
  displayName: FIRSTNAME

  # Issue fields mapped to contact events
  issue_key: LAST_TICKET_KEY
  issue_status: LAST_TICKET_STATUS
  issue_priority: LAST_TICKET_PRIORITY
  issue_created: LAST_TICKET_DATE
  resolution: LAST_TICKET_RESOLUTION
```

## API крайни точки

Tajo се интегрира със следните Jira Cloud REST API v3 крайни точки:

| Endpoint | Method | Цел |
| --- | --- | --- |
| `/rest/api/3/search` | POST | Търсене на issue-та чрез JQL |
| `/rest/api/3/issue/{issueIdOrKey}` | GET | Извличане на детайли за issue |
| `/rest/api/3/issue` | POST | Създаване на issue |
| `/rest/api/3/project` | GET | Списък на всички проекти |
| `/rest/api/3/project/{projectIdOrKey}` | GET | Извличане на детайли за проект |
| `/rest/api/3/user/search` | GET | Търсене на потребители |
| `/rest/api/3/myself` | GET | Извличане на текущия потребител |
| `/rest/api/3/issue/{issueIdOrKey}/comment` | GET | Извличане на коментари на issue |
| `/rest/api/3/webhook` | POST | Регистриране на webhooks |
| `/rest/api/3/status` | GET | Извличане на всички статуси |
| `/rest/api/3/priority` | GET | Извличане на всички приоритети |

## Примери за код

### Инициализация на конектора

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

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

await tajo.connectors.connect('jira', {
  clientId: process.env.JIRA_CLIENT_ID,
  clientSecret: process.env.JIRA_CLIENT_SECRET,
  cloudId: process.env.JIRA_CLOUD_ID
});
```

### Синхронизация на issue-та за поддръжка

```javascript
// Sync Jira support issues to Brevo contacts
await tajo.connectors.sync('jira', {
  type: 'incremental',
  resources: ['issues'],
  jql: 'project = SUPPORT AND updated >= -24h',
  batchSize: 50
});

const status = await tajo.connectors.status('jira');
console.log(status);
// {
//   connected: true,
//   lastSync: '2024-03-15T12:00:00Z',
//   issuesTracked: 4560,
//   projectsMonitored: 3,
//   usersLinked: 890
// }
```

### Обработка на Jira webhooks

```javascript
app.post('/webhooks/jira', async (req, res) => {
  const event = req.body;

  await tajo.connectors.handleWebhook('jira', {
    event: event.webhookEvent,
    payload: {
      issueKey: event.issue?.key,
      issueType: event.issue?.fields?.issuetype?.name,
      status: event.issue?.fields?.status?.name,
      reporter: event.issue?.fields?.reporter?.emailAddress,
      assignee: event.issue?.fields?.assignee?.emailAddress
    }
  });

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

### Търсене на issue-та по клиент

```javascript
// Find all issues reported by a specific customer
const issues = await tajo.connectors.query('jira', {
  jql: 'reporter = "customer@example.com" ORDER BY created DESC',
  maxResults: 20,
  fields: ['summary', 'status', 'priority', 'created']
});
```

## Лимити на заявки

Jira Cloud налага лимити на заявки, за да осигури стабилността на платформата:

| Контекст | Лимит на заявки |
| --- | --- |
| **REST API** | ~100 заявки за 10 секунди за потребител |
| **Конкурентни заявки** | 10 конкурентни дълготрайни заявки |
| **Групови операции** | Варира според крайната точка |

Пагинация

Jira използва пагинация на базата на offset с параметрите `startAt` и `maxResults`. Размерът на страницата по подразбиране е 50, максимумът е 100. Tajo обработва пагинацията автоматично.

Jira връща отговор `429 Too Many Requests` при надвишаване на лимитите на заявки, с хедър `Retry-After`, указващ кога да се опита повторно.

## Отстраняване на проблеми

### Често срещани проблеми

| Проблем | Причина | Решение |
| --- | --- | --- |
| 401 Unauthorized | Невалиден токен или изтекъл OAuth | Обновете OAuth токена или генерирайте нов API токен |
| 403 Forbidden | Недостатъчни разрешения | Проверете дали потребителят има достъп до заявения проект |
| JQL грешки | Невалиден синтаксис на заявката | Валидирайте JQL първо в търсенето на Jira issue-та |
| Webhook не е получен | Firewall блокира | Уверете се, че webhook URL е публично достъпен |
| Липсващи полета | Полето не е в отговора | Добавете полето към параметъра `fields` или използвайте `expand` |

### Debug режим

```yaml
connectors:
  jira:
    debug: true
    log_level: verbose
    log_api_calls: true
```

### Тестване на връзката

```bash
tajo connectors test jira
# ✓ API authentication successful
# ✓ Project access verified
# ✓ Issue search operational
# ✓ User lookup available
# ✓ Webhook registration active
```

## Най-добри практики

1. **Използвайте OAuth 2.0 за продукция** – Избягва зависимост от индивидуални потребителски акаунти
2. **Филтрирайте с JQL** – Синхронизирайте само релевантни issue-та, за да намалите API повикванията
3. **Използвайте webhooks за реално време** – Избягвайте допитване; регистрирайте webhooks за промени в issue-тата
4. **Зачитайте ADF формата** – Jira v3 използва Atlassian Document Format за полета с богат текст
5. **Мапвайте проект към списък** – Създайте отделни списъци в Brevo за всеки Jira проект
6. **Обработвайте пагинацията** – Винаги итерирайте през всички страници за пълни данни

## Сигурност

- **OAuth 2.0 (3LO)** – Сигурна автентикация на базата на токени с refresh токени
- **API Token + Basic Auth** – Base64-кодирани идентификационни данни през HTTPS
- **Само HTTPS** – Цялата API комуникация е криптирана чрез TLS 1.2+
- **Обхватен достъп** – OAuth обхватите ограничават API достъпа до необходимите ресурси
- **Сигурност на Atlassian Cloud** – SOC 2 Type II сертифицирана инфраструктура
- **Криптирано съхранение** – Идентификационните данни са криптирани в покой в Tajo

## Свързани ресурси

- [Конектор GitHub](https://tajo.io/bg/docs/connectors/custom/github)
- [Конектор Linear](https://tajo.io/bg/docs/connectors/custom/linear)
- [Конектор Gorgias](https://tajo.io/bg/docs/connectors/support/gorgias)
- [Brevo Contacts API](https://tajo.io/bg/docs/contact-management)
