github.com/s7techlab/cckit@v0.10.5/examples/fabcar/fabcar.swagger.json (about)

     1  {
     2    "swagger": "2.0",
     3    "info": {
     4      "title": "fabcar/fabcar.proto",
     5      "version": "version not set"
     6    },
     7    "consumes": [
     8      "application/json"
     9    ],
    10    "produces": [
    11      "application/json"
    12    ],
    13    "paths": {
    14      "/fabcar/cars": {
    15        "get": {
    16          "operationId": "FabCarService_ListCars",
    17          "responses": {
    18            "200": {
    19              "description": "A successful response.",
    20              "schema": {
    21                "$ref": "#/definitions/fabcarCars"
    22              }
    23            },
    24            "default": {
    25              "description": "An unexpected error response.",
    26              "schema": {
    27                "$ref": "#/definitions/runtimeError"
    28              }
    29            }
    30          },
    31          "tags": [
    32            "FabCarService"
    33          ]
    34        },
    35        "post": {
    36          "operationId": "FabCarService_CreateCar",
    37          "responses": {
    38            "200": {
    39              "description": "A successful response.",
    40              "schema": {
    41                "$ref": "#/definitions/fabcarCarView"
    42              }
    43            },
    44            "default": {
    45              "description": "An unexpected error response.",
    46              "schema": {
    47                "$ref": "#/definitions/runtimeError"
    48              }
    49            }
    50          },
    51          "parameters": [
    52            {
    53              "name": "body",
    54              "in": "body",
    55              "required": true,
    56              "schema": {
    57                "$ref": "#/definitions/fabcarCreateCarRequest"
    58              }
    59            }
    60          ],
    61          "tags": [
    62            "FabCarService"
    63          ]
    64        }
    65      },
    66      "/fabcar/cars/{car_id}/details": {
    67        "put": {
    68          "operationId": "FabCarService_UpdateCarDetails",
    69          "responses": {
    70            "200": {
    71              "description": "A successful response.",
    72              "schema": {
    73                "$ref": "#/definitions/fabcarCarDetails"
    74              }
    75            },
    76            "default": {
    77              "description": "An unexpected error response.",
    78              "schema": {
    79                "$ref": "#/definitions/runtimeError"
    80              }
    81            }
    82          },
    83          "parameters": [
    84            {
    85              "name": "car_id",
    86              "in": "path",
    87              "required": true,
    88              "type": "array",
    89              "items": {
    90                "type": "string"
    91              },
    92              "collectionFormat": "csv",
    93              "minItems": 1
    94            }
    95          ],
    96          "tags": [
    97            "FabCarService"
    98          ]
    99        }
   100      },
   101      "/fabcar/cars/{car_id}/details/{type}": {
   102        "get": {
   103          "operationId": "FabCarService_GetCarDetail",
   104          "responses": {
   105            "200": {
   106              "description": "A successful response.",
   107              "schema": {
   108                "$ref": "#/definitions/fabcarCarDetail"
   109              }
   110            },
   111            "default": {
   112              "description": "An unexpected error response.",
   113              "schema": {
   114                "$ref": "#/definitions/runtimeError"
   115              }
   116            }
   117          },
   118          "parameters": [
   119            {
   120              "name": "car_id",
   121              "in": "path",
   122              "required": true,
   123              "type": "array",
   124              "items": {
   125                "type": "string"
   126              },
   127              "collectionFormat": "csv",
   128              "minItems": 1
   129            },
   130            {
   131              "name": "type",
   132              "in": "path",
   133              "required": true,
   134              "type": "string",
   135              "enum": [
   136                "WHEELS",
   137                "BATTERY"
   138              ]
   139            }
   140          ],
   141          "tags": [
   142            "FabCarService"
   143          ]
   144        },
   145        "delete": {
   146          "operationId": "FabCarService_DeleteCarDetail",
   147          "responses": {
   148            "200": {
   149              "description": "A successful response.",
   150              "schema": {
   151                "$ref": "#/definitions/fabcarCarDetail"
   152              }
   153            },
   154            "default": {
   155              "description": "An unexpected error response.",
   156              "schema": {
   157                "$ref": "#/definitions/runtimeError"
   158              }
   159            }
   160          },
   161          "parameters": [
   162            {
   163              "name": "car_id",
   164              "in": "path",
   165              "required": true,
   166              "type": "array",
   167              "items": {
   168                "type": "string"
   169              },
   170              "collectionFormat": "csv",
   171              "minItems": 1
   172            },
   173            {
   174              "name": "type",
   175              "in": "path",
   176              "required": true,
   177              "type": "string",
   178              "enum": [
   179                "WHEELS",
   180                "BATTERY"
   181              ]
   182            }
   183          ],
   184          "tags": [
   185            "FabCarService"
   186          ]
   187        }
   188      },
   189      "/fabcar/cars/{car_id}/owners": {
   190        "put": {
   191          "operationId": "FabCarService_UpdateCarOwners",
   192          "responses": {
   193            "200": {
   194              "description": "A successful response.",
   195              "schema": {
   196                "$ref": "#/definitions/fabcarCarOwners"
   197              }
   198            },
   199            "default": {
   200              "description": "An unexpected error response.",
   201              "schema": {
   202                "$ref": "#/definitions/runtimeError"
   203              }
   204            }
   205          },
   206          "parameters": [
   207            {
   208              "name": "car_id",
   209              "in": "path",
   210              "required": true,
   211              "type": "array",
   212              "items": {
   213                "type": "string"
   214              },
   215              "collectionFormat": "csv",
   216              "minItems": 1
   217            }
   218          ],
   219          "tags": [
   220            "FabCarService"
   221          ]
   222        }
   223      },
   224      "/fabcar/cars/{car_id}/owners/{first_name}/{second_name}": {
   225        "get": {
   226          "operationId": "FabCarService_GetCarOwner",
   227          "responses": {
   228            "200": {
   229              "description": "A successful response.",
   230              "schema": {
   231                "$ref": "#/definitions/fabcarCarOwner"
   232              }
   233            },
   234            "default": {
   235              "description": "An unexpected error response.",
   236              "schema": {
   237                "$ref": "#/definitions/runtimeError"
   238              }
   239            }
   240          },
   241          "parameters": [
   242            {
   243              "name": "car_id",
   244              "in": "path",
   245              "required": true,
   246              "type": "array",
   247              "items": {
   248                "type": "string"
   249              },
   250              "collectionFormat": "csv",
   251              "minItems": 1
   252            },
   253            {
   254              "name": "first_name",
   255              "in": "path",
   256              "required": true,
   257              "type": "string"
   258            },
   259            {
   260              "name": "second_name",
   261              "in": "path",
   262              "required": true,
   263              "type": "string"
   264            }
   265          ],
   266          "tags": [
   267            "FabCarService"
   268          ]
   269        },
   270        "delete": {
   271          "operationId": "FabCarService_DeleteCarOwner",
   272          "responses": {
   273            "200": {
   274              "description": "A successful response.",
   275              "schema": {
   276                "$ref": "#/definitions/fabcarCarOwner"
   277              }
   278            },
   279            "default": {
   280              "description": "An unexpected error response.",
   281              "schema": {
   282                "$ref": "#/definitions/runtimeError"
   283              }
   284            }
   285          },
   286          "parameters": [
   287            {
   288              "name": "car_id",
   289              "in": "path",
   290              "required": true,
   291              "type": "array",
   292              "items": {
   293                "type": "string"
   294              },
   295              "collectionFormat": "csv",
   296              "minItems": 1
   297            },
   298            {
   299              "name": "first_name",
   300              "in": "path",
   301              "required": true,
   302              "type": "string"
   303            },
   304            {
   305              "name": "second_name",
   306              "in": "path",
   307              "required": true,
   308              "type": "string"
   309            }
   310          ],
   311          "tags": [
   312            "FabCarService"
   313          ]
   314        }
   315      },
   316      "/fabcar/cars/{id}": {
   317        "get": {
   318          "operationId": "FabCarService_GetCar",
   319          "responses": {
   320            "200": {
   321              "description": "A successful response.",
   322              "schema": {
   323                "$ref": "#/definitions/fabcarCar"
   324              }
   325            },
   326            "default": {
   327              "description": "An unexpected error response.",
   328              "schema": {
   329                "$ref": "#/definitions/runtimeError"
   330              }
   331            }
   332          },
   333          "parameters": [
   334            {
   335              "name": "id",
   336              "in": "path",
   337              "required": true,
   338              "type": "array",
   339              "items": {
   340                "type": "string"
   341              },
   342              "collectionFormat": "csv",
   343              "minItems": 1
   344            }
   345          ],
   346          "tags": [
   347            "FabCarService"
   348          ]
   349        },
   350        "delete": {
   351          "operationId": "FabCarService_DeleteCar",
   352          "responses": {
   353            "200": {
   354              "description": "A successful response.",
   355              "schema": {
   356                "$ref": "#/definitions/fabcarCarView"
   357              }
   358            },
   359            "default": {
   360              "description": "An unexpected error response.",
   361              "schema": {
   362                "$ref": "#/definitions/runtimeError"
   363              }
   364            }
   365          },
   366          "parameters": [
   367            {
   368              "name": "id",
   369              "in": "path",
   370              "required": true,
   371              "type": "array",
   372              "items": {
   373                "type": "string"
   374              },
   375              "collectionFormat": "csv",
   376              "minItems": 1
   377            }
   378          ],
   379          "tags": [
   380            "FabCarService"
   381          ]
   382        },
   383        "put": {
   384          "operationId": "FabCarService_UpdateCar",
   385          "responses": {
   386            "200": {
   387              "description": "A successful response.",
   388              "schema": {
   389                "$ref": "#/definitions/fabcarCarView"
   390              }
   391            },
   392            "default": {
   393              "description": "An unexpected error response.",
   394              "schema": {
   395                "$ref": "#/definitions/runtimeError"
   396              }
   397            }
   398          },
   399          "parameters": [
   400            {
   401              "name": "id",
   402              "in": "path",
   403              "required": true,
   404              "type": "array",
   405              "items": {
   406                "type": "string"
   407              },
   408              "collectionFormat": "csv",
   409              "minItems": 1
   410            },
   411            {
   412              "name": "body",
   413              "in": "body",
   414              "required": true,
   415              "schema": {
   416                "$ref": "#/definitions/fabcarUpdateCarRequest"
   417              }
   418            }
   419          ],
   420          "tags": [
   421            "FabCarService"
   422          ]
   423        }
   424      },
   425      "/fabcar/cars/{id}/details": {
   426        "get": {
   427          "operationId": "FabCarService_ListCarDetails",
   428          "responses": {
   429            "200": {
   430              "description": "A successful response.",
   431              "schema": {
   432                "$ref": "#/definitions/fabcarCarDetails"
   433              }
   434            },
   435            "default": {
   436              "description": "An unexpected error response.",
   437              "schema": {
   438                "$ref": "#/definitions/runtimeError"
   439              }
   440            }
   441          },
   442          "parameters": [
   443            {
   444              "name": "id",
   445              "in": "path",
   446              "required": true,
   447              "type": "array",
   448              "items": {
   449                "type": "string"
   450              },
   451              "collectionFormat": "csv",
   452              "minItems": 1
   453            }
   454          ],
   455          "tags": [
   456            "FabCarService"
   457          ]
   458        }
   459      },
   460      "/fabcar/cars/{id}/owners": {
   461        "get": {
   462          "operationId": "FabCarService_ListCarOwners",
   463          "responses": {
   464            "200": {
   465              "description": "A successful response.",
   466              "schema": {
   467                "$ref": "#/definitions/fabcarCarOwners"
   468              }
   469            },
   470            "default": {
   471              "description": "An unexpected error response.",
   472              "schema": {
   473                "$ref": "#/definitions/runtimeError"
   474              }
   475            }
   476          },
   477          "parameters": [
   478            {
   479              "name": "id",
   480              "in": "path",
   481              "required": true,
   482              "type": "array",
   483              "items": {
   484                "type": "string"
   485              },
   486              "collectionFormat": "csv",
   487              "minItems": 1
   488            }
   489          ],
   490          "tags": [
   491            "FabCarService"
   492          ]
   493        }
   494      },
   495      "/fabcar/cars/{id}/view": {
   496        "get": {
   497          "operationId": "FabCarService_GetCarView",
   498          "responses": {
   499            "200": {
   500              "description": "A successful response.",
   501              "schema": {
   502                "$ref": "#/definitions/fabcarCarView"
   503              }
   504            },
   505            "default": {
   506              "description": "An unexpected error response.",
   507              "schema": {
   508                "$ref": "#/definitions/runtimeError"
   509              }
   510            }
   511          },
   512          "parameters": [
   513            {
   514              "name": "id",
   515              "in": "path",
   516              "required": true,
   517              "type": "array",
   518              "items": {
   519                "type": "string"
   520              },
   521              "collectionFormat": "csv",
   522              "minItems": 1
   523            }
   524          ],
   525          "tags": [
   526            "FabCarService"
   527          ]
   528        }
   529      },
   530      "/fabcar/makers": {
   531        "get": {
   532          "operationId": "FabCarService_ListMakers",
   533          "responses": {
   534            "200": {
   535              "description": "A successful response.",
   536              "schema": {
   537                "$ref": "#/definitions/fabcarMakers"
   538              }
   539            },
   540            "default": {
   541              "description": "An unexpected error response.",
   542              "schema": {
   543                "$ref": "#/definitions/runtimeError"
   544              }
   545            }
   546          },
   547          "tags": [
   548            "FabCarService"
   549          ]
   550        },
   551        "post": {
   552          "operationId": "FabCarService_CreateMaker",
   553          "responses": {
   554            "200": {
   555              "description": "A successful response.",
   556              "schema": {
   557                "$ref": "#/definitions/fabcarMaker"
   558              }
   559            },
   560            "default": {
   561              "description": "An unexpected error response.",
   562              "schema": {
   563                "$ref": "#/definitions/runtimeError"
   564              }
   565            }
   566          },
   567          "parameters": [
   568            {
   569              "name": "body",
   570              "in": "body",
   571              "required": true,
   572              "schema": {
   573                "$ref": "#/definitions/fabcarCreateMakerRequest"
   574              }
   575            }
   576          ],
   577          "tags": [
   578            "FabCarService"
   579          ]
   580        }
   581      },
   582      "/fabcar/makers/{name}": {
   583        "get": {
   584          "operationId": "FabCarService_GetMaker",
   585          "responses": {
   586            "200": {
   587              "description": "A successful response.",
   588              "schema": {
   589                "$ref": "#/definitions/fabcarMaker"
   590              }
   591            },
   592            "default": {
   593              "description": "An unexpected error response.",
   594              "schema": {
   595                "$ref": "#/definitions/runtimeError"
   596              }
   597            }
   598          },
   599          "parameters": [
   600            {
   601              "name": "name",
   602              "in": "path",
   603              "required": true,
   604              "type": "string"
   605            }
   606          ],
   607          "tags": [
   608            "FabCarService"
   609          ]
   610        },
   611        "delete": {
   612          "operationId": "FabCarService_DeleteMaker",
   613          "responses": {
   614            "200": {
   615              "description": "A successful response.",
   616              "schema": {
   617                "$ref": "#/definitions/fabcarMaker"
   618              }
   619            },
   620            "default": {
   621              "description": "An unexpected error response.",
   622              "schema": {
   623                "$ref": "#/definitions/runtimeError"
   624              }
   625            }
   626          },
   627          "parameters": [
   628            {
   629              "name": "name",
   630              "in": "path",
   631              "required": true,
   632              "type": "string"
   633            }
   634          ],
   635          "tags": [
   636            "FabCarService"
   637          ]
   638        }
   639      }
   640    },
   641    "definitions": {
   642      "fabcarCar": {
   643        "type": "object",
   644        "properties": {
   645          "id": {
   646            "type": "array",
   647            "items": {
   648              "type": "string"
   649            }
   650          },
   651          "make": {
   652            "type": "string"
   653          },
   654          "model": {
   655            "type": "string"
   656          },
   657          "colour": {
   658            "type": "string"
   659          },
   660          "number": {
   661            "type": "string",
   662            "format": "uint64"
   663          },
   664          "updated_at": {
   665            "type": "string",
   666            "format": "date-time"
   667          }
   668        }
   669      },
   670      "fabcarCarDetail": {
   671        "type": "object",
   672        "properties": {
   673          "car_id": {
   674            "type": "array",
   675            "items": {
   676              "type": "string"
   677            }
   678          },
   679          "type": {
   680            "$ref": "#/definitions/fabcarDetailType"
   681          },
   682          "make": {
   683            "type": "string"
   684          },
   685          "updated_at": {
   686            "type": "string",
   687            "format": "date-time"
   688          }
   689        }
   690      },
   691      "fabcarCarDetails": {
   692        "type": "object",
   693        "properties": {
   694          "items": {
   695            "type": "array",
   696            "items": {
   697              "$ref": "#/definitions/fabcarCarDetail"
   698            }
   699          }
   700        }
   701      },
   702      "fabcarCarOwner": {
   703        "type": "object",
   704        "properties": {
   705          "car_id": {
   706            "type": "array",
   707            "items": {
   708              "type": "string"
   709            }
   710          },
   711          "first_name": {
   712            "type": "string"
   713          },
   714          "second_name": {
   715            "type": "string"
   716          },
   717          "vehicle_passport": {
   718            "type": "string"
   719          },
   720          "updated_at": {
   721            "type": "string",
   722            "format": "date-time"
   723          }
   724        }
   725      },
   726      "fabcarCarOwners": {
   727        "type": "object",
   728        "properties": {
   729          "items": {
   730            "type": "array",
   731            "items": {
   732              "$ref": "#/definitions/fabcarCarOwner"
   733            }
   734          }
   735        }
   736      },
   737      "fabcarCarView": {
   738        "type": "object",
   739        "properties": {
   740          "car": {
   741            "$ref": "#/definitions/fabcarCar"
   742          },
   743          "owners": {
   744            "$ref": "#/definitions/fabcarCarOwners"
   745          },
   746          "details": {
   747            "$ref": "#/definitions/fabcarCarDetails"
   748          }
   749        }
   750      },
   751      "fabcarCars": {
   752        "type": "object",
   753        "properties": {
   754          "items": {
   755            "type": "array",
   756            "items": {
   757              "$ref": "#/definitions/fabcarCar"
   758            }
   759          }
   760        }
   761      },
   762      "fabcarCreateCarRequest": {
   763        "type": "object",
   764        "properties": {
   765          "make": {
   766            "type": "string"
   767          },
   768          "model": {
   769            "type": "string"
   770          },
   771          "colour": {
   772            "type": "string"
   773          },
   774          "number": {
   775            "type": "string",
   776            "format": "uint64"
   777          },
   778          "owners": {
   779            "type": "array",
   780            "items": {
   781              "$ref": "#/definitions/fabcarSetCarOwner"
   782            }
   783          },
   784          "details": {
   785            "type": "array",
   786            "items": {
   787              "$ref": "#/definitions/fabcarSetCarDetail"
   788            }
   789          }
   790        }
   791      },
   792      "fabcarCreateMakerRequest": {
   793        "type": "object",
   794        "properties": {
   795          "name": {
   796            "type": "string"
   797          },
   798          "country": {
   799            "type": "string"
   800          },
   801          "foundation_year": {
   802            "type": "string",
   803            "format": "uint64"
   804          }
   805        },
   806        "title": "Entities"
   807      },
   808      "fabcarDetailType": {
   809        "type": "string",
   810        "enum": [
   811          "WHEELS",
   812          "BATTERY"
   813        ],
   814        "default": "WHEELS",
   815        "title": "Dictionaries"
   816      },
   817      "fabcarMaker": {
   818        "type": "object",
   819        "properties": {
   820          "name": {
   821            "type": "string"
   822          },
   823          "country": {
   824            "type": "string"
   825          },
   826          "foundation_year": {
   827            "type": "string",
   828            "format": "uint64"
   829          }
   830        }
   831      },
   832      "fabcarMakers": {
   833        "type": "object",
   834        "properties": {
   835          "items": {
   836            "type": "array",
   837            "items": {
   838              "$ref": "#/definitions/fabcarMaker"
   839            }
   840          }
   841        }
   842      },
   843      "fabcarSetCarDetail": {
   844        "type": "object",
   845        "properties": {
   846          "type": {
   847            "$ref": "#/definitions/fabcarDetailType"
   848          },
   849          "make": {
   850            "type": "string"
   851          }
   852        }
   853      },
   854      "fabcarSetCarOwner": {
   855        "type": "object",
   856        "properties": {
   857          "first_name": {
   858            "type": "string"
   859          },
   860          "second_name": {
   861            "type": "string"
   862          },
   863          "vehicle_passport": {
   864            "type": "string"
   865          }
   866        }
   867      },
   868      "fabcarUpdateCarRequest": {
   869        "type": "object",
   870        "properties": {
   871          "id": {
   872            "type": "array",
   873            "items": {
   874              "type": "string"
   875            }
   876          },
   877          "color": {
   878            "type": "string"
   879          },
   880          "owners": {
   881            "type": "array",
   882            "items": {
   883              "$ref": "#/definitions/fabcarSetCarOwner"
   884            }
   885          },
   886          "details": {
   887            "type": "array",
   888            "items": {
   889              "$ref": "#/definitions/fabcarSetCarDetail"
   890            }
   891          }
   892        }
   893      },
   894      "protobufAny": {
   895        "type": "object",
   896        "properties": {
   897          "type_url": {
   898            "type": "string"
   899          },
   900          "value": {
   901            "type": "string",
   902            "format": "byte"
   903          }
   904        }
   905      },
   906      "runtimeError": {
   907        "type": "object",
   908        "properties": {
   909          "error": {
   910            "type": "string"
   911          },
   912          "code": {
   913            "type": "integer",
   914            "format": "int32"
   915          },
   916          "message": {
   917            "type": "string"
   918          },
   919          "details": {
   920            "type": "array",
   921            "items": {
   922              "$ref": "#/definitions/protobufAny"
   923            }
   924          }
   925        }
   926      }
   927    }
   928  }