지원 사용자 API
개요
지원 사용자 API는 사용자(환자)의 지원 데이터 목록을 조회하는 기능을 제공합니다.
주요기능
- 사용자 목록 조회: 페이징, 검색, 필터링이 가능한 사용자 목록 조회
[GET] /support/users - 사용자 지원 목록 조회
사용자 지원 목록 조회
사용자의 지원 데이터 목록을 조회합니다.
- HTTP Method:
GET - 인증: 액세스 토큰 (
accessToken) 필요
Headers
| Header | Type | Description | Required |
|---|---|---|---|
| Authorization | Bearer {accessToken} | 사용자 인증을 통해 발급받은 액세스 토큰 입니다. | ✔ |
Query Parameters
| 파라미터 | 타입 | 설명 | Required | Default |
|---|---|---|---|---|
| limit | number | 한 페이지당 조회할 환자 수 | ✗ | 10 |
| page | number | 조회할 페이지 번호 | ✗ | 1 |
| searchKey | string | 환자 이름 또는 전화번호로 검색 | ✗ | - |
| sortBy | string | 정렬 기준 (createdAt, name, status) | ✗ | - |
| sortOrder | string | 정렬 방식 (asc, desc) | ✗ | - |
| activeFollowUp | boolean | 활성 팔로우업 여부로 필터링 | ✗ | - |
| siteIds | number[] | 특정 사이트의 환자만 조회 | ✗ | - |
| active | boolean | 활성 상태 필터링 | ✗ | - |
| completionRequired | boolean | 완료 필요 여부로 필터링 | ✗ | - |
Responses
| Http Status Code | 설명 | Error Code(s) |
|---|---|---|
200 OK | 조회 성공 | - |
401 Unauthorized | 인증 실패 | - |
200 OK - 성공
{
"total": 100,
"count": 10,
"data": [
{
"userId": "userId",
"userCycleId": "userCycleId",
"status": 1,
"name": "홍길동",
"phone": "010-1234-5678",
"startedAt": "2021-01-01T00:00:00.000Z",
"day": 10,
"followUps": [
{
"id": "1",
"title": "1일차",
"status": 1
},
{
"id": "2",
"title": "7일차",
"status": 0
},
{
"id": "3",
"title": "21일차",
"status": 0
},
{
"id": "4",
"title": "마지막콜",
"status": 0
}
],
"upcomingFollowUp": {
"id": "2",
"title": "7일차",
"status": 0
},
"site": {
"id": "siteId",
"name": "웰트병원",
"code": "3942303984"
},
"mdAccount": {
"id": "mdAccountId",
"name": "김철수",
"email": "doctor@weltcorp.com"
}
}
]
}
| 필드 | 타입 | 설명 |
|---|---|---|
| total | number | 총 환자 수 |
| count | number | 현재 페이지 환자 수 |
| data | array | 환자 데이터 배열 |
| data[].userId | string | 사용자 ID |
| data[].userCycleId | string | 사용자 사이클 ID |
| data[].status | number | 사용자 CRM 상태 (1: ACTIVE, 2: INACTIVE, 3: EXPIRED, 4: SUSPENDED, 5: PENDING_VERIFICATION, 6: DELETED, 7: BANNED, 8: COMPLETION_REQUIRED) |
| data[].name | string | 사용자 이름 |
| data[].phone | string | 사용자 전화번호 |
| data[].startedAt | string | 시작일 (ISO 8601) |
| data[].day | number | 현재 일차 |
| data[].followUps | array | 팔로우업 목록 |
| data[].followUps[].id | string | 팔로우업 ID |
| data[].followUps[].title | string | 팔로우업 제목 |
| data[].followUps[].status | number | 팔로우업 상태 (0: PENDING, 1: COMPLETED, 2: SKIPPED) |
| data[].upcomingFollowUp | object | null | 다음 예정 팔로우업 |
| data[].site | object | null | 사이트(병원) 정보 |
| data[].site.id | string | 사이트 ID |
| data[].site.name | string | 사이트 이름 |
| data[].site.code | string | 사이트 코드 |
| data[].mdAccount | object | null | MD 계정 정보 |
| data[].mdAccount.id | string | MD 계정 ID |
| data[].mdAccount.name | string | MD 이름 |
| data[].mdAccount.email | string | MD 이메일 |
401 Unauthorized - 인증 실패
예시: 토큰이 누락된 경우
{
"status": 401,
"code": 40100,
"message": "Unauthorized",
"detail": ""
}