서버베타
오픈이노베이션 피드백 API
고객이 남긴 의견을 오픈이노베이션 대시보드에 올리고, 이슈와 이어서 진행 상황을 추적해요. 반영되면 고객에게 다시 알려 피드백 고리를 닫아요.
피드백 흐름
- 고객이 메신저에서
kind: "feedback"대화를 시작하거나, 우리 서버가POST /v1/feedback으로 의견을 올려요. - 피드백은 오픈이노베이션 대시보드에 모이고, 팀은 비슷한 의견을 묶어 우선순위를 정해요.
- 팀이 대화를 이슈로 만들면(
POST …/conversations/:id/issue) 둘이 연결돼요. - 이슈 상태가 바뀌면 웹훅
feedback.status_changed가 가고, 고객에게 반영 소식을 전해요.
피드백 올리기
서버에서 시크릿 키(Authorization: Bearer ent_sk_…)로 호출해요.
curl -X POST https://entropy.ly/api/v1/feedback \
-H "Authorization: Bearer $ENTROPY_SECRET_KEY" \
-H "Content-Type: application/json" \
-d '{
"contactId": "ct_01J…",
"title": "다크 모드에서 버튼 대비가 낮아요",
"body": "설정 화면의 보조 버튼이 배경과 잘 구분되지 않아요.",
"tags": ["디자인"]
}'| 필드 | 타입 | 설명 |
|---|---|---|
title | string (필수) | 한 줄 요약 |
body | string (필수) | 내용. 일반 텍스트로 저장하고 HTML로 렌더링하지 않아요. |
contactId | string | 의견을 남긴 연락처. 있으면 상태가 바뀔 때 그 고객에게 알릴 수 있어요. |
conversationId | string | 피드백이 나온 대화. 대화와 피드백을 함께 보여 줘요. |
tags | string[] | 분류 태그 |
{
"id": "cv_01J8Z7…",
"channelId": "ch_01J…",
"contactId": "ct_01J…",
"kind": "feedback",
"state": "open",
"tags": [
"디자인"
],
"linkedIssueId": null,
"createdAt": "2026-10-27T10:12:00Z"
}피드백은 kind: "feedback" 대화로 저장돼요. 그래서 서버 API의 대화 API로 그대로 조회하고, 답하고, 태그를 바꿀 수 있어요.
이슈와 잇기
POST /v1/channels/:channelId/conversations/cv_01J8Z7…/issue
Content-Type: application/json
{
"title": "다크 모드 보조 버튼 대비 개선"
}projectId를 넣으면 그 프로젝트에 이슈가 생겨요.
고객에게 반영 소식 전하기
연결된 이슈가 진행되거나 완료되면 웹훅 feedback.status_changed가 와요. 받은 뒤 그 대화에 운영자 메시지로 소식을 남기면, 고객이 보고 있지 않을 때 알림으로 전해져요.