Admin API
Admin Campaign API
관리자 캠페인 관리 API
Admin Campaign API
관리자 캠페인 관리 API입니다.
Base URL: /ai/admin/campaigns
이 API는 관리자 권한이 필요합니다.
엔드포인트 목록
캠페인 CRUD
| 메서드 | 경로 | 설명 |
|---|---|---|
PATCH | /ai/admin/campaigns/{campaignNo} | 캠페인 생성 |
PUT | /ai/admin/campaigns/{campaignNo} | 캠페인 수정 |
GET | /ai/admin/campaigns/{campaignNo} | 캠페인 상세 조회 |
GET | /ai/admin/campaigns | 캠페인 목록 조회 |
설정 업데이트
| 메서드 | 경로 | 설명 |
|---|---|---|
PATCH | /ai/admin/campaigns/{campaignNo}/dashboard | 대시보드 설정 업데이트 |
PATCH | /ai/admin/campaigns/{campaignNo}/schedule | 일정 설정 업데이트 |
PATCH | /ai/admin/campaigns/{campaignNo}/step | 캠페인 진행 상태 변경 |
조회
| 메서드 | 경로 | 설명 |
|---|---|---|
GET | /ai/admin/campaigns/{campaignNo}/schedules | 캠페인 일정 목록 조회 |
GET | /ai/admin/campaigns/{campaignNo}/images | 캠페인 이미지 정보 조회 |
API 상세
캠페인 생성
관리자가 새 캠페인을 생성합니다.
HTTP 요청
PATCH /ai/admin/campaigns/{campaignNo}
Authorization: Bearer {access_token}
Content-Type: application/jsonRequest Body
{
"businessId": "business123",
"title": "여름 뷰티 캠페인",
"description": "여름 시즌 뷰티 제품 홍보 캠페인",
"platform": "INSTAGRAM",
"contentType": "REEL",
"category": "BEAUTY"
}응답
성공 응답 (201 Created)
{
"status": 201,
"code": null,
"message": "캠페인이 생성되었습니다.",
"data": null
}캠페인 수정
캠페인의 모든 정보를 수정합니다.
HTTP 요청
PUT /ai/admin/campaigns/{campaignNo}
Authorization: Bearer {access_token}
Content-Type: application/json수정 가능 항목
| 항목 | 설명 |
|---|---|
| 기본정보 | 제목, 설명, 플랫폼, 카테고리 등 |
| 제출물설정 | 제출 타입, 필수 키워드 등 |
| 대시보드설정 | 노출 설정 |
| 계약설정 | 계약서 템플릿, 약관 등 |
| 일정설정 | 모집/제작/검수 일정 |
Request Body
{
"title": "수정된 캠페인명",
"description": "수정된 설명",
"platform": "INSTAGRAM",
"contentType": "REEL",
"submissionSettings": {
"requiredTypes": ["VIDEO", "SCRIPT", "HASHTAG"]
},
"scheduleSettings": {
"recruitmentStart": "2024-01-15",
"recruitmentEnd": "2024-01-31"
}
}캠페인 상세 조회
캠페인 상세 정보를 조회합니다.
HTTP 요청
GET /ai/admin/campaigns/{campaignNo}
Authorization: Bearer {access_token}응답
성공 응답 (200 OK)
{
"status": 200,
"code": null,
"message": "캠페인 상세 조회 성공",
"data": {
"campaignNo": 123,
"businessId": "business123",
"title": "여름 뷰티 캠페인",
"description": "...",
"platform": "INSTAGRAM",
"contentType": "REEL",
"category": "BEAUTY",
"status": "RECRUITING",
"subStep": "CREATOR_RECRUIT",
"schedules": [...]
}
}캠페인 목록 조회
캠페인 목록을 조회합니다. businessId로 필터링 가능합니다.
HTTP 요청
GET /ai/admin/campaigns?businessId={businessId}
Authorization: Bearer {access_token}Query Parameters
| 파라미터 | 타입 | 필수 | 설명 |
|---|---|---|---|
businessId | string | 아니오 | 기업 회원 ID |
대시보드 설정 업데이트
캠페인의 대시보드 설정을 업데이트합니다.
HTTP 요청
PATCH /ai/admin/campaigns/{campaignNo}/dashboard
Authorization: Bearer {access_token}
Content-Type: application/jsonRequest Body
{
"showStatistics": true,
"allowBulkActions": true,
"defaultView": "LIST"
}일정 설정 업데이트
캠페인의 일정 설정을 업데이트합니다.
HTTP 요청
PATCH /ai/admin/campaigns/{campaignNo}/schedule
Authorization: Bearer {access_token}
Content-Type: application/jsonRequest Body
{
"recruitmentStart": "2024-01-15",
"recruitmentEnd": "2024-01-31",
"contentSubmissionDeadline": "2024-02-15",
"reviewDeadline": "2024-02-28"
}캠페인 진행 상태 변경
결제 여부에 따라 캠페인 진행 상태를 변경합니다.
HTTP 요청
PATCH /ai/admin/campaigns/{campaignNo}/step?isPaid={isPaid}
Authorization: Bearer {access_token}Query Parameters
| 파라미터 | 타입 | 필수 | 설명 |
|---|---|---|---|
isPaid | boolean | 예 | 결제 완료 여부 |
- 결제 완료: 가이드라인 작성 단계로 변경
- 결제 미완료: 결제 단계로 변경
캠페인 일정 목록 조회
캠페인의 일정 목록을 조회합니다.
HTTP 요청
GET /ai/admin/campaigns/{campaignNo}/schedules
Authorization: Bearer {access_token}캠페인 이미지 정보 조회
캠페인의 썸네일, 제품링크, 프로덕트 이미지를 조회합니다. 캠페인 생성 시 이전 게시물 불러오기에 사용됩니다.
HTTP 요청
GET /ai/admin/campaigns/{campaignNo}/images
Authorization: Bearer {access_token}응답
성공 응답 (200 OK)
{
"status": 200,
"code": null,
"message": "캠페인 이미지 조회 성공",
"data": {
"thumbnail": "https://...",
"productLink": "https://...",
"productImages": [
"https://...",
"https://..."
]
}
}사용 예시
캠페인 목록 조회
curl -X GET "https://api.glowb.io/ai/admin/campaigns?businessId=business123" \
-H "Authorization: Bearer {token}"캠페인 수정
curl -X PUT https://api.glowb.io/ai/admin/campaigns/123 \
-H "Authorization: Bearer {token}" \
-H "Content-Type: application/json" \
-d '{
"title": "수정된 캠페인명",
"description": "수정된 설명"
}'