CSV ๋๋ JSON ์คํ๋ ๋์ํธ ํ์ ํ๋น ํ๋์ ์ด์ ๋ฌธ์๋ก ๊ฐ์ ธ์ต๋๋ค.
CSV ํ(๋๋ JSON ์คํ๋ ๋์ํธ ํ)์ ์ด์ ๋ฌธ์๋ก ๊ฐ์ ธ์ค๋ฉฐ, ๊ฐ ํ๋ง๋ค ํ๋์ ๋ฌธ์๋ฅผ ์์ฑํฉ๋๋ค.
์ธ์ฆ: Bearer JWT(WorkOS).
| ๋งค๊ฐ๋ณ์ | ์ ํ | ํ์ ์ฌ๋ถ | ๋น๊ณ |
|---|---|---|---|
website_id | uuid | ์ | ๋์ ์น์ฌ์ดํธ์ ๋๋ค. ์ฐธ๊ณ : ๋๋ถ๋ถ์ ์๋ํฌ์ธํธ์ ๋ฌ๋ฆฌ ์ฌ๊ธฐ์๋ snake_case๋ฅผ ์ฌ์ฉํฉ๋๋ค. |
๋ ๊ฐ์ง ์ฝํ
์ธ ์ ํ์ Content-Type ํค๋๋ก ๊ตฌ๋ถํ์ฌ ๋ฐ์ ์ ์์ต๋๋ค.
multipart/form-data โ ํ๋:
schema_name (ํ
์คํธ, ํ์)file (์์ CSV ๋ฐ์ดํธ, ํ์). ์ฒซ ๋ฒ์งธ ํ์ ํค๋์ด๋ฉฐ, ๊ฐ ์
์ ์๋ค ๊ณต๋ฐฑ์ด ์ ๊ฑฐ๋ JSON ๋ฌธ์์ด ๊ฐ์ด ๋ฉ๋๋ค.application/json (์ต๋ 10 MiB):
{
"schema_name": "ํฌ์คํธ",
"spreadsheet_data": [ { "title": "ํ 1" }, { "title": "ํ 2" } ]
}
schema_name (๋ฌธ์์ด, ํ์)spreadsheet_data (๊ฐ์ฒด ๋ฐฐ์ด, ํ์){ "inserted": 2 }
201 Created๊ฐ ๋ฐํ๋ฉ๋๋ค. ๊ฐ ํ์ ์ด์ ๋ฌธ์๊ฐ ๋๋ฉฐ, ๋ฌธ์ ์ ๋ชฉ์ ํด๋น ํ์ ์ฒซ ๋ฒ์งธ ๋ฌธ์์ด ๊ฐ์
๋๋ค.
curl -X POST '{CMS_API_URL}/csv?website_id=<uuid>' \
-H 'Authorization: Bearer <workos-jwt>' \
-H 'Content-Type: application/json' \
-d '{"schema_name":"ํฌ์คํธ","spreadsheet_data":[{"title":"ํ 1"}]}'
curl -X POST '{CMS_API_URL}/csv?website_id=<uuid>' \
-H 'Authorization: Bearer <workos-jwt>' \
-F 'schema_name=ํฌ์คํธ' \
-F 'file=@data.csv'
400 โ ๊ตฌ๋ฌธ ์ค๋ฅ, schema_name/file ๋๋ฝ, ๋ฐฐ์ด์ด ์๋ spreadsheet_data, ๊ฐ์ฒด๊ฐ ์๋ ํ, ๋๋ ๋น์ด ์๋ CSV401 โ JWT๊ฐ ์๊ฑฐ๋ ์ ํจํ์ง ์์500 โ ์ฝ์
์คํจ