49 lines
1.2 KiB
JSON
49 lines
1.2 KiB
JSON
{
|
|
"openapi": "3.0.1",
|
|
"info": {
|
|
"title": "test",
|
|
"version": "1.0",
|
|
"contact": {
|
|
"email": "somebody@example.com"
|
|
}
|
|
},
|
|
"paths": {
|
|
"/product": {
|
|
"description": "default"
|
|
}
|
|
},
|
|
"tags": [
|
|
{"name": "Products"}
|
|
],
|
|
"components": {
|
|
"schemas": {
|
|
"Product": {
|
|
"title": "Product",
|
|
"description": "A product.",
|
|
"type": "object",
|
|
"properties": {
|
|
"isBundle": {
|
|
"description": "Whether this product is a bundle of multiple products.",
|
|
"type": "boolean"
|
|
},
|
|
"bundleProducts": {
|
|
"description": "If `isBundle` is `true`, `bundleProducts` will contain an array of products.",
|
|
"oneOf": [
|
|
{
|
|
"title": "Market Product",
|
|
"type": "array",
|
|
"items": {
|
|
"$ref": "#/components/schemas/Product"
|
|
}
|
|
},
|
|
{
|
|
"description": "If this is not a bundle of products, `bundleProducts` will be `false`.",
|
|
"type": "boolean"
|
|
}
|
|
]
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
} |