1. 온라인 변환기 웹 서비스
- Swagger Converter
- 공식적으로 제공되는 Swagger Converter 웹사이트(converter.swagger.io)에서 Swagger 2.0(OpenAPI 2.0) 사양을 OpenAPI 3.0 사양으로 변환할 수 있습니다.
- 웹 인터페이스에서 파일을 업로드하거나 URL을 입력하면 변환된 OpenAPI 3.0 문서를 바로 받을 수 있습니다.
- Docker 이미지로도 제공되어 자체 서버에서 실행할 수도 있습니다.
- 사용 예시:
docker pull swaggerapi/swagger-converter:v1.0.2 docker run -it -p 8080:8080 --name swagger-converter swaggerapi/swagger-converter:v1.0.2 - 이 도구는 Swagger/OpenAPI 2.0 문서를 OpenAPI 3.0으로 손쉽게 변환하는 대표적인 서비스입니다.
- APIDog
- APIDog 웹 서비스에서는 Postman 컬렉션을 OpenAPI 3.0 형식으로 변환할 수 있습니다.
- Postman 컬렉션 파일을 업로드하고, 변환 후 OpenAPI 3.0 문서로 내보낼 수 있습니다.
- API 테스트, 모의 서버, 문서화 등 다양한 부가 기능도 제공합니다.
- postman-to-openapi npm 패키지
- Node.js 환경에서
postman-to-openapi패키지를 사용해 Postman 컬렉션을 OpenAPI 3.0 문서로 변환할 수 있습니다. - 예시 코드:
const postmanToOpenApi = require('postman-to-openapi') const postmanCollection = './path/to/your/collection.json' const outputFile = './output/openapi.yml' postmanToOpenApi(postmanCollection, outputFile, { defaultTag: 'General' }) - 이 방식은 자동화나 개발 파이프라인에 적합합니다.
- Node.js 환경에서
- Postman 공식 API
- Postman에서 제공하는 API를 통해 컬렉션을 OpenAPI 3.0으로 변환할 수 있습니다.
- API 키를 발급받아 변환 요청을 보내면 OpenAPI 3.0 문서를 받을 수 있습니다.
- 기타 온라인 변환 도구
- 여러 무료 온라인 변환기가 존재하며, Postman 컬렉션 JSON 파일을 업로드만 하면 OpenAPI 3.0 문서를 바로 생성해줍니다.
- AWS API Gateway
- OpenAPI 3.0 정의 파일을 직접 업로드하여 HTTP API를 생성할 수 있습니다.
- 기존 REST API를 OpenAPI 3.0 정의로 내보낸 뒤, 이를 API Gateway에 가져와 사용할 수 있습니다.
- Salesforce, IBM API Connect 등
- Salesforce, IBM API Connect와 같은 다양한 클라우드 서비스 및 API 관리 플랫폼에서도 OpenAPI 3.0 정의 등록 및 변환을 지원합니다.
2. Postman 컬렉션 변환
3. 클라우드 플랫폼 및 API 게이트웨이
정리:
Swagger Converter(공식 웹 또는 Docker), APIDog, postman-to-openapi, Postman 공식 API, 각종 온라인 변환기, 그리고 AWS API Gateway 등에서 OpenAPI 3.0 변환 및 활용이 가능합니다. 변환 목적과 환경에 따라 웹, CLI, 클라우드 플랫폼 등 다양한 옵션을 선택할 수 있습니다. https://apidog.com/kr/blog/openapi-3-specification-tutorial-3/
https://apidog.com/kr/blog/postman-to-openapi-2/
https://junuuu.tistory.com/714
https://wonsjung.tistory.com/584
https://docs.aws.amazon.com/ko_kr/apigateway/latest/developerguide/http-api-open-api.html
https://velog.io/@alsry922/series/swagger
https://help.salesforce.com/s/articleView?id=release-notes.rn_forcecom_ext_services_register_more_specs.htm&language=ko&release=236&type=5
https://www.ibm.com/docs/ko/api-connect/10.0.8?topic=definitions-editing-openapi-30-api-definition
https://seoulsolution.kr/sites/default/files/policy/%EC%84%9C%EC%9A%B8%EC%97%B4%EB%A6%B0%EB%8D%B0%EC%9D%B4%ED%84%B0%EA%B4%91%EC%9E%A5%20%EB%B0%B1%EC%84%9C.pdf
댓글
댓글 쓰기