Trình Kết Nối Jira

Kết nối Jira Cloud với Brevo qua Tajo để theo dõi trạng thái issues của khách hàng, đồng bộ dữ liệu người dùng và kích hoạt thông báo tự động dựa trên cập nhật ticket.

Tổng Quan

Thuộc TínhGiá Trị
Nền TảngJira Cloud
Danh MụcTùy Chỉnh
Độ Phức Tạp Thiết LậpTrung Bình
Tích Hợp Chính ThứcKhông
Dữ Liệu Đồng BộIssues, Projects, Người Dùng, Worklogs
Loại APIREST API v3
Xác ThựcAPI Token (Basic Auth) hoặc OAuth 3LO

Tính Năng

  • Đồng bộ issues - Đồng bộ Jira issues liên quan đến khách hàng sang liên hệ Brevo
  • Theo dõi trạng thái - Kích hoạt hành động Brevo khi trạng thái issue thay đổi
  • Đồng bộ người dùng - Nhập dữ liệu người dùng Jira sang liên hệ Brevo
  • Truy vấn JQL - Sử dụng Jira Query Language để lọc issues theo tiêu chí tùy chỉnh
  • Webhook theo thời gian thực - Nhận cập nhật khi issues được tạo hoặc cập nhật

Yêu Cầu

Trước khi bắt đầu, hãy đảm bảo bạn có:

  1. Instance Jira Cloud (không hỗ trợ Server/Data Center)
  2. API token từ Atlassian account settings
  3. Tài khoản Brevo với quyền truy cập API
  4. Tài khoản Tajo

Xác Thực

API Token (Basic Auth)

Terminal window
curl "https://your-domain.atlassian.net/rest/api/3/issue" \
-H "Authorization: Basic BASE64(email:api_token)" \
-H "Accept: application/json"

Tạo API tokens tại https://id.atlassian.com/manage-profile/security/api-tokens.

Giới Hạn API Token

API tokens Jira có quyền bằng tài khoản Atlassian liên quan. Tạo tài khoản dịch vụ chuyên dụng với quyền tối thiểu cần thiết cho tích hợp production.

OAuth 3LO

Terminal window
# Bước 1: Authorization URL
https://auth.atlassian.com/authorize
?audience=api.atlassian.com
&client_id=YOUR_CLIENT_ID
&scope=read:jira-work+read:jira-user
&redirect_uri=YOUR_CALLBACK_URL
&response_type=code

Cấu Hình

Thiết Lập Cơ Bản

connectors:
jira:
enabled: true
domain: "your-domain.atlassian.net"
email: "${JIRA_EMAIL}"
api_token: "${JIRA_API_TOKEN}"
sync:
issues: true
users: true
projects: false
# JQL filter mặc định
default_jql: "project in (SUPPORT, SALES) AND updated >= -30d"

Ánh Xạ Trường

field_mapping:
reporter.emailAddress: email
reporter.displayName: FULLNAME
summary: JIRA_ISSUE_SUMMARY
status.name: JIRA_STATUS
priority.name: JIRA_PRIORITY
created: JIRA_CREATED_DATE
customfield_10001: ACCOUNT_NAME

API Endpoints

Phương ThứcEndpointMô Tả
GET/rest/api/3/issue/{issueId}Lấy chi tiết issue
POST/rest/api/3/issue/bulkTạo nhiều issues
POST/rest/api/3/jql/parsePhân tích và xác thực JQL
GET/rest/api/3/searchTìm kiếm issues bằng JQL
GET/rest/api/3/users/searchTìm kiếm người dùng
GET/rest/api/3/projectLiệt kê tất cả projects
POST/rest/api/3/webhookĐăng ký webhook

Ví Dụ Code

Khởi Tạo Trình Kết Nối

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', {
domain: process.env.JIRA_DOMAIN,
email: process.env.JIRA_EMAIL,
apiToken: process.env.JIRA_API_TOKEN
});

Truy Vấn Issues Bằng JQL

// Tìm kiếm issues bằng JQL
const issues = await tajo.connectors.query('jira', {
jql: 'project = SUPPORT AND status = "In Progress" AND reporter is not EMPTY',
fields: ['summary', 'status', 'priority', 'reporter', 'created']
});

Phân Trang

Jira giới hạn 100 kết quả mỗi trang. Sử dụng startAtmaxResults để phân trang qua tất cả issues. Tajo tự động xử lý phân trang khi đồng bộ.

Giới Hạn Tốc Độ

LoạiGiới Hạn
REST API10 yêu cầu/giây (per user)
WebhooksKhông giới hạn sự kiện
Bulk operations50 issues mỗi yêu cầu

Khắc Phục Sự Cố

Sự CốNguyên NhânGiải Pháp
401 UnauthorizedAPI token không hợp lệXác minh email và token
JQL không hợp lệLỗi cú pháp JQLKiểm tra JQL trong Jira search trước
Issues thiếuQuyền truy cập projectĐảm bảo tài khoản có quyền Browse Projects
Webhook không nhậnURL không thể truy cậpKiểm tra URL webhook có thể truy cập từ internet

Tài Nguyên Liên Quan

Subscribe to updates

developer-docs

Drop your email or phone number — we'll send you what matters next.

auto-detect
Trợ lý AI

Xin chào! Hãy hỏi tôi về tài liệu.