# 상품 피드 생성(Google Merchant 규격 — 대량 내보내기도 겸함): csv / xml / json 세 가지를 한 번에 만들어 예약 수집용으로 저장합니다

`GET /api/v1/feeds/products` — 토큰 필요 · product:read · 1포인트

Feeds

상품 피드 생성(Google Merchant 규격 — 대량 내보내기도 겸함): csv / xml / json 세 가지를 한 번에 만들어 예약 수집용으로 저장합니다. OMS 계정 로그인이 필요합니다 — 고객사 전용 채널 가격은 OMS 세션에서만 조회할 수 있으며, 기준가로 만든 피드는 잘못된 가격으로 판매하게 됩니다.

## 쿼리 파라미터

| 이름 | 타입 | 설명 |
| --- | --- | --- |
| `warehouse_code` **필수** | string | 창고 코드: AU(호주 전체 — 합계 뷰), AUSYD2(시드니 메인, Rosehill), AUSYD1(시드니 액세서리), CN(중국 전체 — 합계 뷰), CHNZJ1(전장). 전체 목록: GET /api/v1/warehouses. |
| `format` | string | csv（默认）/ xml / json (최대 길이 8) |
| `link_template` | string | 你站上的商品页地址模板，里面用 {product_code} 或 {sku} 占位，我们替你拼。**不给就不出 link**，而 link 是必填项 (최대 길이 300) |
| `image_base` | string | 图片链接的绝对前缀。不给用服务端配置。**必须走加密链接（TLS）**，明文图片链接各平台基本都会拒 (최대 길이 200) |
| `rebuild` | boolean | 强制重拼。**不会再给你旧的那份** —— 回 202，拼好了再来取 |

## 응답

봉투는 HTTP 상태 코드만으로 판단합니다: 2xx 는 `{ data: … }`(목록은 `page / page_size / has_more` 또는 `total_count` 포함); 4xx / 5xx 는 `{ error: { code, message, hint, request_id, doc_url } }`.

```json
{
  "data": [ … ],
  "total_count": 12
}
```

성공 응답에는 사람이 읽는 문구가 없습니다 — `code / result / msg` 없음. 프로그램이 분기해야 할 필드는 `error.code` 뿐이며 `message` 는 `Accept-Language` 를 따릅니다.

## 예제

### curl

```bash
curl "https://connect.everugg.net.au/api/v1/feeds/products?warehouse_code=AU" \
  -H "Authorization: Bearer $TOKEN"
```

### Python

```python
import requests

r = requests.get(
    "https://connect.everugg.net.au/api/v1/feeds/products?warehouse_code=AU",
    headers={"Authorization": "Bearer " + TOKEN},
)
data = r.json()
r.raise_for_status()  # 4xx/5xx: data["error"]["code"] / ["hint"]
```

### Node

```js
const res = await fetch("https://connect.everugg.net.au/api/v1/feeds/products?warehouse_code=AU", {
  headers: { Authorization: `Bearer ${TOKEN}` },
})
const data = await res.json()
if (!res.ok) throw new Error(`${data.error?.code}: ${data.error?.message}`)
```

### Java

```java
HttpRequest req = HttpRequest.newBuilder()
    .uri(URI.create("https://connect.everugg.net.au/api/v1/feeds/products?warehouse_code=AU"))
    .header("Authorization", "Bearer " + token)
    .GET()
    .build();
HttpResponse<String> res = HttpClient.newHttpClient().send(req, HttpResponse.BodyHandlers.ofString());
```

---
Markdown 원본: https://connect.everugg.net.au/reference/get-api-v1-feeds-products.md?lang=ko · 웹 페이지: https://connect.everugg.net.au/reference?op=get-api-v1-feeds-products&lang=ko
