SaaS API인플루언서 SaaS
POST /ai/influence/campaign/application
캠페인 신청
캠페인 신청
캠페인에 신청합니다.
HTTP 요청
POST /ai/influence/campaign/application
Authorization: Bearer {access_token}
Content-Type: application/jsonRequest Body
{
"collabId": 123,
"snsAccountId": 456,
"deliveryAddressId": 789,
"message": "안녕하세요, 관심있어서 신청합니다!",
"proposedPrice": 500000
}응답
성공 응답 (200 OK)
{
"status": 200,
"code": null,
"message": "신청 완료",
"data": {
"qoo10Account": "user123",
"applicationId": 5084,
"autoAccepted": false,
"requiresResponse": true,
"negotiationId": 401,
"proposedPrice": 150000,
"campaignName": "캠페인 이름",
"thumbnailImage": "https://example.com/image.jpg",
"contentFormat": "REELS"
}
}응답 필드
| 필드 | 타입 | 설명 |
|---|---|---|
qoo10Account | String | Qoo10 계정 (해당 시) |
applicationId | Long | 생성된 신청 ID |
autoAccepted | Boolean | 자동 수락 여부 (희망가 그대로 수락됨) |
requiresResponse | Boolean | 수락/거절 응답 필요 여부 (모달 표시용) |
negotiationId | Long | 가격 협상 ID (수락/거절 API 호출 시 사용) |
proposedPrice | Long | 제안된 광고 단가 (원) |
campaignName | String | 캠페인명 |
thumbnailImage | String | 캠페인 썸네일 이미지 URL |
contentFormat | String | 콘텐츠 형식 (REELS, FEED 등) |
프론트 분기 로직
| 조건 | UI 처리 |
|---|---|
autoAccepted: true | 토스트 ("희망가로 신청되었어요! 최종 선정 대기해주세요.") |
requiresResponse: true | 수락/거절 모달 표시 |
둘 다 false | 일반 신청 완료 처리 (협상 미생성) |
수락/거절 응답은 PATCH /ai/influence/price-negotiations/{negotiationId}/respond?action=accept|reject를 사용합니다.