sayren Docs
컬렉션

컬렉션 상품 바꾸기

담긴 상품을 통째로 바꾼다. 배열 순서가 직접 정한 순서다(최대 1,000개). 본문에 읽은 `revision`을 주면 그 사이 다른 수정이 있었을 때 409 `COLLECTION_CHANGED`다. 성공하면 `revision`이 1 오른다

PUT
/v1/collections/{collectionId}/products

담긴 상품을 통째로 바꾼다. 배열 순서가 직접 정한 순서다(최대 1,000개). 본문에 읽은 revision을 주면 그 사이 다른 수정이 있었을 때 409 COLLECTION_CHANGED다. 성공하면 revision이 1 오른다

Authorization

accessToken
headerAuthorizationBearer <token>

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

Path Parameters

collectionId*string

Header Parameters

X-Store-Id*string

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

Request Body

application/json
  1. body
productIds*array<>

상품 id. 배열 순서가 직접 정한 순서다. 겹치는 id는 처음 것만 남긴다

Itemsitems <= 1000
revision?integer

읽은 수정 번호

Range0 <= value

Response Body

성공

application/json
  1. response
meta*
data*
error*|null
curl -X PUT 'https://api.sayren.io/v1/collections/string/products' \  -H 'X-Store-Id: string' \  -H 'Content-Type: application/json' \  -d '{  "productIds": [    "string"  ]}'
{  "meta": {    "status": 200,    "code": "OK",    "message": "OK",    "isSuccess": true  },  "data": {    "collectionId": "string",    "type": "string",    "title": "string",    "slug": "string",    "description": "string",    "imageUrl": "string",    "productSort": "string",    "rules": [      {        "field": "createdWithinDays",        "value": 1      }    ],    "visible": true,    "startsAt": "string",    "endsAt": "string",    "sortOrder": 0,    "metaTitle": "string",    "metaDescription": "string",    "state": "ACTIVE",    "salesComputedAt": null,    "productCount": 0,    "revision": 0,    "createdAt": "string",    "updatedAt": "string"  },  "error": null}