Glowb Dev Docs
Admin APIAdmin Dashboard API

POST /ai/admin/dashboard/{campaignNo}/applicants/bulk

신청자 일괄 등록

신청자 일괄 등록

인플루언서 번호 목록을 받아 현재 캠페인에 신청자로 일괄 등록합니다.

sourceType=ADMIN_ADDED로 생성됩니다. 타 캠페인 신청자 불러오기(GET cross-campaign-applicants)에서 선택한 인플루언서를 등록할 때 사용합니다.

HTTP 요청

POST /ai/admin/dashboard/{campaignNo}/applicants/bulk
Authorization: Bearer {access_token}
Content-Type: application/json

Path Parameters

파라미터타입필수설명
campaignNoLong캠페인 번호

Request Body

{
  "influenceNos": [123, 456, 789]
}
필드타입필수설명
influenceNosList<Integer>등록할 인플루언서 번호 목록

응답

성공 응답 (200 OK)

{
  "status": 200,
  "code": null,
  "message": "2건 성공, 1건 실패",
  "data": {
    "successCount": 2,
    "failedCount": 1,
    "successInfluenceNos": [123, 456],
    "failedInfluenceNos": [789],
    "message": "2건 성공, 1건 실패"
  }
}

전체 성공 시

{
  "status": 200,
  "code": null,
  "message": "3건 등록 완료",
  "data": {
    "successCount": 3,
    "failedCount": 0,
    "successInfluenceNos": [123, 456, 789],
    "failedInfluenceNos": [],
    "message": "3건 등록 완료"
  }
}

응답 필드 설명

필드타입설명
successCountInteger등록 성공 건수
failedCountInteger등록 실패 건수
successInfluenceNosList<Integer>등록 성공한 인플루언서 번호 목록
failedInfluenceNosList<Integer>등록 실패한 인플루언서 번호 목록
messageString결과 메시지

등록 후 AI 자동 처리

등록 성공한 인플루언서에 대해 트랜잭션 커밋 후 비동기로 아래 두 가지가 자동 실행됩니다.

  • 추천사(recommendReason): 인플루언서-캠페인 적합도 평가 텍스트 생성
  • 적합도 점수(matchScore): 벡터 코사인 유사도 계산

단, SNS 계정 링크(snsAccountLink)가 없는 인플루언서는 AI 처리가 생략됩니다. 인플루언서 데이터가 부족한 경우 Python AI가 matchScore: null을 반환할 수 있습니다.

실패 케이스

아래 경우 해당 인플루언서는 failedInfluenceNos에 포함됩니다.

  • 이미 해당 캠페인에 등록된 인플루언서 (alreadyRegistered=true인 항목)
  • 존재하지 않는 인플루언서 번호

API 테스트

On this page