Step 2: 템플릿 선택 및 이해
선택한 상품(BookSpec)에 맞는 템플릿을 조회하고, 파라미터 바인딩 방식을 이해하는 단계입니다. 템플릿의 종류, 파라미터 구조, 갤러리/컬럼 템플릿 사용법을 안내합니다.
템플릿 목록 조회
GET /templates로 사용 가능한 템플릿을 조회합니다. 반드시 bookSpecUid를 지정하여 해당 상품에 호환되는 템플릿만 필터링하세요.
# SQUAREBOOK_HC용 표지 템플릿 조회
curl 'https://api.sweetbook.com/v1/templates?bookSpecUid=SQUAREBOOK_HC&templateKind=cover' \
-H 'Authorization: Bearer YOUR_API_KEY'# SQUAREBOOK_HC용 내지 템플릿 조회
curl 'https://api.sweetbook.com/v1/templates?bookSpecUid=SQUAREBOOK_HC&templateKind=content' \
-H 'Authorization: Bearer YOUR_API_KEY'| Query Parameter | 필수 | 설명 |
|---|---|---|
bookSpecUid | 권장 | 상품 스펙 UID로 필터링 (예: SQUAREBOOK_HC) |
templateKind | 권장 | cover (표지) 또는 content (내지) |
category | 선택 | 카테고리 필터 (예: diary, album, wedding) |
limit, offset | 선택 | 페이지네이션 (기본 limit: 50) |
템플릿 종류: cover vs content
템플릿은 templateKind로 구분됩니다.
| 종류 | 값 | 용도 | 적용 API |
|---|---|---|---|
| 표지 템플릿 | cover | 책 표지 디자인. 책당 하나만 적용됩니다. | POST /books/{bookUid}/cover |
| 내지 템플릿 | content | 내지 페이지 디자인. 여러 번 적용 가능합니다. | POST /books/{bookUid}/contents |
템플릿 상세 조회
GET /templates/{templateUid}로 특정 템플릿의 상세 정보를 확인합니다. 파라미터 정의, 레이아웃, 베이스 레이어 등이 포함됩니다.
curl 'https://api.sweetbook.com/v1/templates/8hKvbcNJdSgj' \
-H 'Authorization: Bearer YOUR_API_KEY'| 응답 필드 | 설명 |
|---|---|
parameters | 파라미터 정의 목록 (텍스트, 이미지, 갤러리 바인딩 정보) |
layout | 레이아웃 정의 (요소 배치, 크기) |
layoutRules | 레이아웃 규칙 (여백, 흐름, 컬럼 등) |
baseLayer | 베이스 레이어 (홀수/짝수 페이지 배경) |
thumbnails | 썸네일 URL (레이아웃, 베이스 레이어) |
파라미터 바인딩
템플릿의 parameters에 정의된 바인딩 유형에 따라 값을 전달합니다. 파라미터 이름은 $$이름$$ 형식으로 템플릿 내에서 참조됩니다.
텍스트 바인딩
템플릿 내 $$title$$, $$date$$ 등의 텍스트 플레이스홀더에 문자열 값을 전달합니다.
{
"templateUid": "COVER_TEMPLATE_UID",
"parameters": {
"bookTitle": "우리 가족 앨범",
"year": "2026"
}
}사진(file) 바인딩
$$photo1$$ 등의 이미지 플레이스홀더에 업로드된 사진의 fileName이나 URL을 전달합니다.
{
"templateUid": "CONTENT_TEMPLATE_UID",
"parameters": {
"photo1": "uploaded_photo_abc123.jpg"
}
}갤러리(rowGallery) 바인딩
$$galleryPhotos$$ 등의 갤러리 플레이스홀더에 사진 파일명 배열을 전달합니다. 갤러리 템플릿은 전달된 사진 수에 따라 레이아웃이 동적으로 배치됩니다.
{
"templateUid": "GALLERY_TEMPLATE_UID",
"parameters": {
"galleryPhotos": ["photo1.jpg", "photo2.jpg", "photo3.jpg", "photo4.jpg"]
}
}POST /books/{bookUid}/photos로 업로드한 후, 반환된 fileName을 사용합니다.템플릿 선택 기준
템플릿을 선택할 때 다음 사항을 확인하세요.
- bookSpecUid 일치: 템플릿의
bookSpecUid가 생성한 책의bookSpecUid와 일치해야 합니다. - templateKind 확인: 표지에는
cover, 내지에는content템플릿을 사용하세요. - 파라미터 확인: 상세 조회로
parameters를 확인하여 어떤 값을 전달해야 하는지 파악하세요. - 카테고리 활용: 서비스 용도에 맞는 카테고리로 필터링하면 적합한 템플릿을 빠르게 찾을 수 있습니다.
갤러리 템플릿 사용법
갤러리 템플릿은 전달된 사진 수에 따라 레이아웃이 자동으로 배치됩니다. 사진이 많으면 여러 페이지에 걸쳐 자동 분배되므로, 한 번의 API 호출로 다수의 사진을 효율적으로 배치할 수 있습니다.
curl -X POST 'https://api.sweetbook.com/v1/books/{bookUid}/contents' \
-H 'Authorization: Bearer YOUR_API_KEY' \
-H 'Content-Type: application/json' \
-d '{
"templateUid": "GALLERY_TEMPLATE_UID",
"parameters": {
"galleryPhotos": [
"photo1.jpg", "photo2.jpg", "photo3.jpg",
"photo4.jpg", "photo5.jpg", "photo6.jpg"
]
}
}'컬럼 템플릿 사용법
컬럼 템플릿은 텍스트와 사진을 세로 방향으로 쌓아 배치합니다. 일기장, 알림장처럼 텍스트 분량이 가변적인 콘텐츠에 적합합니다. 텍스트 길이에 따라 레이아웃이 자동으로 조정됩니다.
다음 단계
- Step 3: 책 생성 — Books API로 책 생성하기
- Step 4: 이미지 업로드 — 지원 포맷 및 업로드 가이드
- Step 1: 상품 선택 — 이전 단계로 돌아가기
- 전체 워크플로우 — 전체 연동 흐름 보기
- Templates API 레퍼런스 — 상세 API 문서