Admin APIAdmin Dashboard API
GET /ai/admin/dashboard/{campaignNo}/list/{influenceNo}/previous-campaigns
기리스트/기노출 칩 상세 조회
기리스트/기노출 칩 상세 조회
리스트 관리에서 특정 인플루언서의 기리스트/기노출 칩을 눌렀을 때, 그 크리에이터가 이전에 어떤 캠페인들에 올라왔었는지 상세 목록을 조회합니다.
기리스트/기노출을 따로 나누지 않고 단일 응답으로 전체 캠페인 목록을 내려줍니다. 각 행의 selectionStatus/adminVisible 값으로 프론트에서 어떤 칩(기리스트/기노출/기협업)에 해당하는지 구분해 표시합니다.
HTTP 요청
GET /ai/admin/dashboard/{campaignNo}/list/{influenceNo}/previous-campaigns
Authorization: Bearer {access_token}Path Parameters
| 파라미터 | 타입 | 필수 | 설명 |
|---|---|---|---|
campaignNo | long | 예 | 현재 보고 있는 캠페인 번호 (이 캠페인은 결과에서 제외) |
influenceNo | Integer | 예 | 인플루언서 번호 |
스코프 (에이전시 광고주)
반환되는 캠페인 범위(scope)는 리스트 관리 조회의 기협업/기노출/기리스트 판정과 동일한 규칙을 따릅니다.
- 일반 광고주: 현재 캠페인 소유 계정(
TB_COLLAB.id)이 운영한 다른 캠페인만. - 에이전시 광고주(
TB_BUSINESS.agency_id존재): 같은 에이전시에 소속된 전 계정이 운영한 캠페인 전체. (예: 한 에이전시가 BOM·Bodiance 두 브랜드를 운영하면 두 브랜드 캠페인이 모두 포함) - 현재 캠페인(
campaignNo)은 항상 제외됩니다.
응답
성공 응답 (200 OK)
{
"status": 200,
"code": null,
"message": "기리스트/기노출 상세 조회 성공",
"data": {
"influenceNo": 4682,
"totalCount": 2,
"campaigns": [
{
"campaignNo": 1582,
"campaignName": "[BOM] 라이트온 인샤워 보디 톤업 290ml",
"selectionStatus": "WAITING",
"adminVisible": true,
"appliedAt": "2026-07-10T10:30:00"
},
{
"campaignNo": 1568,
"campaignName": "[Bodiance] 퍼펙트커버 화이트 카밍 톤업 크림 캠페인",
"selectionStatus": "RESERVED",
"adminVisible": false,
"appliedAt": "2026-07-05T09:12:00"
}
]
}
}응답 필드 설명
data 객체
| 필드 | 타입 | 설명 |
|---|---|---|
influenceNo | Integer | 조회한 인플루언서 번호 |
totalCount | Integer | 캠페인 개수 |
campaigns | Array | 이전 캠페인 목록 (신청일 내림차순) |
campaigns 배열 내 각 항목
| 필드 | 타입 | 설명 |
|---|---|---|
campaignNo | Integer | 캠페인 번호 |
campaignName | String | 캠페인명 (TB_COLLAB.title) |
selectionStatus | String | 해당 캠페인에서의 선정 상태 (WAITING, SELECTED, RESERVED, REJECTED, ELIMINATED, PROPOSAL) |
adminVisible | Boolean | 해당 캠페인에서 기업 대시보드 노출 여부 (기노출 판정 기준) |
appliedAt | LocalDateTime | 신청일 |
프론트 활용
- 기리스트 칩 클릭:
campaigns전체를 그대로 표시 (신청 이력 = 리스트 진입). - 기노출 칩 클릭:
adminVisible === true인 행만 필터해 표시. - 참고로
selectionStatus === "SELECTED"인 행은 기협업에 해당합니다.