@asyncapi-actions-test/trusted-publishing-test_asyncapi-cli 4.1.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (257) hide show
  1. package/LICENSE +201 -0
  2. package/README.md +117 -0
  3. package/assets/create-template/templates/default/asyncapi.yaml +34 -0
  4. package/assets/create-template/templates/default/package-lock.json +4062 -0
  5. package/assets/create-template/templates/default/package.json +10 -0
  6. package/assets/create-template/templates/default/readme.md +4 -0
  7. package/assets/create-template/templates/default/template/index.js +11 -0
  8. package/assets/examples/adeo-kafka-request-reply-asyncapi.yml +298 -0
  9. package/assets/examples/anyof-asyncapi.yml +36 -0
  10. package/assets/examples/application-headers-asyncapi.yml +86 -0
  11. package/assets/examples/correlation-id-asyncapi.yml +180 -0
  12. package/assets/examples/default-example.json +51 -0
  13. package/assets/examples/default-example.yaml +31 -0
  14. package/assets/examples/examples.json +82 -0
  15. package/assets/examples/gitter-streaming-asyncapi.yml +178 -0
  16. package/assets/examples/kraken-websocket-request-reply-message-filter-in-reply-asyncapi.yml +388 -0
  17. package/assets/examples/kraken-websocket-request-reply-multiple-channels-asyncapi.yml +394 -0
  18. package/assets/examples/mercure-asyncapi.yml +58 -0
  19. package/assets/examples/not-asyncapi.yml +29 -0
  20. package/assets/examples/oneof-asyncapi.yml +57 -0
  21. package/assets/examples/operation-security-asyncapi.yml +117 -0
  22. package/assets/examples/rpc-client-asyncapi.yml +72 -0
  23. package/assets/examples/rpc-server-asyncapi.yml +69 -0
  24. package/assets/examples/simple-asyncapi.yml +31 -0
  25. package/assets/examples/slack-rtm-asyncapi.yml +982 -0
  26. package/assets/examples/streetlights-kafka-asyncapi.yml +199 -0
  27. package/assets/examples/streetlights-mqtt-asyncapi.yml +253 -0
  28. package/assets/examples/streetlights-operation-security-asyncapi.yml +240 -0
  29. package/assets/examples/tutorial.yml +41 -0
  30. package/assets/examples/websocket-gemini-asyncapi.yml +301 -0
  31. package/assets/logo.png +0 -0
  32. package/assets/server-api.png +0 -0
  33. package/bin/dev +17 -0
  34. package/bin/dev.cmd +3 -0
  35. package/bin/run +12 -0
  36. package/bin/run.cmd +3 -0
  37. package/bin/run_bin +13 -0
  38. package/bin/run_bin.cmd +3 -0
  39. package/lib/apps/api/app.d.ts +15 -0
  40. package/lib/apps/api/app.js +91 -0
  41. package/lib/apps/api/configs/development.json +16 -0
  42. package/lib/apps/api/configs/production.json +16 -0
  43. package/lib/apps/api/configs/test.json +16 -0
  44. package/lib/apps/api/constants.d.ts +1 -0
  45. package/lib/apps/api/constants.js +4 -0
  46. package/lib/apps/api/controllers/bundle.controller.d.ts +7 -0
  47. package/lib/apps/api/controllers/bundle.controller.js +44 -0
  48. package/lib/apps/api/controllers/convert.controller.d.ts +11 -0
  49. package/lib/apps/api/controllers/convert.controller.js +69 -0
  50. package/lib/apps/api/controllers/diff.controller.d.ts +7 -0
  51. package/lib/apps/api/controllers/diff.controller.js +42 -0
  52. package/lib/apps/api/controllers/docs.controller.d.ts +6 -0
  53. package/lib/apps/api/controllers/docs.controller.js +24 -0
  54. package/lib/apps/api/controllers/generate.controller.d.ts +22 -0
  55. package/lib/apps/api/controllers/generate.controller.js +174 -0
  56. package/lib/apps/api/controllers/help.controller.d.ts +6 -0
  57. package/lib/apps/api/controllers/help.controller.js +101 -0
  58. package/lib/apps/api/controllers/parse.controller.d.ts +10 -0
  59. package/lib/apps/api/controllers/parse.controller.js +35 -0
  60. package/lib/apps/api/controllers/validate.controller.d.ts +10 -0
  61. package/lib/apps/api/controllers/validate.controller.js +50 -0
  62. package/lib/apps/api/controllers/version.controller.d.ts +8 -0
  63. package/lib/apps/api/controllers/version.controller.js +69 -0
  64. package/lib/apps/api/exceptions/problem.exception.d.ts +14 -0
  65. package/lib/apps/api/exceptions/problem.exception.js +10 -0
  66. package/lib/apps/api/index.d.ts +10 -0
  67. package/lib/apps/api/index.js +23 -0
  68. package/lib/apps/api/middlewares/logger.middleware.d.ts +2 -0
  69. package/lib/apps/api/middlewares/logger.middleware.js +12 -0
  70. package/lib/apps/api/middlewares/problem.middleware.d.ts +6 -0
  71. package/lib/apps/api/middlewares/problem.middleware.js +27 -0
  72. package/lib/apps/api/middlewares/validation.middleware.d.ts +12 -0
  73. package/lib/apps/api/middlewares/validation.middleware.js +245 -0
  74. package/lib/apps/api/server.d.ts +3 -0
  75. package/lib/apps/api/server.js +19 -0
  76. package/lib/apps/cli/commands/bundle.d.ts +15 -0
  77. package/lib/apps/cli/commands/bundle.js +75 -0
  78. package/lib/apps/cli/commands/config/analytics.d.ts +11 -0
  79. package/lib/apps/cli/commands/config/analytics.js +61 -0
  80. package/lib/apps/cli/commands/config/auth/add.d.ts +13 -0
  81. package/lib/apps/cli/commands/config/auth/add.js +68 -0
  82. package/lib/apps/cli/commands/config/context/add.d.ts +13 -0
  83. package/lib/apps/cli/commands/config/context/add.js +46 -0
  84. package/lib/apps/cli/commands/config/context/current.d.ts +8 -0
  85. package/lib/apps/cli/commands/config/context/current.js +37 -0
  86. package/lib/apps/cli/commands/config/context/edit.d.ts +12 -0
  87. package/lib/apps/cli/commands/config/context/edit.js +44 -0
  88. package/lib/apps/cli/commands/config/context/index.d.ts +5 -0
  89. package/lib/apps/cli/commands/config/context/index.js +16 -0
  90. package/lib/apps/cli/commands/config/context/init.d.ts +12 -0
  91. package/lib/apps/cli/commands/config/context/init.js +31 -0
  92. package/lib/apps/cli/commands/config/context/list.d.ts +8 -0
  93. package/lib/apps/cli/commands/config/context/list.js +36 -0
  94. package/lib/apps/cli/commands/config/context/remove.d.ts +11 -0
  95. package/lib/apps/cli/commands/config/context/remove.js +39 -0
  96. package/lib/apps/cli/commands/config/context/use.d.ts +11 -0
  97. package/lib/apps/cli/commands/config/context/use.js +40 -0
  98. package/lib/apps/cli/commands/config/index.d.ts +5 -0
  99. package/lib/apps/cli/commands/config/index.js +16 -0
  100. package/lib/apps/cli/commands/config/versions.d.ts +8 -0
  101. package/lib/apps/cli/commands/config/versions.js +56 -0
  102. package/lib/apps/cli/commands/convert.d.ts +21 -0
  103. package/lib/apps/cli/commands/convert.js +85 -0
  104. package/lib/apps/cli/commands/diff.d.ts +36 -0
  105. package/lib/apps/cli/commands/diff.js +335 -0
  106. package/lib/apps/cli/commands/format.d.ts +18 -0
  107. package/lib/apps/cli/commands/format.js +97 -0
  108. package/lib/apps/cli/commands/generate/client.d.ts +30 -0
  109. package/lib/apps/cli/commands/generate/client.js +94 -0
  110. package/lib/apps/cli/commands/generate/fromTemplate.d.ts +29 -0
  111. package/lib/apps/cli/commands/generate/fromTemplate.js +91 -0
  112. package/lib/apps/cli/commands/generate/index.d.ts +5 -0
  113. package/lib/apps/cli/commands/generate/index.js +15 -0
  114. package/lib/apps/cli/commands/generate/models.d.ts +16 -0
  115. package/lib/apps/cli/commands/generate/models.js +166 -0
  116. package/lib/apps/cli/commands/new/file.d.ts +16 -0
  117. package/lib/apps/cli/commands/new/file.js +180 -0
  118. package/lib/apps/cli/commands/new/index.d.ts +5 -0
  119. package/lib/apps/cli/commands/new/index.js +15 -0
  120. package/lib/apps/cli/commands/new/template.d.ts +18 -0
  121. package/lib/apps/cli/commands/new/template.js +102 -0
  122. package/lib/apps/cli/commands/optimize.d.ts +41 -0
  123. package/lib/apps/cli/commands/optimize.js +289 -0
  124. package/lib/apps/cli/commands/pretty.d.ts +12 -0
  125. package/lib/apps/cli/commands/pretty.js +70 -0
  126. package/lib/apps/cli/commands/start/api.d.ts +11 -0
  127. package/lib/apps/cli/commands/start/api.js +23 -0
  128. package/lib/apps/cli/commands/start/index.d.ts +5 -0
  129. package/lib/apps/cli/commands/start/index.js +15 -0
  130. package/lib/apps/cli/commands/start/preview.d.ts +17 -0
  131. package/lib/apps/cli/commands/start/preview.js +41 -0
  132. package/lib/apps/cli/commands/start/studio.d.ts +16 -0
  133. package/lib/apps/cli/commands/start/studio.js +94 -0
  134. package/lib/apps/cli/commands/validate.d.ts +23 -0
  135. package/lib/apps/cli/commands/validate.js +95 -0
  136. package/lib/apps/cli/internal/args/generate.args.d.ts +3 -0
  137. package/lib/apps/cli/internal/args/generate.args.js +10 -0
  138. package/lib/apps/cli/internal/base/BaseGeneratorCommand.d.ts +42 -0
  139. package/lib/apps/cli/internal/base/BaseGeneratorCommand.js +119 -0
  140. package/lib/apps/cli/internal/base.d.ts +20 -0
  141. package/lib/apps/cli/internal/base.js +173 -0
  142. package/lib/apps/cli/internal/flags/bundle.flags.d.ts +7 -0
  143. package/lib/apps/cli/internal/flags/bundle.flags.js +26 -0
  144. package/lib/apps/cli/internal/flags/config/analytics.flags.d.ts +6 -0
  145. package/lib/apps/cli/internal/flags/config/analytics.flags.js +24 -0
  146. package/lib/apps/cli/internal/flags/config/context.flags.d.ts +4 -0
  147. package/lib/apps/cli/internal/flags/config/context.flags.js +16 -0
  148. package/lib/apps/cli/internal/flags/convert.flags.d.ts +7 -0
  149. package/lib/apps/cli/internal/flags/convert.flags.js +32 -0
  150. package/lib/apps/cli/internal/flags/diff.flags.d.ts +13 -0
  151. package/lib/apps/cli/internal/flags/diff.flags.js +29 -0
  152. package/lib/apps/cli/internal/flags/format.flags.d.ts +6 -0
  153. package/lib/apps/cli/internal/flags/format.flags.js +22 -0
  154. package/lib/apps/cli/internal/flags/generate/clients.flags.d.ts +16 -0
  155. package/lib/apps/cli/internal/flags/generate/clients.flags.js +8 -0
  156. package/lib/apps/cli/internal/flags/generate/fromTemplate.flags.d.ts +16 -0
  157. package/lib/apps/cli/internal/flags/generate/fromTemplate.flags.js +8 -0
  158. package/lib/apps/cli/internal/flags/generate/models.flags.d.ts +1 -0
  159. package/lib/apps/cli/internal/flags/generate/models.flags.js +14 -0
  160. package/lib/apps/cli/internal/flags/generate/sharedFlags.d.ts +16 -0
  161. package/lib/apps/cli/internal/flags/generate/sharedFlags.js +57 -0
  162. package/lib/apps/cli/internal/flags/global.flags.d.ts +4 -0
  163. package/lib/apps/cli/internal/flags/global.flags.js +18 -0
  164. package/lib/apps/cli/internal/flags/new/file.flags.d.ts +8 -0
  165. package/lib/apps/cli/internal/flags/new/file.flags.js +20 -0
  166. package/lib/apps/cli/internal/flags/new/template.flags.d.ts +7 -0
  167. package/lib/apps/cli/internal/flags/new/template.flags.js +28 -0
  168. package/lib/apps/cli/internal/flags/optimize.flags.d.ts +21 -0
  169. package/lib/apps/cli/internal/flags/optimize.flags.js +51 -0
  170. package/lib/apps/cli/internal/flags/parser.flags.d.ts +10 -0
  171. package/lib/apps/cli/internal/flags/parser.flags.js +28 -0
  172. package/lib/apps/cli/internal/flags/pretty.flags.d.ts +3 -0
  173. package/lib/apps/cli/internal/flags/pretty.flags.js +13 -0
  174. package/lib/apps/cli/internal/flags/proxy.flags.d.ts +4 -0
  175. package/lib/apps/cli/internal/flags/proxy.flags.js +17 -0
  176. package/lib/apps/cli/internal/flags/start/api.flags.d.ts +5 -0
  177. package/lib/apps/cli/internal/flags/start/api.flags.js +20 -0
  178. package/lib/apps/cli/internal/flags/start/preview.flags.d.ts +9 -0
  179. package/lib/apps/cli/internal/flags/start/preview.flags.js +32 -0
  180. package/lib/apps/cli/internal/flags/start/studio.flags.d.ts +7 -0
  181. package/lib/apps/cli/internal/flags/start/studio.flags.js +25 -0
  182. package/lib/apps/cli/internal/flags/validate.flags.d.ts +11 -0
  183. package/lib/apps/cli/internal/flags/validate.flags.js +22 -0
  184. package/lib/apps/cli/internal/globals.d.ts +10 -0
  185. package/lib/apps/cli/internal/globals.js +46 -0
  186. package/lib/apps/cli/internal/hooks/command_not_found/myhook.d.ts +4 -0
  187. package/lib/apps/cli/internal/hooks/command_not_found/myhook.js +85 -0
  188. package/lib/domains/models/Context.d.ts +21 -0
  189. package/lib/domains/models/Context.js +321 -0
  190. package/lib/domains/models/Preview.d.ts +2 -0
  191. package/lib/domains/models/Preview.js +227 -0
  192. package/lib/domains/models/SpecificationFile.d.ts +40 -0
  193. package/lib/domains/models/SpecificationFile.js +295 -0
  194. package/lib/domains/models/Studio.d.ts +2 -0
  195. package/lib/domains/models/Studio.js +182 -0
  196. package/lib/domains/models/generate/ClientLanguages.d.ts +12 -0
  197. package/lib/domains/models/generate/ClientLanguages.js +17 -0
  198. package/lib/domains/models/generate/Flags.d.ts +9 -0
  199. package/lib/domains/models/generate/Flags.js +2 -0
  200. package/lib/domains/services/archiver.service.d.ts +17 -0
  201. package/lib/domains/services/archiver.service.js +53 -0
  202. package/lib/domains/services/base.service.d.ts +6 -0
  203. package/lib/domains/services/base.service.js +26 -0
  204. package/lib/domains/services/config.service.d.ts +42 -0
  205. package/lib/domains/services/config.service.js +95 -0
  206. package/lib/domains/services/convert.service.d.ts +12 -0
  207. package/lib/domains/services/convert.service.js +65 -0
  208. package/lib/domains/services/generator.service.d.ts +15 -0
  209. package/lib/domains/services/generator.service.js +75 -0
  210. package/lib/domains/services/validation.service.d.ts +54 -0
  211. package/lib/domains/services/validation.service.js +375 -0
  212. package/lib/errors/context-error.d.ts +26 -0
  213. package/lib/errors/context-error.js +71 -0
  214. package/lib/errors/diff-error.d.ts +9 -0
  215. package/lib/errors/diff-error.js +27 -0
  216. package/lib/errors/generator-error.d.ts +3 -0
  217. package/lib/errors/generator-error.js +11 -0
  218. package/lib/errors/specification-file.d.ts +18 -0
  219. package/lib/errors/specification-file.js +65 -0
  220. package/lib/errors/validation-error.d.ts +11 -0
  221. package/lib/errors/validation-error.js +55 -0
  222. package/lib/index.d.ts +1 -0
  223. package/lib/index.js +11 -0
  224. package/lib/interfaces/index.d.ts +87 -0
  225. package/lib/interfaces/index.js +7 -0
  226. package/lib/utils/ajv.d.ts +2 -0
  227. package/lib/utils/ajv.js +18 -0
  228. package/lib/utils/app-openapi.d.ts +4 -0
  229. package/lib/utils/app-openapi.js +28 -0
  230. package/lib/utils/generate/flags.d.ts +2 -0
  231. package/lib/utils/generate/flags.js +14 -0
  232. package/lib/utils/generate/mapBaseUrl.d.ts +6 -0
  233. package/lib/utils/generate/mapBaseUrl.js +34 -0
  234. package/lib/utils/generate/parseParams.d.ts +3 -0
  235. package/lib/utils/generate/parseParams.js +58 -0
  236. package/lib/utils/generate/prompts.d.ts +4 -0
  237. package/lib/utils/generate/prompts.js +77 -0
  238. package/lib/utils/generate/registry.d.ts +2 -0
  239. package/lib/utils/generate/registry.js +30 -0
  240. package/lib/utils/generate/watcher.d.ts +51 -0
  241. package/lib/utils/generate/watcher.js +230 -0
  242. package/lib/utils/logger.d.ts +6 -0
  243. package/lib/utils/logger.js +33 -0
  244. package/lib/utils/retrieve-language.d.ts +1 -0
  245. package/lib/utils/retrieve-language.js +9 -0
  246. package/lib/utils/scoreCalculator.d.ts +2 -0
  247. package/lib/utils/scoreCalculator.js +22 -0
  248. package/lib/utils/temp-dir.d.ts +2 -0
  249. package/lib/utils/temp-dir.js +26 -0
  250. package/oclif.manifest.json +2137 -0
  251. package/openapi.yaml +713 -0
  252. package/package.json +203 -0
  253. package/scripts/enableAutoComplete.js +160 -0
  254. package/scripts/fetch-asyncapi-example.js +126 -0
  255. package/scripts/generateTypesForGenerateCommand.js +40 -0
  256. package/scripts/releasePackagesRename.js +88 -0
  257. package/scripts/updateUsageDocs.js +73 -0
