고객 서비스 플랫폼 Zendesk에 앱을 연결해 Lovable 앱에서 지원 티켓을 나열·검색·생성·업데이트하고, 고객을 조회하고, 헬프 센터 문서를 읽습니다.
Zendesk에 앱 연결하기
고객 서비스 플랫폼 Zendesk에 앱을 연결해 Lovable 앱에서 지원 티켓을 나열·검색·생성·업데이트하고, 고객을 조회하고, 헬프 센터 문서를 읽으세요.
Zendesk는 지원 티켓, 고객 기록, 셀프서비스 헬프 센터를 제공하는 고객 서비스 플랫폼입니다. Zendesk 커넥터를 사용하면 Lovable 앱이 Zendesk API를 통해 Zendesk Support 계정의 데이터를 읽고 관리할 수 있습니다.
Zendesk는 앱 + 채팅 커넥터로 제공됩니다. 하나의 공유 연결이 빌드 중 프로젝트 채팅과 게시된 앱 모두에서 작동합니다.
Zendesk를 연결하면 앱에서 다음 작업을 할 수 있습니다.
- 티켓과 티켓 댓글을 나열, 검색, 읽기
- 양식으로 티켓을 만들고 공개 댓글이나 내부 메모로 티켓에 답장하기
- 사용자와 조직을 조회하고 최종 사용자 만들기
- 헬프 센터의 카테고리, 섹션, 문서 읽기
- 증분 내보내기(incremental export)로 시간에 따른 티켓 변경 사항 추적하기
- Zendesk 웹훅으로 티켓 이벤트 받기
팀이 Zendesk에서 고객 지원을 운영하면서, Zendesk 자체 인터페이스가 제공하지 않는 보고, 고객 대상 문의 접수, 상담원용 도구를 Lovable 앱으로 직접 만들고 싶을 때 Zendesk가 적합합니다.
주요 활용 사례 및 예시 앱
다음 예시는 Zendesk로 만들 수 있는 앱과 시작할 때 사용할 수 있는 프롬프트를 보여 줍니다.
| 예시 앱 | 프롬프트 예시 | 설명 |
|---|---|---|
| 지원 받은편지함 | Zendesk를 사용해서 미해결 티켓을 나열하고 상담원이 답장할 수 있는 지원 받은편지함 페이지를 만들어줘. | 집중된 화면에서 티켓을 처리합니다. 앱이 미해결 티켓을 나열하고 각 대화를 보여 주며, 공개 답장이나 내부 메모를 Zendesk에 다시 게시합니다. |
| 문의 양식 | Zendesk를 사용해서 제출하면 Zendesk 티켓을 만드는 문의 양식을 내 사이트에 만들어줘. | 웹사이트 문의를 티켓으로 바꿉니다. 앱이 방문자의 정보와 메시지로 티켓을 만들고, 확인용으로 티켓 번호를 보여 줍니다. |
| 고객 상태 포털 | Zendesk를 사용해서 로그인한 고객이 자신의 미해결 티켓을 보고 댓글을 추가할 수 있는 포털을 만들어줘. | 고객에게 자기 티켓만 보여 주는 화면을 제공합니다. 모든 요청이 같은 Zendesk ID(identity)로 실행되므로, 각 고객에게 자기 티켓만 보여 주는 일은 앱이 맡아야 합니다. 앱은 고객이 로그인할 때 사용한 이메일로 해당 티켓을 찾습니다. |
| 팀 업무량 대시보드 | Zendesk를 사용해서 미해결 티켓을 우선순위, 상태, 담당자별로 보여 주고 10분마다 새로 고치는 대시보드를 만들어줘. | 대기열을 한눈에 파악합니다. 앱이 티켓과 사용자를 읽어 그룹화하고, 대시보드가 Zendesk의 rate limit을 넘지 않도록 결과를 캐시합니다. |
| 헬프 센터 검색 | Zendesk를 사용해서 우리 헬프 센터 문서에서 자주 묻는 질문의 답을 찾아 주는 검색창을 만들어줘. | 앱 안에서 헬프 센터를 재사용합니다. 앱이 헬프 센터 문서를 검색하고 Zendesk의 전체 문서로 연결합니다. |
| 티켓 이벤트 알림 | Zendesk를 사용해서 긴급 티켓에 대한 Zendesk 웹훅 이벤트를 받아 내부 알림 페이지에 게시하는 엔드포인트를 만들어줘. | 우선순위가 바뀌면 바로 대응합니다. 앱이 웹훅 전송을 받아 서명을 검증하고, 팀을 위해 이벤트를 저장합니다. |
Zendesk 연결하기
Zendesk 연결을 만들 수 있는 사람은 플랜과 워크스페이스 설정에 따라 다릅니다. 앱 + 채팅 커넥터는 Free, Pro, Business 플랜에서 기본적으로 사용할 수 있습니다. Enterprise 플랜에서는 처음에 사실상 비활성화되어 있습니다. 연결 및 클라이언트를 만들 수 있는 사용자 설정의 기본값이 No one이며, 관리자가 Connectors → Admin settings → App + chat connectors에서 변경해야 사용할 수 있습니다.
연결을 추가할 때 다음 두 가지 방식 중 하나를 선택할 수 있습니다.
- Use your own OAuth app: Zendesk Admin Center에서 직접 만든 OAuth 클라이언트를 승인합니다. 접근 범위는 승인한 스코프로 제한되며, 언제든지 Zendesk에서 접근 권한을 철회할 수 있습니다. 새 연결에는 이 방식을 사용하세요.
- Use your own credentials: 기존 Zendesk API 토큰과 Zendesk 상담원(agent)의 이메일로 연결합니다. 연결은 그 상담원으로 동작합니다. Zendesk가 API 토큰을 폐지하고 있으므로 이 방식은 이미 보유한 토큰에만 사용합니다.
서로 다른 Zendesk 계정, OAuth 클라이언트, API 토큰으로 Zendesk 연결을 여러 개 만들 수 있습니다. 샌드박스 계정과 프로덕션 계정처럼 환경을 분리하거나 팀마다 권한을 다르게 줄 때 유용합니다.
연결을 만든 뒤에는 연결을 사용할 프로젝트에 링크할 수 있습니다. 프로젝트에서 빌드하는 사람은 누구나 채팅에서 Lovable에게 자기 프로젝트를 이 연결에 링크해 달라고 요청할 수 있습니다.
사전 준비
Zendesk를 연결하기 전에 다음을 갖추었는지 확인하세요.
- Zendesk Support 계정, 그리고 OAuth 클라이언트를 만들 수 있는 Admin Center 관리자 권한
- Zendesk 서브도메인. Zendesk 주소의 첫 부분입니다(
https://mycompany.zendesk.com이라면mycompany). Zendesk 주소에 자체 도메인을 사용한다면 Admin Center 홈 페이지에서 서브도메인을 확인하세요. - Lovable 워크스페이스에서 연결을 만들 수 있는 권한(연결 및 클라이언트를 만들 수 있는 사용자 참고)
이 커넥터를 통한 모든 API 요청은 Zendesk 플랜의 rate limit에 포함됩니다. 요금과 할당량은 Lovable이 아니라 Zendesk가 직접 관리합니다.
Zendesk를 연결하려는 방식에 맞춰 아래 설정 단계를 따르세요.
새 연결에는 이 방식을 사용하세요. Zendesk는 API 토큰을 폐지하고 있습니다. 연결 양식에서 이 방식은 Use your own OAuth app으로 표시됩니다.
Step 1: Zendesk OAuth 클라이언트 만들기
커넥터는 사용자의 Zendesk 계정에 있는 OAuth 클라이언트로 인증합니다. 따라서 연결하기 전에 클라이언트 ID와 클라이언트 시크릿이 필요합니다.
Zendesk OAuth 클라이언트를 만드는 방법은 다음과 같습니다.
OAuth clients 페이지 열기
관리자 계정으로 Zendesk에 로그인합니다. Admin Center에서 Apps and integrations → APIs → OAuth clients를 엽니다.
OAuth 클라이언트 추가하기
Add OAuth client를 클릭합니다. Lovable처럼 팀이 알아볼 수 있는 이름을 지정하고, Client kind를 Confidential로 설정합니다.
리디렉션 URL 설정하기
Redirect URLs에 다음 값을 정확히 그대로 추가합니다.
https://api.lovable.dev/workspaces/connectors/standard/oauth/callbackLovable의 연결 양식에도 같은 값이 복사 버튼과 함께 Redirect URI 카드에 표시됩니다. 리디렉션 URL이 정확히 일치하지 않으면 Zendesk가 승인을 거부합니다.
클라이언트가 요청할 수 있는 스코프 선택하기
모든 스코프를 허용하려면 Scopes를 비워 둡니다. 클라이언트를 제한하려면 Lovable에서 선택할 스코프를 여기서도 하나하나 선택하세요. Lovable은 Read everything(read)을 포함해 여섯 가지 스코프를 기본으로 선택하며, 이 스코프는 Step 2의 스코프 표에 나와 있습니다. Lovable에서 선택을 해제할 계획이 아니라면 여기서도 선택하세요. Lovable에서는 선택했지만 여기서 선택하지 않은 스코프가 있으면 invalid_scope 오류와 함께 승인이 실패합니다.
저장하고 자격 증명 복사하기
Save를 클릭합니다. 클라이언트 ID인 Identifier와 Secret을 복사합니다. Zendesk는 전체 시크릿을 한 번만 보여 줍니다. 그런 다음 Save를 다시 클릭합니다.
클라이언트 시크릿은 비밀번호처럼 작동합니다. 안전하게 보관하고 절대 공개적으로 공유하지 마세요. 다음 단계에서 이 시크릿이 필요합니다.
자세한 내용은 Zendesk 문서의 Using OAuth authentication with your application을 참고하세요.
Step 2: Zendesk를 Lovable에 연결하기
클라이언트 ID와 시크릿이 준비되면 Lovable에서 연결을 추가합니다.
Connectors에서 Zendesk 열기
Connectors를 열고 Zendesk를 선택합니다. 카탈로그를 여는 다른 방법은 커넥터를 찾는 위치를 참고하세요.
연결 추가하기
Add connection을 클릭하고 App + chat connector를 선택합니다. 양식은 Details, Configure connection, Sharing의 접을 수 있는 섹션으로 나뉩니다.
연결 이름 지정하기
Details에서 Lovable이 연결 이름을 자동으로 채우며, 이 이름은 변경할 수 있습니다. 이름은 Lovable 안에서 연결을 구분하는 용도로만 쓰입니다.
Use your own OAuth app 선택하기
Configure connection에서 Use your own OAuth app을 선택합니다.
연결 구성하기
계속해서 Configure connection에 다음 값을 입력합니다.
- Zendesk subdomain: Zendesk 주소의 첫 부분입니다. 예를 들어
https://mycompany.zendesk.com이라면mycompany입니다. 전체 주소를 붙여넣어도 됩니다. - Client ID: OAuth 클라이언트의 Identifier입니다.
- Client secret: 클라이언트를 저장할 때 Zendesk가 보여 준 시크릿입니다.
스코프 검토하기(선택 사항)
Scopes에서 연결이 요청하는 권한을 검토합니다. 티켓 읽기·쓰기, 사용자 읽기, 조직 읽기, 헬프 센터 읽기, Read everything 스코프가 기본으로 선택되어 있습니다.
| 스코프 | 설명 | 기본값 |
|---|---|---|
Read tickets (tickets:read) | 티켓과 티켓 댓글 읽기 | 켜짐 |
Write tickets (tickets:write) | 티켓 생성·업데이트, 댓글 추가, 상태나 담당자 변경 | 켜짐 |
Read users (users:read) | 연결된 사용자를 포함한 상담원과 최종 사용자 조회 | 켜짐 |
Write users (users:write) | 최종 사용자와 상담원 생성·업데이트 | 꺼짐 |
Read organizations (organizations:read) | 조직과 조직 멤버십 조회 | 켜짐 |
Write organizations (organizations:write) | 조직 생성·업데이트 | 꺼짐 |
Read help center (hc:read) | 헬프 센터의 카테고리, 섹션, 문서 읽기 | 켜짐 |
Write help center (hc:write) | 헬프 센터 콘텐츠 생성·업데이트 | 꺼짐 |
Read requests (requests:read) | 요청한 최종 사용자에게 보이는 그대로 티켓 읽기 | 꺼짐 |
Write requests (requests:write) | 최종 사용자를 대신해 요청 생성·업데이트 | 꺼짐 |
Read macros (macros:read) | 상담원이 티켓에 적용할 수 있는 매크로 나열 | 꺼짐 |
Read groups (groups:read) | 상담원 그룹 나열 | 꺼짐 |
Upload attachments (ticket_attachments:write) | 티켓 댓글에 첨부할 파일 업로드 | 꺼짐 |
Read satisfaction ratings (satisfaction_ratings:read) | 고객 만족도 평가 읽기 | 꺼짐 |
Read side conversations (side_conversations:read) | 티켓의 사이드 대화 읽기 | 꺼짐 |
Write side conversations (side_conversations:write) | 사이드 대화 시작 및 답장 | 꺼짐 |
Read custom objects (custom_objects:read) | 커스텀 객체 레코드 읽기 | 꺼짐 |
Write custom objects (custom_objects:write) | 커스텀 객체 레코드 생성·업데이트 | 꺼짐 |
Read webhooks (webhooks:read) | 웹훅과 웹훅 서명 시크릿 나열 | 꺼짐 |
Write webhooks (webhooks:write) | 웹훅 생성·업데이트 | 꺼짐 |
Read everything (read) | 모든 Zendesk Support 및 Help Center 리소스에 대한 읽기 권한. 검색과 증분 내보내기에 필요합니다. | 켜짐 |
Write everything (write) | 모든 Zendesk Support 및 Help Center 리소스에 대한 쓰기 권한 | 꺼짐 |
Zendesk OAuth 클라이언트의 Scopes 필드가 비어 있지 않다면, Lovable에서 선택하는 모든 스코프가 해당 클라이언트에서도 허용되어 있어야 합니다. 그렇지 않으면 Zendesk가 invalid_scope 오류와 함께 승인을 거부합니다.
전체 스코프 문서는 Zendesk의 scope reference를 참고하세요.
이 연결을 사용할 수 있는 사람 선택하기
Sharing에서 연결은 기본적으로 본인만 사용할 수 있으며 Private 라벨이 표시됩니다. 연결을 공유하려면 Share with others를 클릭합니다. 그런 다음 이메일로 워크스페이스 멤버를 추가하거나, Invite entire workspace를 클릭해 Lovable 워크스페이스의 모든 사람이 연결을 사용할 수 있게 합니다.
자세한 내용은 연결 및 클라이언트를 사용할 수 있는 사용자를 참고하세요.
Zendesk에 연결하고 승인하기
Connect를 클릭합니다. Zendesk 승인 창이 열리므로 브라우저가 팝업을 차단하지 않는지 확인하세요. 팝업이 차단되면 Lovable이 대신 승인 페이지로 리디렉션합니다.
요청이 표시되면 Zendesk에 로그인하고, 요청된 권한을 검토한 다음 앱을 승인합니다.
승인이 끝나면 확인 메시지와 함께 Lovable로 돌아옵니다.
Connect를 클릭할 때 Lovable은 클라이언트 ID와 시크릿을 확인하지 않습니다. 클라이언트 ID나 리디렉션 URL이 잘못되었다면 Zendesk가 승인 창에 오류를 표시합니다. 시크릿이 잘못되었다면 승인한 뒤에 연결이 실패합니다.
Zendesk는 API 토큰을 폐지하고 있습니다. 2026년 10월 27일 이후에는 새 API 토큰을 만들 수 없습니다. Zendesk는 30일 동안 사용하지 않은 토큰을 비활성화합니다. 2027년 4월 30일에는 모든 API 토큰이 작동을 멈춥니다. 새 연결에는 OAuth 클라이언트를 사용하세요.
이 방식은 이미 보유한 토큰이 있을 때만 선택하세요. 연결은 입력한 이메일의 Zendesk 상담원으로 동작하며, 그 상담원의 모든 권한을 가집니다. 앱에 필요한 접근 권한만 가진 전용 상담원을 사용하세요. 연결 양식에서 이 방식은 Use your own credentials로 표시됩니다.
Step 1: Zendesk API 토큰 찾기
연결에는 기존 API 토큰과, 연결이 대신 동작할 Zendesk 상담원의 이메일이 필요합니다.
API 토큰을 찾는 방법은 다음과 같습니다.
API tokens 페이지 열기
관리자 계정으로 Zendesk에 로그인합니다. Admin Center에서 Apps and integrations → APIs → API tokens를 엽니다. 사용할 토큰의 상태가 Active인지 확인하세요.
전체 토큰 찾기
Zendesk는 토큰을 만들 때 한 번만 전체 토큰을 보여 줍니다. 그 이후 Admin Center에는 줄인 형태만 표시됩니다. 토큰을 만들 때 저장해 둔 전체 토큰을 사용하세요. 전체 토큰이 더 이상 없다면 대신 OAuth 클라이언트를 사용하세요.
API 토큰은 비밀번호처럼 작동하며, 상담원의 이메일과 함께 사용하면 계정의 어떤 상담원으로도 동작할 수 있습니다. 안전하게 보관하고 절대 공개적으로 공유하지 마세요. 다음 단계에서 이 토큰이 필요합니다.
자세한 내용은 Zendesk 문서의 Managing access to the Zendesk API를 참고하세요.
Step 2: Zendesk를 Lovable에 연결하기
API 토큰이 준비되면 Lovable에서 연결을 추가합니다.
Connectors에서 Zendesk 열기
Connectors를 열고 Zendesk를 선택합니다. 카탈로그를 여는 다른 방법은 커넥터를 찾는 위치를 참고하세요.
연결 추가하기
Add connection을 클릭하고 App + chat connector를 선택합니다. 양식은 Details, Configure connection, Sharing의 접을 수 있는 섹션으로 나뉩니다.
연결 이름 지정하기
Details에서 Lovable이 연결 이름을 자동으로 채우며, 이 이름은 변경할 수 있습니다. 이름은 Lovable 안에서 연결을 구분하는 용도로만 쓰입니다.
Use your own credentials 선택하기
Configure connection에서 Use your own credentials를 선택합니다. 이것이 API 토큰 방식입니다.
연결 구성하기
계속해서 Configure connection에 다음 값을 입력합니다.
- Zendesk subdomain: Zendesk 주소의 첫 부분입니다. 예를 들어
https://mycompany.zendesk.com이라면mycompany입니다. 전체 주소를 붙여넣어도 됩니다. - Agent email: 연결이 대신 동작할 Zendesk 상담원의 이메일입니다. 앱에 필요한 접근 권한만 가진 전용 상담원을 사용하세요.
- API token: 토큰을 만들 때 저장해 둔 전체 토큰입니다.
이 연결을 사용할 수 있는 사람 선택하기
Sharing에서 연결은 기본적으로 본인만 사용할 수 있으며 Private 라벨이 표시됩니다. 연결을 공유하려면 Share with others를 클릭합니다. 그런 다음 이메일로 워크스페이스 멤버를 추가하거나, Invite entire workspace를 클릭해 Lovable 워크스페이스의 모든 사람이 연결을 사용할 수 있게 합니다.
자세한 내용은 연결 및 클라이언트를 사용할 수 있는 사용자를 참고하세요.
연결하기
Connect를 클릭합니다. Lovable은 연결을 저장하기 전에 Zendesk API를 대상으로 토큰과 이메일을 검증합니다.
연결이 완료되면 프로젝트에서 빌드하는 사람은 누구나 채팅에서 Lovable에게 자기 프로젝트를 Zendesk에 링크해 달라고 요청할 수 있습니다(구성된 연결 수준 접근 권한 기준). 그러면 Lovable 앱에서 티켓, 사용자, 조직, 헬프 센터 콘텐츠를 읽고 관리할 수 있습니다.
Zendesk 데이터와 웹훅 다루기
각 연결은 하나의 Zendesk ID를 나타냅니다. OAuth 연결이라면 OAuth 클라이언트를 승인한 사용자이며 승인한 스코프로 권한이 제한되고, API 토큰 연결이라면 이메일을 입력한 Zendesk 상담원입니다. 앱이 보내는 모든 요청은 그 ID의 권한으로 실행되고 Zendesk는 계정 단위로 rate limit을 적용합니다. 따라서 반복해서 폴링하는 대신 결과를 캐시하고 필요할 때 데이터를 읽도록 Lovable에게 요청하세요.
앱이 티켓 변경에 반응해야 한다면, Zendesk의 웹훅 서명을 검증하고 전송된 각 이벤트를 저장하는 공개 엔드포인트를 만들어 달라고 Lovable에게 요청하세요. 그런 다음 Admin Center → Apps and integrations → Webhooks → Webhooks에서 해당 엔드포인트를 웹훅으로 등록하고 트리거에서 실행되도록 설정합니다. 앱을 게시하기 전과 게시한 후에 각각 어떤 주소를 등록해야 하는지는 Lovable이 알려 줍니다.
Lovable에게 프롬프트를 작성할 때는 앱에 필요한 레코드와 작업을 구체적으로 명시하세요. 예를 들어 앱이 티켓을 나열해야 하는지, 티켓에 답장해야 하는지, 양식으로 티켓을 만들어야 하는지, 요청자를 조회해야 하는지, 헬프 센터 문서를 검색해야 하는지 밝히세요.
제한 사항
Zendesk 커넥터로는 다음 작업을 할 수 없습니다.
- 최종 사용자별 Zendesk 로그인 지원하기. 각 연결은 해당 연결에 링크된 모든 프로젝트가 공유하는 단일 Zendesk 계정을 나타냅니다.
- 연결을 만든 뒤 Zendesk 서브도메인 변경하기. API 토큰 연결에서는 상담원 이메일도 변경할 수 없습니다. 다른 서브도메인이나 상담원을 사용하려면 새 연결을 만드세요.
Zendesk 쪽에서 Zendesk 승인이 철회되면 API 호출이 다시 성공하도록 Lovable에서 통합을 다시 연결해야 합니다.
문제 해결
요청이 403으로 실패하는 경우. 연결에 해당 엔드포인트에 대한 권한이 없습니다. OAuth 연결이라면 연결을 열고 Configure connection에서 빠진 스코프를 선택하세요. Zendesk OAuth 클라이언트가 스코프를 제한하고 있다면 클라이언트에서도 해당 스코프를 허용하세요. 그런 다음 Reconnect를 클릭합니다. API 토큰 연결이라면 Zendesk에서 해당 상담원에게 권한을 부여하세요. 아무것도 바꾸지 않고 다시 시도하면 해결되지 않습니다.
연결에 Token expired 배지가 표시되는 경우. OAuth 연결은 리프레시 토큰을 보관하는데, Zendesk는 90일 동안 사용하지 않은 리프레시 토큰을 만료시킵니다. 연결에서 Reconnect를 클릭하고 다시 승인하세요.
API 토큰 연결의 요청이 401로 실패하는 경우. Zendesk에서 토큰이 비활성화되었거나 삭제되었습니다. OAuth 클라이언트로 연결을 새로 만드세요.
요청이 429로 실패하는 경우. 앱이 플랜에 적용되는 Zendesk의 분당 rate limit을 넘었거나, Lovable 커넥터 게이트웨이의 프로젝트별 사용 한도를 넘었습니다. 두 경우 모두 기다려야 하는 초 수를 담은 Retry-After header를 반환합니다. Lovable에게 이 header를 준수하거나, 읽기 결과를 캐시하거나, 데이터를 덜 자주 가져오도록 요청하세요.
Zendesk 연결 관리
연결은 Connectors에서 관리합니다. Zendesk 커넥터를 선택한 다음 연결을 여세요.
- Unlink projects를 사용하면 다른 프로젝트에서는 연결을 계속 사용할 수 있도록 유지하면서 특정 프로젝트의 Zendesk 접근 권한만 제거할 수 있습니다. 단계별 절차는 연결에서 프로젝트 연결 해제를 참고하세요.
- Delete the connection을 사용하면 워크스페이스에서 연결을 완전히 제거할 수 있습니다. 삭제는 영구적입니다. 연결된 모든 프로젝트에서 자격 증명이 제거되고, Zendesk를 사용하는 앱 기능은 새 연결을 추가할 때까지 작동하지 않습니다. 단계와 삭제 권한은 연결 삭제를 참고하세요.