Gorgias 커넥터
Gorgias 헬프데스크를 Brevo에 연결하여 지원 기반 고객 참여, 티켓 후 마케팅 플로, Tajo를 통한 통합된 고객 경험 분석을 구현하십시오.
개요
| 속성 | 값 |
|---|---|
| 플랫폼 | Gorgias |
| 카테고리 | Support |
| 설정 복잡도 | 쉬움 |
| 공식 통합 | 아니오 |
| 동기화 데이터 | 고객, 티켓, 이벤트 |
| API 유형 | REST API |
| 인증 | API Key + Email (Basic Auth) |
| Base URL | https://{domain}.gorgias.com/api/ |
기능
- 티켓 이벤트 동기화 - 티켓 생성, 해결, CSAT 이벤트를 Brevo 타임라인으로 전달
- 고객 프로필 강화 - 태그 및 맞춤 필드를 포함한 Gorgias 고객 데이터를 Brevo로 동기화
- 지원 후 캠페인 - 후속 조치 또는 업셀을 위해 티켓 해결 후 Brevo 워크플로 트리거
- 만족도 추적 - CSAT 설문 결과를 Brevo 연락처 속성으로 동기화
- 태그 기반 세그먼테이션 - Gorgias 고객 태그를 Brevo 목록 멤버십으로 미러링
- 매크로 및 규칙 이벤트 - 운영 분석을 위한 자동화 작업 추적
사전 요구 사항
시작하기 전에 다음이 준비되어 있는지 확인하십시오.
- 관리자 접근 권한이 있는 Gorgias 계정
- Gorgias 서브도메인 (예:
yourstore.gorgias.com) - API 키와 연결된 이메일 주소
- API 접근이 가능한 Brevo 계정
- 활성 구독이 있는 Tajo 계정
인증
Gorgias는 계정 이메일과 API 키로 HTTP Basic 인증을 사용합니다.
API 키 생성
- Gorgias 대시보드에 로그인
- Settings > REST API로 이동
- Create API Key 클릭 (또는 기존 키 복사)
- API base URL 확인:
https://{domain}.gorgias.com/api/
# Basic Auth: 사용자 이름으로 이메일, 비밀번호로 API 키curl -X GET "https://yourstore.gorgias.com/api/customers" \ -H "Content-Type: application/json"API 키 권한
Gorgias API 키는 계정 데이터에 대한 전체 접근 권한을 갖습니다. 범위 기반 권한 모델은 없습니다. API 키를 보호하고 정기적으로 교체하십시오.
Tajo에 연결
tajo connectors install gorgias \ --domain yourstore.gorgias.com \ --api-key $GORGIAS_API_KEY구성
기본 설정
connectors: gorgias: enabled: true domain: "yourstore.gorgias.com"
sync: customers: true tickets: true satisfaction_surveys: true tags: true
lists: all_support_contacts: 35 satisfied_customers: 36 dissatisfied_customers: 37필드 매핑
Gorgias 고객 및 티켓 필드를 Brevo 연락처 속성에 매핑합니다.
field_mapping: # 고객 필드 id: GORGIAS_ID email: email name: FIRSTNAME phone: SMS
# 지원 지표 nb_tickets: TICKET_COUNT last_ticket_date: LAST_SUPPORT_DATE last_ticket_channel: LAST_SUPPORT_CHANNEL avg_response_time: AVG_RESPONSE_TIME
# CSAT 데이터 last_satisfaction_score: CSAT_SCORE satisfaction_count: CSAT_RESPONSES
# 맞춤 필드 customer_type: CUSTOMER_TYPE vip_status: VIP_STATUS이벤트 매핑
event_mapping: ticket.created: SUPPORT_TICKET_OPENED ticket.closed: SUPPORT_TICKET_RESOLVED ticket.reopened: SUPPORT_TICKET_REOPENED satisfaction_survey.created: CSAT_SURVEY_SENT satisfaction_survey.responded: CSAT_SUBMITTED customer.created: SUPPORT_CUSTOMER_CREATEDAPI 엔드포인트
Tajo는 다음 Gorgias REST API 엔드포인트와 통합됩니다.
| 엔드포인트 | 메서드 | 목적 |
|---|---|---|
/api/customers | GET | 고객 목록 |
/api/customers/{id} | GET | 고객 가져오기 |
/api/customers | POST | 고객 생성 |
/api/customers/{id} | PUT | 고객 업데이트 |
/api/tickets | GET | 티켓 목록 |
/api/tickets/{id} | GET | 티켓 가져오기 |
/api/tickets/{id}/messages | GET | 티켓 메시지 목록 |
/api/tags | GET | 태그 목록 |
/api/satisfaction-surveys | GET | CSAT 설문 목록 |
/api/satisfaction-surveys/{id} | GET | 설문 가져오기 |
/api/users | GET | 상담원 목록 |
/api/integrations | GET | 통합 목록 |
/api/events | GET | 이벤트 목록 |
/api/customers/{id}/custom-fields | 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('gorgias', { domain: 'yourstore.gorgias.com', apiKey: process.env.GORGIAS_API_KEY});고객을 Brevo로 동기화
await tajo.connectors.sync('gorgias', { type: 'incremental', resources: ['customers'], since: '2024-01-01', batchSize: 30});
const status = await tajo.connectors.status('gorgias');console.log(status);// {// connected: true,// lastSync: '2024-03-15T17:00:00Z',// customersCount: 14200,// ticketsTracked: 28600,// csatResponses: 3400// }HTTP 통합을 통한 티켓 이벤트 처리
// Gorgias는 Rules 또는 HTTP 통합을 통해 HTTP 요청을 보낼 수 있음app.post('/webhooks/gorgias', async (req, res) => { const event = req.body;
await tajo.connectors.handleEvent('gorgias', { type: 'ticket.updated', payload: { ticketId: event.ticket_id, status: event.status, customerEmail: event.customer?.email, channel: event.channel, tags: event.tags, satisfaction: event.satisfaction } });
res.status(200).send('OK');});해결 후 캠페인
// 지원 티켓이 해결된 후 후속 이메일 트리거tajo.connectors.on('gorgias', 'ticket.closed', async (event) => { if (event.satisfaction_score >= 4) { await tajo.campaigns.trigger('post-support-upsell', { email: event.customer.email, params: { agent_name: event.assignee.name, ticket_subject: event.subject, resolution_time: event.resolution_time } }); }});CSAT 데이터 동기화
// 만족도 설문 결과를 Brevo 속성에 동기화await tajo.connectors.sync('gorgias', { type: 'incremental', resources: ['satisfaction_surveys'], since: '2024-01-01'});속도 제한
Gorgias는 계정당 속도 제한을 적용합니다.
| 제한 유형 | 값 |
|---|---|
| API 속도 제한 | 초당 2 요청 |
| 버스트 허용 | 짧은 버스트에서 최대 5 요청 |
| 페이지네이션 | 페이지당 30 항목 (기본값), 최대 100 |
페이지네이션 전략
Gorgias는 cursor 및 limit 매개변수로 커서 기반 페이지네이션을 사용합니다. Tajo는 최대 효율성을 위해 페이지당 최대 100개 항목을 요청하며 이를 자동으로 처리합니다.
속도 제한을 초과하면 Gorgias는 429 Too Many Requests를 반환합니다.
문제 해결
일반적인 문제
| 문제 | 원인 | 해결 방법 |
|---|---|---|
| 401 Unauthorized | 잘못된 이메일 또는 API 키 | Gorgias Settings > REST API에서 자격 증명 확인 |
| 404 Not Found | 잘못된 엔드포인트 또는 리소스 ID | API base URL에 서브도메인이 포함되어 있는지 확인 |
| 고객 누락 | 기록에 이메일 없음 | Gorgias는 고객 매칭에 이메일이 필요함 |
| 태그가 동기화되지 않음 | 태그가 고객에게 할당되지 않음 | 태그가 티켓이 아닌 고객 객체에 있는지 확인 |
| 느린 동기화 | 낮은 속도 제한 | Gorgias는 2 요청/초로 제한; 전체 동기화에 더 오래 걸림 |
디버그 모드
connectors: gorgias: debug: true log_level: verbose log_api_calls: true연결 테스트
tajo connectors test gorgias# ✓ API 인증 성공# ✓ 고객 목록 접근 가능# ✓ 티켓 데이터 읽기 가능# ✓ CSAT 설문 사용 가능# ✓ 태그 목록 가능모범 사례
- 실시간에 HTTP 통합 사용 - 티켓 이벤트에서 Tajo로 HTTP 요청을 보내도록 Gorgias Rules 구성
- CSAT 데이터 정기 동기화 - 만족도 점수를 사용하여 재참여 캠페인 실행
- 태그를 세그먼트에 매핑 - Gorgias 고객 태그를 Brevo 목록 멤버십으로 변환
- 페이지네이션 신중하게 처리 - 2 요청/초 제한으로 대규모 데이터 세트의 더 긴 동기화 시간 계획
- 이커머스 데이터와 연결 - Brevo에서 Gorgias 지원 데이터와 Shopify 주문 데이터 결합
- API 키 교체 - Gorgias 키는 전체 접근 권한을 가지므로 주기적으로 교체
보안
- Basic Auth - HTTPS를 통한 이메일 및 API 키
- HTTPS 전용 - TLS 1.2+를 통해 암호화된 모든 API 통신
- 전체 접근 키 - 세분화된 범위 지정 없음 (키를 신중하게 보호)
- IP 허용 목록 - 상위 Gorgias 요금제에서 사용 가능
- 암호화된 저장 - Tajo에서 API 자격 증명이 저장 시 암호화됨
- SOC 2 준수 - Gorgias 플랫폼은 SOC 2 Type II 인증을 받음