Định dạng JSON API

Làm đẹp JSON với thụt lề 0-8 dấu cách hoặc tab, rút gọn (minify) hoặc sắp xếp key theo bảng chữ cái. Báo lỗi cú pháp kèm dòng và cột.

POSThttps://apibox.io.vn/v1/json-format
Dữ liệu & JSON▶ Dùng thử online

Gửi JSON qua trường json (nên là chuỗi) hoặc body thô text/plain, API trả về chuỗi đã định dạng trong result cùng độ dài characters. Mặc định thụt lề 2 dấu cách; đặt indent từ 0 đến 8 hoặc tab, hoặc dùng minify=true để bỏ toàn bộ khoảng trắng.

Với sort_keys=true, key của mọi object ở mọi cấp được sắp xếp theo bảng chữ cái, giúp việc so sánh và băm JSON luôn ổn định. Thứ tự phần tử trong mảng được giữ nguyên.

Nếu dữ liệu không phải JSON hợp lệ, API trả về valid: false kèm parse_error (thông báo, vị trí, dòng và cột nếu có) thay vì lỗi HTTP. Body request tối đa 5 MB.

Tham số

TênVị tríKiểuBắt buộcMặc định
jsonbodystringcóJSON cần định dạng, dạng chuỗi (hoặc giá trị JSON bất kỳ). Cũng nhận body thô text/plain.
indentbody|querynumberkhông2Số dấu cách mỗi cấp (0-8), hoặc tab.
minifybody|querybooleankhôngfalseXuất JSON rút gọn, không khoảng trắng.
sort_keysbody|querybooleankhôngfalseSắp xếp key của object theo bảng chữ cái ở mọi cấp.

Ví dụ

curl -X POST "https://apibox.io.vn/v1/json-format" \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"json":"{\"b\":2,\"a\":{\"d\":[1,2],\"c\":true}}","sort_keys":true}'

Kết quả trả về

{
  "valid": true,
  "result": "{\n  \"a\": {\n    \"c\": true,\n    \"d\": [\n      1,\n      2\n    ]\n  },\n  \"b\": 2\n}",
  "characters": 75
}

Ứng dụng

  • Làm đẹp response API bị rút gọn để dễ debug
  • Rút gọn JSON trước khi lưu trữ hoặc gửi đi
  • Chuẩn hoá JSON với key đã sắp xếp để so sánh và băm ổn định
  • Định dạng file cấu hình JSON trong script và CI

Hỏi đáp

Làm sao rút gọn (minify) JSON?

Gửi minify=true. Kết quả không còn dấu cách hay xuống dòng.

Có thụt lề bằng tab được không?

Được, đặt indent=tab. Giá trị số từ 0 đến 8 là số dấu cách (mặc định 2).

Nếu JSON không hợp lệ thì sao?

API trả về {"valid": false, "parse_error": {...}} gồm thông báo lỗi và vị trí, dòng, cột nếu có.

API liên quan

Bắt đầu với 1.000 request miễn phí mỗi tháng. Nhận API key miễn phí →