メインコンテンツまでスキップ

画像アップロードおよび商品作成

商品を作成するには、まず画像をアップロードする必要があります。Gency は Presigned URL 方式 を使用して、クライアントが S3 へ直接画像をアップロードします。

全体の流れ​

1. 업로드 URL 발급 → 2. S3에 이미지 업로드 → 3. 상품 생성 API 호출
(Gency API) (S3 직접 업로드) (imageId 포함)

Step 1. アップロード URL の発行​

画像ごとにアップロード URL を発行します。商品に画像が3枚ある場合は、この API を3回呼び出します。

curl -X POST "https://openapi.gency.ai/openapi/v1/images/upload-url" \
-H "Authorization: Bearer {access_token}" \
-H "Content-Type: application/json" \
-d '{
"workspaceId": "01HABC...",
"extension": "png"
}'
{
"data": {
"imageId": "01HIMG001...",
"uploadUrl": "https://s3.amazonaws.com/...?X-Amz-Signature=..."
}
}

重要: uploadUrl は 発行後1時間 のみ有効です。1時間以内にアップロードを完了する必要があります。アップロードされた画像は 24時間 保持され、24時間以内に商品作成に使用する必要があります。時間を超過すると画像が削除される場合があります。

Step 2. S3 への画像アップロード​

発行された uploadUrl へ PUT リクエストを送り、画像を直接アップロードします。このリクエストは Gency API ではなく S3 へ直接 送るリクエストです。

curl -X PUT "{uploadUrl}" \
-H "Content-Type: image/png" \
--data-binary @my-product-image.png
  • Content-Type はアップロードする画像の実際の MIME タイプと一致する必要があります (image/png, image/jpeg など)。
  • 成功時は HTTP 200 OK が返されます。

Step 3. 商品の作成​

アップロードが完了した imageId を商品作成 API の images 配列に含めて呼び出します。

curl -X POST "https://openapi.gency.ai/api/v2/products/fashion" \
-H "Authorization: Bearer {access_token}" \
-H "Content-Type: application/json" \
-d '{
"masterId": "01HABC...",
"workspaceId": "01HDEF...",
"metadata": [
{
"category": "OUTER",
"images": ["01HIMG001...", "01HIMG002..."],
"projectId": "my-project-01",
"productName": "겨울 패딩 자켓",
"colors": ["BLACK", "NAVY"],
"fabrics": ["POLYESTER", "NYLON"],
"additionalInfo": {
"features": ["방풍", "경량"],
"laundryTips": ["드라이클리닝 권장"]
}
}
]
}'
  • images 配列の最初の画像が 代表画像 として使用されます。
  • metadata 配列に複数の項目を入れると、1回のリクエストで複数の商品を作成できます。
  • 商品作成時にクレジットが差し引かれます。

注意事項​

  • Presigned URL は 1回限り であり、発行後1時間 以内にアップロードする必要があります。
  • アップロードされた画像は 24時間 保持されます。24時間以内に商品作成に使用する必要があり、超過すると画像が削除される場合があります。
  • サポートする画像形式: png, jpg, jpeg, webp