package/openapi.yaml ADDED
@@ -0,0 +1,713 @@
1
+ openapi: 3.1.0
2
+ info:
3
+ version: 0.2.0
4
+ title: AsyncAPI Server API
5
+ description: Server API providing official AsyncAPI tools
6
+ contact:
7
+ name: AsyncAPI Initiative
8
+ email: info@asyncapi.io
9
+ url: https://asyncapi.com/
10
+ license:
11
+ name: Apache 2.0
12
+ url: https://www.apache.org/licenses/LICENSE-2.0.html
13
+
14
+ servers:
15
+ - url: https://api.asyncapi.com/v1
16
+
17
+ paths:
18
+ /version:
19
+ get:
20
+ summary: Get the current version of the AsyncAPI CLI.
21
+ operationId: getVersion
22
+ tags:
23
+ - version
24
+ responses:
25
+ "200":
26
+ description: Successfully retrieved the version.
27
+ content:
28
+ application/json:
29
+ schema:
30
+ ref: "#/components/schemas/VersionResponse"
31
+ "500":
32
+ description: Internal server error.
33
+ content:
34
+ application/json:
35
+ schema:
36
+ $ref: "#/components/schemas/Problem"
37
+ default:
38
+ description: Unexpected problem.
39
+ content:
40
+ application/json:
41
+ schema:
42
+ $ref: "#/components/schemas/Problem"
43
+ /validate:
44
+ post:
45
+ summary: Validate the given AsyncAPI document.
46
+ operationId: validate
47
+ tags:
48
+ - validate
49
+ - parser
50
+ externalDocs:
51
+ name: Github Repository for the AsyncAPI Parser
52
+ url: https://github.com/asyncapi/parser-js
53
+ requestBody:
54
+ description: Validate the given AsyncAPI document.
55
+ required: true
56
+ content:
57
+ application/json:
58
+ schema:
59
+ $ref: '#/components/schemas/ValidateRequest'
60
+ responses:
61
+ "204":
62
+ description: The given AsyncAPI document is valid.
63
+ "400":
64
+ description: The given AsyncAPI document is not valid.
65
+ content:
66
+ application/json:
67
+ schema:
68
+ $ref: "#/components/schemas/Problem"
69
+ "422":
70
+ description: The given AsyncAPI document is not valid due to invalid parameters in the request.
71
+ content:
72
+ application/json:
73
+ schema:
74
+ $ref: "#/components/schemas/Problem"
75
+ default:
76
+ description: Unexpected problem.
77
+ content:
78
+ application/json:
79
+ schema:
80
+ $ref: "#/components/schemas/Problem"
81
+
82
+ /parse:
83
+ post:
84
+ summary: Parse the given AsyncAPI document.
85
+ operationId: parse
86
+ tags:
87
+ - parse
88
+ - parser
89
+ externalDocs:
90
+ name: Github Repository for the AsyncAPI Parser
91
+ url: https://github.com/asyncapi/parser-js
92
+ requestBody:
93
+ description: Parse the given AsyncAPI document.
94
+ required: true
95
+ content:
96
+ application/json:
97
+ schema:
98
+ $ref: '#/components/schemas/ParseRequest'
99
+ responses:
100
+ "200":
101
+ description: AsyncAPI document successfully parsed.
102
+ content:
103
+ application/json:
104
+ schema:
105
+ $ref: "#/components/schemas/ParseResponse"
106
+ "400":
107
+ description: The given AsyncAPI document is not valid.
108
+ content:
109
+ application/json:
110
+ schema:
111
+ $ref: "#/components/schemas/Problem"
112
+ "422":
113
+ description: The given AsyncAPI document is not valid due to invalid parameters in the request.
114
+ content:
115
+ application/json:
116
+ schema:
117
+ $ref: "#/components/schemas/Problem"
118
+ default:
119
+ description: Unexpected problem.
120
+ content:
121
+ application/json:
122
+ schema:
123
+ $ref: "#/components/schemas/Problem"
124
+
125
+ /generate:
126
+ post:
127
+ summary: Generate the given AsyncAPI template.
128
+ operationId: generate
129
+ tags:
130
+ - generate
131
+ - generator
132
+ externalDocs:
133
+ name: Github Repository for the AsyncAPI Generator
134
+ url: https://github.com/asyncapi/generator
135
+ requestBody:
136
+ description: Template details to be generated.
137
+ required: true
138
+ content:
139
+ application/json:
140
+ schema:
141
+ $ref: '#/components/schemas/GenerateRequest'
142
+ responses:
143
+ "200":
144
+ description: Template successfully generated.
145
+ content:
146
+ application/zip:
147
+ schema:
148
+ $ref: '#/components/schemas/GenerateResponse'
149
+ '400':
150
+ description: Failed to generate the given template due to invalid AsyncAPI document.
151
+ content:
152
+ application/json:
153
+ schema:
154
+ $ref: "#/components/schemas/Problem"
155
+ "422":
156
+ description: Failed to generate the given template due to invalid parameters.
157
+ content:
158
+ application/json:
159
+ schema:
160
+ $ref: "#/components/schemas/Problem"
161
+ default:
162
+ description: Unexpected problem.
163
+ content:
164
+ application/json:
165
+ schema:
166
+ $ref: "#/components/schemas/Problem"
167
+
168
+ /convert:
169
+ post:
170
+ summary: Convert the given AsyncAPI/OpenAPI/Postman Collection document to AsyncAPI document with the specified version.
171
+ operationId: convert
172
+ tags:
173
+ - convert
174
+ - converter
175
+ externalDocs:
176
+ name: Github Repository for the AsyncAPI Converter
177
+ url: https://github.com/asyncapi/converter-js
178
+ requestBody:
179
+ description: Parameters to convert the spec.
180
+ required: true
181
+ content:
182
+ application/json:
183
+ schema:
184
+ $ref: '#/components/schemas/ConvertRequest'
185
+ responses:
186
+ '200':
187
+ description: AsyncAPI document successfully converted.
188
+ content:
189
+ application/json:
190
+ schema:
191
+ $ref: '#/components/schemas/ConvertResponse'
192
+ '400':
193
+ description: Failed to convert due to invalid AsyncAPI document.
194
+ content:
195
+ application/json:
196
+ schema:
197
+ $ref: '#/components/schemas/Problem'
198
+ '422':
199
+ description: Failed to convert the given document due to invalid parameters.
200
+ content:
201
+ application/json:
202
+ schema:
203
+ $ref: '#/components/schemas/Problem'
204
+ default:
205
+ description: Unexpected problem.
206
+ content:
207
+ application/json:
208
+ schema:
209
+ $ref: '#/components/schemas/Problem'
210
+
211
+ /bundle:
212
+ post:
213
+ summary: Bundle the given AsyncAPI document(s).
214
+ operationId: bundle
215
+ tags:
216
+ - bundle
217
+ - bundler
218
+ externalDocs:
219
+ name: Github Repository for the AsyncAPI Bundler
220
+ url: https://github.com/asyncapi/bundler
221
+ requestBody:
222
+ description: Bundle the given AsyncAPI document(s) to single one.
223
+ required: true
224
+ content:
225
+ application/json:
226
+ schema:
227
+ $ref: "#/components/schemas/BundleRequest"
228
+ responses:
229
+ "200":
230
+ description: AsyncAPI document(s) successfully bundled.
231
+ content:
232
+ application/json:
233
+ schema:
234
+ $ref: "#/components/schemas/BundleResponse"
235
+ "400":
236
+ description: The given AsyncAPI document(s) is/are not valid.
237
+ content:
238
+ application/json:
239
+ schema:
240
+ $ref: "#/components/schemas/Problem"
241
+ "422":
242
+ description: The given AsyncAPI document(s) is/are not valid due to invalid parameters in the request.
243
+ content:
244
+ application/json:
245
+ schema:
246
+ $ref: "#/components/schemas/Problem"
247
+ default:
248
+ description: Unexpected problem.
249
+ content:
250
+ application/json:
251
+ schema:
252
+ $ref: '#/components/schemas/Problem'
253
+
254
+ /help:
255
+ get:
256
+ summary: Retrieve help information for the given command.
257
+ operationId: help
258
+ tags:
259
+ - help
260
+ parameters:
261
+ - name: command
262
+ in: query
263
+ style: form
264
+ explode: true
265
+ description: The command for which help information is needed.
266
+ required: true
267
+ schema:
268
+ type: string
269
+ responses:
270
+ "200":
271
+ description: Help information retrieved successfully.
272
+ content:
273
+ application/json:
274
+ schema:
275
+ oneOf:
276
+ - $ref: '#/components/schemas/HelpListResponse'
277
+ - $ref: '#/components/schemas/HelpCommandResponse'
278
+ "400":
279
+ description: Bad request
280
+ content:
281
+ application/json:
282
+ schema:
283
+ $ref: '#/components/schemas/Problem'
284
+ "404":
285
+ description: Command not found
286
+ content:
287
+ application/problem+json:
288
+ schema:
289
+ $ref: '#/components/schemas/Problem'
290
+ default:
291
+ description: Unexpected problem.
292
+ content:
293
+ application/json:
294
+ schema:
295
+ $ref: "#/components/schemas/Problem"
296
+
297
+ /diff:
298
+ post:
299
+ summary: Compare the given AsyncAPI documents.
300
+ operationId: diff
301
+ tags:
302
+ - diff
303
+ - differ
304
+ externalDocs:
305
+ name: Github Repository for the AsyncAPI Diff
306
+ url: https://github.com/asyncapi/diff
307
+ requestBody:
308
+ description: Compare the given AsyncAPI documents.
309
+ required: true
310
+ content:
311
+ application/json:
312
+ schema:
313
+ $ref: '#/components/schemas/DiffRequest'
314
+ responses:
315
+ '200':
316
+ description: Successfully received changes between two AsyncAPI documents.
317
+ content:
318
+ application/json:
319
+ schema:
320
+ $ref: '#/components/schemas/DiffResponse'
321
+ '400':
322
+ description: One of the AsyncAPI documents is not valid.
323
+ content:
324
+ application/json:
325
+ schema:
326
+ $ref: '#/components/schemas/Problem'
327
+ '422':
328
+ description: Failed to retrieve changes between two AsyncAPI documents due to invalid parameters.
329
+ content:
330
+ application/json:
331
+ schema:
332
+ $ref: '#/components/schemas/Problem'
333
+ default:
334
+ description: Unexpected problem.
335
+ content:
336
+ application/json:
337
+ schema:
338
+ $ref: '#/components/schemas/Problem'
339
+
340
+ components:
341
+ schemas:
342
+ AsyncAPIDocument:
343
+ description: AsyncAPI document in JSON or YAML.
344
+ oneOf:
345
+ - type: string # can be in YAML format
346
+ - $ref: https://raw.githubusercontent.com/asyncapi/spec-json-schemas/master/schemas/2.0.0.json
347
+ - $ref: https://raw.githubusercontent.com/asyncapi/spec-json-schemas/master/schemas/2.1.0.json
348
+ - $ref: https://raw.githubusercontent.com/asyncapi/spec-json-schemas/master/schemas/2.2.0.json
349
+ - $ref: https://raw.githubusercontent.com/asyncapi/spec-json-schemas/master/schemas/2.3.0.json
350
+ - $ref: https://raw.githubusercontent.com/asyncapi/spec-json-schemas/master/schemas/2.4.0.json
351
+ - $ref: https://raw.githubusercontent.com/asyncapi/spec-json-schemas/master/schemas/2.5.0.json
352
+ - $ref: https://raw.githubusercontent.com/asyncapi/spec-json-schemas/master/schemas/2.6.0.json
353
+ - $ref: https://raw.githubusercontent.com/asyncapi/spec-json-schemas/master/schemas/3.0.0.json
354
+ AsyncAPIDocuments:
355
+ type: array
356
+ description: AsyncAPI documents in JSON or YAML.
357
+ minItems: 1
358
+ items:
359
+ $ref: '#/components/schemas/AsyncAPIDocument'
360
+ OpenAPIDocument:
361
+ type: string
362
+ description: OpenAPI document in JSON or YAML.
363
+ oneOf:
364
+ - type: string # can be in YAML format
365
+ - $ref: https://spec.openapis.org/oas/3.0/schema/2024-10-18
366
+ PostmanCollectionDocument:
367
+ type: string
368
+ description: Postman Collection document in JSON or YAML.
369
+ oneOf:
370
+ - type: string # can be in YAML format
371
+ - $ref: https://schema.getpostman.com/json/collection/v2.1.0/collection.json
372
+ - $ref: https://schema.getpostman.com/json/collection/v2.0.0/collection.json
373
+ - $ref: https://schema.getpostman.com/json/collection/v1.0.0/collection.json
374
+ SpecVersions:
375
+ type: string
376
+ description: Valid specification versions for the AsyncAPI document.
377
+ default: latest
378
+ enum:
379
+ - '2.0.0'
380
+ - '2.1.0'
381
+ - '2.2.0'
382
+ - '2.3.0'
383
+ - '2.4.0'
384
+ - '2.5.0'
385
+ - '2.6.0'
386
+ - '3.0.0'
387
+ - 'latest'
388
+
389
+ ValidateRequest:
390
+ type: object
391
+ required:
392
+ - asyncapi
393
+ properties:
394
+ asyncapi:
395
+ $ref: '#/components/schemas/AsyncAPIDocument'
396
+
397
+ ValidateResponse:
398
+ type: object
399
+ required:
400
+ - status
401
+ properties:
402
+ status:
403
+ type: string
404
+ description: Validation status of the AsyncAPI document.
405
+ enum:
406
+ - valid
407
+ - invalid
408
+ diagnostics:
409
+ type: array
410
+ description: List of validation diagnostics.
411
+ items:
412
+ type: object
413
+ asyncapi:
414
+ $ref: '#/components/schemas/AsyncAPIDocument'
415
+ score:
416
+ type: number
417
+ description: Score of the AsyncAPI document based on validation.
418
+ minimum: 0
419
+ maximum: 100
420
+ ParseRequest:
421
+ type: object
422
+ required:
423
+ - asyncapi
424
+ properties:
425
+ asyncapi:
426
+ $ref: '#/components/schemas/AsyncAPIDocument'
427
+ ParseResponse:
428
+ type: object
429
+ required:
430
+ - parsed
431
+ properties:
432
+ parsed:
433
+ type: string
434
+
435
+ GenerateRequest:
436
+ type: object
437
+ required:
438
+ - asyncapi
439
+ - template
440
+ properties:
441
+ asyncapi:
442
+ $ref: "#/components/schemas/AsyncAPIDocument"
443
+ template:
444
+ type: string
445
+ description: Template name to be generated.
446
+ enum:
447
+ # TODO add more templates
448
+ - "@asyncapi/dotnet-nats-template"
449
+ - "@asyncapi/go-watermill-template"
450
+ - "@asyncapi/html-template"
451
+ - "@asyncapi/java-spring-cloud-stream-template"
452
+ - "@asyncapi/java-spring-template"
453
+ - "@asyncapi/java-template"
454
+ - "@asyncapi/markdown-template"
455
+ - "@asyncapi/nodejs-template"
456
+ - "@asyncapi/nodejs-ws-template"
457
+ - "@asyncapi/python-paho-template"
458
+ - "@asyncapi/ts-nats-template"
459
+ - "@asyncapi/minimaltemplate"
460
+ - "@asyncapi/dotnet-rabbitmq-template"
461
+ use-fallback-generator:
462
+ type: boolean
463
+ description: Use generator version 1.17.25
464
+ default: false
465
+ # TODO parameter validation
466
+ parameters:
467
+ type: object
468
+ description: |
469
+ Template parameters to be generated. Each template has different parameters that you should check in the documentation,
470
+ which is usually located in the template's repository.
471
+ This field is optional but may be required for some templates.
472
+ additionalProperties: true
473
+ GenerateResponse:
474
+ type: string
475
+ format: binary
476
+
477
+ ConvertRequest:
478
+ type: object
479
+ required:
480
+ - source
481
+ - format
482
+ properties:
483
+ source:
484
+ description: The source document to be converted.
485
+ oneOf:
486
+ - $ref: '#/components/schemas/AsyncAPIDocument'
487
+ - $ref: '#/components/schemas/OpenAPIDocument'
488
+ - $ref: '#/components/schemas/PostmanCollectionDocument'
489
+ target-version:
490
+ description: The version of the AsyncAPI document to be converted to (only applicable for AsyncAPI documents).
491
+ $ref: '#/components/schemas/SpecVersions'
492
+ perspective:
493
+ type: string
494
+ description: The perspective of the conversion, e.g. "server", "client".
495
+ default: server
496
+ enum:
497
+ - server
498
+ - client
499
+ format:
500
+ type: string
501
+ description: The format of the source document to be converted.
502
+ enum:
503
+ - asyncapi
504
+ - openapi
505
+ - postman-collection
506
+ ConvertResponse:
507
+ type: object
508
+ properties:
509
+ converted:
510
+ $ref: '#/components/schemas/AsyncAPIDocument'
511
+
512
+ BundleRequest:
513
+ type: object
514
+ required:
515
+ - asyncapis
516
+ properties:
517
+ asyncapis:
518
+ $ref: "#/components/schemas/AsyncAPIDocuments"
519
+ base:
520
+ $ref: "#/components/schemas/AsyncAPIDocument"
521
+ BundleResponse:
522
+ type: object
523
+ required:
524
+ - bundled
525
+ properties:
526
+ bundled:
527
+ $ref: "#/components/schemas/AsyncAPIDocument"
528
+
529
+ DiffRequest:
530
+ type: object
531
+ required:
532
+ - asyncapis
533
+ properties:
534
+ asyncapis:
535
+ type: array
536
+ minItems: 2
537
+ maxItems: 2
538
+ items:
539
+ $ref: '#/components/schemas/AsyncAPIDocument'
540
+ DiffResponse:
541
+ type: object
542
+ properties:
543
+ diff:
544
+ type: [object, string]
545
+ description: The diff between the two AsyncAPI documents.
546
+
547
+ HelpListResponse:
548
+ type: object
549
+ properties:
550
+ commands:
551
+ type: array
552
+ items:
553
+ type: string
554
+ description: A list of all available commands.
555
+ HelpCommandResponse:
556
+ type: object
557
+ description: Detailed help information for a specific command.
558
+ properties:
559
+ command:
560
+ type: string
561
+ description: The name of the command.
562
+ description:
563
+ type: string
564
+ description: Detailed description of the command.
565
+
566
+ Problem:
567
+ type: object
568
+ properties:
569
+ type:
570
+ type: string
571
+ format: uri
572
+ description: |
573
+ An absolute URI that identifies the problem type. When dereferenced,
574
+ it SHOULD provide human-readable documentation for the problem type
575
+ (e.g., using HTML).
576
+ default: "about:blank"
577
+ example: "https://api.asyncapi.com/problem/invalid-template-parameters"
578
+ title:
579
+ type: string
580
+ description: |
581
+ A short, summary of the problem type. Written in english and readable.
582
+ example: Invalid AsyncAPI document.
583
+ status:
584
+ type: integer
585
+ format: int32
586
+ description: |
587
+ The HTTP status code generated by the origin server for this occurrence
588
+ of the problem.
589
+ minimum: 100
590
+ maximum: 600
591
+ exclusiveMaximum: true
592
+ example: 422
593
+ detail:
594
+ type: string
595
+ description: |
596
+ A human readable explanation specific to this occurrence of the problem.
597
+ example: Connection to database timed out
598
+ instance:
599
+ type: string
600
+ format: uri
601
+ description: |
602
+ An absolute URI that identifies the specific occurrence of the problem.
603
+ It may or may not yield further information if dereferenced.
604
+ required:
605
+ - type
606
+ - title
607
+ - status
608
+ additionalProperties: true
609
+ VersionResponse:
610
+ type: object
611
+ description: Version information for the AsyncAPI CLI API
612
+ properties:
613
+ version:
614
+ type: string
615
+ description: The current version of the AsyncAPI CLI
616
+ example: "3.5.1"
617
+ name:
618
+ type: string
619
+ description: The name of the application
620
+ example: "@asyncapi/cli"
621
+ description:
622
+ type: string
623
+ description: Description of the application
624
+ example: "All in one CLI for all AsyncAPI tools"
625
+ runtime:
626
+ type: object
627
+ description: Runtime information
628
+ properties:
629
+ node:
630
+ type: string
631
+ description: Node.js version
632
+ example: "v24.7.0"
633
+ environment:
634
+ type: string
635
+ description: Build environment
636
+ example: "development"
637
+ enum: ["development", "staging", "production"]
638
+ platform:
639
+ type: string
640
+ description: Operating system platform
641
+ example: "darwin"
642
+ arch:
643
+ type: string
644
+ description: System architecture
645
+ example: "arm64"
646
+ uptime:
647
+ type: string
648
+ description: Application uptime
649
+ example: "12 seconds"
650
+ startTime:
651
+ type: string
652
+ format: date-time
653
+ description: Application start time
654
+ example: "2025-09-12T05:08:25.171Z"
655
+ required:
656
+ - node
657
+ - environment
658
+ - platform
659
+ - arch
660
+ - uptime
661
+ - startTime
662
+ repository:
663
+ type: object
664
+ description: Repository information
665
+ properties:
666
+ url:
667
+ type: string
668
+ format: uri
669
+ description: Repository URL
670
+ example: "https://github.com/asyncapi/cli"
671
+ bugs:
672
+ type: string
673
+ format: uri
674
+ description: Bug tracker URL
675
+ example: "https://github.com/asyncapi/cli/issues"
676
+ license:
677
+ type: string
678
+ description: License type
679
+ example: "Apache-2.0"
680
+ required:
681
+ - url
682
+ - bugs
683
+ - license
684
+ api:
685
+ type: object
686
+ description: API metadata
687
+ properties:
688
+ basePath:
689
+ type: string
690
+ description: API base path
691
+ example: "/version"
692
+ timestamp:
693
+ type: string
694
+ format: date-time
695
+ description: Current timestamp
696
+ example: "2025-09-12T05:08:37.979Z"
697
+ health:
698
+ type: string
699
+ description: API health status
700
+ example: "ok"
701
+ enum: ["ok", "degraded", "error"]
702
+ required:
703
+ - basePath
704
+ - timestamp
705
+ - health
706
+ required:
707
+ - version
708
+ - name
709
+ - description
710
+ - build
711
+ - runtime
712
+ - repository
713
+ - api