Skip to content

Commit a212b52

Browse files
authored
Add documentation for query webapps route (#71)
1 parent d0fc413 commit a212b52

File tree

1 file changed

+95
-2
lines changed

1 file changed

+95
-2
lines changed

webapp/niapp.yaml

Lines changed: 95 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -100,13 +100,16 @@ paths:
100100
type: string
101101
- in: query
102102
name: take
103-
description: How many webapps to return in the result
103+
description: The maximum number of webapps to return
104104
type: integer
105105
default: 100
106+
minimum: 0
106107
maximum: 1000
107108
responses:
108109
200:
109110
$ref: '#/responses/ListWebAppsResponse'
111+
400:
112+
$ref: '#/responses/ValidationError'
110113
401:
111114
$ref: '#/responses/Unauthorized'
112115
post:
@@ -122,6 +125,29 @@ paths:
122125
$ref: '#/responses/CreateWebAppResponse'
123126
401:
124127
$ref: '#/responses/Unauthorized'
128+
'/webapps/query':
129+
post:
130+
tags:
131+
- metadata
132+
summary: Query the webapps
133+
description: >-
134+
Use the Dynamic Linq query language to specify filters for webapps.
135+
An empty request body queries all webapps.
136+
operationId: query
137+
parameters:
138+
- in: body
139+
name: postBody
140+
description: Query filter
141+
required: false
142+
schema:
143+
$ref: '#/definitions/WebAppsAdvancedQuery'
144+
responses:
145+
200:
146+
$ref: '#/responses/ListWebAppsResponse'
147+
400:
148+
$ref: '#/responses/ValidationError'
149+
401:
150+
$ref: '#/responses/Unauthorized'
125151
'/webapps/{id}/sharing':
126152
put:
127153
tags:
@@ -192,7 +218,7 @@ paths:
192218
$ref: '#/responses/Unauthorized'
193219
404:
194220
$ref: '#/responses/NotFound'
195-
'/api/webapps/{id}/content/{path}':
221+
'/webapps/{id}/content/{path}':
196222
get:
197223
tags:
198224
- content
@@ -351,6 +377,7 @@ responses:
351377
continuationToken:
352378
description: The continuation token can be used to paginate through the webapp list results. Provide this token in the next list webapps call.
353379
type: string
380+
example: token
354381
SharedEmailsResponse:
355382
description: Shared Emails Response
356383
schema:
@@ -416,3 +443,69 @@ definitions:
416443
format: binary
417444
title: WebApp Content
418445
description: The webapp binary content. Depending on the webapp's type it can be a dashboard, template or *.nipkg file exported from LabVIEW NXG
446+
WebAppsAdvancedQuery:
447+
type: object
448+
title: Advanced Query Object for WebApps
449+
properties:
450+
filter:
451+
description: >-
452+
The filter criteria for webapps, consisting of a string of queries composed using AND/OR operators.
453+
String values need to be enclosed in double quotes.
454+
Parenthesis can be used within the filter to better define the order of operations.
455+
456+
457+
Filter syntax: '[property name][operator][operand] and [property name][operator][operand]'
458+
459+
Operators:
460+
461+
- Equals operator '='. Example: 'x = y'
462+
463+
- Not equal operator '!='. Example: 'x != y'
464+
465+
- Greater than operator '>'. Example: 'x > y'
466+
467+
- Greater than or equal operator '>='. Example: 'x >= y'
468+
469+
- Less than operator '<'. Example: 'x < y'
470+
471+
- Less than or equal operator '<='. Example: 'x <= y'
472+
473+
- Logical AND operator 'and'. Example: 'x and y'
474+
475+
- Logical OR operator 'or'. Example: 'x or y'
476+
477+
- Contains operator '.Contains()', used to check whether a string contains another string. Example: 'x.Contains(y)'
478+
479+
- Does not contain operator '!.Contains()', used to check whether a string does not contain another string. Example: '!x.Contains(y)'
480+
481+
- String null or empty 'string.IsNullOrEmpty()', used to check whether a string is null or empty. Example: 'string.IsNullOrEmpty(x)'
482+
483+
- String is not null or empty '!string.IsNullOrEmpty()', used to check whether a string is not null or empty. Example: '!string.IsNullOrEmpty(x)'
484+
485+
486+
Valid webapp properties that can be used in the filter:
487+
488+
- id
489+
490+
- name
491+
492+
- properties
493+
494+
- shared
495+
496+
- type
497+
498+
- workspace
499+
type: string
500+
example: name.Contains("myWebApp") || type == "WebVI"
501+
take:
502+
description: The maximum number of webapps to return
503+
type: integer
504+
default: 100
505+
minimum: 0
506+
maximum: 1000
507+
example: 10
508+
continuationToken:
509+
description: The continuation token can be used to paginate through the webapp query results. Provide this token in the next query webapps call.
510+
type: string
511+
example: token

0 commit comments

Comments
 (0)