sayren Docs
컬렉션

조건 자동 컬렉션 미리보기

저장하지 않고 조건(`rules`)을 만족하는 판매 중 상품 수와 앞 20개를 돌려준다. 데이터를 바꾸지 않아 읽기 스코프(`category:r`)로 부른다. 상점에 없는 카테고리는 400 `COLLECTION_CATEGORY_NOT_FOUND`다

POST
/v1/collections/preview

저장하지 않고 조건(rules)을 만족하는 판매 중 상품 수와 앞 20개를 돌려준다. 데이터를 바꾸지 않아 읽기 스코프(category:r)로 부른다. 상점에 없는 카테고리는 400 COLLECTION_CATEGORY_NOT_FOUND다

Authorization

accessToken
headerAuthorizationBearer <token>

Sayren 계정 토큰(로그인 토큰 또는 개인 액세스 토큰, RFC 9068 JWT)

Header Parameters

X-Store-Id*string

대상 상점 id. 토큰의 상점 범위 밖이면 403 STORE_NOT_GRANTED, 없으면 400 STORE_ID_REQUIRED다

Request Body

application/json
  1. body
rules*array<||||>

조건 목록. 모두 만족하는 판매 중 상품이 컬렉션 상품이다(AND). 같은 조건(field)은 한 번만 쓴다

Items1 <= items <= 10
productSort?string

미리보기 순서. 생략하면 LATEST(판매량 상위 조건이 있으면 BEST_SELLING)이고, MANUAL이면 LATEST다

Value in"MANUAL""LATEST""BEST_SELLING""PRICE_ASC""PRICE_DESC""REVIEW_COUNT""RATING_DESC""RECOMMEND"

Response Body

성공

application/json
  1. response
meta*
data*
error*|null
curl -X POST 'https://api.sayren.io/v1/collections/preview' \  -H 'X-Store-Id: string' \  -H 'Content-Type: application/json' \  -d '{  "rules": [    {      "field": "createdWithinDays",      "value": 1    }  ]}'
{  "meta": {    "status": 200,    "code": "OK",    "message": "OK",    "isSuccess": true  },  "data": {    "count": 0,    "products": [      {        "productId": "string",        "name": "string",        "thumbnailUrl": "string",        "status": "string",        "salePrice": 0,        "position": 0,        "addedAt": "string"      }    ],    "salesComputedAt": null  },  "error": null}