창작 방식

SweetBook은 책 제작에 3가지 창작 방식(creationType)을 제공합니다. 본 페이지는 각 방식의 차이·트레이드오프·선택 기준을 안내합니다.

기본 권장 방식은 PDF_UPLOAD입니다. TEMPLATE·MIX_COVER_TEMPLATE은 특정 시나리오에 한정된 보조 옵션입니다 (아래 의사결정 가이드 참조).
방식별 단계별 호출 흐름은 시나리오 페이지(PDF 업로드 · 템플릿 기반 · 혼합), 엔드포인트 명세는 API 페이지(Books — PDF 기반 · Books — 템플릿 기반)를 참고하세요.

한눈에 비교

각 방식의 핵심 차이를 정리한 표입니다. 첫 컬럼은 기본 권장 방식 PDF_UPLOAD입니다.

항목PDF_UPLOAD (기본)TEMPLATEMIX_COVER_TEMPLATE
표지 입력PDF 직접 업로드 (POST /books/{uid}/pdf-cover)템플릿 (POST /books/{uid}/cover)템플릿 (POST /books/{uid}/cover)
내지 입력PDF 직접 업로드 (POST /books/{uid}/pdf-contents)템플릿 (POST /books/{uid}/contents)PDF 직접 업로드 (POST /books/{uid}/pdf-contents)
책 최종화POST /books/{uid}/finalization 명시 호출동일 (명시 호출)동일 (명시 호출)
주문 직후 상태즉시 PDF_READY (PAID 단계 건너뜀)PAID → 렌더링 후 PDF_READYPAID → 표지 렌더링 후 PDF_READY
디자인 자유도높음 (PDF 페이지 단위 완전 자유)낮음 (제공 템플릿 카탈로그 한정)표지 한정 (템플릿)·내지 자유 (PDF)
pageCount 사전 고지필수 (책 생성 시)불필요필수 (내지 PDF 페이지 수)
BookSpec PDF 검증크기·페이지·시그니처 검증적용 안 함내지 PDF에만 적용
템플릿 바인딩 검증해당 없음필수 파라미터·갤러리 등 검증표지에만 적용
사진 업로드 API (/photos)차단 (ERR_CREATION_TYPE_UNSUPPORTED)지원지원
파트너 사전 작업PDF 생성·검증 환경 필요사진·텍스트 입력만표지 입력 + 내지 PDF 생성
상세 가이드PDF 업로드 시나리오템플릿 기반 시나리오혼합 방식 시나리오

의사결정 가이드

기본은 PDF_UPLOAD입니다. 다음 조건에 해당하면 다른 방식을 고려하세요.

방식선택 기준
PDF_UPLOAD (기본)아래 조건 중 하나라도 해당하면 권장:
  • 자체 디자인 도구·DTP 환경에서 PDF를 생성하는 파트너
  • 책 페이지 단위 완전 자유 디자인이 필요
  • 주문 직후 즉시 제작 단계로 진행하고 싶음 (렌더링 대기 회피)
TEMPLATEPDF 생성 환경이 없고, 사진·텍스트 입력 UI로 책을 구성하는 일반 사용자 앱. 템플릿 카탈로그 제약을 수용 가능한 경우.
MIX_COVER_TEMPLATE표지는 SweetBook 템플릿으로 브랜드 일관성을 보장하면서 내지는 직접 PDF로 디자인하고 싶은 경우 (시리즈물·교재 등).

각 방식 상세

PDF_UPLOAD (기본)

표지·내지 PDF를 직접 업로드해 책을 구성하는 방식입니다.

  1. 책 생성: POST /books with creationType: "PDF_UPLOAD" + pageCount(내지 페이지 수, 필수). 책의 PDF 검증 기준(크기·페이지·시그니처)은 BookSpecs API의 응답 필드를 참고하세요.
  2. 표지 PDF 업로드: POST /books/{uid}/pdf-cover (신규) / PUT /books/{uid}/pdf-cover (교체).
  3. 내지 PDF 업로드: POST /books/{uid}/pdf-contents (신규) / PUT /books/{uid}/pdf-contents (교체).
  4. 책 최종화: POST /books/{uid}/finalization. 표지·내지 PDF 둘 다 업로드된 상태여야 finalize 성공.
  5. 주문: POST /orders. 주문 생성 시점에 표지·내지 PDF가 모두 준비되어 있으므로 주문 상태가 PAID를 거치지 않고 즉시 PDF_READY로 승격됩니다.

상세 호출 흐름·요청/응답 예시는 PDF 업로드 시나리오를, 엔드포인트 명세는 Books — PDF 기반을 참고하세요.

TEMPLATE

제공된 템플릿에 사진·텍스트 등 파라미터를 바인딩해 책을 구성하는 방식입니다.

  1. 책 생성: POST /books with creationType: "TEMPLATE". pageCount 불필요 (콘텐츠 추가에 따라 자동 결정).
  2. (선택) 사진 사전 업로드: POST /books/{uid}/photos로 사진을 미리 업로드 후 콘텐츠 추가 시 참조.
  3. 표지 추가: POST /books/{uid}/cover로 표지 템플릿 + 파라미터 바인딩.
  4. 콘텐츠(내지) 추가: POST /books/{uid}/contents로 콘텐츠 템플릿 + 파라미터 바인딩 (반복 호출).
  5. 책 최종화: POST /books/{uid}/finalization. 책의 pdfStatus1(PENDING, 렌더링 대기)로 전환됩니다.
  6. 주문: POST /orders. 주문 상태는 PAID로 시작하며, 백그라운드 렌더링 완료 후 PDF_READY로 전환됩니다.

상세 호출 흐름은 템플릿 기반 시나리오를, 엔드포인트 명세는 Books — 템플릿 기반을, 템플릿 도메인 개념(구조·바인딩·갤러리·베이스 레이어)은 템플릿 구조와 바인딩을 참고하세요.

MIX_COVER_TEMPLATE

표지는 템플릿(SweetBook 카탈로그) + 내지는 PDF(파트너 직접 제작)를 결합한 방식입니다.

  1. 책 생성: POST /books with creationType: "MIX_COVER_TEMPLATE" + pageCount(내지 PDF 페이지 수, 필수).
  2. (선택) 사진 사전 업로드: 표지 템플릿에 사용할 사진을 미리 업로드 가능 (POST /books/{uid}/photos).
  3. 표지 추가: POST /books/{uid}/cover로 표지 템플릿 + 파라미터 바인딩.
  4. 내지 PDF 업로드: POST /books/{uid}/pdf-contents / PUT /books/{uid}/pdf-contents (교체).
  5. 책 최종화: POST /books/{uid}/finalization. 표지 렌더링이 트리거되며 pdfStatus1(PENDING, 렌더링 대기)로 전환됩니다.
  6. 주문: POST /orders. 주문 상태는 PAID로 시작하며, 표지 렌더링 완료 후 PDF_READY로 전환됩니다.

상세 호출 흐름은 혼합 방식 시나리오를 참고하세요.