issue.json 114 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174117511761177117811791180118111821183118411851186118711881189119011911192119311941195119611971198119912001201120212031204120512061207120812091210121112121213121412151216121712181219122012211222122312241225122612271228122912301231123212331234123512361237123812391240124112421243124412451246124712481249125012511252125312541255125612571258125912601261126212631264126512661267126812691270127112721273127412751276127712781279128012811282128312841285128612871288128912901291129212931294129512961297129812991300130113021303130413051306130713081309131013111312131313141315131613171318131913201321132213231324132513261327132813291330133113321333133413351336133713381339134013411342134313441345134613471348134913501351135213531354135513561357135813591360136113621363136413651366136713681369137013711372137313741375137613771378137913801381138213831384138513861387138813891390139113921393139413951396139713981399140014011402140314041405140614071408140914101411141214131414141514161417141814191420142114221423142414251426142714281429143014311432143314341435143614371438143914401441144214431444144514461447144814491450145114521453145414551456145714581459146014611462146314641465146614671468146914701471147214731474147514761477147814791480148114821483148414851486148714881489149014911492149314941495149614971498149915001501150215031504150515061507150815091510151115121513151415151516151715181519152015211522152315241525152615271528152915301531153215331534153515361537153815391540154115421543154415451546154715481549155015511552155315541555155615571558155915601561156215631564156515661567156815691570157115721573157415751576157715781579158015811582158315841585158615871588158915901591159215931594159515961597159815991600160116021603160416051606160716081609161016111612161316141615161616171618161916201621162216231624162516261627162816291630163116321633163416351636163716381639164016411642164316441645164616471648164916501651165216531654165516561657165816591660166116621663166416651666166716681669167016711672167316741675167616771678167916801681168216831684168516861687168816891690169116921693169416951696169716981699170017011702170317041705170617071708170917101711171217131714171517161717171817191720172117221723172417251726172717281729173017311732173317341735173617371738173917401741174217431744174517461747174817491750175117521753175417551756175717581759176017611762176317641765176617671768176917701771177217731774177517761777177817791780178117821783178417851786178717881789179017911792179317941795179617971798179918001801180218031804180518061807180818091810181118121813181418151816181718181819182018211822182318241825182618271828182918301831183218331834183518361837183818391840184118421843184418451846184718481849185018511852185318541855185618571858185918601861186218631864186518661867186818691870187118721873187418751876187718781879188018811882188318841885188618871888188918901891189218931894189518961897189818991900190119021903190419051906190719081909191019111912191319141915191619171918191919201921192219231924192519261927192819291930193119321933193419351936193719381939194019411942194319441945194619471948194919501951195219531954195519561957195819591960196119621963196419651966196719681969197019711972197319741975197619771978197919801981198219831984198519861987198819891990199119921993199419951996199719981999200020012002200320042005200620072008200920102011201220132014201520162017201820192020202120222023202420252026202720282029203020312032203320342035203620372038203920402041204220432044204520462047204820492050205120522053205420552056205720582059206020612062206320642065206620672068206920702071207220732074207520762077207820792080208120822083208420852086208720882089209020912092209320942095209620972098209921002101210221032104210521062107210821092110211121122113211421152116211721182119212021212122212321242125212621272128212921302131213221332134213521362137213821392140214121422143214421452146214721482149215021512152215321542155215621572158215921602161216221632164216521662167216821692170217121722173217421752176217721782179218021812182218321842185218621872188218921902191219221932194219521962197219821992200220122022203220422052206220722082209221022112212221322142215221622172218221922202221222222232224222522262227222822292230223122322233223422352236223722382239224022412242224322442245224622472248224922502251225222532254225522562257225822592260226122622263226422652266226722682269227022712272227322742275227622772278227922802281228222832284228522862287228822892290229122922293229422952296229722982299230023012302230323042305230623072308230923102311231223132314231523162317231823192320232123222323232423252326232723282329233023312332233323342335233623372338233923402341234223432344234523462347234823492350235123522353235423552356235723582359236023612362236323642365236623672368236923702371237223732374237523762377237823792380238123822383238423852386238723882389239023912392239323942395239623972398239924002401240224032404240524062407240824092410241124122413241424152416241724182419242024212422242324242425242624272428242924302431243224332434243524362437243824392440244124422443244424452446244724482449245024512452245324542455245624572458245924602461246224632464246524662467246824692470247124722473247424752476247724782479248024812482248324842485248624872488248924902491249224932494249524962497249824992500250125022503250425052506250725082509251025112512251325142515251625172518251925202521252225232524252525262527252825292530253125322533253425352536253725382539254025412542254325442545254625472548254925502551255225532554255525562557255825592560256125622563256425652566256725682569257025712572257325742575257625772578257925802581258225832584258525862587258825892590259125922593259425952596259725982599260026012602260326042605260626072608260926102611261226132614261526162617261826192620262126222623262426252626262726282629263026312632263326342635263626372638263926402641264226432644264526462647264826492650265126522653
  1. [
  2. {
  3. "description": "Petstore",
  4. "schema": {
  5. "title": "A JSON Schema for Swagger 2.0 API.",
  6. "id": "http://swagger.io/v2/schema.json#",
  7. "$schema": "http://json-schema.org/draft-04/schema#",
  8. "type": "object",
  9. "required": [
  10. "swagger",
  11. "info",
  12. "paths"
  13. ],
  14. "additionalProperties": false,
  15. "patternProperties": {
  16. "^x-": {
  17. "$ref": "#/definitions/vendorExtension"
  18. }
  19. },
  20. "properties": {
  21. "swagger": {
  22. "type": "string",
  23. "enum": [
  24. "2.0"
  25. ],
  26. "description": "The Swagger version of this document."
  27. },
  28. "info": {
  29. "$ref": "#/definitions/info"
  30. },
  31. "host": {
  32. "type": "string",
  33. "pattern": "^[^{}/ :\\\\]+(?::\\d+)?$",
  34. "description": "The host (name or ip) of the API. Example: 'swagger.io'"
  35. },
  36. "basePath": {
  37. "type": "string",
  38. "pattern": "^/",
  39. "description": "The base path to the API. Example: '/api'."
  40. },
  41. "schemes": {
  42. "$ref": "#/definitions/schemesList"
  43. },
  44. "consumes": {
  45. "description": "A list of MIME types accepted by the API.",
  46. "allOf": [
  47. {
  48. "$ref": "#/definitions/mediaTypeList"
  49. }
  50. ]
  51. },
  52. "produces": {
  53. "description": "A list of MIME types the API can produce.",
  54. "allOf": [
  55. {
  56. "$ref": "#/definitions/mediaTypeList"
  57. }
  58. ]
  59. },
  60. "paths": {
  61. "$ref": "#/definitions/paths"
  62. },
  63. "definitions": {
  64. "$ref": "#/definitions/definitions"
  65. },
  66. "parameters": {
  67. "$ref": "#/definitions/parameterDefinitions"
  68. },
  69. "responses": {
  70. "$ref": "#/definitions/responseDefinitions"
  71. },
  72. "security": {
  73. "$ref": "#/definitions/security"
  74. },
  75. "securityDefinitions": {
  76. "$ref": "#/definitions/securityDefinitions"
  77. },
  78. "tags": {
  79. "type": "array",
  80. "items": {
  81. "$ref": "#/definitions/tag"
  82. },
  83. "uniqueItems": true
  84. },
  85. "externalDocs": {
  86. "$ref": "#/definitions/externalDocs"
  87. }
  88. },
  89. "definitions": {
  90. "info": {
  91. "type": "object",
  92. "description": "General information about the API.",
  93. "required": [
  94. "version",
  95. "title"
  96. ],
  97. "additionalProperties": false,
  98. "patternProperties": {
  99. "^x-": {
  100. "$ref": "#/definitions/vendorExtension"
  101. }
  102. },
  103. "properties": {
  104. "title": {
  105. "type": "string",
  106. "description": "A unique and precise title of the API."
  107. },
  108. "version": {
  109. "type": "string",
  110. "description": "A semantic version number of the API."
  111. },
  112. "description": {
  113. "type": "string",
  114. "description": "A longer description of the API. Should be different from the title. GitHub Flavored Markdown is allowed."
  115. },
  116. "termsOfService": {
  117. "type": "string",
  118. "description": "The terms of service for the API."
  119. },
  120. "contact": {
  121. "$ref": "#/definitions/contact"
  122. },
  123. "license": {
  124. "$ref": "#/definitions/license"
  125. }
  126. }
  127. },
  128. "contact": {
  129. "type": "object",
  130. "description": "Contact information for the owners of the API.",
  131. "additionalProperties": false,
  132. "properties": {
  133. "name": {
  134. "type": "string",
  135. "description": "The identifying name of the contact person/organization."
  136. },
  137. "url": {
  138. "type": "string",
  139. "description": "The URL pointing to the contact information.",
  140. "format": "uri"
  141. },
  142. "email": {
  143. "type": "string",
  144. "description": "The email address of the contact person/organization.",
  145. "format": "email"
  146. }
  147. },
  148. "patternProperties": {
  149. "^x-": {
  150. "$ref": "#/definitions/vendorExtension"
  151. }
  152. }
  153. },
  154. "license": {
  155. "type": "object",
  156. "required": [
  157. "name"
  158. ],
  159. "additionalProperties": false,
  160. "properties": {
  161. "name": {
  162. "type": "string",
  163. "description": "The name of the license type. It's encouraged to use an OSI compatible license."
  164. },
  165. "url": {
  166. "type": "string",
  167. "description": "The URL pointing to the license.",
  168. "format": "uri"
  169. }
  170. },
  171. "patternProperties": {
  172. "^x-": {
  173. "$ref": "#/definitions/vendorExtension"
  174. }
  175. }
  176. },
  177. "paths": {
  178. "type": "object",
  179. "description": "Relative paths to the individual endpoints. They must be relative to the 'basePath'.",
  180. "patternProperties": {
  181. "^x-": {
  182. "$ref": "#/definitions/vendorExtension"
  183. },
  184. "^/": {
  185. "$ref": "#/definitions/pathItem"
  186. }
  187. },
  188. "additionalProperties": false
  189. },
  190. "definitions": {
  191. "type": "object",
  192. "additionalProperties": {
  193. "$ref": "#/definitions/schema"
  194. },
  195. "description": "One or more JSON objects describing the schemas being consumed and produced by the API."
  196. },
  197. "parameterDefinitions": {
  198. "type": "object",
  199. "additionalProperties": {
  200. "$ref": "#/definitions/parameter"
  201. },
  202. "description": "One or more JSON representations for parameters"
  203. },
  204. "responseDefinitions": {
  205. "type": "object",
  206. "additionalProperties": {
  207. "$ref": "#/definitions/response"
  208. },
  209. "description": "One or more JSON representations for parameters"
  210. },
  211. "externalDocs": {
  212. "type": "object",
  213. "additionalProperties": false,
  214. "description": "information about external documentation",
  215. "required": [
  216. "url"
  217. ],
  218. "properties": {
  219. "description": {
  220. "type": "string"
  221. },
  222. "url": {
  223. "type": "string",
  224. "format": "uri"
  225. }
  226. },
  227. "patternProperties": {
  228. "^x-": {
  229. "$ref": "#/definitions/vendorExtension"
  230. }
  231. }
  232. },
  233. "examples": {
  234. "type": "object",
  235. "additionalProperties": true
  236. },
  237. "mimeType": {
  238. "type": "string",
  239. "description": "The MIME type of the HTTP message."
  240. },
  241. "operation": {
  242. "type": "object",
  243. "required": [
  244. "responses"
  245. ],
  246. "additionalProperties": false,
  247. "patternProperties": {
  248. "^x-": {
  249. "$ref": "#/definitions/vendorExtension"
  250. }
  251. },
  252. "properties": {
  253. "tags": {
  254. "type": "array",
  255. "items": {
  256. "type": "string"
  257. },
  258. "uniqueItems": true
  259. },
  260. "summary": {
  261. "type": "string",
  262. "description": "A brief summary of the operation."
  263. },
  264. "description": {
  265. "type": "string",
  266. "description": "A longer description of the operation, GitHub Flavored Markdown is allowed."
  267. },
  268. "externalDocs": {
  269. "$ref": "#/definitions/externalDocs"
  270. },
  271. "operationId": {
  272. "type": "string",
  273. "description": "A unique identifier of the operation."
  274. },
  275. "produces": {
  276. "description": "A list of MIME types the API can produce.",
  277. "allOf": [
  278. {
  279. "$ref": "#/definitions/mediaTypeList"
  280. }
  281. ]
  282. },
  283. "consumes": {
  284. "description": "A list of MIME types the API can consume.",
  285. "allOf": [
  286. {
  287. "$ref": "#/definitions/mediaTypeList"
  288. }
  289. ]
  290. },
  291. "parameters": {
  292. "$ref": "#/definitions/parametersList"
  293. },
  294. "responses": {
  295. "$ref": "#/definitions/responses"
  296. },
  297. "schemes": {
  298. "$ref": "#/definitions/schemesList"
  299. },
  300. "deprecated": {
  301. "type": "boolean",
  302. "default": false
  303. },
  304. "security": {
  305. "$ref": "#/definitions/security"
  306. }
  307. }
  308. },
  309. "pathItem": {
  310. "type": "object",
  311. "additionalProperties": false,
  312. "patternProperties": {
  313. "^x-": {
  314. "$ref": "#/definitions/vendorExtension"
  315. }
  316. },
  317. "properties": {
  318. "$ref": {
  319. "type": "string"
  320. },
  321. "get": {
  322. "$ref": "#/definitions/operation"
  323. },
  324. "put": {
  325. "$ref": "#/definitions/operation"
  326. },
  327. "post": {
  328. "$ref": "#/definitions/operation"
  329. },
  330. "delete": {
  331. "$ref": "#/definitions/operation"
  332. },
  333. "options": {
  334. "$ref": "#/definitions/operation"
  335. },
  336. "head": {
  337. "$ref": "#/definitions/operation"
  338. },
  339. "patch": {
  340. "$ref": "#/definitions/operation"
  341. },
  342. "parameters": {
  343. "$ref": "#/definitions/parametersList"
  344. }
  345. }
  346. },
  347. "responses": {
  348. "type": "object",
  349. "description": "Response objects names can either be any valid HTTP status code or 'default'.",
  350. "minProperties": 1,
  351. "additionalProperties": false,
  352. "patternProperties": {
  353. "^([0-9]{3})$|^(default)$": {
  354. "$ref": "#/definitions/responseValue"
  355. },
  356. "^x-": {
  357. "$ref": "#/definitions/vendorExtension"
  358. }
  359. },
  360. "not": {
  361. "type": "object",
  362. "additionalProperties": false,
  363. "patternProperties": {
  364. "^x-": {
  365. "$ref": "#/definitions/vendorExtension"
  366. }
  367. }
  368. }
  369. },
  370. "responseValue": {
  371. "oneOf": [
  372. {
  373. "$ref": "#/definitions/response"
  374. },
  375. {
  376. "$ref": "#/definitions/jsonReference"
  377. }
  378. ]
  379. },
  380. "response": {
  381. "type": "object",
  382. "required": [
  383. "description"
  384. ],
  385. "properties": {
  386. "description": {
  387. "type": "string"
  388. },
  389. "schema": {
  390. "oneOf": [
  391. {
  392. "$ref": "#/definitions/schema"
  393. },
  394. {
  395. "$ref": "#/definitions/fileSchema"
  396. }
  397. ]
  398. },
  399. "headers": {
  400. "$ref": "#/definitions/headers"
  401. },
  402. "examples": {
  403. "$ref": "#/definitions/examples"
  404. }
  405. },
  406. "additionalProperties": false,
  407. "patternProperties": {
  408. "^x-": {
  409. "$ref": "#/definitions/vendorExtension"
  410. }
  411. }
  412. },
  413. "headers": {
  414. "type": "object",
  415. "additionalProperties": {
  416. "$ref": "#/definitions/header"
  417. }
  418. },
  419. "header": {
  420. "type": "object",
  421. "additionalProperties": false,
  422. "required": [
  423. "type"
  424. ],
  425. "properties": {
  426. "type": {
  427. "type": "string",
  428. "enum": [
  429. "string",
  430. "number",
  431. "integer",
  432. "boolean",
  433. "array"
  434. ]
  435. },
  436. "format": {
  437. "type": "string"
  438. },
  439. "items": {
  440. "$ref": "#/definitions/primitivesItems"
  441. },
  442. "collectionFormat": {
  443. "$ref": "#/definitions/collectionFormat"
  444. },
  445. "default": {
  446. "$ref": "#/definitions/default"
  447. },
  448. "maximum": {
  449. "$ref": "#/definitions/maximum"
  450. },
  451. "exclusiveMaximum": {
  452. "$ref": "#/definitions/exclusiveMaximum"
  453. },
  454. "minimum": {
  455. "$ref": "#/definitions/minimum"
  456. },
  457. "exclusiveMinimum": {
  458. "$ref": "#/definitions/exclusiveMinimum"
  459. },
  460. "maxLength": {
  461. "$ref": "#/definitions/maxLength"
  462. },
  463. "minLength": {
  464. "$ref": "#/definitions/minLength"
  465. },
  466. "pattern": {
  467. "$ref": "#/definitions/pattern"
  468. },
  469. "maxItems": {
  470. "$ref": "#/definitions/maxItems"
  471. },
  472. "minItems": {
  473. "$ref": "#/definitions/minItems"
  474. },
  475. "uniqueItems": {
  476. "$ref": "#/definitions/uniqueItems"
  477. },
  478. "enum": {
  479. "$ref": "#/definitions/enum"
  480. },
  481. "multipleOf": {
  482. "$ref": "#/definitions/multipleOf"
  483. },
  484. "description": {
  485. "type": "string"
  486. }
  487. },
  488. "patternProperties": {
  489. "^x-": {
  490. "$ref": "#/definitions/vendorExtension"
  491. }
  492. }
  493. },
  494. "vendorExtension": {
  495. "description": "Any property starting with x- is valid.",
  496. "additionalProperties": true,
  497. "additionalItems": true
  498. },
  499. "bodyParameter": {
  500. "type": "object",
  501. "required": [
  502. "name",
  503. "in",
  504. "schema"
  505. ],
  506. "patternProperties": {
  507. "^x-": {
  508. "$ref": "#/definitions/vendorExtension"
  509. }
  510. },
  511. "properties": {
  512. "description": {
  513. "type": "string",
  514. "description": "A brief description of the parameter. This could contain examples of use. GitHub Flavored Markdown is allowed."
  515. },
  516. "name": {
  517. "type": "string",
  518. "description": "The name of the parameter."
  519. },
  520. "in": {
  521. "type": "string",
  522. "description": "Determines the location of the parameter.",
  523. "enum": [
  524. "body"
  525. ]
  526. },
  527. "required": {
  528. "type": "boolean",
  529. "description": "Determines whether or not this parameter is required or optional.",
  530. "default": false
  531. },
  532. "schema": {
  533. "$ref": "#/definitions/schema"
  534. }
  535. },
  536. "additionalProperties": false
  537. },
  538. "headerParameterSubSchema": {
  539. "additionalProperties": false,
  540. "patternProperties": {
  541. "^x-": {
  542. "$ref": "#/definitions/vendorExtension"
  543. }
  544. },
  545. "properties": {
  546. "required": {
  547. "type": "boolean",
  548. "description": "Determines whether or not this parameter is required or optional.",
  549. "default": false
  550. },
  551. "in": {
  552. "type": "string",
  553. "description": "Determines the location of the parameter.",
  554. "enum": [
  555. "header"
  556. ]
  557. },
  558. "description": {
  559. "type": "string",
  560. "description": "A brief description of the parameter. This could contain examples of use. GitHub Flavored Markdown is allowed."
  561. },
  562. "name": {
  563. "type": "string",
  564. "description": "The name of the parameter."
  565. },
  566. "type": {
  567. "type": "string",
  568. "enum": [
  569. "string",
  570. "number",
  571. "boolean",
  572. "integer",
  573. "array"
  574. ]
  575. },
  576. "format": {
  577. "type": "string"
  578. },
  579. "items": {
  580. "$ref": "#/definitions/primitivesItems"
  581. },
  582. "collectionFormat": {
  583. "$ref": "#/definitions/collectionFormat"
  584. },
  585. "default": {
  586. "$ref": "#/definitions/default"
  587. },
  588. "maximum": {
  589. "$ref": "#/definitions/maximum"
  590. },
  591. "exclusiveMaximum": {
  592. "$ref": "#/definitions/exclusiveMaximum"
  593. },
  594. "minimum": {
  595. "$ref": "#/definitions/minimum"
  596. },
  597. "exclusiveMinimum": {
  598. "$ref": "#/definitions/exclusiveMinimum"
  599. },
  600. "maxLength": {
  601. "$ref": "#/definitions/maxLength"
  602. },
  603. "minLength": {
  604. "$ref": "#/definitions/minLength"
  605. },
  606. "pattern": {
  607. "$ref": "#/definitions/pattern"
  608. },
  609. "maxItems": {
  610. "$ref": "#/definitions/maxItems"
  611. },
  612. "minItems": {
  613. "$ref": "#/definitions/minItems"
  614. },
  615. "uniqueItems": {
  616. "$ref": "#/definitions/uniqueItems"
  617. },
  618. "enum": {
  619. "$ref": "#/definitions/enum"
  620. },
  621. "multipleOf": {
  622. "$ref": "#/definitions/multipleOf"
  623. }
  624. }
  625. },
  626. "queryParameterSubSchema": {
  627. "additionalProperties": false,
  628. "patternProperties": {
  629. "^x-": {
  630. "$ref": "#/definitions/vendorExtension"
  631. }
  632. },
  633. "properties": {
  634. "required": {
  635. "type": "boolean",
  636. "description": "Determines whether or not this parameter is required or optional.",
  637. "default": false
  638. },
  639. "in": {
  640. "type": "string",
  641. "description": "Determines the location of the parameter.",
  642. "enum": [
  643. "query"
  644. ]
  645. },
  646. "description": {
  647. "type": "string",
  648. "description": "A brief description of the parameter. This could contain examples of use. GitHub Flavored Markdown is allowed."
  649. },
  650. "name": {
  651. "type": "string",
  652. "description": "The name of the parameter."
  653. },
  654. "allowEmptyValue": {
  655. "type": "boolean",
  656. "default": false,
  657. "description": "allows sending a parameter by name only or with an empty value."
  658. },
  659. "type": {
  660. "type": "string",
  661. "enum": [
  662. "string",
  663. "number",
  664. "boolean",
  665. "integer",
  666. "array"
  667. ]
  668. },
  669. "format": {
  670. "type": "string"
  671. },
  672. "items": {
  673. "$ref": "#/definitions/primitivesItems"
  674. },
  675. "collectionFormat": {
  676. "$ref": "#/definitions/collectionFormatWithMulti"
  677. },
  678. "default": {
  679. "$ref": "#/definitions/default"
  680. },
  681. "maximum": {
  682. "$ref": "#/definitions/maximum"
  683. },
  684. "exclusiveMaximum": {
  685. "$ref": "#/definitions/exclusiveMaximum"
  686. },
  687. "minimum": {
  688. "$ref": "#/definitions/minimum"
  689. },
  690. "exclusiveMinimum": {
  691. "$ref": "#/definitions/exclusiveMinimum"
  692. },
  693. "maxLength": {
  694. "$ref": "#/definitions/maxLength"
  695. },
  696. "minLength": {
  697. "$ref": "#/definitions/minLength"
  698. },
  699. "pattern": {
  700. "$ref": "#/definitions/pattern"
  701. },
  702. "maxItems": {
  703. "$ref": "#/definitions/maxItems"
  704. },
  705. "minItems": {
  706. "$ref": "#/definitions/minItems"
  707. },
  708. "uniqueItems": {
  709. "$ref": "#/definitions/uniqueItems"
  710. },
  711. "enum": {
  712. "$ref": "#/definitions/enum"
  713. },
  714. "multipleOf": {
  715. "$ref": "#/definitions/multipleOf"
  716. }
  717. }
  718. },
  719. "formDataParameterSubSchema": {
  720. "additionalProperties": false,
  721. "patternProperties": {
  722. "^x-": {
  723. "$ref": "#/definitions/vendorExtension"
  724. }
  725. },
  726. "properties": {
  727. "required": {
  728. "type": "boolean",
  729. "description": "Determines whether or not this parameter is required or optional.",
  730. "default": false
  731. },
  732. "in": {
  733. "type": "string",
  734. "description": "Determines the location of the parameter.",
  735. "enum": [
  736. "formData"
  737. ]
  738. },
  739. "description": {
  740. "type": "string",
  741. "description": "A brief description of the parameter. This could contain examples of use. GitHub Flavored Markdown is allowed."
  742. },
  743. "name": {
  744. "type": "string",
  745. "description": "The name of the parameter."
  746. },
  747. "allowEmptyValue": {
  748. "type": "boolean",
  749. "default": false,
  750. "description": "allows sending a parameter by name only or with an empty value."
  751. },
  752. "type": {
  753. "type": "string",
  754. "enum": [
  755. "string",
  756. "number",
  757. "boolean",
  758. "integer",
  759. "array",
  760. "file"
  761. ]
  762. },
  763. "format": {
  764. "type": "string"
  765. },
  766. "items": {
  767. "$ref": "#/definitions/primitivesItems"
  768. },
  769. "collectionFormat": {
  770. "$ref": "#/definitions/collectionFormatWithMulti"
  771. },
  772. "default": {
  773. "$ref": "#/definitions/default"
  774. },
  775. "maximum": {
  776. "$ref": "#/definitions/maximum"
  777. },
  778. "exclusiveMaximum": {
  779. "$ref": "#/definitions/exclusiveMaximum"
  780. },
  781. "minimum": {
  782. "$ref": "#/definitions/minimum"
  783. },
  784. "exclusiveMinimum": {
  785. "$ref": "#/definitions/exclusiveMinimum"
  786. },
  787. "maxLength": {
  788. "$ref": "#/definitions/maxLength"
  789. },
  790. "minLength": {
  791. "$ref": "#/definitions/minLength"
  792. },
  793. "pattern": {
  794. "$ref": "#/definitions/pattern"
  795. },
  796. "maxItems": {
  797. "$ref": "#/definitions/maxItems"
  798. },
  799. "minItems": {
  800. "$ref": "#/definitions/minItems"
  801. },
  802. "uniqueItems": {
  803. "$ref": "#/definitions/uniqueItems"
  804. },
  805. "enum": {
  806. "$ref": "#/definitions/enum"
  807. },
  808. "multipleOf": {
  809. "$ref": "#/definitions/multipleOf"
  810. }
  811. }
  812. },
  813. "pathParameterSubSchema": {
  814. "additionalProperties": false,
  815. "patternProperties": {
  816. "^x-": {
  817. "$ref": "#/definitions/vendorExtension"
  818. }
  819. },
  820. "required": [
  821. "required"
  822. ],
  823. "properties": {
  824. "required": {
  825. "type": "boolean",
  826. "enum": [
  827. true
  828. ],
  829. "description": "Determines whether or not this parameter is required or optional."
  830. },
  831. "in": {
  832. "type": "string",
  833. "description": "Determines the location of the parameter.",
  834. "enum": [
  835. "path"
  836. ]
  837. },
  838. "description": {
  839. "type": "string",
  840. "description": "A brief description of the parameter. This could contain examples of use. GitHub Flavored Markdown is allowed."
  841. },
  842. "name": {
  843. "type": "string",
  844. "description": "The name of the parameter."
  845. },
  846. "type": {
  847. "type": "string",
  848. "enum": [
  849. "string",
  850. "number",
  851. "boolean",
  852. "integer",
  853. "array"
  854. ]
  855. },
  856. "format": {
  857. "type": "string"
  858. },
  859. "items": {
  860. "$ref": "#/definitions/primitivesItems"
  861. },
  862. "collectionFormat": {
  863. "$ref": "#/definitions/collectionFormat"
  864. },
  865. "default": {
  866. "$ref": "#/definitions/default"
  867. },
  868. "maximum": {
  869. "$ref": "#/definitions/maximum"
  870. },
  871. "exclusiveMaximum": {
  872. "$ref": "#/definitions/exclusiveMaximum"
  873. },
  874. "minimum": {
  875. "$ref": "#/definitions/minimum"
  876. },
  877. "exclusiveMinimum": {
  878. "$ref": "#/definitions/exclusiveMinimum"
  879. },
  880. "maxLength": {
  881. "$ref": "#/definitions/maxLength"
  882. },
  883. "minLength": {
  884. "$ref": "#/definitions/minLength"
  885. },
  886. "pattern": {
  887. "$ref": "#/definitions/pattern"
  888. },
  889. "maxItems": {
  890. "$ref": "#/definitions/maxItems"
  891. },
  892. "minItems": {
  893. "$ref": "#/definitions/minItems"
  894. },
  895. "uniqueItems": {
  896. "$ref": "#/definitions/uniqueItems"
  897. },
  898. "enum": {
  899. "$ref": "#/definitions/enum"
  900. },
  901. "multipleOf": {
  902. "$ref": "#/definitions/multipleOf"
  903. }
  904. }
  905. },
  906. "nonBodyParameter": {
  907. "type": "object",
  908. "required": [
  909. "name",
  910. "in",
  911. "type"
  912. ],
  913. "oneOf": [
  914. {
  915. "$ref": "#/definitions/headerParameterSubSchema"
  916. },
  917. {
  918. "$ref": "#/definitions/formDataParameterSubSchema"
  919. },
  920. {
  921. "$ref": "#/definitions/queryParameterSubSchema"
  922. },
  923. {
  924. "$ref": "#/definitions/pathParameterSubSchema"
  925. }
  926. ]
  927. },
  928. "parameter": {
  929. "oneOf": [
  930. {
  931. "$ref": "#/definitions/bodyParameter"
  932. },
  933. {
  934. "$ref": "#/definitions/nonBodyParameter"
  935. }
  936. ]
  937. },
  938. "schema": {
  939. "type": "object",
  940. "description": "A deterministic version of a JSON Schema object.",
  941. "patternProperties": {
  942. "^x-": {
  943. "$ref": "#/definitions/vendorExtension"
  944. }
  945. },
  946. "properties": {
  947. "$ref": {
  948. "type": "string"
  949. },
  950. "format": {
  951. "type": "string"
  952. },
  953. "title": {
  954. "$ref": "http://json-schema.org/draft-04/schema#/properties/title"
  955. },
  956. "description": {
  957. "$ref": "http://json-schema.org/draft-04/schema#/properties/description"
  958. },
  959. "default": {
  960. "$ref": "http://json-schema.org/draft-04/schema#/properties/default"
  961. },
  962. "multipleOf": {
  963. "$ref": "http://json-schema.org/draft-04/schema#/properties/multipleOf"
  964. },
  965. "maximum": {
  966. "$ref": "http://json-schema.org/draft-04/schema#/properties/maximum"
  967. },
  968. "exclusiveMaximum": {
  969. "$ref": "http://json-schema.org/draft-04/schema#/properties/exclusiveMaximum"
  970. },
  971. "minimum": {
  972. "$ref": "http://json-schema.org/draft-04/schema#/properties/minimum"
  973. },
  974. "exclusiveMinimum": {
  975. "$ref": "http://json-schema.org/draft-04/schema#/properties/exclusiveMinimum"
  976. },
  977. "maxLength": {
  978. "$ref": "http://json-schema.org/draft-04/schema#/definitions/positiveInteger"
  979. },
  980. "minLength": {
  981. "$ref": "http://json-schema.org/draft-04/schema#/definitions/positiveIntegerDefault0"
  982. },
  983. "pattern": {
  984. "$ref": "http://json-schema.org/draft-04/schema#/properties/pattern"
  985. },
  986. "maxItems": {
  987. "$ref": "http://json-schema.org/draft-04/schema#/definitions/positiveInteger"
  988. },
  989. "minItems": {
  990. "$ref": "http://json-schema.org/draft-04/schema#/definitions/positiveIntegerDefault0"
  991. },
  992. "uniqueItems": {
  993. "$ref": "http://json-schema.org/draft-04/schema#/properties/uniqueItems"
  994. },
  995. "maxProperties": {
  996. "$ref": "http://json-schema.org/draft-04/schema#/definitions/positiveInteger"
  997. },
  998. "minProperties": {
  999. "$ref": "http://json-schema.org/draft-04/schema#/definitions/positiveIntegerDefault0"
  1000. },
  1001. "required": {
  1002. "$ref": "http://json-schema.org/draft-04/schema#/definitions/stringArray"
  1003. },
  1004. "enum": {
  1005. "$ref": "http://json-schema.org/draft-04/schema#/properties/enum"
  1006. },
  1007. "additionalProperties": {
  1008. "anyOf": [
  1009. {
  1010. "$ref": "#/definitions/schema"
  1011. },
  1012. {
  1013. "type": "boolean"
  1014. }
  1015. ],
  1016. "default": {}
  1017. },
  1018. "type": {
  1019. "$ref": "http://json-schema.org/draft-04/schema#/properties/type"
  1020. },
  1021. "items": {
  1022. "anyOf": [
  1023. {
  1024. "$ref": "#/definitions/schema"
  1025. },
  1026. {
  1027. "type": "array",
  1028. "minItems": 1,
  1029. "items": {
  1030. "$ref": "#/definitions/schema"
  1031. }
  1032. }
  1033. ],
  1034. "default": {}
  1035. },
  1036. "allOf": {
  1037. "type": "array",
  1038. "minItems": 1,
  1039. "items": {
  1040. "$ref": "#/definitions/schema"
  1041. }
  1042. },
  1043. "properties": {
  1044. "type": "object",
  1045. "additionalProperties": {
  1046. "$ref": "#/definitions/schema"
  1047. },
  1048. "default": {}
  1049. },
  1050. "discriminator": {
  1051. "type": "string"
  1052. },
  1053. "readOnly": {
  1054. "type": "boolean",
  1055. "default": false
  1056. },
  1057. "xml": {
  1058. "$ref": "#/definitions/xml"
  1059. },
  1060. "externalDocs": {
  1061. "$ref": "#/definitions/externalDocs"
  1062. },
  1063. "example": {}
  1064. },
  1065. "additionalProperties": false
  1066. },
  1067. "fileSchema": {
  1068. "type": "object",
  1069. "description": "A deterministic version of a JSON Schema object.",
  1070. "patternProperties": {
  1071. "^x-": {
  1072. "$ref": "#/definitions/vendorExtension"
  1073. }
  1074. },
  1075. "required": [
  1076. "type"
  1077. ],
  1078. "properties": {
  1079. "format": {
  1080. "type": "string"
  1081. },
  1082. "title": {
  1083. "$ref": "http://json-schema.org/draft-04/schema#/properties/title"
  1084. },
  1085. "description": {
  1086. "$ref": "http://json-schema.org/draft-04/schema#/properties/description"
  1087. },
  1088. "default": {
  1089. "$ref": "http://json-schema.org/draft-04/schema#/properties/default"
  1090. },
  1091. "required": {
  1092. "$ref": "http://json-schema.org/draft-04/schema#/definitions/stringArray"
  1093. },
  1094. "type": {
  1095. "type": "string",
  1096. "enum": [
  1097. "file"
  1098. ]
  1099. },
  1100. "readOnly": {
  1101. "type": "boolean",
  1102. "default": false
  1103. },
  1104. "externalDocs": {
  1105. "$ref": "#/definitions/externalDocs"
  1106. },
  1107. "example": {}
  1108. },
  1109. "additionalProperties": false
  1110. },
  1111. "primitivesItems": {
  1112. "type": "object",
  1113. "additionalProperties": false,
  1114. "properties": {
  1115. "type": {
  1116. "type": "string",
  1117. "enum": [
  1118. "string",
  1119. "number",
  1120. "integer",
  1121. "boolean",
  1122. "array"
  1123. ]
  1124. },
  1125. "format": {
  1126. "type": "string"
  1127. },
  1128. "items": {
  1129. "$ref": "#/definitions/primitivesItems"
  1130. },
  1131. "collectionFormat": {
  1132. "$ref": "#/definitions/collectionFormat"
  1133. },
  1134. "default": {
  1135. "$ref": "#/definitions/default"
  1136. },
  1137. "maximum": {
  1138. "$ref": "#/definitions/maximum"
  1139. },
  1140. "exclusiveMaximum": {
  1141. "$ref": "#/definitions/exclusiveMaximum"
  1142. },
  1143. "minimum": {
  1144. "$ref": "#/definitions/minimum"
  1145. },
  1146. "exclusiveMinimum": {
  1147. "$ref": "#/definitions/exclusiveMinimum"
  1148. },
  1149. "maxLength": {
  1150. "$ref": "#/definitions/maxLength"
  1151. },
  1152. "minLength": {
  1153. "$ref": "#/definitions/minLength"
  1154. },
  1155. "pattern": {
  1156. "$ref": "#/definitions/pattern"
  1157. },
  1158. "maxItems": {
  1159. "$ref": "#/definitions/maxItems"
  1160. },
  1161. "minItems": {
  1162. "$ref": "#/definitions/minItems"
  1163. },
  1164. "uniqueItems": {
  1165. "$ref": "#/definitions/uniqueItems"
  1166. },
  1167. "enum": {
  1168. "$ref": "#/definitions/enum"
  1169. },
  1170. "multipleOf": {
  1171. "$ref": "#/definitions/multipleOf"
  1172. }
  1173. },
  1174. "patternProperties": {
  1175. "^x-": {
  1176. "$ref": "#/definitions/vendorExtension"
  1177. }
  1178. }
  1179. },
  1180. "security": {
  1181. "type": "array",
  1182. "items": {
  1183. "$ref": "#/definitions/securityRequirement"
  1184. },
  1185. "uniqueItems": true
  1186. },
  1187. "securityRequirement": {
  1188. "type": "object",
  1189. "additionalProperties": {
  1190. "type": "array",
  1191. "items": {
  1192. "type": "string"
  1193. },
  1194. "uniqueItems": true
  1195. }
  1196. },
  1197. "xml": {
  1198. "type": "object",
  1199. "additionalProperties": false,
  1200. "properties": {
  1201. "name": {
  1202. "type": "string"
  1203. },
  1204. "namespace": {
  1205. "type": "string"
  1206. },
  1207. "prefix": {
  1208. "type": "string"
  1209. },
  1210. "attribute": {
  1211. "type": "boolean",
  1212. "default": false
  1213. },
  1214. "wrapped": {
  1215. "type": "boolean",
  1216. "default": false
  1217. }
  1218. },
  1219. "patternProperties": {
  1220. "^x-": {
  1221. "$ref": "#/definitions/vendorExtension"
  1222. }
  1223. }
  1224. },
  1225. "tag": {
  1226. "type": "object",
  1227. "additionalProperties": false,
  1228. "required": [
  1229. "name"
  1230. ],
  1231. "properties": {
  1232. "name": {
  1233. "type": "string"
  1234. },
  1235. "description": {
  1236. "type": "string"
  1237. },
  1238. "externalDocs": {
  1239. "$ref": "#/definitions/externalDocs"
  1240. }
  1241. },
  1242. "patternProperties": {
  1243. "^x-": {
  1244. "$ref": "#/definitions/vendorExtension"
  1245. }
  1246. }
  1247. },
  1248. "securityDefinitions": {
  1249. "type": "object",
  1250. "additionalProperties": {
  1251. "oneOf": [
  1252. {
  1253. "$ref": "#/definitions/basicAuthenticationSecurity"
  1254. },
  1255. {
  1256. "$ref": "#/definitions/apiKeySecurity"
  1257. },
  1258. {
  1259. "$ref": "#/definitions/oauth2ImplicitSecurity"
  1260. },
  1261. {
  1262. "$ref": "#/definitions/oauth2PasswordSecurity"
  1263. },
  1264. {
  1265. "$ref": "#/definitions/oauth2ApplicationSecurity"
  1266. },
  1267. {
  1268. "$ref": "#/definitions/oauth2AccessCodeSecurity"
  1269. }
  1270. ]
  1271. }
  1272. },
  1273. "basicAuthenticationSecurity": {
  1274. "type": "object",
  1275. "additionalProperties": false,
  1276. "required": [
  1277. "type"
  1278. ],
  1279. "properties": {
  1280. "type": {
  1281. "type": "string",
  1282. "enum": [
  1283. "basic"
  1284. ]
  1285. },
  1286. "description": {
  1287. "type": "string"
  1288. }
  1289. },
  1290. "patternProperties": {
  1291. "^x-": {
  1292. "$ref": "#/definitions/vendorExtension"
  1293. }
  1294. }
  1295. },
  1296. "apiKeySecurity": {
  1297. "type": "object",
  1298. "additionalProperties": false,
  1299. "required": [
  1300. "type",
  1301. "name",
  1302. "in"
  1303. ],
  1304. "properties": {
  1305. "type": {
  1306. "type": "string",
  1307. "enum": [
  1308. "apiKey"
  1309. ]
  1310. },
  1311. "name": {
  1312. "type": "string"
  1313. },
  1314. "in": {
  1315. "type": "string",
  1316. "enum": [
  1317. "header",
  1318. "query"
  1319. ]
  1320. },
  1321. "description": {
  1322. "type": "string"
  1323. }
  1324. },
  1325. "patternProperties": {
  1326. "^x-": {
  1327. "$ref": "#/definitions/vendorExtension"
  1328. }
  1329. }
  1330. },
  1331. "oauth2ImplicitSecurity": {
  1332. "type": "object",
  1333. "additionalProperties": false,
  1334. "required": [
  1335. "type",
  1336. "flow",
  1337. "authorizationUrl"
  1338. ],
  1339. "properties": {
  1340. "type": {
  1341. "type": "string",
  1342. "enum": [
  1343. "oauth2"
  1344. ]
  1345. },
  1346. "flow": {
  1347. "type": "string",
  1348. "enum": [
  1349. "implicit"
  1350. ]
  1351. },
  1352. "scopes": {
  1353. "$ref": "#/definitions/oauth2Scopes"
  1354. },
  1355. "authorizationUrl": {
  1356. "type": "string",
  1357. "format": "uri"
  1358. },
  1359. "description": {
  1360. "type": "string"
  1361. }
  1362. },
  1363. "patternProperties": {
  1364. "^x-": {
  1365. "$ref": "#/definitions/vendorExtension"
  1366. }
  1367. }
  1368. },
  1369. "oauth2PasswordSecurity": {
  1370. "type": "object",
  1371. "additionalProperties": false,
  1372. "required": [
  1373. "type",
  1374. "flow",
  1375. "tokenUrl"
  1376. ],
  1377. "properties": {
  1378. "type": {
  1379. "type": "string",
  1380. "enum": [
  1381. "oauth2"
  1382. ]
  1383. },
  1384. "flow": {
  1385. "type": "string",
  1386. "enum": [
  1387. "password"
  1388. ]
  1389. },
  1390. "scopes": {
  1391. "$ref": "#/definitions/oauth2Scopes"
  1392. },
  1393. "tokenUrl": {
  1394. "type": "string",
  1395. "format": "uri"
  1396. },
  1397. "description": {
  1398. "type": "string"
  1399. }
  1400. },
  1401. "patternProperties": {
  1402. "^x-": {
  1403. "$ref": "#/definitions/vendorExtension"
  1404. }
  1405. }
  1406. },
  1407. "oauth2ApplicationSecurity": {
  1408. "type": "object",
  1409. "additionalProperties": false,
  1410. "required": [
  1411. "type",
  1412. "flow",
  1413. "tokenUrl"
  1414. ],
  1415. "properties": {
  1416. "type": {
  1417. "type": "string",
  1418. "enum": [
  1419. "oauth2"
  1420. ]
  1421. },
  1422. "flow": {
  1423. "type": "string",
  1424. "enum": [
  1425. "application"
  1426. ]
  1427. },
  1428. "scopes": {
  1429. "$ref": "#/definitions/oauth2Scopes"
  1430. },
  1431. "tokenUrl": {
  1432. "type": "string",
  1433. "format": "uri"
  1434. },
  1435. "description": {
  1436. "type": "string"
  1437. }
  1438. },
  1439. "patternProperties": {
  1440. "^x-": {
  1441. "$ref": "#/definitions/vendorExtension"
  1442. }
  1443. }
  1444. },
  1445. "oauth2AccessCodeSecurity": {
  1446. "type": "object",
  1447. "additionalProperties": false,
  1448. "required": [
  1449. "type",
  1450. "flow",
  1451. "authorizationUrl",
  1452. "tokenUrl"
  1453. ],
  1454. "properties": {
  1455. "type": {
  1456. "type": "string",
  1457. "enum": [
  1458. "oauth2"
  1459. ]
  1460. },
  1461. "flow": {
  1462. "type": "string",
  1463. "enum": [
  1464. "accessCode"
  1465. ]
  1466. },
  1467. "scopes": {
  1468. "$ref": "#/definitions/oauth2Scopes"
  1469. },
  1470. "authorizationUrl": {
  1471. "type": "string",
  1472. "format": "uri"
  1473. },
  1474. "tokenUrl": {
  1475. "type": "string",
  1476. "format": "uri"
  1477. },
  1478. "description": {
  1479. "type": "string"
  1480. }
  1481. },
  1482. "patternProperties": {
  1483. "^x-": {
  1484. "$ref": "#/definitions/vendorExtension"
  1485. }
  1486. }
  1487. },
  1488. "oauth2Scopes": {
  1489. "type": "object",
  1490. "additionalProperties": {
  1491. "type": "string"
  1492. }
  1493. },
  1494. "mediaTypeList": {
  1495. "type": "array",
  1496. "items": {
  1497. "$ref": "#/definitions/mimeType"
  1498. },
  1499. "uniqueItems": true
  1500. },
  1501. "parametersList": {
  1502. "type": "array",
  1503. "description": "The parameters needed to send a valid API call.",
  1504. "additionalItems": false,
  1505. "items": {
  1506. "oneOf": [
  1507. {
  1508. "$ref": "#/definitions/parameter"
  1509. },
  1510. {
  1511. "$ref": "#/definitions/jsonReference"
  1512. }
  1513. ]
  1514. },
  1515. "uniqueItems": true
  1516. },
  1517. "schemesList": {
  1518. "type": "array",
  1519. "description": "The transfer protocol of the API.",
  1520. "items": {
  1521. "type": "string",
  1522. "enum": [
  1523. "http",
  1524. "https",
  1525. "ws",
  1526. "wss"
  1527. ]
  1528. },
  1529. "uniqueItems": true
  1530. },
  1531. "collectionFormat": {
  1532. "type": "string",
  1533. "enum": [
  1534. "csv",
  1535. "ssv",
  1536. "tsv",
  1537. "pipes"
  1538. ],
  1539. "default": "csv"
  1540. },
  1541. "collectionFormatWithMulti": {
  1542. "type": "string",
  1543. "enum": [
  1544. "csv",
  1545. "ssv",
  1546. "tsv",
  1547. "pipes",
  1548. "multi"
  1549. ],
  1550. "default": "csv"
  1551. },
  1552. "title": {
  1553. "$ref": "http://json-schema.org/draft-04/schema#/properties/title"
  1554. },
  1555. "description": {
  1556. "$ref": "http://json-schema.org/draft-04/schema#/properties/description"
  1557. },
  1558. "default": {
  1559. "$ref": "http://json-schema.org/draft-04/schema#/properties/default"
  1560. },
  1561. "multipleOf": {
  1562. "$ref": "http://json-schema.org/draft-04/schema#/properties/multipleOf"
  1563. },
  1564. "maximum": {
  1565. "$ref": "http://json-schema.org/draft-04/schema#/properties/maximum"
  1566. },
  1567. "exclusiveMaximum": {
  1568. "$ref": "http://json-schema.org/draft-04/schema#/properties/exclusiveMaximum"
  1569. },
  1570. "minimum": {
  1571. "$ref": "http://json-schema.org/draft-04/schema#/properties/minimum"
  1572. },
  1573. "exclusiveMinimum": {
  1574. "$ref": "http://json-schema.org/draft-04/schema#/properties/exclusiveMinimum"
  1575. },
  1576. "maxLength": {
  1577. "$ref": "http://json-schema.org/draft-04/schema#/definitions/positiveInteger"
  1578. },
  1579. "minLength": {
  1580. "$ref": "http://json-schema.org/draft-04/schema#/definitions/positiveIntegerDefault0"
  1581. },
  1582. "pattern": {
  1583. "$ref": "http://json-schema.org/draft-04/schema#/properties/pattern"
  1584. },
  1585. "maxItems": {
  1586. "$ref": "http://json-schema.org/draft-04/schema#/definitions/positiveInteger"
  1587. },
  1588. "minItems": {
  1589. "$ref": "http://json-schema.org/draft-04/schema#/definitions/positiveIntegerDefault0"
  1590. },
  1591. "uniqueItems": {
  1592. "$ref": "http://json-schema.org/draft-04/schema#/properties/uniqueItems"
  1593. },
  1594. "enum": {
  1595. "$ref": "http://json-schema.org/draft-04/schema#/properties/enum"
  1596. },
  1597. "jsonReference": {
  1598. "type": "object",
  1599. "required": [
  1600. "$ref"
  1601. ],
  1602. "additionalProperties": false,
  1603. "properties": {
  1604. "$ref": {
  1605. "type": "string"
  1606. }
  1607. }
  1608. }
  1609. }
  1610. },
  1611. "tests": [
  1612. {
  1613. "description": "Example petsore",
  1614. "data": {
  1615. "swagger": "2.0",
  1616. "info": {
  1617. "description": "This is a sample server Petstore server. You can find out more about Swagger at [http://swagger.io](http://swagger.io) or on [irc.freenode.net, #swagger](http://swagger.io/irc/). For this sample, you can use the api key `special-key` to test the authorization filters.",
  1618. "version": "1.0.0",
  1619. "title": "Swagger Petstore",
  1620. "termsOfService": "http://swagger.io/terms/",
  1621. "contact": {
  1622. "email": "apiteam@swagger.io"
  1623. },
  1624. "license": {
  1625. "name": "Apache 2.0",
  1626. "url": "http://www.apache.org/licenses/LICENSE-2.0.html"
  1627. }
  1628. },
  1629. "host": "petstore.swagger.io",
  1630. "basePath": "/v2",
  1631. "tags": [
  1632. {
  1633. "name": "pet",
  1634. "description": "Everything about your Pets",
  1635. "externalDocs": {
  1636. "description": "Find out more",
  1637. "url": "http://swagger.io"
  1638. }
  1639. },
  1640. {
  1641. "name": "store",
  1642. "description": "Access to Petstore orders"
  1643. },
  1644. {
  1645. "name": "user",
  1646. "description": "Operations about user",
  1647. "externalDocs": {
  1648. "description": "Find out more about our store",
  1649. "url": "http://swagger.io"
  1650. }
  1651. }
  1652. ],
  1653. "schemes": [
  1654. "http"
  1655. ],
  1656. "paths": {
  1657. "/pet": {
  1658. "post": {
  1659. "tags": [
  1660. "pet"
  1661. ],
  1662. "summary": "Add a new pet to the store",
  1663. "description": "",
  1664. "operationId": "addPet",
  1665. "consumes": [
  1666. "application/json",
  1667. "application/xml"
  1668. ],
  1669. "produces": [
  1670. "application/xml",
  1671. "application/json"
  1672. ],
  1673. "parameters": [
  1674. {
  1675. "in": "body",
  1676. "name": "body",
  1677. "description": "Pet object that needs to be added to the store",
  1678. "required": true,
  1679. "schema": {
  1680. "$ref": "#/definitions/Pet"
  1681. }
  1682. }
  1683. ],
  1684. "responses": {
  1685. "405": {
  1686. "description": "Invalid input"
  1687. }
  1688. },
  1689. "security": [
  1690. {
  1691. "petstore_auth": [
  1692. "write:pets",
  1693. "read:pets"
  1694. ]
  1695. }
  1696. ]
  1697. },
  1698. "put": {
  1699. "tags": [
  1700. "pet"
  1701. ],
  1702. "summary": "Update an existing pet",
  1703. "description": "",
  1704. "operationId": "updatePet",
  1705. "consumes": [
  1706. "application/json",
  1707. "application/xml"
  1708. ],
  1709. "produces": [
  1710. "application/xml",
  1711. "application/json"
  1712. ],
  1713. "parameters": [
  1714. {
  1715. "in": "body",
  1716. "name": "body",
  1717. "description": "Pet object that needs to be added to the store",
  1718. "required": true,
  1719. "schema": {
  1720. "$ref": "#/definitions/Pet"
  1721. }
  1722. }
  1723. ],
  1724. "responses": {
  1725. "400": {
  1726. "description": "Invalid ID supplied"
  1727. },
  1728. "404": {
  1729. "description": "Pet not found"
  1730. },
  1731. "405": {
  1732. "description": "Validation exception"
  1733. }
  1734. },
  1735. "security": [
  1736. {
  1737. "petstore_auth": [
  1738. "write:pets",
  1739. "read:pets"
  1740. ]
  1741. }
  1742. ]
  1743. }
  1744. },
  1745. "/pet/findByStatus": {
  1746. "get": {
  1747. "tags": [
  1748. "pet"
  1749. ],
  1750. "summary": "Finds Pets by status",
  1751. "description": "Multiple status values can be provided with comma separated strings",
  1752. "operationId": "findPetsByStatus",
  1753. "produces": [
  1754. "application/xml",
  1755. "application/json"
  1756. ],
  1757. "parameters": [
  1758. {
  1759. "name": "status",
  1760. "in": "query",
  1761. "description": "Status values that need to be considered for filter",
  1762. "required": true,
  1763. "type": "array",
  1764. "items": {
  1765. "type": "string",
  1766. "enum": [
  1767. "available",
  1768. "pending",
  1769. "sold"
  1770. ],
  1771. "default": "available"
  1772. },
  1773. "collectionFormat": "multi"
  1774. }
  1775. ],
  1776. "responses": {
  1777. "200": {
  1778. "description": "successful operation",
  1779. "schema": {
  1780. "type": "array",
  1781. "items": {
  1782. "$ref": "#/definitions/Pet"
  1783. }
  1784. }
  1785. },
  1786. "400": {
  1787. "description": "Invalid status value"
  1788. }
  1789. },
  1790. "security": [
  1791. {
  1792. "petstore_auth": [
  1793. "write:pets",
  1794. "read:pets"
  1795. ]
  1796. }
  1797. ]
  1798. }
  1799. },
  1800. "/pet/findByTags": {
  1801. "get": {
  1802. "tags": [
  1803. "pet"
  1804. ],
  1805. "summary": "Finds Pets by tags",
  1806. "description": "Muliple tags can be provided with comma separated strings. Use tag1, tag2, tag3 for testing.",
  1807. "operationId": "findPetsByTags",
  1808. "produces": [
  1809. "application/xml",
  1810. "application/json"
  1811. ],
  1812. "parameters": [
  1813. {
  1814. "name": "tags",
  1815. "in": "query",
  1816. "description": "Tags to filter by",
  1817. "required": true,
  1818. "type": "array",
  1819. "items": {
  1820. "type": "string"
  1821. },
  1822. "collectionFormat": "multi"
  1823. }
  1824. ],
  1825. "responses": {
  1826. "200": {
  1827. "description": "successful operation",
  1828. "schema": {
  1829. "type": "array",
  1830. "items": {
  1831. "$ref": "#/definitions/Pet"
  1832. }
  1833. }
  1834. },
  1835. "400": {
  1836. "description": "Invalid tag value"
  1837. }
  1838. },
  1839. "security": [
  1840. {
  1841. "petstore_auth": [
  1842. "write:pets",
  1843. "read:pets"
  1844. ]
  1845. }
  1846. ],
  1847. "deprecated": true
  1848. }
  1849. },
  1850. "/pet/{petId}": {
  1851. "get": {
  1852. "tags": [
  1853. "pet"
  1854. ],
  1855. "summary": "Find pet by ID",
  1856. "description": "Returns a single pet",
  1857. "operationId": "getPetById",
  1858. "produces": [
  1859. "application/xml",
  1860. "application/json"
  1861. ],
  1862. "parameters": [
  1863. {
  1864. "name": "petId",
  1865. "in": "path",
  1866. "description": "ID of pet to return",
  1867. "required": true,
  1868. "type": "integer",
  1869. "format": "int64"
  1870. }
  1871. ],
  1872. "responses": {
  1873. "200": {
  1874. "description": "successful operation",
  1875. "schema": {
  1876. "$ref": "#/definitions/Pet"
  1877. }
  1878. },
  1879. "400": {
  1880. "description": "Invalid ID supplied"
  1881. },
  1882. "404": {
  1883. "description": "Pet not found"
  1884. }
  1885. },
  1886. "security": [
  1887. {
  1888. "api_key": []
  1889. }
  1890. ]
  1891. },
  1892. "post": {
  1893. "tags": [
  1894. "pet"
  1895. ],
  1896. "summary": "Updates a pet in the store with form data",
  1897. "description": "",
  1898. "operationId": "updatePetWithForm",
  1899. "consumes": [
  1900. "application/x-www-form-urlencoded"
  1901. ],
  1902. "produces": [
  1903. "application/xml",
  1904. "application/json"
  1905. ],
  1906. "parameters": [
  1907. {
  1908. "name": "petId",
  1909. "in": "path",
  1910. "description": "ID of pet that needs to be updated",
  1911. "required": true,
  1912. "type": "integer",
  1913. "format": "int64"
  1914. },
  1915. {
  1916. "name": "name",
  1917. "in": "formData",
  1918. "description": "Updated name of the pet",
  1919. "required": false,
  1920. "type": "string"
  1921. },
  1922. {
  1923. "name": "status",
  1924. "in": "formData",
  1925. "description": "Updated status of the pet",
  1926. "required": false,
  1927. "type": "string"
  1928. }
  1929. ],
  1930. "responses": {
  1931. "405": {
  1932. "description": "Invalid input"
  1933. }
  1934. },
  1935. "security": [
  1936. {
  1937. "petstore_auth": [
  1938. "write:pets",
  1939. "read:pets"
  1940. ]
  1941. }
  1942. ]
  1943. },
  1944. "delete": {
  1945. "tags": [
  1946. "pet"
  1947. ],
  1948. "summary": "Deletes a pet",
  1949. "description": "",
  1950. "operationId": "deletePet",
  1951. "produces": [
  1952. "application/xml",
  1953. "application/json"
  1954. ],
  1955. "parameters": [
  1956. {
  1957. "name": "api_key",
  1958. "in": "header",
  1959. "required": false,
  1960. "type": "string"
  1961. },
  1962. {
  1963. "name": "petId",
  1964. "in": "path",
  1965. "description": "Pet id to delete",
  1966. "required": true,
  1967. "type": "integer",
  1968. "format": "int64"
  1969. }
  1970. ],
  1971. "responses": {
  1972. "400": {
  1973. "description": "Invalid ID supplied"
  1974. },
  1975. "404": {
  1976. "description": "Pet not found"
  1977. }
  1978. },
  1979. "security": [
  1980. {
  1981. "petstore_auth": [
  1982. "write:pets",
  1983. "read:pets"
  1984. ]
  1985. }
  1986. ]
  1987. }
  1988. },
  1989. "/pet/{petId}/uploadImage": {
  1990. "post": {
  1991. "tags": [
  1992. "pet"
  1993. ],
  1994. "summary": "uploads an image",
  1995. "description": "",
  1996. "operationId": "uploadFile",
  1997. "consumes": [
  1998. "multipart/form-data"
  1999. ],
  2000. "produces": [
  2001. "application/json"
  2002. ],
  2003. "parameters": [
  2004. {
  2005. "name": "petId",
  2006. "in": "path",
  2007. "description": "ID of pet to update",
  2008. "required": true,
  2009. "type": "integer",
  2010. "format": "int64"
  2011. },
  2012. {
  2013. "name": "additionalMetadata",
  2014. "in": "formData",
  2015. "description": "Additional data to pass to server",
  2016. "required": false,
  2017. "type": "string"
  2018. },
  2019. {
  2020. "name": "file",
  2021. "in": "formData",
  2022. "description": "file to upload",
  2023. "required": false,
  2024. "type": "file"
  2025. }
  2026. ],
  2027. "responses": {
  2028. "200": {
  2029. "description": "successful operation",
  2030. "schema": {
  2031. "$ref": "#/definitions/ApiResponse"
  2032. }
  2033. }
  2034. },
  2035. "security": [
  2036. {
  2037. "petstore_auth": [
  2038. "write:pets",
  2039. "read:pets"
  2040. ]
  2041. }
  2042. ]
  2043. }
  2044. },
  2045. "/store/inventory": {
  2046. "get": {
  2047. "tags": [
  2048. "store"
  2049. ],
  2050. "summary": "Returns pet inventories by status",
  2051. "description": "Returns a map of status codes to quantities",
  2052. "operationId": "getInventory",
  2053. "produces": [
  2054. "application/json"
  2055. ],
  2056. "parameters": [],
  2057. "responses": {
  2058. "200": {
  2059. "description": "successful operation",
  2060. "schema": {
  2061. "type": "object",
  2062. "additionalProperties": {
  2063. "type": "integer",
  2064. "format": "int32"
  2065. }
  2066. }
  2067. }
  2068. },
  2069. "security": [
  2070. {
  2071. "api_key": []
  2072. }
  2073. ]
  2074. }
  2075. },
  2076. "/store/order": {
  2077. "post": {
  2078. "tags": [
  2079. "store"
  2080. ],
  2081. "summary": "Place an order for a pet",
  2082. "description": "",
  2083. "operationId": "placeOrder",
  2084. "produces": [
  2085. "application/xml",
  2086. "application/json"
  2087. ],
  2088. "parameters": [
  2089. {
  2090. "in": "body",
  2091. "name": "body",
  2092. "description": "order placed for purchasing the pet",
  2093. "required": true,
  2094. "schema": {
  2095. "$ref": "#/definitions/Order"
  2096. }
  2097. }
  2098. ],
  2099. "responses": {
  2100. "200": {
  2101. "description": "successful operation",
  2102. "schema": {
  2103. "$ref": "#/definitions/Order"
  2104. }
  2105. },
  2106. "400": {
  2107. "description": "Invalid Order"
  2108. }
  2109. }
  2110. }
  2111. },
  2112. "/store/order/{orderId}": {
  2113. "get": {
  2114. "tags": [
  2115. "store"
  2116. ],
  2117. "summary": "Find purchase order by ID",
  2118. "description": "For valid response try integer IDs with value >= 1 and <= 10. Other values will generated exceptions",
  2119. "operationId": "getOrderById",
  2120. "produces": [
  2121. "application/xml",
  2122. "application/json"
  2123. ],
  2124. "parameters": [
  2125. {
  2126. "name": "orderId",
  2127. "in": "path",
  2128. "description": "ID of pet that needs to be fetched",
  2129. "required": true,
  2130. "type": "integer",
  2131. "maximum": 10.0,
  2132. "minimum": 1.0,
  2133. "format": "int64"
  2134. }
  2135. ],
  2136. "responses": {
  2137. "200": {
  2138. "description": "successful operation",
  2139. "schema": {
  2140. "$ref": "#/definitions/Order"
  2141. }
  2142. },
  2143. "400": {
  2144. "description": "Invalid ID supplied"
  2145. },
  2146. "404": {
  2147. "description": "Order not found"
  2148. }
  2149. }
  2150. },
  2151. "delete": {
  2152. "tags": [
  2153. "store"
  2154. ],
  2155. "summary": "Delete purchase order by ID",
  2156. "description": "For valid response try integer IDs with positive integer value. Negative or non-integer values will generate API errors",
  2157. "operationId": "deleteOrder",
  2158. "produces": [
  2159. "application/xml",
  2160. "application/json"
  2161. ],
  2162. "parameters": [
  2163. {
  2164. "name": "orderId",
  2165. "in": "path",
  2166. "description": "ID of the order that needs to be deleted",
  2167. "required": true,
  2168. "type": "integer",
  2169. "minimum": 1.0,
  2170. "format": "int64"
  2171. }
  2172. ],
  2173. "responses": {
  2174. "400": {
  2175. "description": "Invalid ID supplied"
  2176. },
  2177. "404": {
  2178. "description": "Order not found"
  2179. }
  2180. }
  2181. }
  2182. },
  2183. "/user": {
  2184. "post": {
  2185. "tags": [
  2186. "user"
  2187. ],
  2188. "summary": "Create user",
  2189. "description": "This can only be done by the logged in user.",
  2190. "operationId": "createUser",
  2191. "produces": [
  2192. "application/xml",
  2193. "application/json"
  2194. ],
  2195. "parameters": [
  2196. {
  2197. "in": "body",
  2198. "name": "body",
  2199. "description": "Created user object",
  2200. "required": true,
  2201. "schema": {
  2202. "$ref": "#/definitions/User"
  2203. }
  2204. }
  2205. ],
  2206. "responses": {
  2207. "default": {
  2208. "description": "successful operation"
  2209. }
  2210. }
  2211. }
  2212. },
  2213. "/user/createWithArray": {
  2214. "post": {
  2215. "tags": [
  2216. "user"
  2217. ],
  2218. "summary": "Creates list of users with given input array",
  2219. "description": "",
  2220. "operationId": "createUsersWithArrayInput",
  2221. "produces": [
  2222. "application/xml",
  2223. "application/json"
  2224. ],
  2225. "parameters": [
  2226. {
  2227. "in": "body",
  2228. "name": "body",
  2229. "description": "List of user object",
  2230. "required": true,
  2231. "schema": {
  2232. "type": "array",
  2233. "items": {
  2234. "$ref": "#/definitions/User"
  2235. }
  2236. }
  2237. }
  2238. ],
  2239. "responses": {
  2240. "default": {
  2241. "description": "successful operation"
  2242. }
  2243. }
  2244. }
  2245. },
  2246. "/user/createWithList": {
  2247. "post": {
  2248. "tags": [
  2249. "user"
  2250. ],
  2251. "summary": "Creates list of users with given input array",
  2252. "description": "",
  2253. "operationId": "createUsersWithListInput",
  2254. "produces": [
  2255. "application/xml",
  2256. "application/json"
  2257. ],
  2258. "parameters": [
  2259. {
  2260. "in": "body",
  2261. "name": "body",
  2262. "description": "List of user object",
  2263. "required": true,
  2264. "schema": {
  2265. "type": "array",
  2266. "items": {
  2267. "$ref": "#/definitions/User"
  2268. }
  2269. }
  2270. }
  2271. ],
  2272. "responses": {
  2273. "default": {
  2274. "description": "successful operation"
  2275. }
  2276. }
  2277. }
  2278. },
  2279. "/user/login": {
  2280. "get": {
  2281. "tags": [
  2282. "user"
  2283. ],
  2284. "summary": "Logs user into the system",
  2285. "description": "",
  2286. "operationId": "loginUser",
  2287. "produces": [
  2288. "application/xml",
  2289. "application/json"
  2290. ],
  2291. "parameters": [
  2292. {
  2293. "name": "username",
  2294. "in": "query",
  2295. "description": "The user name for login",
  2296. "required": true,
  2297. "type": "string"
  2298. },
  2299. {
  2300. "name": "password",
  2301. "in": "query",
  2302. "description": "The password for login in clear text",
  2303. "required": true,
  2304. "type": "string"
  2305. }
  2306. ],
  2307. "responses": {
  2308. "200": {
  2309. "description": "successful operation",
  2310. "schema": {
  2311. "type": "string"
  2312. },
  2313. "headers": {
  2314. "X-Rate-Limit": {
  2315. "type": "integer",
  2316. "format": "int32",
  2317. "description": "calls per hour allowed by the user"
  2318. },
  2319. "X-Expires-After": {
  2320. "type": "string",
  2321. "format": "date-time",
  2322. "description": "date in UTC when token expires"
  2323. }
  2324. }
  2325. },
  2326. "400": {
  2327. "description": "Invalid username/password supplied"
  2328. }
  2329. }
  2330. }
  2331. },
  2332. "/user/logout": {
  2333. "get": {
  2334. "tags": [
  2335. "user"
  2336. ],
  2337. "summary": "Logs out current logged in user session",
  2338. "description": "",
  2339. "operationId": "logoutUser",
  2340. "produces": [
  2341. "application/xml",
  2342. "application/json"
  2343. ],
  2344. "parameters": [],
  2345. "responses": {
  2346. "default": {
  2347. "description": "successful operation"
  2348. }
  2349. }
  2350. }
  2351. },
  2352. "/user/{username}": {
  2353. "get": {
  2354. "tags": [
  2355. "user"
  2356. ],
  2357. "summary": "Get user by user name",
  2358. "description": "",
  2359. "operationId": "getUserByName",
  2360. "produces": [
  2361. "application/xml",
  2362. "application/json"
  2363. ],
  2364. "parameters": [
  2365. {
  2366. "name": "username",
  2367. "in": "path",
  2368. "description": "The name that needs to be fetched. Use user1 for testing. ",
  2369. "required": true,
  2370. "type": "string"
  2371. }
  2372. ],
  2373. "responses": {
  2374. "200": {
  2375. "description": "successful operation",
  2376. "schema": {
  2377. "$ref": "#/definitions/User"
  2378. }
  2379. },
  2380. "400": {
  2381. "description": "Invalid username supplied"
  2382. },
  2383. "404": {
  2384. "description": "User not found"
  2385. }
  2386. }
  2387. },
  2388. "put": {
  2389. "tags": [
  2390. "user"
  2391. ],
  2392. "summary": "Updated user",
  2393. "description": "This can only be done by the logged in user.",
  2394. "operationId": "updateUser",
  2395. "produces": [
  2396. "application/xml",
  2397. "application/json"
  2398. ],
  2399. "parameters": [
  2400. {
  2401. "name": "username",
  2402. "in": "path",
  2403. "description": "name that need to be updated",
  2404. "required": true,
  2405. "type": "string"
  2406. },
  2407. {
  2408. "in": "body",
  2409. "name": "body",
  2410. "description": "Updated user object",
  2411. "required": true,
  2412. "schema": {
  2413. "$ref": "#/definitions/User"
  2414. }
  2415. }
  2416. ],
  2417. "responses": {
  2418. "400": {
  2419. "description": "Invalid user supplied"
  2420. },
  2421. "404": {
  2422. "description": "User not found"
  2423. }
  2424. }
  2425. },
  2426. "delete": {
  2427. "tags": [
  2428. "user"
  2429. ],
  2430. "summary": "Delete user",
  2431. "description": "This can only be done by the logged in user.",
  2432. "operationId": "deleteUser",
  2433. "produces": [
  2434. "application/xml",
  2435. "application/json"
  2436. ],
  2437. "parameters": [
  2438. {
  2439. "name": "username",
  2440. "in": "path",
  2441. "description": "The name that needs to be deleted",
  2442. "required": true,
  2443. "type": "string"
  2444. }
  2445. ],
  2446. "responses": {
  2447. "400": {
  2448. "description": "Invalid username supplied"
  2449. },
  2450. "404": {
  2451. "description": "User not found"
  2452. }
  2453. }
  2454. }
  2455. }
  2456. },
  2457. "securityDefinitions": {
  2458. "petstore_auth": {
  2459. "type": "oauth2",
  2460. "authorizationUrl": "http://petstore.swagger.io/oauth/dialog",
  2461. "flow": "implicit",
  2462. "scopes": {
  2463. "write:pets": "modify pets in your account",
  2464. "read:pets": "read your pets"
  2465. }
  2466. },
  2467. "api_key": {
  2468. "type": "apiKey",
  2469. "name": "api_key",
  2470. "in": "header"
  2471. }
  2472. },
  2473. "definitions": {
  2474. "Order": {
  2475. "type": "object",
  2476. "properties": {
  2477. "id": {
  2478. "type": "integer",
  2479. "format": "int64"
  2480. },
  2481. "petId": {
  2482. "type": "integer",
  2483. "format": "int64"
  2484. },
  2485. "quantity": {
  2486. "type": "integer",
  2487. "format": "int32"
  2488. },
  2489. "shipDate": {
  2490. "type": "string",
  2491. "format": "date-time"
  2492. },
  2493. "status": {
  2494. "type": "string",
  2495. "description": "Order Status",
  2496. "enum": [
  2497. "placed",
  2498. "approved",
  2499. "delivered"
  2500. ]
  2501. },
  2502. "complete": {
  2503. "type": "boolean",
  2504. "default": false
  2505. }
  2506. },
  2507. "xml": {
  2508. "name": "Order"
  2509. }
  2510. },
  2511. "Category": {
  2512. "type": "object",
  2513. "properties": {
  2514. "id": {
  2515. "type": "integer",
  2516. "format": "int64"
  2517. },
  2518. "name": {
  2519. "type": "string"
  2520. }
  2521. },
  2522. "xml": {
  2523. "name": "Category"
  2524. }
  2525. },
  2526. "User": {
  2527. "type": "object",
  2528. "properties": {
  2529. "id": {
  2530. "type": "integer",
  2531. "format": "int64"
  2532. },
  2533. "username": {
  2534. "type": "string"
  2535. },
  2536. "firstName": {
  2537. "type": "string"
  2538. },
  2539. "lastName": {
  2540. "type": "string"
  2541. },
  2542. "email": {
  2543. "type": "string"
  2544. },
  2545. "password": {
  2546. "type": "string"
  2547. },
  2548. "phone": {
  2549. "type": "string"
  2550. },
  2551. "userStatus": {
  2552. "type": "integer",
  2553. "format": "int32",
  2554. "description": "User Status"
  2555. }
  2556. },
  2557. "xml": {
  2558. "name": "User"
  2559. }
  2560. },
  2561. "Tag": {
  2562. "type": "object",
  2563. "properties": {
  2564. "id": {
  2565. "type": "integer",
  2566. "format": "int64"
  2567. },
  2568. "name": {
  2569. "type": "string"
  2570. }
  2571. },
  2572. "xml": {
  2573. "name": "Tag"
  2574. }
  2575. },
  2576. "Pet": {
  2577. "type": "object",
  2578. "required": [
  2579. "name",
  2580. "photoUrls"
  2581. ],
  2582. "properties": {
  2583. "id": {
  2584. "type": "integer",
  2585. "format": "int64"
  2586. },
  2587. "category": {
  2588. "$ref": "#/definitions/Category"
  2589. },
  2590. "name": {
  2591. "type": "string",
  2592. "example": "doggie"
  2593. },
  2594. "photoUrls": {
  2595. "type": "array",
  2596. "xml": {
  2597. "name": "photoUrl",
  2598. "wrapped": true
  2599. },
  2600. "items": {
  2601. "type": "string"
  2602. }
  2603. },
  2604. "tags": {
  2605. "type": "array",
  2606. "xml": {
  2607. "name": "tag",
  2608. "wrapped": true
  2609. },
  2610. "items": {
  2611. "$ref": "#/definitions/Tag"
  2612. }
  2613. },
  2614. "status": {
  2615. "type": "string",
  2616. "description": "pet status in the store",
  2617. "enum": [
  2618. "available",
  2619. "pending",
  2620. "sold"
  2621. ]
  2622. }
  2623. },
  2624. "xml": {
  2625. "name": "Pet"
  2626. }
  2627. },
  2628. "ApiResponse": {
  2629. "type": "object",
  2630. "properties": {
  2631. "code": {
  2632. "type": "integer",
  2633. "format": "int32"
  2634. },
  2635. "type": {
  2636. "type": "string"
  2637. },
  2638. "message": {
  2639. "type": "string"
  2640. }
  2641. }
  2642. }
  2643. },
  2644. "externalDocs": {
  2645. "description": "Find out more about Swagger",
  2646. "url": "http://swagger.io"
  2647. }
  2648. },
  2649. "valid": true
  2650. }
  2651. ]
  2652. }
  2653. ]