Glowb Dev Docs
SaaS API콘텐츠 가이드라인 API

POST /ai/guideline/{collabNo}/images

가이드라인 및 캠페인용 이미지 업로드

이미지 업로드

가이드라인 및 캠페인용 이미지를 업로드합니다.

항목
메서드POST
경로/ai/guideline/{collabNo}/images
인증필요 (JWT Bearer Token)
Content-Typemultipart/form-data

요청

POST /ai/guideline/123/images?type=detail HTTP/1.1
Host: api.glowb.com
Authorization: Bearer {access_token}
Content-Type: multipart/form-data; boundary=----FormBoundary

------FormBoundary
Content-Disposition: form-data; name="files"; filename="product1.jpg"
Content-Type: image/jpeg

(binary data)
------FormBoundary
Content-Disposition: form-data; name="files"; filename="product2.jpg"
Content-Type: image/jpeg

(binary data)
------FormBoundary--
curl -X POST "https://api.glowb.com/ai/guideline/123/images?type=detail" \
  -H "Authorization: Bearer {access_token}" \
  -F "files=@product1.jpg" \
  -F "files=@product2.jpg"
const formData = new FormData();
formData.append('files', file1);
formData.append('files', file2);

const response = await fetch('/ai/guideline/123/images?type=detail', {
  method: 'POST',
  headers: {
    'Authorization': `Bearer ${accessToken}`
  },
  body: formData
});
const result = await response.json();

Path Parameters

Prop

Type

Query Parameters

Prop

Type

이미지 타입

타입설명저장 위치허용 확장자
brand-logo브랜드 로고캠페인 소유 기업 기준으로 저장 (관리자가 업로드해도 기업 폴더에 저장)png, svg, ai, zip, jpeg, jpg, gif
thumbnail썸네일 이미지캠페인별 저장제한 없음
detail상세 이미지캠페인별 저장 (단일/복수 모두 가능)제한 없음

brand-logo 타입은 캠페인을 소유한 기업의 ID를 기준으로 저장됩니다. 관리자가 업로드하더라도 해당 기업의 폴더에 저장됩니다.

brand-logo 타입은 허용된 확장자만 업로드할 수 있습니다: png, svg, ai, zip, jpeg, jpg, gif

Request Parts

Prop

Type

응답

성공 응답 (200 OK)

{
  "status": 200,
  "code": null,
  "message": "이미지 3개가 업로드되었습니다.",
  "data": [
    {
      "fileUrl": "https://s3.../guideline/123/detail/1_product1.jpg",
      "fileName": "product1.jpg",
      "type": "detail",
      "order": 1
    },
    {
      "fileUrl": "https://s3.../guideline/123/detail/2_product2.jpg",
      "fileName": "product2.jpg",
      "type": "detail",
      "order": 2
    },
    {
      "fileUrl": "https://s3.../guideline/123/detail/3_product3.jpg",
      "fileName": "product3.jpg",
      "type": "detail",
      "order": 3
    }
  ]
}

응답 필드 상세

응답은 업로드된 파일 정보 배열입니다.

Prop

Type

에러 응답

지원하지 않는 이미지 타입 (400)

{
  "status": 400,
  "code": "BAD_REQUEST",
  "message": "지원하지 않는 이미지 타입입니다: unknown",
  "data": null
}

캠페인을 찾을 수 없음 (404)

{
  "status": 404,
  "code": "CAMPAIGN_NOT_FOUND",
  "message": "존재하지 않는 캠페인입니다: 123",
  "data": null
}

파일명 없음 (400) - brand-logo 타입

{
  "status": 400,
  "code": "FILE_002",
  "message": "파일명이 없습니다.",
  "data": null
}

지원하지 않는 파일 확장자 (400) - brand-logo 타입

{
  "status": 400,
  "code": "FILE_001",
  "message": "지원하지 않는 로고 파일 형식입니다: webp. 허용 형식: png, svg, ai, zip, jpeg, jpg, gif",
  "data": null
}

이미지 권장 사이즈

타입권장 사이즈
brand-logo자유
thumbnail400 x 400 px
detail400 x 605 px

사용 예시

브랜드 로고 업로드

curl -X POST "https://api.glowb.io/ai/guideline/123/images?type=brand-logo" \
  -H "Authorization: Bearer {token}" \
  -F "files=@brand-logo.png"

상세 이미지 복수 업로드

curl -X POST "https://api.glowb.io/ai/guideline/123/images?type=detail" \
  -H "Authorization: Bearer {token}" \
  -F "files=@product1.jpg" \
  -F "files=@product2.jpg" \
  -F "files=@product3.jpg"

API 테스트

On this page