{ "/api/v1/saved_query/": { "delete": { "parameters": [ { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/get_delete_ids_schema" } } }, "in": "query", "name": "q" } ], "responses": { "200": { "content": { "application/json": { "schema": { "properties": { "message": { "type": "string" } }, "type": "object" } } }, "description": "Saved queries bulk delete" }, "401": { "$ref": "#/components/responses/401" }, "404": { "$ref": "#/components/responses/404" }, "422": { "$ref": "#/components/responses/422" }, "500": { "$ref": "#/components/responses/500" } }, "security": [ { "jwt": [] } ], "summary": "Bulk delete saved queries", "tags": [ "Queries" ] }, "get": { "description": "Gets a list of saved queries, use Rison or JSON query parameters for filtering, sorting, pagination and for selecting specific columns and metadata.", "parameters": [ { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/get_list_schema" } } }, "in": "query", "name": "q" } ], "responses": { "200": { "content": { "application/json": { "schema": { "properties": { "count": { "description": "The total record count on the backend", "type": "number" }, "description_columns": { "properties": { "column_name": { "description": "The description for the column name. Will be translated by babel", "example": "A Nice description for the column", "type": "string" } }, "type": "object" }, "ids": { "description": "A list of item ids, useful when you don't know the column id", "items": { "type": "string" }, "type": "array" }, "label_columns": { "properties": { "column_name": { "description": "The label for the column name. Will be translated by babel", "example": "A Nice label for the column", "type": "string" } }, "type": "object" }, "list_columns": { "description": "A list of columns", "items": { "type": "string" }, "type": "array" }, "list_title": { "description": "A title to render. Will be translated by babel", "example": "List Items", "type": "string" }, "order_columns": { "description": "A list of allowed columns to sort", "items": { "type": "string" }, "type": "array" }, "result": { "description": "The result from the get list query", "items": { "$ref": "#/components/schemas/SavedQueryRestApi.get_list" }, "type": "array" } }, "type": "object" } } }, "description": "Items from Model" }, "400": { "$ref": "#/components/responses/400" }, "401": { "$ref": "#/components/responses/401" }, "422": { "$ref": "#/components/responses/422" }, "500": { "$ref": "#/components/responses/500" } }, "security": [ { "jwt": [] } ], "summary": "Get a list of saved queries", "tags": [ "Queries" ] }, "post": { "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/SavedQueryRestApi.post" } } }, "description": "Model schema", "required": true }, "responses": { "201": { "content": { "application/json": { "schema": { "properties": { "id": { "type": "string" }, "result": { "$ref": "#/components/schemas/SavedQueryRestApi.post" } }, "type": "object" } } }, "description": "Item inserted" }, "400": { "$ref": "#/components/responses/400" }, "401": { "$ref": "#/components/responses/401" }, "422": { "$ref": "#/components/responses/422" }, "500": { "$ref": "#/components/responses/500" } }, "security": [ { "jwt": [] } ], "summary": "Create a saved query", "tags": [ "Queries" ] } }, "/api/v1/saved_query/_info": { "get": { "description": "Get metadata information about this API resource", "parameters": [ { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/get_info_schema" } } }, "in": "query", "name": "q" } ], "responses": { "200": { "content": { "application/json": { "schema": { "properties": { "add_columns": { "type": "object" }, "edit_columns": { "type": "object" }, "filters": { "properties": { "column_name": { "items": { "properties": { "name": { "description": "The filter name. Will be translated by babel", "type": "string" }, "operator": { "description": "The filter operation key to use on list filters", "type": "string" } }, "type": "object" }, "type": "array" } }, "type": "object" }, "permissions": { "description": "The user permissions for this API resource", "items": { "type": "string" }, "type": "array" } }, "type": "object" } } }, "description": "Item from Model" }, "400": { "$ref": "#/components/responses/400" }, "401": { "$ref": "#/components/responses/401" }, "422": { "$ref": "#/components/responses/422" }, "500": { "$ref": "#/components/responses/500" } }, "security": [ { "jwt": [] } ], "summary": "Get metadata information about this API resource", "tags": [ "Queries" ] } }, "/api/v1/saved_query/distinct/{column_name}": { "get": { "parameters": [ { "in": "path", "name": "column_name", "required": true, "schema": { "type": "string" } }, { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/get_related_schema" } } }, "in": "query", "name": "q" } ], "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/DistincResponseSchema" } } }, "description": "Distinct field data" }, "400": { "$ref": "#/components/responses/400" }, "401": { "$ref": "#/components/responses/401" }, "404": { "$ref": "#/components/responses/404" }, "500": { "$ref": "#/components/responses/500" } }, "security": [ { "jwt": [] } ], "summary": "Get distinct values from field data", "tags": [ "Queries" ] } }, "/api/v1/saved_query/export/": { "get": { "parameters": [ { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/get_export_ids_schema" } } }, "in": "query", "name": "q" } ], "responses": { "200": { "content": { "application/zip": { "schema": { "format": "binary", "type": "string" } } }, "description": "A zip file with saved query(ies) and database(s) as YAML" }, "400": { "$ref": "#/components/responses/400" }, "401": { "$ref": "#/components/responses/401" }, "404": { "$ref": "#/components/responses/404" }, "500": { "$ref": "#/components/responses/500" } }, "security": [ { "jwt": [] } ], "summary": "Download multiple saved queries as YAML files", "tags": [ "Queries" ] } }, "/api/v1/saved_query/import/": { "post": { "requestBody": { "content": { "multipart/form-data": { "schema": { "properties": { "formData": { "description": "upload file (ZIP)", "format": "binary", "type": "string" }, "overwrite": { "description": "overwrite existing saved queries?", "type": "boolean" }, "passwords": { "description": "JSON map of passwords for each featured database in the ZIP file. If the ZIP includes a database config in the path `databases/MyDatabase.yaml`, the password should be provided in the following format: `{\"databases/MyDatabase.yaml\": \"my_password\"}`.", "type": "string" }, "ssh_tunnel_passwords": { "description": "JSON map of passwords for each ssh_tunnel associated to a featured database in the ZIP file. If the ZIP includes a ssh_tunnel config in the path `databases/MyDatabase.yaml`, the password should be provided in the following format: `{\"databases/MyDatabase.yaml\": \"my_password\"}`.", "type": "string" }, "ssh_tunnel_private_key_passwords": { "description": "JSON map of private_key_passwords for each ssh_tunnel associated to a featured database in the ZIP file. If the ZIP includes a ssh_tunnel config in the path `databases/MyDatabase.yaml`, the private_key should be provided in the following format: `{\"databases/MyDatabase.yaml\": \"my_private_key_password\"}`.", "type": "string" }, "ssh_tunnel_private_keys": { "description": "JSON map of private_keys for each ssh_tunnel associated to a featured database in the ZIP file. If the ZIP includes a ssh_tunnel config in the path `databases/MyDatabase.yaml`, the private_key should be provided in the following format: `{\"databases/MyDatabase.yaml\": \"my_private_key\"}`.", "type": "string" } }, "type": "object" } } }, "required": true }, "responses": { "200": { "content": { "application/json": { "schema": { "properties": { "message": { "type": "string" } }, "type": "object" } } }, "description": "Saved Query import result" }, "400": { "$ref": "#/components/responses/400" }, "401": { "$ref": "#/components/responses/401" }, "422": { "$ref": "#/components/responses/422" }, "500": { "$ref": "#/components/responses/500" } }, "security": [ { "jwt": [] } ], "summary": "Import saved queries with associated databases", "tags": [ "Queries" ] } }, "/api/v1/saved_query/related/{column_name}": { "get": { "parameters": [ { "in": "path", "name": "column_name", "required": true, "schema": { "type": "string" } }, { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/get_related_schema" } } }, "in": "query", "name": "q" } ], "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/RelatedResponseSchema" } } }, "description": "Related column data" }, "400": { "$ref": "#/components/responses/400" }, "401": { "$ref": "#/components/responses/401" }, "404": { "$ref": "#/components/responses/404" }, "500": { "$ref": "#/components/responses/500" } }, "security": [ { "jwt": [] } ], "summary": "Get related fields data", "tags": [ "Queries" ] } }, "/api/v1/saved_query/{pk}": { "delete": { "parameters": [ { "in": "path", "name": "pk", "required": true, "schema": { "type": "integer" } } ], "responses": { "200": { "content": { "application/json": { "schema": { "properties": { "message": { "type": "string" } }, "type": "object" } } }, "description": "Item deleted" }, "404": { "$ref": "#/components/responses/404" }, "422": { "$ref": "#/components/responses/422" }, "500": { "$ref": "#/components/responses/500" } }, "security": [ { "jwt": [] } ], "summary": "Delete a saved query", "tags": [ "Queries" ] }, "get": { "description": "Get an item model", "parameters": [ { "in": "path", "name": "pk", "required": true, "schema": { "type": "integer" } }, { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/get_item_schema" } } }, "in": "query", "name": "q" } ], "responses": { "200": { "content": { "application/json": { "schema": { "properties": { "description_columns": { "properties": { "column_name": { "description": "The description for the column name. Will be translated by babel", "example": "A Nice description for the column", "type": "string" } }, "type": "object" }, "id": { "description": "The item id", "type": "string" }, "label_columns": { "properties": { "column_name": { "description": "The label for the column name. Will be translated by babel", "example": "A Nice label for the column", "type": "string" } }, "type": "object" }, "result": { "$ref": "#/components/schemas/SavedQueryRestApi.get" }, "show_columns": { "description": "A list of columns", "items": { "type": "string" }, "type": "array" }, "show_title": { "description": "A title to render. Will be translated by babel", "example": "Show Item Details", "type": "string" } }, "type": "object" } } }, "description": "Item from Model" }, "400": { "$ref": "#/components/responses/400" }, "401": { "$ref": "#/components/responses/401" }, "404": { "$ref": "#/components/responses/404" }, "422": { "$ref": "#/components/responses/422" }, "500": { "$ref": "#/components/responses/500" } }, "security": [ { "jwt": [] } ], "summary": "Get a saved query", "tags": [ "Queries" ] }, "put": { "parameters": [ { "in": "path", "name": "pk", "required": true, "schema": { "type": "integer" } } ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/SavedQueryRestApi.put" } } }, "description": "Model schema", "required": true }, "responses": { "200": { "content": { "application/json": { "schema": { "properties": { "result": { "$ref": "#/components/schemas/SavedQueryRestApi.put" } }, "type": "object" } } }, "description": "Item changed" }, "400": { "$ref": "#/components/responses/400" }, "401": { "$ref": "#/components/responses/401" }, "404": { "$ref": "#/components/responses/404" }, "422": { "$ref": "#/components/responses/422" }, "500": { "$ref": "#/components/responses/500" } }, "security": [ { "jwt": [] } ], "summary": "Update a saved query", "tags": [ "Queries" ] } } }\n