schema.yaml 22 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003
  1. id: https://spec.openapis.org/oas/3.0/schema/2019-04-02
  2. $schema: http://json-schema.org/draft-04/schema#
  3. description: Validation schema for OpenAPI Specification 3.0.X.
  4. type: object
  5. required:
  6. - openapi
  7. - info
  8. - paths
  9. properties:
  10. openapi:
  11. type: string
  12. pattern: ^3\.0\.\d(-.+)?$
  13. info:
  14. $ref: '#/definitions/Info'
  15. externalDocs:
  16. $ref: '#/definitions/ExternalDocumentation'
  17. servers:
  18. type: array
  19. items:
  20. $ref: '#/definitions/Server'
  21. security:
  22. type: array
  23. items:
  24. $ref: '#/definitions/SecurityRequirement'
  25. tags:
  26. type: array
  27. items:
  28. $ref: '#/definitions/Tag'
  29. uniqueItems: true
  30. paths:
  31. $ref: '#/definitions/Paths'
  32. components:
  33. $ref: '#/definitions/Components'
  34. patternProperties:
  35. '^x-': {}
  36. additionalProperties: false
  37. definitions:
  38. Reference:
  39. type: object
  40. required:
  41. - $ref
  42. patternProperties:
  43. '^\$ref$':
  44. type: string
  45. format: uri-reference
  46. Info:
  47. type: object
  48. required:
  49. - title
  50. - version
  51. properties:
  52. title:
  53. type: string
  54. description:
  55. type: string
  56. termsOfService:
  57. type: string
  58. format: uri-reference
  59. contact:
  60. $ref: '#/definitions/Contact'
  61. license:
  62. $ref: '#/definitions/License'
  63. version:
  64. type: string
  65. patternProperties:
  66. '^x-': {}
  67. additionalProperties: false
  68. Contact:
  69. type: object
  70. properties:
  71. name:
  72. type: string
  73. url:
  74. type: string
  75. format: uri-reference
  76. email:
  77. type: string
  78. format: email
  79. patternProperties:
  80. '^x-': {}
  81. additionalProperties: false
  82. License:
  83. type: object
  84. required:
  85. - name
  86. properties:
  87. name:
  88. type: string
  89. url:
  90. type: string
  91. format: uri-reference
  92. patternProperties:
  93. '^x-': {}
  94. additionalProperties: false
  95. Server:
  96. type: object
  97. required:
  98. - url
  99. properties:
  100. url:
  101. type: string
  102. description:
  103. type: string
  104. variables:
  105. type: object
  106. additionalProperties:
  107. $ref: '#/definitions/ServerVariable'
  108. patternProperties:
  109. '^x-': {}
  110. additionalProperties: false
  111. ServerVariable:
  112. type: object
  113. required:
  114. - default
  115. properties:
  116. enum:
  117. type: array
  118. items:
  119. type: string
  120. default:
  121. type: string
  122. description:
  123. type: string
  124. patternProperties:
  125. '^x-': {}
  126. additionalProperties: false
  127. Components:
  128. type: object
  129. properties:
  130. schemas:
  131. type: object
  132. patternProperties:
  133. '^[a-zA-Z0-9\.\-_]+$':
  134. oneOf:
  135. - $ref: '#/definitions/Schema'
  136. - $ref: '#/definitions/Reference'
  137. responses:
  138. type: object
  139. patternProperties:
  140. '^[a-zA-Z0-9\.\-_]+$':
  141. oneOf:
  142. - $ref: '#/definitions/Reference'
  143. - $ref: '#/definitions/Response'
  144. parameters:
  145. type: object
  146. patternProperties:
  147. '^[a-zA-Z0-9\.\-_]+$':
  148. oneOf:
  149. - $ref: '#/definitions/Reference'
  150. - $ref: '#/definitions/Parameter'
  151. examples:
  152. type: object
  153. patternProperties:
  154. '^[a-zA-Z0-9\.\-_]+$':
  155. oneOf:
  156. - $ref: '#/definitions/Reference'
  157. - $ref: '#/definitions/Example'
  158. requestBodies:
  159. type: object
  160. patternProperties:
  161. '^[a-zA-Z0-9\.\-_]+$':
  162. oneOf:
  163. - $ref: '#/definitions/Reference'
  164. - $ref: '#/definitions/RequestBody'
  165. headers:
  166. type: object
  167. patternProperties:
  168. '^[a-zA-Z0-9\.\-_]+$':
  169. oneOf:
  170. - $ref: '#/definitions/Reference'
  171. - $ref: '#/definitions/Header'
  172. securitySchemes:
  173. type: object
  174. patternProperties:
  175. '^[a-zA-Z0-9\.\-_]+$':
  176. oneOf:
  177. - $ref: '#/definitions/Reference'
  178. - $ref: '#/definitions/SecurityScheme'
  179. links:
  180. type: object
  181. patternProperties:
  182. '^[a-zA-Z0-9\.\-_]+$':
  183. oneOf:
  184. - $ref: '#/definitions/Reference'
  185. - $ref: '#/definitions/Link'
  186. callbacks:
  187. type: object
  188. patternProperties:
  189. '^[a-zA-Z0-9\.\-_]+$':
  190. oneOf:
  191. - $ref: '#/definitions/Reference'
  192. - $ref: '#/definitions/Callback'
  193. patternProperties:
  194. '^x-': {}
  195. additionalProperties: false
  196. Schema:
  197. type: object
  198. properties:
  199. title:
  200. type: string
  201. multipleOf:
  202. type: number
  203. minimum: 0
  204. exclusiveMinimum: true
  205. maximum:
  206. type: number
  207. exclusiveMaximum:
  208. type: boolean
  209. default: false
  210. minimum:
  211. type: number
  212. exclusiveMinimum:
  213. type: boolean
  214. default: false
  215. maxLength:
  216. type: integer
  217. minimum: 0
  218. minLength:
  219. type: integer
  220. minimum: 0
  221. default: 0
  222. pattern:
  223. type: string
  224. format: regex
  225. maxItems:
  226. type: integer
  227. minimum: 0
  228. minItems:
  229. type: integer
  230. minimum: 0
  231. default: 0
  232. uniqueItems:
  233. type: boolean
  234. default: false
  235. maxProperties:
  236. type: integer
  237. minimum: 0
  238. minProperties:
  239. type: integer
  240. minimum: 0
  241. default: 0
  242. required:
  243. type: array
  244. items:
  245. type: string
  246. minItems: 1
  247. uniqueItems: true
  248. enum:
  249. type: array
  250. items: {}
  251. minItems: 1
  252. uniqueItems: false
  253. type:
  254. type: string
  255. enum:
  256. - array
  257. - boolean
  258. - integer
  259. - number
  260. - object
  261. - string
  262. not:
  263. oneOf:
  264. - $ref: '#/definitions/Schema'
  265. - $ref: '#/definitions/Reference'
  266. allOf:
  267. type: array
  268. items:
  269. oneOf:
  270. - $ref: '#/definitions/Schema'
  271. - $ref: '#/definitions/Reference'
  272. oneOf:
  273. type: array
  274. items:
  275. oneOf:
  276. - $ref: '#/definitions/Schema'
  277. - $ref: '#/definitions/Reference'
  278. anyOf:
  279. type: array
  280. items:
  281. oneOf:
  282. - $ref: '#/definitions/Schema'
  283. - $ref: '#/definitions/Reference'
  284. items:
  285. oneOf:
  286. - $ref: '#/definitions/Schema'
  287. - $ref: '#/definitions/Reference'
  288. properties:
  289. type: object
  290. additionalProperties:
  291. oneOf:
  292. - $ref: '#/definitions/Schema'
  293. - $ref: '#/definitions/Reference'
  294. additionalProperties:
  295. oneOf:
  296. - $ref: '#/definitions/Schema'
  297. - $ref: '#/definitions/Reference'
  298. - type: boolean
  299. default: true
  300. description:
  301. type: string
  302. format:
  303. type: string
  304. default: {}
  305. nullable:
  306. type: boolean
  307. default: false
  308. discriminator:
  309. $ref: '#/definitions/Discriminator'
  310. readOnly:
  311. type: boolean
  312. default: false
  313. writeOnly:
  314. type: boolean
  315. default: false
  316. example: {}
  317. externalDocs:
  318. $ref: '#/definitions/ExternalDocumentation'
  319. deprecated:
  320. type: boolean
  321. default: false
  322. xml:
  323. $ref: '#/definitions/XML'
  324. patternProperties:
  325. '^x-': {}
  326. additionalProperties: false
  327. Discriminator:
  328. type: object
  329. required:
  330. - propertyName
  331. properties:
  332. propertyName:
  333. type: string
  334. mapping:
  335. type: object
  336. additionalProperties:
  337. type: string
  338. XML:
  339. type: object
  340. properties:
  341. name:
  342. type: string
  343. namespace:
  344. type: string
  345. format: uri
  346. prefix:
  347. type: string
  348. attribute:
  349. type: boolean
  350. default: false
  351. wrapped:
  352. type: boolean
  353. default: false
  354. patternProperties:
  355. '^x-': {}
  356. additionalProperties: false
  357. Response:
  358. type: object
  359. required:
  360. - description
  361. properties:
  362. description:
  363. type: string
  364. headers:
  365. type: object
  366. additionalProperties:
  367. oneOf:
  368. - $ref: '#/definitions/Header'
  369. - $ref: '#/definitions/Reference'
  370. content:
  371. type: object
  372. additionalProperties:
  373. $ref: '#/definitions/MediaType'
  374. links:
  375. type: object
  376. additionalProperties:
  377. oneOf:
  378. - $ref: '#/definitions/Link'
  379. - $ref: '#/definitions/Reference'
  380. patternProperties:
  381. '^x-': {}
  382. additionalProperties: false
  383. MediaType:
  384. type: object
  385. properties:
  386. schema:
  387. oneOf:
  388. - $ref: '#/definitions/Schema'
  389. - $ref: '#/definitions/Reference'
  390. example: {}
  391. examples:
  392. type: object
  393. additionalProperties:
  394. oneOf:
  395. - $ref: '#/definitions/Example'
  396. - $ref: '#/definitions/Reference'
  397. encoding:
  398. type: object
  399. additionalProperties:
  400. $ref: '#/definitions/Encoding'
  401. patternProperties:
  402. '^x-': {}
  403. additionalProperties: false
  404. allOf:
  405. - $ref: '#/definitions/ExampleXORExamples'
  406. Example:
  407. type: object
  408. properties:
  409. summary:
  410. type: string
  411. description:
  412. type: string
  413. value: {}
  414. externalValue:
  415. type: string
  416. format: uri-reference
  417. patternProperties:
  418. '^x-': {}
  419. additionalProperties: false
  420. Header:
  421. type: object
  422. properties:
  423. description:
  424. type: string
  425. required:
  426. type: boolean
  427. default: false
  428. deprecated:
  429. type: boolean
  430. default: false
  431. allowEmptyValue:
  432. type: boolean
  433. default: false
  434. style:
  435. type: string
  436. enum:
  437. - simple
  438. default: simple
  439. explode:
  440. type: boolean
  441. allowReserved:
  442. type: boolean
  443. default: false
  444. schema:
  445. oneOf:
  446. - $ref: '#/definitions/Schema'
  447. - $ref: '#/definitions/Reference'
  448. content:
  449. type: object
  450. additionalProperties:
  451. $ref: '#/definitions/MediaType'
  452. minProperties: 1
  453. maxProperties: 1
  454. example: {}
  455. examples:
  456. type: object
  457. additionalProperties:
  458. oneOf:
  459. - $ref: '#/definitions/Example'
  460. - $ref: '#/definitions/Reference'
  461. patternProperties:
  462. '^x-': {}
  463. additionalProperties: false
  464. allOf:
  465. - $ref: '#/definitions/ExampleXORExamples'
  466. - $ref: '#/definitions/SchemaXORContent'
  467. Paths:
  468. type: object
  469. patternProperties:
  470. '^\/':
  471. $ref: '#/definitions/PathItem'
  472. '^x-': {}
  473. additionalProperties: false
  474. PathItem:
  475. type: object
  476. properties:
  477. $ref:
  478. type: string
  479. summary:
  480. type: string
  481. description:
  482. type: string
  483. servers:
  484. type: array
  485. items:
  486. $ref: '#/definitions/Server'
  487. parameters:
  488. type: array
  489. items:
  490. oneOf:
  491. - $ref: '#/definitions/Parameter'
  492. - $ref: '#/definitions/Reference'
  493. uniqueItems: true
  494. patternProperties:
  495. '^(get|put|post|delete|options|head|patch|trace)$':
  496. $ref: '#/definitions/Operation'
  497. '^x-': {}
  498. additionalProperties: false
  499. Operation:
  500. type: object
  501. required:
  502. - responses
  503. properties:
  504. tags:
  505. type: array
  506. items:
  507. type: string
  508. summary:
  509. type: string
  510. description:
  511. type: string
  512. externalDocs:
  513. $ref: '#/definitions/ExternalDocumentation'
  514. operationId:
  515. type: string
  516. parameters:
  517. type: array
  518. items:
  519. oneOf:
  520. - $ref: '#/definitions/Parameter'
  521. - $ref: '#/definitions/Reference'
  522. uniqueItems: true
  523. requestBody:
  524. oneOf:
  525. - $ref: '#/definitions/RequestBody'
  526. - $ref: '#/definitions/Reference'
  527. responses:
  528. $ref: '#/definitions/Responses'
  529. callbacks:
  530. type: object
  531. additionalProperties:
  532. oneOf:
  533. - $ref: '#/definitions/Callback'
  534. - $ref: '#/definitions/Reference'
  535. deprecated:
  536. type: boolean
  537. default: false
  538. security:
  539. type: array
  540. items:
  541. $ref: '#/definitions/SecurityRequirement'
  542. servers:
  543. type: array
  544. items:
  545. $ref: '#/definitions/Server'
  546. patternProperties:
  547. '^x-': {}
  548. additionalProperties: false
  549. Responses:
  550. type: object
  551. properties:
  552. default:
  553. oneOf:
  554. - $ref: '#/definitions/Response'
  555. - $ref: '#/definitions/Reference'
  556. patternProperties:
  557. '^[1-5](?:\d{2}|XX)$':
  558. oneOf:
  559. - $ref: '#/definitions/Response'
  560. - $ref: '#/definitions/Reference'
  561. '^x-': {}
  562. minProperties: 1
  563. additionalProperties: false
  564. SecurityRequirement:
  565. type: object
  566. additionalProperties:
  567. type: array
  568. items:
  569. type: string
  570. Tag:
  571. type: object
  572. required:
  573. - name
  574. properties:
  575. name:
  576. type: string
  577. description:
  578. type: string
  579. externalDocs:
  580. $ref: '#/definitions/ExternalDocumentation'
  581. patternProperties:
  582. '^x-': {}
  583. additionalProperties: false
  584. ExternalDocumentation:
  585. type: object
  586. required:
  587. - url
  588. properties:
  589. description:
  590. type: string
  591. url:
  592. type: string
  593. format: uri-reference
  594. patternProperties:
  595. '^x-': {}
  596. additionalProperties: false
  597. ExampleXORExamples:
  598. description: Example and examples are mutually exclusive
  599. not:
  600. required: [example, examples]
  601. SchemaXORContent:
  602. description: Schema and content are mutually exclusive, at least one is required
  603. not:
  604. required: [schema, content]
  605. oneOf:
  606. - required: [schema]
  607. - required: [content]
  608. description: Some properties are not allowed if content is present
  609. allOf:
  610. - not:
  611. required: [style]
  612. - not:
  613. required: [explode]
  614. - not:
  615. required: [allowReserved]
  616. - not:
  617. required: [example]
  618. - not:
  619. required: [examples]
  620. Parameter:
  621. type: object
  622. properties:
  623. name:
  624. type: string
  625. in:
  626. type: string
  627. description:
  628. type: string
  629. required:
  630. type: boolean
  631. default: false
  632. deprecated:
  633. type: boolean
  634. default: false
  635. allowEmptyValue:
  636. type: boolean
  637. default: false
  638. style:
  639. type: string
  640. explode:
  641. type: boolean
  642. allowReserved:
  643. type: boolean
  644. default: false
  645. schema:
  646. oneOf:
  647. - $ref: '#/definitions/Schema'
  648. - $ref: '#/definitions/Reference'
  649. content:
  650. type: object
  651. additionalProperties:
  652. $ref: '#/definitions/MediaType'
  653. minProperties: 1
  654. maxProperties: 1
  655. example: {}
  656. examples:
  657. type: object
  658. additionalProperties:
  659. oneOf:
  660. - $ref: '#/definitions/Example'
  661. - $ref: '#/definitions/Reference'
  662. patternProperties:
  663. '^x-': {}
  664. additionalProperties: false
  665. required:
  666. - name
  667. - in
  668. allOf:
  669. - $ref: '#/definitions/ExampleXORExamples'
  670. - $ref: '#/definitions/SchemaXORContent'
  671. - $ref: '#/definitions/ParameterLocation'
  672. ParameterLocation:
  673. description: Parameter location
  674. oneOf:
  675. - description: Parameter in path
  676. required:
  677. - required
  678. properties:
  679. in:
  680. enum: [path]
  681. style:
  682. enum: [matrix, label, simple]
  683. default: simple
  684. required:
  685. enum: [true]
  686. - description: Parameter in query
  687. properties:
  688. in:
  689. enum: [query]
  690. style:
  691. enum: [form, spaceDelimited, pipeDelimited, deepObject]
  692. default: form
  693. - description: Parameter in header
  694. properties:
  695. in:
  696. enum: [header]
  697. style:
  698. enum: [simple]
  699. default: simple
  700. - description: Parameter in cookie
  701. properties:
  702. in:
  703. enum: [cookie]
  704. style:
  705. enum: [form]
  706. default: form
  707. RequestBody:
  708. type: object
  709. required:
  710. - content
  711. properties:
  712. description:
  713. type: string
  714. content:
  715. type: object
  716. additionalProperties:
  717. $ref: '#/definitions/MediaType'
  718. required:
  719. type: boolean
  720. default: false
  721. patternProperties:
  722. '^x-': {}
  723. additionalProperties: false
  724. SecurityScheme:
  725. oneOf:
  726. - $ref: '#/definitions/APIKeySecurityScheme'
  727. - $ref: '#/definitions/HTTPSecurityScheme'
  728. - $ref: '#/definitions/OAuth2SecurityScheme'
  729. - $ref: '#/definitions/OpenIdConnectSecurityScheme'
  730. APIKeySecurityScheme:
  731. type: object
  732. required:
  733. - type
  734. - name
  735. - in
  736. properties:
  737. type:
  738. type: string
  739. enum:
  740. - apiKey
  741. name:
  742. type: string
  743. in:
  744. type: string
  745. enum:
  746. - header
  747. - query
  748. - cookie
  749. description:
  750. type: string
  751. patternProperties:
  752. '^x-': {}
  753. additionalProperties: false
  754. HTTPSecurityScheme:
  755. type: object
  756. required:
  757. - scheme
  758. - type
  759. properties:
  760. scheme:
  761. type: string
  762. bearerFormat:
  763. type: string
  764. description:
  765. type: string
  766. type:
  767. type: string
  768. enum:
  769. - http
  770. patternProperties:
  771. '^x-': {}
  772. additionalProperties: false
  773. oneOf:
  774. - description: Bearer
  775. properties:
  776. scheme:
  777. enum: [bearer]
  778. - description: Non Bearer
  779. not:
  780. required: [bearerFormat]
  781. properties:
  782. scheme:
  783. not:
  784. enum: [bearer]
  785. OAuth2SecurityScheme:
  786. type: object
  787. required:
  788. - type
  789. - flows
  790. properties:
  791. type:
  792. type: string
  793. enum:
  794. - oauth2
  795. flows:
  796. $ref: '#/definitions/OAuthFlows'
  797. description:
  798. type: string
  799. patternProperties:
  800. '^x-': {}
  801. additionalProperties: false
  802. OpenIdConnectSecurityScheme:
  803. type: object
  804. required:
  805. - type
  806. - openIdConnectUrl
  807. properties:
  808. type:
  809. type: string
  810. enum:
  811. - openIdConnect
  812. openIdConnectUrl:
  813. type: string
  814. format: uri-reference
  815. description:
  816. type: string
  817. patternProperties:
  818. '^x-': {}
  819. additionalProperties: false
  820. OAuthFlows:
  821. type: object
  822. properties:
  823. implicit:
  824. $ref: '#/definitions/ImplicitOAuthFlow'
  825. password:
  826. $ref: '#/definitions/PasswordOAuthFlow'
  827. clientCredentials:
  828. $ref: '#/definitions/ClientCredentialsFlow'
  829. authorizationCode:
  830. $ref: '#/definitions/AuthorizationCodeOAuthFlow'
  831. patternProperties:
  832. '^x-': {}
  833. additionalProperties: false
  834. ImplicitOAuthFlow:
  835. type: object
  836. required:
  837. - authorizationUrl
  838. - scopes
  839. properties:
  840. authorizationUrl:
  841. type: string
  842. format: uri-reference
  843. refreshUrl:
  844. type: string
  845. format: uri-reference
  846. scopes:
  847. type: object
  848. additionalProperties:
  849. type: string
  850. patternProperties:
  851. '^x-': {}
  852. additionalProperties: false
  853. PasswordOAuthFlow:
  854. type: object
  855. required:
  856. - tokenUrl
  857. properties:
  858. tokenUrl:
  859. type: string
  860. format: uri-reference
  861. refreshUrl:
  862. type: string
  863. format: uri-reference
  864. scopes:
  865. type: object
  866. additionalProperties:
  867. type: string
  868. patternProperties:
  869. '^x-': {}
  870. additionalProperties: false
  871. ClientCredentialsFlow:
  872. type: object
  873. required:
  874. - tokenUrl
  875. properties:
  876. tokenUrl:
  877. type: string
  878. format: uri-reference
  879. refreshUrl:
  880. type: string
  881. format: uri-reference
  882. scopes:
  883. type: object
  884. additionalProperties:
  885. type: string
  886. patternProperties:
  887. '^x-': {}
  888. additionalProperties: false
  889. AuthorizationCodeOAuthFlow:
  890. type: object
  891. required:
  892. - authorizationUrl
  893. - tokenUrl
  894. properties:
  895. authorizationUrl:
  896. type: string
  897. format: uri-reference
  898. tokenUrl:
  899. type: string
  900. format: uri-reference
  901. refreshUrl:
  902. type: string
  903. format: uri-reference
  904. scopes:
  905. type: object
  906. additionalProperties:
  907. type: string
  908. patternProperties:
  909. '^x-': {}
  910. additionalProperties: false
  911. Link:
  912. type: object
  913. properties:
  914. operationId:
  915. type: string
  916. operationRef:
  917. type: string
  918. format: uri-reference
  919. parameters:
  920. type: object
  921. additionalProperties: {}
  922. requestBody: {}
  923. description:
  924. type: string
  925. server:
  926. $ref: '#/definitions/Server'
  927. patternProperties:
  928. '^x-': {}
  929. additionalProperties: false
  930. not:
  931. description: Operation Id and Operation Ref are mutually exclusive
  932. required: [operationId, operationRef]
  933. Callback:
  934. type: object
  935. additionalProperties:
  936. $ref: '#/definitions/PathItem'
  937. patternProperties:
  938. '^x-': {}
  939. Encoding:
  940. type: object
  941. properties:
  942. contentType:
  943. type: string
  944. headers:
  945. type: object
  946. additionalProperties:
  947. $ref: '#/definitions/Header'
  948. style:
  949. type: string
  950. enum:
  951. - form
  952. - spaceDelimited
  953. - pipeDelimited
  954. - deepObject
  955. explode:
  956. type: boolean
  957. allowReserved:
  958. type: boolean
  959. default: false
  960. additionalProperties: false