{
"type": "object",
"properties": {
"queryParameters": {
"title": "queryParameters",
"type": "object",
"properties": {
"limit": {
"type": "integer",
"description": "Number of results to return. Used for pagination.",
"default": 25,
"minimum": 0,
"examples": [
1,
10,
50
]
},
"skip": {
"type": "integer",
"description": "Number of results to skip. Used for pagination.",
"default": 0,
"minimum": 0,
"examples": [
1,
10,
50
]
},
"order": {
"type": "integer",
"description": "Sort direction, 1 for ascending and -1 for descending.",
"default": 1,
"enum": [
-1,
1
]
},
"sort": {
"type": "string",
"description": "Field to sort by",
"default": "name",
"enum": [
"name"
]
},
"include": {
"type": "string",
"description": "Inclusive projection operator formatted as a comma-delineated list. '_id' will be included implicitly unless excluded with 'exclude=_id'. May only be used in conjunction with 'exclude' when 'exclude=_id'.",
"examples": [
"name",
"description",
"name,description"
]
},
"exclude": {
"type": "string",
"description": "Exclusive projection operator formatted as a comma-delineated list. May only be used in conjunction with 'include' when 'exclude=_id'.",
"examples": [
"_id",
"description",
"_id,description"
]
},
"in": {
"description": "Search for fields exactly matching one of the given list options",
"type": "string"
},
"not-in": {
"description": "Search for fields not exactly matching one of the given list options",
"type": "string"
},
"equals": {
"description": "Returns results where the specified fields exactly match the given match string(s).",
"type": "string"
},
"contains": {
"description": "Returns results where the specified fields contain the given match string(s).",
"type": "string"
},
"starts-with": {
"description": "Returns results where the specified fields start with the given match string(s).",
"type": "string"
},
"ends-with": {
"description": "Returns results where the specified fields end in the given match string(s).",
"type": "string"
}
}
}
},
"required": [
"queryParameters"
],
"additionalProperties": false
}
{
"title": "result",
"type": "object",
"properties": {
"items": {
"type": "array",
"items": {
"$ref": "template"
}
},
"total": {
"type": "integer",
"description": "Total number of documents matching the given query parameters."
},
"start": {
"type": "integer",
"description": "Search index of first document in the items array."
},
"end": {
"type": "integer",
"description": "Search index of the last document in the items array."
},
"count": {
"type": "integer",
"description": "Length of the items array."
},
"next": {
"description": "URI pointing to the next set of paginated results. Preserves previous search and projection parameters. Null if returning the last page of results.",
"oneOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"previous": {
"description": "URI pointing to the previous set of paginated results. Preserves previous search and projection parameters. Null if returning the first page of results.",
"oneOf": [
{
"type": "string"
},
{
"type": "null"
}
]
}
}
}