MCPcopy Create free account
hub / github.com/adobe/Marinus / zonesRouter

Function zonesRouter

web_server/routes/zones.js:187–988  ·  view source on GitHub ↗
(envConfig)

Source from the content-addressed store, hash-verified

185
186/* eslint-disable-next-line no-unused-vars */
187export default function zonesRouter(envConfig) {
188 /**
189 * @swagger
190 *
191 * security:
192 * - APIKeyHeader: []
193 *
194 * tags:
195 * - name: Zones - Zone Stats
196 * description: Count zone records based on various properties.
197 *
198 * /api/v1.0/zones/stats:
199 * get:
200 * # Operation-specific security:
201 * security:
202 * - APIKeyHeader: []
203 * description: Finds records based on different properties.
204 * tags: [Zones - Zone Stats]
205 * produces:
206 * - application/json
207 * parameters:
208 * - name: source
209 * type: string
210 * required: false
211 * description: Count only records from this source.
212 * enum: [Infoblox, PassiveTotal, Infoblox-Retired, manual, RiskIQ, UltraDNS]
213 * in: query
214 * - name: status
215 * type: string
216 * required: false
217 * description: Limit the response to the provided status. Defaults to != [expired, false_positive]
218 * enum: [unconfirmed, false_postive, expired, confirmed]
219 * in: query
220 * responses:
221 * 200:
222 * description: Returns the count based on the optional source and status.
223 * type: object
224 * schema:
225 * $ref: '#/definitions/CountResponse'
226 * 500:
227 * description: Server error.
228 * schema:
229 * $ref: '#/definitions/ServerError'
230 */
231 router.route('/zones/stats')
232 .get(function (req, res) {
233 let source = '';
234 let status = '';
235
236 if (!is_valid_strings(req.query)) {
237 res.status(400).json({ 'message': 'Multiple query parameters are not allowed.' });
238 return;
239 }
240
241 if (Object.hasOwn(req.query, 'source')) {
242 source = req.query.source;
243 }
244 if (Object.hasOwn(req.query, 'status')) {

Callers 1

routesFunction · 0.85

Calls 1

is_valid_stringsFunction · 0.70

Tested by

no test coverage detected