File tree Expand file tree Collapse file tree 1 file changed +35
-0
lines changed
Integration/Scripted REST Api/Dynamic Record Finder Expand file tree Collapse file tree 1 file changed +35
-0
lines changed Original file line number Diff line number Diff line change 1+ ( function process ( /*RESTAPIRequest*/ request , /*RESTAPIResponse*/ response ) {
2+
3+ var table = request . queryParams . table || 'incident' ;
4+ var fieldsParam = request . queryParams . fields || 'number,short_description,priority' ;
5+ fieldsParam = fieldsParam . toString ( ) ;
6+ var query = request . queryParams . query || '' ;
7+ var limit = parseInt ( request . queryParams . limit || 50 ) ;
8+ var fields = fieldsParam . split ( ',' ) ;
9+ var gr = new GlideRecord ( table ) ;
10+ if ( query )
11+ gr . addEncodedQuery ( query ) ;
12+ var data = [ ] ;
13+ gr . setLimit ( limit ) ;
14+ gr . query ( ) ;
15+ while ( gr . next ( ) ) {
16+ var record = { } ;
17+ fields . forEach ( function ( f ) {
18+ if ( gr . isValidField ( f . trim ( ) ) ) {
19+ record [ f . trim ( ) ] = gr . getValue ( f . trim ( ) ) ;
20+ }
21+
22+ } ) ;
23+ data . push ( record ) ;
24+ }
25+ response . setStatus ( 200 ) ;
26+ response . setHeader ( 'Content-Type' , 'application/json' ) ;
27+
28+ var responseBody = {
29+ table : table ,
30+ fields : fields ,
31+ status : data
32+ } ;
33+ response . setBody ( ( responseBody ) ) ;
34+
35+ } ) ( request , response ) ;
You can’t perform that action at this time.
0 commit comments