Bug 25279: Add general query parameters to the /cities route
authorTomas Cohen Arazi <tomascohen@theke.io>
Fri, 24 Apr 2020 14:48:58 +0000 (11:48 -0300)
committerMartin Renvoize <martin.renvoize@ptfs-europe.com>
Tue, 12 May 2020 10:39:36 +0000 (11:39 +0100)
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
api/v1/swagger/paths/cities.json

index 01c7bed..2a43d9a 100644 (file)
@@ -3,35 +3,63 @@
     "get": {
       "x-mojo-to": "Cities#list",
       "operationId": "listCities",
-      "tags": ["cities"],
+      "tags": [
+        "cities"
+      ],
       "produces": [
         "application/json"
       ],
-      "parameters": [{
-        "name": "name",
-        "in": "query",
-        "description": "Case insensative search on city name",
-        "required": false,
-        "type": "string"
-      }, {
-        "name": "state",
-        "in": "query",
-        "description": "Case insensative search on city state",
-        "required": false,
-        "type": "string"
-      }, {
-        "name": "country",
-        "in": "query",
-        "description": "Case insensative search on city country",
-        "required": false,
-        "type": "string"
-      }, {
-        "name": "postal_code",
-        "in": "query",
-        "description": "Case Insensative search on city postal code",
-        "required": false,
-        "type": "string"
-      }],
+      "parameters": [
+        {
+          "name": "name",
+          "in": "query",
+          "description": "Case insensative search on city name",
+          "required": false,
+          "type": "string"
+        },
+        {
+          "name": "state",
+          "in": "query",
+          "description": "Case insensative search on city state",
+          "required": false,
+          "type": "string"
+        },
+        {
+          "name": "country",
+          "in": "query",
+          "description": "Case insensative search on city country",
+          "required": false,
+          "type": "string"
+        },
+        {
+          "name": "postal_code",
+          "in": "query",
+          "description": "Case Insensative search on city postal code",
+          "required": false,
+          "type": "string"
+        },
+        {
+          "$ref": "../parameters.json#/match"
+        },
+        {
+          "$ref": "../parameters.json#/order_by"
+        },
+        {
+          "$ref": "../parameters.json#/page"
+        },
+        {
+          "$ref": "../parameters.json#/per_page"
+        },
+        {
+          "$ref": "../parameters.json#/q_param"
+        },
+        {
+          "$ref": "../parameters.json#/q_body"
+        },
+        {
+          "$ref": "../parameters.json#/q_header"
+        }
+      ],
       "responses": {
         "200": {
           "description": "A list of cities",
       },
       "x-koha-authorization": {
         "permissions": {
-            "catalogue": "1"
+          "catalogue": "1"
         }
       }
     },
     "post": {
       "x-mojo-to": "Cities#add",
       "operationId": "addCity",
-      "tags": ["cities"],
-      "parameters": [{
-        "name": "body",
-        "in": "body",
-        "description": "A JSON object containing informations about the new hold",
-        "required": true,
-        "schema": {
-          "$ref": "../definitions.json#/city"
+      "tags": [
+        "cities"
+      ],
+      "parameters": [
+        {
+          "name": "body",
+          "in": "body",
+          "description": "A JSON object containing informations about the new hold",
+          "required": true,
+          "schema": {
+            "$ref": "../definitions.json#/city"
+          }
         }
-      }],
+      ],
       "produces": [
         "application/json"
       ],
     "get": {
       "x-mojo-to": "Cities#get",
       "operationId": "getCity",
-      "tags": ["cities"],
-      "parameters": [{
-        "$ref": "../parameters.json#/city_id_pp"
-      }],
+      "tags": [
+        "cities"
+      ],
+      "parameters": [
+        {
+          "$ref": "../parameters.json#/city_id_pp"
+        }
+      ],
       "produces": [
         "application/json"
       ],
       },
       "x-koha-authorization": {
         "permissions": {
-            "catalogue": "1"
+          "catalogue": "1"
         }
       }
     },
     "put": {
       "x-mojo-to": "Cities#update",
       "operationId": "updateCity",
-      "tags": ["cities"],
-      "parameters": [{
-        "$ref": "../parameters.json#/city_id_pp"
-      }, {
-        "name": "body",
-        "in": "body",
-        "description": "A city object",
-        "required": true,
-        "schema": {
-          "$ref": "../definitions.json#/city"
+      "tags": [
+        "cities"
+      ],
+      "parameters": [
+        {
+          "$ref": "../parameters.json#/city_id_pp"
+        },
+        {
+          "name": "body",
+          "in": "body",
+          "description": "A city object",
+          "required": true,
+          "schema": {
+            "$ref": "../definitions.json#/city"
+          }
         }
-      }],
+      ],
       "produces": [
         "application/json"
       ],
     "delete": {
       "x-mojo-to": "Cities#delete",
       "operationId": "deleteCity",
-      "tags": ["cities"],
-      "parameters": [{
-        "$ref": "../parameters.json#/city_id_pp"
-      }],
+      "tags": [
+        "cities"
+      ],
+      "parameters": [
+        {
+          "$ref": "../parameters.json#/city_id_pp"
+        }
+      ],
       "produces": [
         "application/json"
       ],