JSON Schema 생성기
JSON 데이터에서 JSON Schema를 자동으로 생성합니다
샘플 데이터를 기반으로 추론했습니다. 배열 항목 스키마는 첫 번째 항목을 사용하므로, 검증 전에 스키마를 검토하고 보완하세요.
이 기기에서 처리됩니다. 텍스트는 업로드되지 않습니다.
무료 온라인 JSON Schema 생성기
이 JSON Schema 생성기는 샘플 JSON 데이터를 분석해 정확한 타입 감지, 중첩 객체 처리, 배열 항목 추론이 적용된 올바른 JSON Schema 정의를 즉시 만들어 줍니다. JSON 객체를 붙여 넣고 원하는 드래프트 버전을 선택하기만 하면 API 검증, 폼 생성, 문서화에 쓸 수 있는 스키마를 얻을 수 있으며, 스키마 코드를 한 줄도 직접 작성할 필요가 없습니다.
이 도구는 생태계에서 가장 널리 쓰이는 JSON Schema draft-04, draft-06, draft-07을 지원합니다. JSON 구조를 재귀적으로 순회하며 문자열, 숫자, 정수, 불리언, null, 객체, 배열을 감지합니다. 배열은 첫 번째 요소를 기준으로 스키마를 추론하므로 복잡한 중첩 구조에서도 정확한 항목 정의를 얻을 수 있습니다.
옵션으로 required 속성 배열을 켜고 끄고, 문서화를 위한 설명 자리 표시자를 추가하고, 엄격한 검증을 위해 additionalProperties: false를 적용할 수 있습니다. 결과가 마음에 들면 .schema.json 파일로 다운로드하거나 한 번의 클릭으로 클립보드에 복사하세요. 모든 처리는 브라우저에서 이루어지며 데이터는 서버에 업로드되지 않습니다.
주요 기능
- 올바른 $schema URI를 포함한 JSON Schema 초안 04, 06, 07 버전(draft-04, draft-06, draft-07) 지원
- 문자열, 숫자, 정수, 불리언, null, 객체, 배열 타입 자동 감지
- 깊게 중첩된 객체와 배열을 위한 재귀적 스키마 생성
- 첫 번째 요소를 기준으로 한 배열 항목 타입 추론
- 검증 엄격도를 조절하는 “required” 속성 배열 설정
- 스스로 설명하는 스키마를 위한 “description” 자리 표시자 생성(선택 사항)
- 엄격한 객체 구조를 적용하는 “additionalProperties: false” 전환 옵션
- 생성된 스키마를 .schema.json 파일로 다운로드
- 한 번의 클릭으로 클립보드에 복사
- 빠르게 시험해 볼 수 있는 샘플 JSON 기본 제공
JSON Schema 생성기 사용 방법
- 스키마 옵션 설정: 드래프트 버전을 선택하고 필요에 따라 required 배열, description, additionalProperties를 켜거나 끕니다.
- JSON 붙여 넣기: 입력 패널에 샘플 JSON 객체를 입력하거나 붙여 넣습니다. “샘플 JSON”을 클릭해 예시를 불러올 수도 있습니다.
- 스키마 생성: “스키마 생성”을 클릭하면 오른쪽 패널에 JSON Schema 출력이 만들어집니다.
- 검토 및 보완: 출력을 확인합니다. 필수 필드나 설명 같은 옵션을 조정한 뒤 필요하면 다시 생성하세요.
- 스키마 내보내기: “복사”를 클릭해 스키마를 클립보드에 담거나, “.schema.json 다운로드”를 클릭해 파일로 저장합니다.
활용 사례
- OpenAPI / Swagger 명세: API 문서에 들어갈 요청 및 응답 본문의 스키마 정의를 생성합니다.
- 백엔드 요청 검증: Express, FastAPI, Spring Boot 등의 프레임워크에서 들어오는 JSON 페이로드를 검증할 스키마를 만듭니다.
- 프런트엔드 폼 생성: react-jsonschema-form 같은 라이브러리에 스키마를 넣어 데이터 모델에서 UI 폼을 자동으로 생성합니다.
- 데이터 계약: 마이크로서비스 간 또는 프런트엔드와 백엔드 팀 간에 구조화된 데이터 계약을 정의하고 공유합니다.
- 설정 검증: CI/CD 파이프라인에서 JSON 설정 파일을 검증해 배포 전에 구조 오류를 잡아냅니다.
- 데이터베이스 마이그레이션 계획: 새 테이블이나 컬렉션을 설계할 때 예상되는 데이터 구조를 문서화합니다.
- IDE 자동 완성: VS Code 설정에서 JSON Schema를 참조해 사용자 지정 JSON 파일에 IntelliSense와 검증을 활성화합니다.
자주 묻는 질문
이 도구는 무료인가요?
예, JSON Schema 생성기는 완전 무료이며 회원 가입이나 사용 제한이 없습니다. 원하는 만큼 많은 JSON 객체의 스키마를 무료로 생성할 수 있습니다.
내 데이터는 안전한가요?
예. 모든 스키마 생성은 브라우저에서 이루어집니다. JSON 데이터는 어떤 서버로도 전송되지 않으므로 비공개 API 페이로드나 내부 데이터 구조에도 안전하게 사용할 수 있습니다.
JSON Schema란 무엇인가요?
JSON Schema는 JSON 문서에 주석을 달고 검증하기 위한 선언적 어휘입니다. JSON 객체에 기대되는 구조, 데이터 타입, 필수 속성, 제약 조건을 기술합니다. API 명세(OpenAPI/Swagger), 폼 생성 라이브러리, 설정 검증 도구에서 널리 사용됩니다.
어떤 드래프트 버전을 사용해야 하나요?
draft-07은 검증 라이브러리와 도구 전반에서 가장 널리 지원되므로 대부분의 프로젝트에 권장됩니다. 도구 체인에서 구버전이 꼭 필요한 경우에만 draft-04나 draft-06을 사용하세요.
생성된 스키마를 수정할 수 있나요?
생성된 스키마는 출발점입니다. 다운로드하거나 복사한 뒤 minLength, maximum, enum 값, pattern 정규식처럼 샘플 데이터만으로는 추론할 수 없는 제약 조건을 직접 추가할 수 있습니다.
혼합 타입 배열도 처리하나요?
생성기는 첫 번째 요소를 기준으로 배열 항목 타입을 추론합니다. 배열에 서로 다른 타입이 섞여 있으면 생성 후 items 정의를 oneOf 또는 anyOf 스키마로 직접 조정해야 할 수 있습니다.
팁과 모범 사례
- 대표적인 샘플 데이터 제공: 스키마가 전체 구조를 담을 수 있도록 샘플 JSON에 가능한 모든 필드를 포함하세요.
- required 배열 활성화: 스키마를 검증에 사용할 때 필수 필드를 강제하려면 “required” 옵션을 켜세요.
- 설명은 나중에 추가: 생성할 때 description 자리 표시자를 켜 두고, 스키마를 공유하기 전에 의미 있는 문서로 바꾸세요.
- 엄격한 API에는 additionalProperties: false 사용: 클라이언트가 예상치 못한 필드를 보내 이후 단계에서 문제가 생기는 것을 막아 줍니다.
- 생성 후 검증: JSON Schema 검증기로 여러 샘플 페이로드에 스키마를 테스트해 예외 상황까지 다루는지 확인하세요.
- 스키마 버전 관리: 변경 이력을 추적할 수 있도록 스키마 파일을 API 코드와 함께 버전 관리에 저장하세요.