Σύνδεσμος Jira
Συνδέστε την περίπτωση Jira Cloud σας με το Brevo για παρακολούθηση ζητημάτων που αντιμετωπίζουν πελάτες, ορατότητα αιτημάτων υποστήριξης και ειδοποιήσεις ορόσημων έργου μέσω Tajo.
Επισκόπηση
| Ιδιότητα | Τιμή |
|---|---|
| Πλατφόρμα | Jira Cloud |
| Κατηγορία | Προσαρμοσμένο |
| Πολυπλοκότητα Ρύθμισης | Μεσαία |
| Επίσημη Ενσωμάτωση | Όχι |
| Δεδομένα που Συγχρονίζονται | Ζητήματα, Έργα, Χρήστες, Εκδηλώσεις |
| Τύπος API | REST API v3 |
| Πιστοποίηση | OAuth 2.0 (3LO) / API Token (Basic Auth) |
| Βασικό URL | https://your-domain.atlassian.net/rest/api/3/ |
Χαρακτηριστικά
- Συγχρονισμός εκδηλώσεων ζητήματος - Προώθηση εκδηλώσεων δημιουργίας, ενημέρωσης και επίλυσης ζητημάτων στα χρονοδιαγράμματα επαφών Brevo
- Παρακολούθηση αιτημάτων πελάτη - Σύνδεση ζητημάτων Jira με επαφές Brevo για ορατότητα υποστήριξης
- Ειδοποιήσεις ορόσημων έργου - Ενεργοποίηση καμπανιών Brevo σε κυκλοφορίες εκδόσεων και ολοκληρώσεις sprint
- Δεδομένα χωρητικότητας ομάδας - Συγχρονισμός μετρήσεων φόρτου εργασίας για επιχειρησιακούς πίνακες εργαλείων
- Εκδηλώσεις αλλαγής κατάστασης - Παρακολούθηση μεταβάσεων ροής εργασίας ζητήματος ως εκδηλώσεις Brevo
- Συγχρονισμός σχολίων - Προώθηση σχολίων που αντιμετωπίζουν πελάτες σε αρχεία καταγραφής δραστηριότητας Brevo
Προαπαιτούμενα
Πριν ξεκινήσετε, βεβαιωθείτε ότι διαθέτετε:
- Περίπτωση Jira Cloud (Jira Software, Jira Service Management ή Jira Work Management)
- Πρόσβαση διαχειριστή για δημιουργία εφαρμογών OAuth ή παραγωγή tokens API
- Το email λογαριασμού Atlassian συσχετισμένο με το token API σας
- Λογαριασμό Brevo με πρόσβαση API
- Λογαριασμό Tajo με ενεργή συνδρομή
Πιστοποίηση
Το Jira Cloud υποστηρίζει πολλαπλές μεθόδους πιστοποίησης.
Επιλογή 1: OAuth 2.0 (3LO) - Συνιστάται
- Μεταβείτε στο developer.atlassian.com
- Κάντε κλικ στο Create > OAuth 2.0 integration
- Ρυθμίστε URL callback:
https://app.tajo.io/callbacks/jira - Προσθέστε αυτά τα scopes:
read:jira-workread:jira-userwrite:jira-workread:meΗ δομή URL API για OAuth 2.0:
https://api.atlassian.com/ex/jira/{cloudId}/rest/api/3/{resource}Επιλογή 2: API Token (Basic Auth)
- Μεταβείτε στο id.atlassian.com/manage/api-tokens
- Κάντε κλικ στο Create API token
- Ονομάστε το “Tajo Integration”
# Basic Auth: email as username, API token as passwordcurl -X GET "https://your-domain.atlassian.net/rest/api/3/myself" \ -H "Accept: application/json"Περιορισμοί API Token
Τα tokens API συνδέονται με μεμονωμένους λογαριασμούς χρήστη. Εάν ο χρήστης απενεργοποιηθεί, η ενσωμάτωση διακόπτεται. Χρησιμοποιήστε OAuth 2.0 για αναπτύξεις παραγωγής.
Σύνδεση με Tajo
# Using OAuth 2.0tajo connectors install jira \ --client-id $JIRA_CLIENT_ID \ --client-secret $JIRA_CLIENT_SECRET \ --cloud-id $JIRA_CLOUD_ID
# Using API Tokentajo connectors install jira \ --site-url your-domain.atlassian.net \ --api-token $JIRA_API_TOKENΔιαμόρφωση
Βασική Ρύθμιση
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 σε χαρακτηριστικά Brevo:
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_RESOLUTIONEndpoints API
Το Tajo ενσωματώνεται με τα παρακάτω endpoints REST API v3 Jira Cloud:
| Endpoint | Μέθοδος | Σκοπός |
|---|---|---|
/rest/api/3/search | POST | Αναζήτηση ζητημάτων με JQL |
/rest/api/3/issue/{issueIdOrKey} | GET | Λήψη λεπτομερειών ζητήματος |
/rest/api/3/issue | POST | Δημιουργία ζητήματος |
/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 | Λήψη σχολίων ζητήματος |
/rest/api/3/webhook | POST | Εγγραφή webhooks |
/rest/api/3/status | GET | Λήψη όλων των καταστάσεων |
/rest/api/3/priority | GET | Λήψη όλων των προτεραιοτήτων |
Παραδείγματα Κώδικα
Αρχικοποίηση Συνδέσμου
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});Συγχρονισμός Ζητημάτων Υποστήριξης
// Sync Jira support issues to Brevo contactsawait 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// }Χειρισμός Webhooks Jira
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');});Αναζήτηση Ζητημάτων ανά Πελάτη
// Find all issues reported by a specific customerconst issues = await tajo.connectors.query('jira', { maxResults: 20, fields: ['summary', 'status', 'priority', 'created']});Όρια Ρυθμού
Το Jira Cloud επιβάλλει όρια ρυθμού για να εξασφαλίσει σταθερότητα πλατφόρμας:
| Πλαίσιο | Όριο Ρυθμού |
|---|---|
| REST API | ~100 αιτήματα ανά 10 δευτερόλεπτα ανά χρήστη |
| Ταυτόχρονα αιτήματα | 10 ταυτόχρονα μακρόχρονα αιτήματα |
| Λειτουργίες μαζικής επεξεργασίας | Ποικίλλει ανά endpoint |
Σελιδοποίηση
Το Jira χρησιμοποιεί σελιδοποίηση βάσει offset με παραμέτρους startAt και maxResults. Το προεπιλεγμένο μέγεθος σελίδας είναι 50, μέγιστο 100. Το Tajo χειρίζεται αυτόματα τη σελιδοποίηση.
Το Jira επιστρέφει απόκριση 429 Too Many Requests όταν υπερβαίνονται τα όρια ρυθμού, με header Retry-After που υποδεικνύει πότε να επαναληφθεί η προσπάθεια.
Αντιμετώπιση Προβλημάτων
Συνηθισμένα Προβλήματα
| Πρόβλημα | Αιτία | Λύση |
|---|---|---|
| 401 Unauthorized | Μη έγκυρο token ή ληγμένο OAuth | Ανανέωση OAuth token ή αναγέννηση API token |
| 403 Forbidden | Ανεπαρκή δικαιώματα | Ελέγξτε ότι ο χρήστης έχει πρόσβαση στο ζητούμενο έργο |
| Σφάλματα JQL | Μη έγκυρη σύνταξη ερωτήματος | Επικυρώστε JQL στην αναζήτηση ζητημάτων Jira πρώτα |
| Δεν λαμβάνεται webhook | Αποκλεισμός firewall | Βεβαιωθείτε ότι το URL webhook είναι δημόσια προσβάσιμο |
| Λείπουν πεδία | Το πεδίο δεν υπάρχει στην απόκριση | Προσθέστε πεδίο στην παράμετρο fields ή χρησιμοποιήστε expand |
Λειτουργία Εντοπισμού Σφαλμάτων
connectors: jira: debug: true log_level: verbose log_api_calls: trueΔοκιμή Σύνδεσης
tajo connectors test jira# ✓ API authentication successful# ✓ Project access verified# ✓ Issue search operational# ✓ User lookup available# ✓ Webhook registration activeΒέλτιστες Πρακτικές
- Χρησιμοποιήστε OAuth 2.0 για παραγωγή - Αποφεύγει εξάρτηση από μεμονωμένους λογαριασμούς χρηστών
- Φιλτράρετε με JQL - Συγχρονίστε μόνο σχετικά ζητήματα για μείωση κλήσεων API
- Χρησιμοποιήστε webhooks για πραγματικό χρόνο - Αποφύγετε polling· εγγράψτε webhooks για αλλαγές ζητημάτων
- Σεβαστείτε τη μορφή ADF - Το Jira v3 χρησιμοποιεί Atlassian Document Format για πεδία μορφατισμένου κειμένου
- Αντιστοιχίστε έργο σε λίστα - Δημιουργήστε ξεχωριστές λίστες Brevo ανά έργο Jira
- Χειριστείτε σελιδοποίηση - Επαναλάβετε πάντα σε όλες τις σελίδες για πλήρη δεδομένα
Ασφάλεια
- OAuth 2.0 (3LO) - Ασφαλής πιστοποίηση βάσει token με refresh tokens
- API Token + Basic Auth - Κωδικοποιημένα Base64 διαπιστευτήρια μέσω HTTPS
- Μόνο HTTPS - Όλη η επικοινωνία API κρυπτογραφημένη μέσω TLS 1.2+
- Πρόσβαση βάσει scope - Τα scopes OAuth περιορίζουν την πρόσβαση API στους απαιτούμενους πόρους
- Ασφάλεια Atlassian Cloud - Υποδομή πιστοποιημένη SOC 2 Type II
- Κρυπτογραφημένη Αποθήκευση - Τα διαπιστευτήρια κρυπτογραφούνται σε ηρεμία στο Tajo