github.com/grpc-ecosystem/grpc-gateway/v2@v2.19.1/examples/internal/proto/examplepb/unannotated_echo_service.swagger.json (about)

     1  {
     2    "swagger": "2.0",
     3    "info": {
     4      "title": "Unannotated Echo",
     5      "description": "Unannotated Echo Service\nSimilar to echo_service.proto but without annotations. See\nunannotated_echo_service.yaml for the equivalent of the annotations in\ngRPC API configuration format.\n\nEcho Service API consists of a single service which returns\na message.",
     6      "version": "1.0",
     7      "contact": {
     8        "name": "gRPC-Gateway project",
     9        "url": "https://github.com/grpc-ecosystem/grpc-gateway",
    10        "email": "none@example.com"
    11      },
    12      "license": {
    13        "name": "BSD 3-Clause License",
    14        "url": "https://github.com/grpc-ecosystem/grpc-gateway/blob/main/LICENSE"
    15      },
    16      "x-something-something": "yadda"
    17    },
    18    "tags": [
    19      {
    20        "name": "Echo",
    21        "description": "Echo description"
    22      },
    23      {
    24        "name": "Internal",
    25        "description": "Internal description",
    26        "x-traitTag": true
    27      },
    28      {
    29        "name": "UnannotatedEchoService",
    30        "description": "UnannotatedEchoService description -- which should not be used in place of the documentation comment!",
    31        "externalDocs": {
    32          "description": "Find out more about UnannotatedEchoService",
    33          "url": "https://github.com/grpc-ecosystem/grpc-gateway"
    34        }
    35      }
    36    ],
    37    "schemes": [
    38      "http",
    39      "https",
    40      "wss"
    41    ],
    42    "consumes": [
    43      "application/json",
    44      "application/x-foo-mime"
    45    ],
    46    "produces": [
    47      "application/json",
    48      "application/x-foo-mime"
    49    ],
    50    "paths": {
    51      "/v1/example/echo/{id}": {
    52        "post": {
    53          "summary": "Summary: Echo rpc",
    54          "description": "Description Echo",
    55          "operationId": "UnannotatedEchoService_Echo",
    56          "responses": {
    57            "200": {
    58              "description": "A successful response.",
    59              "schema": {
    60                "$ref": "#/definitions/examplepbUnannotatedSimpleMessage"
    61              },
    62              "examples": {
    63                "application/json": {
    64                  "value": "the input value"
    65                }
    66              }
    67            },
    68            "403": {
    69              "description": "Returned when the user does not have permission to access the resource.",
    70              "schema": {}
    71            },
    72            "404": {
    73              "description": "Returned when the resource does not exist.",
    74              "schema": {
    75                "type": "integer",
    76                "format": "integer"
    77              }
    78            },
    79            "503": {
    80              "description": "Returned when the resource is temporarily unavailable.",
    81              "schema": {},
    82              "x-number": 100
    83            },
    84            "default": {
    85              "description": "An unexpected error response.",
    86              "schema": {
    87                "$ref": "#/definitions/rpcStatus"
    88              }
    89            }
    90          },
    91          "parameters": [
    92            {
    93              "name": "id",
    94              "description": "Id represents the message identifier.",
    95              "in": "path",
    96              "required": true,
    97              "type": "string"
    98            },
    99            {
   100              "name": "num",
   101              "description": "Int value field",
   102              "in": "query",
   103              "required": true,
   104              "type": "string",
   105              "format": "int64",
   106              "default": "42"
   107            },
   108            {
   109              "name": "duration",
   110              "in": "query",
   111              "required": false,
   112              "type": "string"
   113            },
   114            {
   115              "name": "lineNum",
   116              "in": "query",
   117              "required": false,
   118              "type": "string",
   119              "format": "int64"
   120            },
   121            {
   122              "name": "lang",
   123              "in": "query",
   124              "required": false,
   125              "type": "string"
   126            },
   127            {
   128              "name": "status.progress",
   129              "in": "query",
   130              "required": false,
   131              "type": "string",
   132              "format": "int64"
   133            },
   134            {
   135              "name": "status.note",
   136              "in": "query",
   137              "required": false,
   138              "type": "string"
   139            },
   140            {
   141              "name": "en",
   142              "in": "query",
   143              "required": false,
   144              "type": "string",
   145              "format": "int64"
   146            },
   147            {
   148              "name": "no.progress",
   149              "in": "query",
   150              "required": false,
   151              "type": "string",
   152              "format": "int64"
   153            },
   154            {
   155              "name": "no.note",
   156              "in": "query",
   157              "required": false,
   158              "type": "string"
   159            },
   160            {
   161              "name": "resourceId",
   162              "in": "query",
   163              "required": false,
   164              "type": "string"
   165            },
   166            {
   167              "name": "nId.nId",
   168              "in": "query",
   169              "required": false,
   170              "type": "string"
   171            },
   172            {
   173              "name": "nId.val",
   174              "in": "query",
   175              "required": false,
   176              "type": "string"
   177            }
   178          ],
   179          "tags": [
   180            "UnannotatedEchoService"
   181          ],
   182          "externalDocs": {
   183            "description": "Find out more Echo",
   184            "url": "https://github.com/grpc-ecosystem/grpc-gateway"
   185          }
   186        }
   187      },
   188      "/v1/example/echo/{id}/{num}": {
   189        "get": {
   190          "summary": "Summary: Echo rpc",
   191          "description": "Description Echo",
   192          "operationId": "UnannotatedEchoService_Echo2",
   193          "responses": {
   194            "200": {
   195              "description": "A successful response.",
   196              "schema": {
   197                "$ref": "#/definitions/examplepbUnannotatedSimpleMessage"
   198              },
   199              "examples": {
   200                "application/json": {
   201                  "value": "the input value"
   202                }
   203              }
   204            },
   205            "403": {
   206              "description": "Returned when the user does not have permission to access the resource.",
   207              "schema": {}
   208            },
   209            "404": {
   210              "description": "Returned when the resource does not exist.",
   211              "schema": {
   212                "type": "integer",
   213                "format": "integer"
   214              }
   215            },
   216            "503": {
   217              "description": "Returned when the resource is temporarily unavailable.",
   218              "schema": {},
   219              "x-number": 100
   220            },
   221            "default": {
   222              "description": "An unexpected error response.",
   223              "schema": {
   224                "$ref": "#/definitions/rpcStatus"
   225              }
   226            }
   227          },
   228          "parameters": [
   229            {
   230              "name": "id",
   231              "description": "Id represents the message identifier.",
   232              "in": "path",
   233              "required": true,
   234              "type": "string"
   235            },
   236            {
   237              "name": "num",
   238              "description": "Int value field",
   239              "in": "path",
   240              "required": true,
   241              "type": "string",
   242              "format": "int64",
   243              "default": "42"
   244            },
   245            {
   246              "name": "duration",
   247              "in": "query",
   248              "required": false,
   249              "type": "string"
   250            },
   251            {
   252              "name": "lineNum",
   253              "in": "query",
   254              "required": false,
   255              "type": "string",
   256              "format": "int64"
   257            },
   258            {
   259              "name": "lang",
   260              "in": "query",
   261              "required": false,
   262              "type": "string"
   263            },
   264            {
   265              "name": "status.progress",
   266              "in": "query",
   267              "required": false,
   268              "type": "string",
   269              "format": "int64"
   270            },
   271            {
   272              "name": "status.note",
   273              "in": "query",
   274              "required": false,
   275              "type": "string"
   276            },
   277            {
   278              "name": "en",
   279              "in": "query",
   280              "required": false,
   281              "type": "string",
   282              "format": "int64"
   283            },
   284            {
   285              "name": "no.progress",
   286              "in": "query",
   287              "required": false,
   288              "type": "string",
   289              "format": "int64"
   290            },
   291            {
   292              "name": "no.note",
   293              "in": "query",
   294              "required": false,
   295              "type": "string"
   296            },
   297            {
   298              "name": "resourceId",
   299              "in": "query",
   300              "required": false,
   301              "type": "string"
   302            },
   303            {
   304              "name": "nId.nId",
   305              "in": "query",
   306              "required": false,
   307              "type": "string"
   308            },
   309            {
   310              "name": "nId.val",
   311              "in": "query",
   312              "required": false,
   313              "type": "string"
   314            }
   315          ],
   316          "tags": [
   317            "UnannotatedEchoService"
   318          ],
   319          "externalDocs": {
   320            "description": "Find out more Echo",
   321            "url": "https://github.com/grpc-ecosystem/grpc-gateway"
   322          }
   323        }
   324      },
   325      "/v1/example/echo_body": {
   326        "post": {
   327          "summary": "EchoBody method receives a simple message and returns it.",
   328          "operationId": "UnannotatedEchoService_EchoBody",
   329          "responses": {
   330            "200": {
   331              "description": "A successful response.",
   332              "schema": {
   333                "$ref": "#/definitions/examplepbUnannotatedSimpleMessage"
   334              }
   335            },
   336            "403": {
   337              "description": "Returned when the user does not have permission to access the resource.",
   338              "schema": {}
   339            },
   340            "404": {
   341              "description": "Returned when the resource does not exist.",
   342              "schema": {
   343                "type": "string",
   344                "format": "string"
   345              }
   346            },
   347            "default": {
   348              "description": "An unexpected error response.",
   349              "schema": {
   350                "$ref": "#/definitions/rpcStatus"
   351              }
   352            }
   353          },
   354          "parameters": [
   355            {
   356              "name": "body",
   357              "description": "A simple message with many types",
   358              "in": "body",
   359              "required": true,
   360              "schema": {
   361                "$ref": "#/definitions/examplepbUnannotatedSimpleMessage"
   362              }
   363            }
   364          ],
   365          "tags": [
   366            "UnannotatedEchoService"
   367          ]
   368        }
   369      },
   370      "/v1/example/echo_delete": {
   371        "delete": {
   372          "summary": "EchoDelete method receives a simple message and returns it.",
   373          "operationId": "UnannotatedEchoService_EchoDelete",
   374          "responses": {
   375            "200": {
   376              "description": "A successful response.",
   377              "schema": {
   378                "$ref": "#/definitions/examplepbUnannotatedSimpleMessage"
   379              }
   380            },
   381            "403": {
   382              "description": "Returned when the user does not have permission to access the resource.",
   383              "schema": {}
   384            },
   385            "404": {
   386              "description": "Returned when the resource does not exist.",
   387              "schema": {
   388                "type": "string",
   389                "format": "string"
   390              }
   391            },
   392            "default": {
   393              "description": "An unexpected error response.",
   394              "schema": {
   395                "$ref": "#/definitions/rpcStatus"
   396              }
   397            }
   398          },
   399          "parameters": [
   400            {
   401              "name": "id",
   402              "description": "Id represents the message identifier.",
   403              "in": "query",
   404              "required": false,
   405              "type": "string"
   406            },
   407            {
   408              "name": "num",
   409              "description": "Int value field",
   410              "in": "query",
   411              "required": true,
   412              "type": "string",
   413              "format": "int64",
   414              "default": "42"
   415            },
   416            {
   417              "name": "duration",
   418              "in": "query",
   419              "required": false,
   420              "type": "string"
   421            },
   422            {
   423              "name": "lineNum",
   424              "in": "query",
   425              "required": false,
   426              "type": "string",
   427              "format": "int64"
   428            },
   429            {
   430              "name": "lang",
   431              "in": "query",
   432              "required": false,
   433              "type": "string"
   434            },
   435            {
   436              "name": "status.progress",
   437              "in": "query",
   438              "required": false,
   439              "type": "string",
   440              "format": "int64"
   441            },
   442            {
   443              "name": "status.note",
   444              "in": "query",
   445              "required": false,
   446              "type": "string"
   447            },
   448            {
   449              "name": "en",
   450              "in": "query",
   451              "required": false,
   452              "type": "string",
   453              "format": "int64"
   454            },
   455            {
   456              "name": "no.progress",
   457              "in": "query",
   458              "required": false,
   459              "type": "string",
   460              "format": "int64"
   461            },
   462            {
   463              "name": "no.note",
   464              "in": "query",
   465              "required": false,
   466              "type": "string"
   467            },
   468            {
   469              "name": "resourceId",
   470              "in": "query",
   471              "required": false,
   472              "type": "string"
   473            },
   474            {
   475              "name": "nId.nId",
   476              "in": "query",
   477              "required": false,
   478              "type": "string"
   479            },
   480            {
   481              "name": "nId.val",
   482              "in": "query",
   483              "required": false,
   484              "type": "string"
   485            }
   486          ],
   487          "tags": [
   488            "UnannotatedEchoService"
   489          ]
   490        }
   491      }
   492    },
   493    "definitions": {
   494      "examplepbUnannotatedEmbedded": {
   495        "type": "object",
   496        "properties": {
   497          "progress": {
   498            "type": "string",
   499            "format": "int64"
   500          },
   501          "note": {
   502            "type": "string"
   503          }
   504        },
   505        "description": "Embedded represents a message embedded in SimpleMessage."
   506      },
   507      "examplepbUnannotatedNestedMessage": {
   508        "type": "object",
   509        "properties": {
   510          "nId": {
   511            "type": "string"
   512          },
   513          "val": {
   514            "type": "string"
   515          }
   516        }
   517      },
   518      "examplepbUnannotatedSimpleMessage": {
   519        "type": "object",
   520        "example": {
   521          "id": "myid"
   522        },
   523        "properties": {
   524          "id": {
   525            "type": "string",
   526            "description": "Id represents the message identifier."
   527          },
   528          "num": {
   529            "type": "string",
   530            "format": "int64",
   531            "default": "42",
   532            "description": "Int value field"
   533          },
   534          "duration": {
   535            "type": "string"
   536          },
   537          "lineNum": {
   538            "type": "string",
   539            "format": "int64"
   540          },
   541          "lang": {
   542            "type": "string"
   543          },
   544          "status": {
   545            "$ref": "#/definitions/examplepbUnannotatedEmbedded"
   546          },
   547          "en": {
   548            "type": "string",
   549            "format": "int64"
   550          },
   551          "no": {
   552            "$ref": "#/definitions/examplepbUnannotatedEmbedded"
   553          },
   554          "resourceId": {
   555            "type": "string"
   556          },
   557          "nId": {
   558            "$ref": "#/definitions/examplepbUnannotatedNestedMessage"
   559          }
   560        },
   561        "description": "A simple message with many types",
   562        "title": "A bit of everything",
   563        "externalDocs": {
   564          "description": "Find out more about UnannotatedSimpleMessage",
   565          "url": "https://github.com/grpc-ecosystem/grpc-gateway"
   566        },
   567        "required": [
   568          "id",
   569          "num"
   570        ]
   571      },
   572      "protobufAny": {
   573        "type": "object",
   574        "properties": {
   575          "@type": {
   576            "type": "string"
   577          }
   578        },
   579        "additionalProperties": {}
   580      },
   581      "rpcStatus": {
   582        "type": "object",
   583        "properties": {
   584          "code": {
   585            "type": "integer",
   586            "format": "int32"
   587          },
   588          "message": {
   589            "type": "string"
   590          },
   591          "details": {
   592            "type": "array",
   593            "items": {
   594              "type": "object",
   595              "$ref": "#/definitions/protobufAny"
   596            }
   597          }
   598        }
   599      }
   600    },
   601    "securityDefinitions": {
   602      "ApiKeyAuth": {
   603        "type": "apiKey",
   604        "name": "X-API-Key",
   605        "in": "header",
   606        "x-amazon-apigateway-authorizer": {
   607          "authorizerResultTtlInSeconds": 60,
   608          "type": "token"
   609        },
   610        "x-amazon-apigateway-authtype": "oauth2"
   611      },
   612      "BasicAuth": {
   613        "type": "basic"
   614      }
   615    },
   616    "security": [
   617      {
   618        "ApiKeyAuth": [],
   619        "BasicAuth": []
   620      },
   621      {
   622        "ApiKeyAuth": [],
   623        "OAuth2": [
   624          "read",
   625          "write"
   626        ]
   627      }
   628    ],
   629    "externalDocs": {
   630      "description": "More about gRPC-Gateway",
   631      "url": "https://github.com/grpc-ecosystem/grpc-gateway"
   632    },
   633    "x-grpc-gateway-baz-list": [
   634      "one",
   635      true
   636    ],
   637    "x-grpc-gateway-foo": "bar"
   638  }