작성일: 2024-12-20
목적: 프론트엔드에서 사용 가능한 모든 API 엔드포인트 정리
POST /api/vendor-influencer/requests
POST /api/vendor/influencer-requests
POST /api/v2/vendor/influencer-requests
POST /api/vendor-influencer/process-request
POST /api/vendor/process-request
POST /api/v2/vendor/process-request
POST /vendor-influencer/process-request
POST /api/vendor-influencer/terminate
POST /api/v2/vendor/terminate
POST /api/vendor-influencer/status-stats
POST /api/v2/vendor/status-stats
POST /api/vendor-influencer/search-vendors
POST /api/influencer/search-vendors
POST /api/v2/influencer/search-vendors
POST /api/vendor-influencer/create-request
POST /api/influencer/create-request
POST /api/v2/influencer/create-request
POST /api/vendor-influencer/reapply-request
POST /api/influencer/reapply-request
POST /api/v2/influencer/reapply-request
POST /vendor-influencer/reapply-request
POST /api/vendor-influencer/my-partnerships
POST /api/influencer/my-partnerships
POST /api/v2/influencer/my-partnerships
POST /api/vendor-influencer/terminate
POST /api/influencer/terminate
POST /api/v2/influencer/terminate
V2 API (가장 안정적)
/api/v2/vendor/...
/api/v2/influencer/...
호환성 API (기존 코드용)
/api/vendor-influencer/...
/api/vendor/...
/api/influencer/...
레거시 API (점진적 제거 예정)
/vendor-influencer/...
// 방법 1: V2 API (권장)
POST /api/v2/vendor/influencer-requests
{
"vendorSeq": 123,
"status": "PENDING",
"page": 1,
"size": 20
}
// 방법 2: 호환성 API
POST /api/vendor-influencer/requests
{
"vendorSeq": 123,
"status": "PENDING",
"page": 1,
"size": 20
}
// 방법 1: V2 API (권장)
POST /api/v2/vendor/process-request
{
"mappingSeq": 456,
"action": "approve", // 또는 "reject"
"processedBy": 789,
"responseMessage": "승인합니다"
}
// 방법 2: 호환성 API
POST /api/vendor-influencer/process-request
{
"mappingSeq": 456,
"action": "approve",
"processedBy": 789,
"responseMessage": "승인합니다"
}
// 방법 1: V2 API (권장)
POST /api/v2/influencer/reapply-request
{
"vendorSeq": 123,
"influencerSeq": 456,
"requestMessage": "재승인 요청합니다",
"requestedBy": 456
}
// 방법 2: 호환성 API
POST /api/vendor-influencer/reapply-request
{
"vendorSeq": 123,
"influencerSeq": 456,
"requestMessage": "재승인 요청합니다",
"requestedBy": 456
}
{
"success": true,
"message": "요청이 성공적으로 처리되었습니다.",
"data": {
// 응답 데이터
}
}
{
"success": false,
"message": "오류 메시지",
"error": "상세 오류 정보"
}
// 기존
const endpoint = '/api/vendor-influencer/requests';
// 변경
const endpoint = '/api/v2/vendor/influencer-requests';
// 기존
vendor.PARTNERSHIP_STATUS = response.STATUS;
// 변경 (V2)
vendor.PARTNERSHIP_STATUS = response.CURRENT_STATUS;
vendor.PARTNERSHIP_MESSAGE = response.CURRENT_STATUS_MESSAGE;
// V2 API 응답 확인
console.log('현재 상태:', response.CURRENT_STATUS);
console.log('상태 메시지:', response.CURRENT_STATUS_MESSAGE);
console.log('상태 변경일:', response.STATUS_CHANGED_DATE);
✅ 모든 API 엔드포인트가 정상적으로 작동합니다!