스토어프론트 호스팅
스토어프론트 사이트 만들기
템플릿으로 사이트를 만들고 v1을 발행한다. 공개 상태는 오픈 준비 중(`COMING_SOON`)이다. 슬러그를 생략하면 상점 코드다
POST
템플릿으로 사이트를 만들고 v1을 발행한다. 공개 상태는 오픈 준비 중(COMING_SOON)이다. 슬러그를 생략하면 상점 코드다
accessTokenheader
AuthorizationBearer <token>Sayren 계정 토큰(로그인 토큰 또는 개인 액세스 토큰, RFC 9068 JWT)
X-Store-Id*string대상 상점 id. 토큰의 상점 범위 밖이면 403 STORE_NOT_GRANTED, 없으면 400 STORE_ID_REQUIRED다
application/json- body
templateId*string템플릿 id
Length
1 <= length <= 64slug?string주소 슬러그. 생략하면 상점 코드
Match
^[a-z0-9](?:[a-z0-9-]{1,28}[a-z0-9])$copyContent?boolean템플릿 상점의 템플릿일 때만 — true면 템플릿 상점의 콘텐츠(레이아웃, 상품·카테고리·컬렉션·주문 흐름·배송·환불 정책)를 이 상점으로 복사한다. 쿠폰·적립금·리뷰는 복사하지 않는다. 생략하거나 false면 레이아웃 콘텐츠를 비우고 빌드한다
성공
application/json- response
meta*data*error*|nullcurl -X POST 'https://api.sayren.io/v1/storefront/site' \ -H 'X-Store-Id: string' \ -H 'Content-Type: application/json' \ -d '{ "templateId": "string"}'{ "meta": { "status": 201, "code": "OK", "message": "OK", "isSuccess": true }, "data": { "siteId": "string", "slug": "string", "hostname": "string", "url": "string", "domains": [ { "hostname": "string", "kind": "PLATFORM", "status": "ACTIVE", "isPrimary": true, "holdUntil": "string" } ], "templateId": "string", "sourceMode": "MANAGED", "status": "ACTIVE", "visibility": "COMING_SOON", "publishedVersion": { "versionId": "string", "number": 1, "templateId": "string", "templateVersion": "string", "status": "BUILDING", "published": true, "publishedAt": "string", "message": "string", "source": "TEMPLATE", "buildId": "string", "createdByType": "string", "createdVia": "string", "createdAt": "string", "previewable": true }, "provisioning": { "status": "SYNCED", "lastErrorCode": "string", "syncedAt": "string" }, "editPreview": { "hostname": "string" }, "slugChangesRemaining": 0, "suspension": { "reason": "string", "suspendedAt": "string" }, "snapshot": { "url": "string", "versionId": "string", "capturedAt": "string" }, "createdAt": "string", "updatedAt": "string" }, "error": null}