Files
SnapOtter/apps/docs/id/tools/files/csv-json.md
T
SnapOtterandGitHub 4963ab3bbd feat(docs-i18n): translate all documentation into 20 languages
All 181 docs markdown files translated into 20 languages (apps/docs/<locale>/**). Companion to the i18n code PR; admin-merged because the file count exceeds GitHub's per-PR CI trigger limit. Validated by pnpm i18n:check (all surfaces, 0 stale/missing) and a clean all-locale docs build.
2026-07-11 13:52:47 +08:00

1.8 KiB

description, i18n_source_hash, i18n_provenance, i18n_output_hash
description i18n_source_hash i18n_provenance i18n_output_hash
Konversi antar CSV dan JSON, kedua arah. 978c08ad46d3 human 690573599e35

CSV to JSON

Konversi antar format CSV dan JSON dalam kedua arah. Unggah file CSV atau TSV untuk mendapatkan array objek JSON, atau unggah array JSON untuk mendapatkan file CSV.

API Endpoint

POST /api/v1/tools/files/csv-json

Menerima multipart form data berisi file CSV, TSV, atau JSON dan field JSON settings.

Parameters

Parameter Type Required Default Description
pretty boolean No true Cetak-rapi output JSON dengan indentasi

Example Request

CSV ke JSON:

curl -X POST http://localhost:1349/api/v1/tools/files/csv-json \
  -H "Authorization: Bearer si_your-api-key" \
  -F "file=@users.csv" \
  -F 'settings={"pretty": true}'

JSON ke CSV:

curl -X POST http://localhost:1349/api/v1/tools/files/csv-json \
  -H "Authorization: Bearer si_your-api-key" \
  -F "file=@users.json" \
  -F 'settings={}'

Example Response

{
  "jobId": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
  "downloadUrl": "/api/v1/download/a1b2c3d4-e5f6-7890-abcd-ef1234567890/users.json",
  "originalSize": 1500,
  "processedSize": 2200
}

Notes

  • Arah konversi terdeteksi otomatis dari ekstensi file input: .csv atau .tsv menghasilkan .json, dan .json menghasilkan .csv.
  • Parameter pretty hanya memengaruhi output JSON. Ketika diatur ke false, output berupa string JSON satu baris yang kompak.
  • Input JSON harus berupa array objek dengan key yang konsisten. Setiap objek menjadi baris, dan setiap key menjadi header kolom.
  • File TSV (nilai yang dipisahkan tab) didukung selain CSV.