Admin API플래그 관리
전 캠페인 공통 비고
크리에이터를 따라다니는 전역 비고를 조회·추가·삭제합니다.
전 캠페인 공통 비고
캠페인이 바뀌어도 유지돼야 하는 비고를 다룹니다. 연락 두절·기업 선호처럼 크리에이터의 평판이나 고정 속성에 해당하는 것들입니다. 특정 캠페인에서만 쓰는 메모는 캠페인 전용 비고를 쓰세요.
목록 조회
GET /ai/admin/creator-flags/{influenceNo}
Authorization: Bearer {access_token}Path Parameters
| 파라미터 | 타입 | 필수 | 설명 |
|---|---|---|---|
influenceNo | Integer | 예 | 인플루언서 번호 |
응답 (200 OK)
{
"status": 200,
"code": null,
"message": "전역 비고 조회 성공",
"data": [
{
"id": 1802,
"text": "지인 출연 불가능",
"category": "NEUTRAL",
"color": null,
"isPreset": false,
"presetCode": null,
"count": 1,
"scope": "GLOBAL",
"collabNo": null,
"source": "ADMIN",
"editable": true
},
{
"id": 1455,
"text": "연락 두절",
"category": "NEGATIVE",
"color": "#E91E63",
"isPreset": true,
"presetCode": "NO_RESPONSE",
"count": 1,
"scope": "GLOBAL",
"collabNo": null,
"source": "AUTO_LABEL",
"editable": false
}
]
}캠페인 전용 비고는 포함되지 않습니다.
추가
POST /ai/admin/creator-flags/{influenceNo}
Authorization: Bearer {access_token}
Content-Type: application/jsonRequest Body
| 필드 | 타입 | 필수 | 설명 |
|---|---|---|---|
presetCode | String | 조건부 | 프리셋 코드 (RECOMMENDED, BUSINESS_PREFERRED 등) |
text | String | 조건부 | 자유 입력 문구. presetCode 가 없을 때 사용 |
category | String | 아니오 | POSITIVE / NEGATIVE / NEUTRAL. 기본 NEUTRAL |
color | String | 아니오 | HEX 색상 |
presetCode 와 text 중 하나는 있어야 합니다. 요청 본문의 collabNo 는 무시됩니다 — 이 API 는 항상 전역입니다.
{
"text": "본인 목소리 콘텐츠 위주",
"category": "NEUTRAL"
}응답 (200 OK)
추가된 비고 한 건을 돌려줍니다. 이미 같은 전역 비고가 있으면 새로 만들지 않고 기존 것을 그대로 돌려줍니다(멱등).
{
"status": 200,
"code": null,
"message": "전역 비고가 추가되었습니다.",
"data": {
"id": 1803,
"text": "본인 목소리 콘텐츠 위주",
"scope": "GLOBAL",
"collabNo": null,
"source": "ADMIN",
"editable": true,
"count": 1
}
}자유 입력 문구는 100자까지입니다. TB_INFLUENCE_FLAG.custom_text 가 VARCHAR(100) 이라
넘기면 저장 시점에 SQL 예외가 나고 같은 트랜잭션의 다른 저장까지 통째로 롤백됩니다.
그래서 들어오는 길에 400 으로 막습니다.
삭제
DELETE /ai/admin/creator-flags/{flagId}
Authorization: Bearer {access_token}Path Parameters
| 파라미터 | 타입 | 필수 | 설명 |
|---|---|---|---|
flagId | Long | 예 | 비고 ID (InfluenceFlagDto.id) |
행을 지우지 않고 state = false 로 바꿉니다. 등록·삭제 이력이 남습니다.
거부되는 경우
| 사유 | 메시지 |
|---|---|
| 캠페인 전용 비고를 지우려 할 때 | 비고의 적용 범위가 다릅니다. 요청=GLOBAL, 실제=CAMPAIGN |
| 자동 라벨링이 붙인 비고 | 자동으로 붙는 비고라 삭제할 수 없습니다. |
| 블랙리스트 | 블랙리스트는 비고에서 해제할 수 없습니다. 블랙리스트 기능을 이용해 주세요. |
| 이미 삭제됨 / 없는 ID | 이미 삭제된 비고입니다 / 비고를 찾을 수 없습니다 |
응답 editable 이 false 인 항목은 애초에 삭제 버튼을 그리지 않는 것이 맞습니다.
에러 응답
| 상태 코드 | 설명 |
|---|---|
400 | 입력 오류 (INVALID_ARGUMENT) |
401 | 인증 실패 |
403 | ADMIN 권한 필요 |