UNPKG

@itentialopensource/adapter-ciena_mcp

Version:

This adapter integrates with system described as: Ciena Mcp

866 lines (853 loc) 592 kB
## Using this Adapter The `adapter.js` file contains the calls the adapter makes available to the rest of the Itential Platform. The API detailed for these calls should be available through JSDOC. The following is a brief summary of the calls. ### Generic Adapter Calls These are adapter methods that Itential Platform or you might use. There are some other methods not shown here that might be used for internal adapter functionality. <table border="1" class="bordered-table"> <tr> <th bgcolor="lightgrey" style="padding:15px"><span style="font-size:12.0pt">Method Signature</span></th> <th bgcolor="lightgrey" style="padding:15px"><span style="font-size:12.0pt">Description</span></th> <th bgcolor="lightgrey" style="padding:15px"><span style="font-size:12.0pt">Workflow?</span></th> </tr> <tr> <td style="padding:15px">connect()</td> <td style="padding:15px">This call is run when the Adapter is first loaded by the Itential Platform. It validates the properties have been provided correctly.</td> <td style="padding:15px">No</td> </tr> <tr> <td style="padding:15px">healthCheck(callback)</td> <td style="padding:15px">This call ensures that the adapter can communicate with Adapter for Ciena MCP. The actual call that is used is defined in the adapter properties and .system entities action.json file.</td> <td style="padding:15px">No</td> </tr> <tr> <td style="padding:15px">refreshProperties(properties)</td> <td style="padding:15px">This call provides the adapter the ability to accept property changes without having to restart the adapter.</td> <td style="padding:15px">No</td> </tr> <tr> <td style="padding:15px">encryptProperty(property, technique, callback)</td> <td style="padding:15px">This call will take the provided property and technique, and return the property encrypted with the technique. This allows the property to be used in the adapterProps section for the credential password so that the password does not have to be in clear text. The adapter will decrypt the property as needed for communications with Adapter for Ciena MCP.</td> <td style="padding:15px">No</td> </tr> <tr> <td style="padding:15px">iapUpdateAdapterConfiguration(configFile, changes, entity, type, action, callback)</td> <td style="padding:15px">This call provides the ability to update the adapter configuration from Itential Platform - includes actions, schema, mockdata and other configurations.</td> <td style="padding:15px">Yes</td> </tr> <tr> <td style="padding:15px">iapSuspendAdapter(mode, callback)</td> <td style="padding:15px">This call provides the ability to suspend the adapter and either have requests rejected or put into a queue to be processed after the adapter is resumed.</td> <td style="padding:15px">Yes</td> </tr> <tr> <td style="padding:15px">iapUnsuspendAdapter(callback)</td> <td style="padding:15px">This call provides the ability to resume a suspended adapter. Any requests in queue will be processed before new requests.</td> <td style="padding:15px">Yes</td> </tr> <tr> <td style="padding:15px">iapGetAdapterQueue(callback)</td> <td style="padding:15px">This call will return the requests that are waiting in the queue if throttling is enabled.</td> <td style="padding:15px">Yes</td> </tr> <tr> <td style="padding:15px">iapFindAdapterPath(apiPath, callback)</td> <td style="padding:15px">This call provides the ability to see if a particular API path is supported by the adapter.</td> <td style="padding:15px">Yes</td> </tr> <tr> <td style="padding:15px">iapTroubleshootAdapter(props, adapter, callback)</td> <td style="padding:15px">This call can be used to check on the performance of the adapter - it checks connectivity, healthcheck and basic get calls.</td> <td style="padding:15px">Yes</td> </tr> <tr> <td style="padding:15px">iapRunAdapterHealthcheck(adapter, callback)</td> <td style="padding:15px">This call will return the results of a healthcheck.</td> <td style="padding:15px">Yes</td> </tr> <tr> <td style="padding:15px">iapRunAdapterConnectivity(callback)</td> <td style="padding:15px">This call will return the results of a connectivity check.</td> <td style="padding:15px">Yes</td> </tr> <tr> <td style="padding:15px">iapRunAdapterBasicGet(maxCalls, callback)</td> <td style="padding:15px">This call will return the results of running basic get API calls. By default 5 get calls without parameters will be run. You can ask for more or less by setting maxCalls.</td> <td style="padding:15px">Yes</td> </tr> <tr> <td style="padding:15px">iapMoveAdapterEntitiesToDB(callback)</td> <td style="padding:15px">This call will push the adapter configuration from the entities directory into the Adapter or Itential Platform Database.</td> <td style="padding:15px">Yes</td> </tr> <tr> <td style="padding:15px">iapDeactivateTasks(tasks, callback)</td> <td style="padding:15px">This call provides the ability to remove tasks from the adapter.</td> <td style="padding:15px">Yes</td> </tr> <tr> <td style="padding:15px">iapActivateTasks(tasks, callback)</td> <td style="padding:15px">This call provides the ability to add deactivated tasks back into the adapter.</td> <td style="padding:15px">Yes</td> </tr> <tr> <td style="padding:15px">iapExpandedGenericAdapterRequest(metadata, uriPath, restMethod, pathVars, queryData, requestBody, addlHeaders, callback)</td> <td style="padding:15px">This is an expanded Generic Call. The metadata object allows us to provide many new capabilities within the generic request.</td> <td style="padding:15px">Yes</td> </tr> <tr> <td style="padding:15px">genericAdapterRequest(uriPath, restMethod, queryData, requestBody, addlHeaders, callback)</td> <td style="padding:15px">This call allows you to provide the path to have the adapter call. It is an easy way to incorporate paths that have not been built into the adapter yet.</td> <td style="padding:15px">Yes</td> </tr> <tr> <td style="padding:15px">genericAdapterRequestNoBasePath(uriPath, restMethod, queryData, requestBody, addlHeaders, callback)</td> <td style="padding:15px">This call is the same as the genericAdapterRequest only it does not add a base_path or version to the call.</td> <td style="padding:15px">Yes</td> </tr> <tr> <td style="padding:15px">iapRunAdapterLint(callback)</td> <td style="padding:15px">Runs lint on the addapter and provides the information back.</td> <td style="padding:15px">Yes</td> </tr> <tr> <td style="padding:15px">iapRunAdapterTests(callback)</td> <td style="padding:15px">Runs baseunit and unit tests on the adapter and provides the information back.</td> <td style="padding:15px">Yes</td> </tr> <tr> <td style="padding:15px">iapGetAdapterInventory(callback)</td> <td style="padding:15px">This call provides some inventory related information about the adapter.</td> <td style="padding:15px">Yes</td> </tr> </table> <br> ### Adapter Cache Calls These are adapter methods that are used for adapter caching. If configured, the adapter will cache based on the interval provided. However, you can force a population of the cache manually as well. <table border="1" class="bordered-table"> <tr> <th bgcolor="lightgrey" style="padding:15px"><span style="font-size:12.0pt">Method Signature</span></th> <th bgcolor="lightgrey" style="padding:15px"><span style="font-size:12.0pt">Description</span></th> <th bgcolor="lightgrey" style="padding:15px"><span style="font-size:12.0pt">Workflow?</span></th> </tr> <tr> <td style="padding:15px">iapPopulateEntityCache(entityTypes, callback)</td> <td style="padding:15px">This call populates the adapter cache.</td> <td style="padding:15px">Yes</td> </tr> <tr> <td style="padding:15px">iapRetrieveEntitiesCache(entityType, options, callback)</td> <td style="padding:15px">This call retrieves the specific items from the adapter cache.</td> <td style="padding:15px">Yes</td> </tr> </table> <br> ### Adapter Broker Calls These are adapter methods that are used to integrate to Itential Platform Brokers. This adapter currently supports the following broker calls. <table border="1" class="bordered-table"> <tr> <th bgcolor="lightgrey" style="padding:15px"><span style="font-size:12.0pt">Method Signature</span></th> <th bgcolor="lightgrey" style="padding:15px"><span style="font-size:12.0pt">Description</span></th> <th bgcolor="lightgrey" style="padding:15px"><span style="font-size:12.0pt">Workflow?</span></th> </tr> <tr> <td style="padding:15px">hasEntities(entityType, entityList, callback)</td> <td style="padding:15px">This call is utilized by the Itential Platform Device Broker to determine if the adapter has a specific entity and item of the entity.</td> <td style="padding:15px">No</td> </tr> <tr> <td style="padding:15px">getDevice(deviceName, callback)</td> <td style="padding:15px">This call returns the details of the requested device.</td> <td style="padding:15px">No</td> </tr> <tr> <td style="padding:15px">getDevicesFiltered(options, callback)</td> <td style="padding:15px">This call returns the list of devices that match the criteria provided in the options filter.</td> <td style="padding:15px">No</td> </tr> <tr> <td style="padding:15px">isAlive(deviceName, callback)</td> <td style="padding:15px">This call returns whether the device status is active</td> <td style="padding:15px">No</td> </tr> <tr> <td style="padding:15px">getConfig(deviceName, format, callback)</td> <td style="padding:15px">This call returns the configuration for the selected device.</td> <td style="padding:15px">No</td> </tr> <tr> <td style="padding:15px">iapGetDeviceCount(callback)</td> <td style="padding:15px">This call returns the count of devices.</td> <td style="padding:15px">No</td> </tr> </table> <br> ### Specific Adapter Calls Specific adapter calls are built based on the API of the Ciena MCP. The Adapter Builder creates the proper method comments for generating JS-DOC for the adapter. This is the best way to get information on the calls. <table border="1" class="bordered-table"> <tr> <th bgcolor="lightgrey" style="padding:15px"><span style="font-size:12.0pt">Method Signature</span></th> <th bgcolor="lightgrey" style="padding:15px"><span style="font-size:12.0pt">Description</span></th> <th bgcolor="lightgrey" style="padding:15px"><span style="font-size:12.0pt">Path</span></th> <th bgcolor="lightgrey" style="padding:15px"><span style="font-size:12.0pt">Workflow?</span></th> </tr> <tr> <td style="padding:15px">getTotalRecordsCount(callback)</td> <td style="padding:15px">Get the total number of Alarm records in the system.</td> <td style="padding:15px">{base_path}/{version}/nsa/api/v1/alarms/alarmRecordsCounts?{query}</td> <td style="padding:15px">Yes</td> </tr> <tr> <td style="padding:15px">getDeviceTypes(callback)</td> <td style="padding:15px">Get a collection of Alarmed device types.</td> <td style="padding:15px">{base_path}/{version}/nsa/api/v1/alarms/device-types?{query}</td> <td style="padding:15px">Yes</td> </tr> <tr> <td style="padding:15px">getDeviceAttributes(id, callback)</td> <td style="padding:15px">Get the device specific attributes for a device session id.</td> <td style="padding:15px">{base_path}/{version}/nsa/api/v1/alarms/deviceAttributes/{pathv1}?{query}</td> <td style="padding:15px">Yes</td> </tr> <tr> <td style="padding:15px">removeOldHistoricalAlarms(retentionDate, callback)</td> <td style="padding:15px">Remove historical alarms of the day specified in yyyymmdd format.</td> <td style="padding:15px">{base_path}/{version}/nsa/api/v1/alarms/historicalAlarms/{pathv1}?{query}</td> <td style="padding:15px">Yes</td> </tr> <tr> <td style="padding:15px">getHistoricalChangePartition(callback)</td> <td style="padding:15px">Get configuration of if historical alarms change partition.</td> <td style="padding:15px">{base_path}/{version}/nsa/api/v1/alarms/historicalChangePartition?{query}</td> <td style="padding:15px">Yes</td> </tr> <tr> <td style="padding:15px">getHistoricalDataRetentionDays(callback)</td> <td style="padding:15px">Get configuration of historical data retention days.</td> <td style="padding:15px">{base_path}/{version}/nsa/api/v1/alarms/historicalDataRetentionDays?{query}</td> <td style="padding:15px">Yes</td> </tr> <tr> <td style="padding:15px">setHistoricalDataRetentionDays(retentionDays, callback)</td> <td style="padding:15px">Set configuration of historical data retention days.</td> <td style="padding:15px">{base_path}/{version}/nsa/api/v1/alarms/historicalDataRetentionDays/{pathv1}?{query}</td> <td style="padding:15px">Yes</td> </tr> <tr> <td style="padding:15px">acknowledgeAlarmV1(id, callback)</td> <td style="padding:15px">Acknowledge an active Alarm based on its identifier.</td> <td style="padding:15px">{base_path}/{version}/nsa/api/v1/alarms/{pathv1}/acknowledge?{query}</td> <td style="padding:15px">Yes</td> </tr> <tr> <td style="padding:15px">forceClearAlarmV1(id, callback)</td> <td style="padding:15px">Force clear an active Alarm based on its identifier (irrespective of its clearable flag).</td> <td style="padding:15px">{base_path}/{version}/nsa/api/v1/alarms/{pathv1}/force-clear?{query}</td> <td style="padding:15px">Yes</td> </tr> <tr> <td style="padding:15px">manualClearAlarmV1(id, callback)</td> <td style="padding:15px">Manually clear an active Alarm based on its identifier.</td> <td style="padding:15px">{base_path}/{version}/nsa/api/v1/alarms/{pathv1}/manual-clear?{query}</td> <td style="padding:15px">Yes</td> </tr> <tr> <td style="padding:15px">unacknowledgeAlarmV1(id, callback)</td> <td style="padding:15px">Unacknowledge an active Alarm based on its identifier.</td> <td style="padding:15px">{base_path}/{version}/nsa/api/v1/alarms/{pathv1}/unacknowledge?{query}</td> <td style="padding:15px">Yes</td> </tr> <tr> <td style="padding:15px">getActiveAlarmCounts(callback)</td> <td style="padding:15px">Query active alarm counts of severity CRITICAL, MAJOR, MINOR and WARNING.</td> <td style="padding:15px">{base_path}/{version}/nsa/api/v1/alarms/filter/activeAlarmCountsBasic?{query}</td> <td style="padding:15px">Yes</td> </tr> <tr> <td style="padding:15px">searchActiveAlarms(severity, serviceAffecting, deviceType, acknowledgeState, keytext, range, sorting, offset, pageSize, callback)</td> <td style="padding:15px">Search/Filter active Alarms on the system.</td> <td style="padding:15px">{base_path}/{version}/nsa/api/v1/alarms/filter/activeAlarms?{query}</td> <td style="padding:15px">Yes</td> </tr> <tr> <td style="padding:15px">searchHistoricalAlarms(severity, serviceAffecting, deviceType, keytext, range, sorting, offset, pageSize, callback)</td> <td style="padding:15px">Search/Filter historical cleared Alarms on the system.</td> <td style="padding:15px">{base_path}/{version}/nsa/api/v1/alarms/filter/historicalAlarms?{query}</td> <td style="padding:15px">Yes</td> </tr> <tr> <td style="padding:15px">getAlarmSyncStates(body, callback)</td> <td style="padding:15px">Get a collection of alarm sync states of given nodes</td> <td style="padding:15px">{base_path}/{version}/nsa/api/v2_0/alarms/alarm-sync-states?{query}</td> <td style="padding:15px">Yes</td> </tr> <tr> <td style="padding:15px">resetRequestIdsForServerId(serverId, callback)</td> <td style="padding:15px">Reset request IDs for all alarms/events for this server ID to zero</td> <td style="padding:15px">{base_path}/{version}/nsa/api/v2_0/alarms/resetRequestId/{pathv1}?{query}</td> <td style="padding:15px">Yes</td> </tr> <tr> <td style="padding:15px">acknowledgeAlarm(id, sequenceId, callback)</td> <td style="padding:15px">Acknowledge an active alarm based on its identifier.</td> <td style="padding:15px">{base_path}/{version}/nsa/api/v2_0/alarms/{pathv1}/acknowledge/{pathv2}?{query}</td> <td style="padding:15px">Yes</td> </tr> <tr> <td style="padding:15px">annotateAlarm(id, body, callback)</td> <td style="padding:15px">Annotate an active alarm based on its identifier.</td> <td style="padding:15px">{base_path}/{version}/nsa/api/v2_0/alarms/{pathv1}/annotate?{query}</td> <td style="padding:15px">Yes</td> </tr> <tr> <td style="padding:15px">forceClearAlarm(id, sequenceId, callback)</td> <td style="padding:15px">Force clear an active alarm based on its identifier (irrespective of its clearable flag).</td> <td style="padding:15px">{base_path}/{version}/nsa/api/v2_0/alarms/{pathv1}/force-clear/{pathv2}?{query}</td> <td style="padding:15px">Yes</td> </tr> <tr> <td style="padding:15px">manualClearAlarm(id, sequenceId, callback)</td> <td style="padding:15px">Manually clear an active alarm based on its identifier.</td> <td style="padding:15px">{base_path}/{version}/nsa/api/v2_0/alarms/{pathv1}/manual-clear/{pathv2}?{query}</td> <td style="padding:15px">Yes</td> </tr> <tr> <td style="padding:15px">removeAnnotation(id, callback)</td> <td style="padding:15px">Remove Annotation of an active alarm based on its identifier.</td> <td style="padding:15px">{base_path}/{version}/nsa/api/v2_0/alarms/{pathv1}/removeAnnotation?{query}</td> <td style="padding:15px">Yes</td> </tr> <tr> <td style="padding:15px">unacknowledgeAlarm(id, sequenceId, callback)</td> <td style="padding:15px">Unacknowledge an active alarm based on its identifier.</td> <td style="padding:15px">{base_path}/{version}/nsa/api/v2_0/alarms/{pathv1}/unacknowledge/{pathv2}?{query}</td> <td style="padding:15px">Yes</td> </tr> <tr> <td style="padding:15px">getAllFilters(callback)</td> <td style="padding:15px">Get all alarm filters active on the system.</td> <td style="padding:15px">{base_path}/{version}/nsa/api/v2_0/alarms/filter?{query}</td> <td style="padding:15px">Yes</td> </tr> <tr> <td style="padding:15px">createFilter(body, callback)</td> <td style="padding:15px">Create a unique Alarm filter.</td> <td style="padding:15px">{base_path}/{version}/nsa/api/v2_0/alarms/filter?{query}</td> <td style="padding:15px">Yes</td> </tr> <tr> <td style="padding:15px">getNsaApiV20AlarmsFilterActiveAlarmCounts(callback)</td> <td style="padding:15px">Query active alarm counts of severity CRITICAL, MAJOR, MINOR and WARNING.</td> <td style="padding:15px">{base_path}/{version}/nsa/api/v2_0/alarms/filter/activeAlarmCounts?{query}</td> <td style="padding:15px">Yes</td> </tr> <tr> <td style="padding:15px">searchActiveAlarmsV2(filterSeverity, filterServiceAffecting, filterDeviceType, filterAcknowledgeState, filterDeviceId, filterDeviceName, filterIpAddress, filterMacAddress, filterAdditionalText, filterAnnotation, filterNativeConditionType, filterResource, filterSubnetName, filterCardType, filterClfi, filterFic, filterKeytext, filterLastRaisedTime, sorting, offset, pageSize, callback)</td> <td style="padding:15px">Search/Filter active Alarms on the system.</td> <td style="padding:15px">{base_path}/{version}/nsa/api/v2_0/alarms/filter/activeAlarms?{query}</td> <td style="padding:15px">Yes</td> </tr> <tr> <td style="padding:15px">getAdditionalTexts(filterAdditionalText, selectedAdditionalText, filterContextState, filterKeytext, filterLastRaisedTime, filterClearTime, callback)</td> <td style="padding:15px">Query for additional texts in context. Returns a subset of the total additional texts in the system.</td> <td style="padding:15px">{base_path}/{version}/nsa/api/v2_0/alarms/filter/additionalTextAggregations?{query}</td> <td style="padding:15px">Yes</td> </tr> <tr> <td style="padding:15px">getDeviceNames(filterDeviceName, selectedDeviceName, filterContextState, filterKeytext, filterLastRaisedTime, filterClearTime, callback)</td> <td style="padding:15px">Query for device names in context. Returns a subset of the total device names in the system.</td> <td style="padding:15px">{base_path}/{version}/nsa/api/v2_0/alarms/filter/deviceNamesAggregations?{query}</td> <td style="padding:15px">Yes</td> </tr> <tr> <td style="padding:15px">searchFilteredAlarms(filterAlarmId, filterState, filterContextState, filterSeverity, filterServiceAffecting, filterDeviceType, filterAcknowledgeState, filterDeviceId, filterDeviceName, filterIpAddress, filterMacAddress, filterDeviceTag, filterAdditionalText, filterAnnotation, filterNativeConditionType, filterResource, filterResourceList, filterResourceId, filterSubnetName, filterCardType, filterClfi, filterFic, filterPartition, filterKeytext, filterLastRaisedTime, filterLastRaisedTimeFrom, filterLastRaisedTimeTo, filterClearTime, filterClearTimeFrom, filterClearTimeTo, sort, filterRefinedRaisedTimeFrom, filterRefinedRaisedTimeTo, filterRefinedClearTimeFrom, filterRefinedClearTimeTo, filterAllTime, offset, pageSize, callback)</td> <td style="padding:15px">Search/Filter all Alarms on the system.</td> <td style="padding:15px">{base_path}/{version}/nsa/api/v2_0/alarms/filter/filteredAlarms?{query}</td> <td style="padding:15px">Yes</td> </tr> <tr> <td style="padding:15px">searchFilteredAlarmsWithBody(body, callback)</td> <td style="padding:15px">Search/Filter all Alarms on the system.</td> <td style="padding:15px">{base_path}/{version}/nsa/api/v2_0/alarms/filter/filteredAlarms?{query}</td> <td style="padding:15px">Yes</td> </tr> <tr> <td style="padding:15px">getFilteredAlarm(id, callback)</td> <td style="padding:15px">Get an Alarm based on its identifier.</td> <td style="padding:15px">{base_path}/{version}/nsa/api/v2_0/alarms/filter/filteredAlarms/{pathv1}?{query}</td> <td style="padding:15px">Yes</td> </tr> <tr> <td style="padding:15px">searchCorrelatedAlarms(serviceId, filterSeverity, filterServiceAffecting, filterDeviceType, filterAcknowledgeState, filterDeviceId, filterDeviceName, filterIpAddress, filterMacAddress, filterDeviceTag, filterAdditionalText, filterAnnotation, filterNativeConditionType, filterResource, filterResourceList, filterResourceId, filterSubnetName, filterCardType, filterClfi, filterFic, filterPartition, filterKeytext, filterLastRaisedTime, filterLastRaisedTimeFrom, filterLastRaisedTimeTo, filterClearTime, filterClearTimeFrom, filterClearTimeTo, sort, filterRefinedRaisedTimeFrom, filterRefinedRaisedTimeTo, filterRefinedClearTimeFrom, filterRefinedClearTimeTo, offset, pageSize, callback)</td> <td style="padding:15px">Search/Filter all correlated alarms on the system.</td> <td style="padding:15px">{base_path}/{version}/nsa/api/v2_0/alarms/filter/getCorrelatedAlarmsByService?{query}</td> <td style="padding:15px">Yes</td> </tr> <tr> <td style="padding:15px">searchHistoricalAlarmsV2(filterSeverity, filterServiceAffecting, filterDeviceType, filterDeviceId, filterDeviceName, filterIpAddress, filterMacAddress, filterAdditionalText, filterNativeConditionType, filterResource, filterSubnetName, filterCardType, filterClfi, filterFic, filterKeytext, filterClearTime, sorting, offset, pageSize, callback)</td> <td style="padding:15px">Search/Filter historical cleared Alarms on the system.</td> <td style="padding:15px">{base_path}/{version}/nsa/api/v2_0/alarms/filter/historicalAlarms?{query}</td> <td style="padding:15px">Yes</td> </tr> <tr> <td style="padding:15px">getIpAddresses(filterIpAddress, selectedIpAddress, filterContextState, filterKeytext, filterLastRaisedTime, filterClearTime, callback)</td> <td style="padding:15px">Query for IP addresses in context. Returns a subset of the total IP addresses in the system.</td> <td style="padding:15px">{base_path}/{version}/nsa/api/v2_0/alarms/filter/ipAddressesAggregations?{query}</td> <td style="padding:15px">Yes</td> </tr> <tr> <td style="padding:15px">getMacAddresses(filterMacAddress, selectedMacAddress, filterContextState, filterKeytext, filterLastRaisedTime, filterClearTime, callback)</td> <td style="padding:15px">Query for MAC addresses in context. Returns a subset of the total MAC addresses in the system.</td> <td style="padding:15px">{base_path}/{version}/nsa/api/v2_0/alarms/filter/macAddressesAggregations?{query}</td> <td style="padding:15px">Yes</td> </tr> <tr> <td style="padding:15px">getNativeConditionTypes(filterNativeConditionType, selectedNativeConditionType, filterContextState, filterKeytext, filterLastRaisedTime, filterClearTime, callback)</td> <td style="padding:15px">Query for native condition types in context. Returns a subset of the total native condition types i</td> <td style="padding:15px">{base_path}/{version}/nsa/api/v2_0/alarms/filter/nativeConditionTypeAggregations?{query}</td> <td style="padding:15px">Yes</td> </tr> <tr> <td style="padding:15px">getResources(filterResource, selectedResource, filterContextState, filterKeytext, filterLastRaisedTime, filterClearTime, callback)</td> <td style="padding:15px">Query for resources in context. Returns a subset of the total resources in the system.</td> <td style="padding:15px">{base_path}/{version}/nsa/api/v2_0/alarms/filter/resourceAggregations?{query}</td> <td style="padding:15px">Yes</td> </tr> <tr> <td style="padding:15px">getSubnetNames(filterSubnetName, selectedSubnetName, filterContextState, filterKeytext, filterLastRaisedTime, filterClearTime, callback)</td> <td style="padding:15px">Query for subnet names in context. Returns a subset of the total subnet names in the system.</td> <td style="padding:15px">{base_path}/{version}/nsa/api/v2_0/alarms/filter/subnetNamesAggregations?{query}</td> <td style="padding:15px">Yes</td> </tr> <tr> <td style="padding:15px">deleteFilter(channel, callback)</td> <td style="padding:15px">Manually delete an alarm filter from the system by filter channel.</td> <td style="padding:15px">{base_path}/{version}/nsa/api/v2_0/alarms/filter/{pathv1}?{query}</td> <td style="padding:15px">Yes</td> </tr> <tr> <td style="padding:15px">getAffectedInventoryIds(alarmId, callback)</td> <td style="padding:15px">Get the inventory ids affected by an active alarm</td> <td style="padding:15px">{base_path}/{version}/nsa-correlation/api/v1/correlation/getAffectedInventoryIds?{query}</td> <td style="padding:15px">Yes</td> </tr> <tr> <td style="padding:15px">getAffectingAlarmIds(inventoryId, callback)</td> <td style="padding:15px">Get the active alarm ids affecting an inventory</td> <td style="padding:15px">{base_path}/{version}/nsa-correlation/api/v1/correlation/getAffectingAlarmIds?{query}</td> <td style="padding:15px">Yes</td> </tr> <tr> <td style="padding:15px">postNsaCorrelationApiV1CorrelationGetAffectingAlarmIds(body, callback)</td> <td style="padding:15px">Get the active alarm ids affecting a list of inventory</td> <td style="padding:15px">{base_path}/{version}/nsa-correlation/api/v1/correlation/getAffectingAlarmIds?{query}</td> <td style="padding:15px">Yes</td> </tr> <tr> <td style="padding:15px">getAffectingAlarms(inventoryId, callback)</td> <td style="padding:15px">Get the active alarms affecting an inventory</td> <td style="padding:15px">{base_path}/{version}/nsa-correlation/api/v1/correlation/getAffectingAlarms?{query}</td> <td style="padding:15px">Yes</td> </tr> <tr> <td style="padding:15px">postNsaCorrelationApiV1CorrelationGetAffectingAlarms(body, callback)</td> <td style="padding:15px">Get the active alarms affecting a list of inventory</td> <td style="padding:15px">{base_path}/{version}/nsa-correlation/api/v1/correlation/getAffectingAlarms?{query}</td> <td style="padding:15px">Yes</td> </tr> <tr> <td style="padding:15px">ping(callback)</td> <td style="padding:15px">Check if the inventory correlation service is up</td> <td style="padding:15px">{base_path}/{version}/nsa-correlation/api/v1/correlation/ping?{query}</td> <td style="padding:15px">Yes</td> </tr> <tr> <td style="padding:15px">getCurrentUser(callback)</td> <td style="padding:15px">Retrieve current flattened user info</td> <td style="padding:15px">{base_path}/{version}/rbac-e/api/v1/admin/current-user?{query}</td> <td style="padding:15px">Yes</td> </tr> <tr> <td style="padding:15px">getCurrentSessionData(callback)</td> <td style="padding:15px">Retrieve current account info</td> <td style="padding:15px">{base_path}/{version}/rbac-e/api/v1/admin/current-account?{query}</td> <td style="padding:15px">Yes</td> </tr> <tr> <td style="padding:15px">getCurrentPermissions(callback)</td> <td style="padding:15px">Retrieve current permissions based on account and geored status</td> <td style="padding:15px">{base_path}/{version}/rbac-e/api/v1/admin/current-permissions?{query}</td> <td style="padding:15px">Yes</td> </tr> <tr> <td style="padding:15px">getRbacEApiV1AdminResources(callback)</td> <td style="padding:15px">Retrieves a list of all cached resources, associated with their roles.</td> <td style="padding:15px">{base_path}/{version}/rbac-e/api/v1/admin/resources?{query}</td> <td style="padding:15px">Yes</td> </tr> <tr> <td style="padding:15px">getSessions(callback)</td> <td style="padding:15px">Retrieve all sessions currently in the cache</td> <td style="padding:15px">{base_path}/{version}/rbac-e/api/v1/admin/sessions?{query}</td> <td style="padding:15px">Yes</td> </tr> <tr> <td style="padding:15px">clearUserCache(callback)</td> <td style="padding:15px">Deletes the internal user cache.</td> <td style="padding:15px">{base_path}/{version}/rbac-e/api/v1/admin/usercache?{query}</td> <td style="padding:15px">Yes</td> </tr> <tr> <td style="padding:15px">configureAudit(enable, callback)</td> <td style="padding:15px">Configure the audit feature</td> <td style="padding:15px">{base_path}/{version}/rbac-e/api/v1/audit/configuration?{query}</td> <td style="padding:15px">Yes</td> </tr> <tr> <td style="padding:15px">validateRestResource(body, callback)</td> <td style="padding:15px">Checks resource access permission.</td> <td style="padding:15px">{base_path}/{version}/rbac-e/api/v1/rest/permission?{query}</td> <td style="padding:15px">Yes</td> </tr> <tr> <td style="padding:15px">getFile(areaName, pathParam, commitHash, callback)</td> <td style="padding:15px">Get a specific file specified by a path managed by an area in the Asset Manager</td> <td style="padding:15px">{base_path}/{version}/bpocore/asset-manager/api/v1/areas/{pathv1}/files/{pathv2}?{query}</td> <td style="padding:15px">Yes</td> </tr> <tr> <td style="padding:15px">headGetFile(areaName, pathParam, commitHash, callback)</td> <td style="padding:15px">Get a specific file specified by a path managed by an area in the Asset Manager</td> <td style="padding:15px">{base_path}/{version}/bpocore/asset-manager/api/v1/areas/{pathv1}/files/{pathv2}?{query}</td> <td style="padding:15px">Yes</td> </tr> <tr> <td style="padding:15px">listAreas(callback)</td> <td style="padding:15px">List all of the areas in the Asset Manager</td> <td style="padding:15px">{base_path}/{version}/bpocore/asset-manager/api/v1/areas?{query}</td> <td style="padding:15px">Yes</td> </tr> <tr> <td style="padding:15px">headListAreas(callback)</td> <td style="padding:15px">List all of the areas in the Asset Manager</td> <td style="padding:15px">{base_path}/{version}/bpocore/asset-manager/api/v1/areas?{query}</td> <td style="padding:15px">Yes</td> </tr> <tr> <td style="padding:15px">countAreas(limit, callback)</td> <td style="padding:15px">Count the areas in the Asset Manager</td> <td style="padding:15px">{base_path}/{version}/bpocore/asset-manager/api/v1/areas/count?{query}</td> <td style="padding:15px">Yes</td> </tr> <tr> <td style="padding:15px">headCountAreas(limit, callback)</td> <td style="padding:15px">Count the areas in the Asset Manager</td> <td style="padding:15px">{base_path}/{version}/bpocore/asset-manager/api/v1/areas/count?{query}</td> <td style="padding:15px">Yes</td> </tr> <tr> <td style="padding:15px">listRecentChanges(areaName, callback)</td> <td style="padding:15px">List all of the recent changes to an area in the Asset Manager</td> <td style="padding:15px">{base_path}/{version}/bpocore/asset-manager/api/v1/areas/{pathv1}/changes?{query}</td> <td style="padding:15px">Yes</td> </tr> <tr> <td style="padding:15px">headListRecentChanges(areaName, callback)</td> <td style="padding:15px">List all of the recent changes to an area in the Asset Manager</td> <td style="padding:15px">{base_path}/{version}/bpocore/asset-manager/api/v1/areas/{pathv1}/changes?{query}</td> <td style="padding:15px">Yes</td> </tr> <tr> <td style="padding:15px">getArea(areaName, fields, callback)</td> <td style="padding:15px">Get information for a specific area in the Asset Manager</td> <td style="padding:15px">{base_path}/{version}/bpocore/asset-manager/api/v1/areas/{pathv1}?{query}</td> <td style="padding:15px">Yes</td> </tr> <tr> <td style="padding:15px">headGetArea(areaName, fields, callback)</td> <td style="padding:15px">Get information for a specific area in the Asset Manager</td> <td style="padding:15px">{base_path}/{version}/bpocore/asset-manager/api/v1/areas/{pathv1}?{query}</td> <td style="padding:15px">Yes</td> </tr> <tr> <td style="padding:15px">listPullRequests(areaName, pendingOnly, q, offset, limit, pageToken, callback)</td> <td style="padding:15px">List all of the pull requests for an area</td> <td style="padding:15px">{base_path}/{version}/bpocore/asset-manager/api/v1/areas/{pathv1}/pullrequests?{query}</td> <td style="padding:15px">Yes</td> </tr> <tr> <td style="padding:15px">headListPullRequests(areaName, pendingOnly, q, offset, limit, pageToken, callback)</td> <td style="padding:15px">List all of the pull requests for an area</td> <td style="padding:15px">{base_path}/{version}/bpocore/asset-manager/api/v1/areas/{pathv1}/pullrequests?{query}</td> <td style="padding:15px">Yes</td> </tr> <tr> <td style="padding:15px">createPullRequest(areaName, submission, callback)</td> <td style="padding:15px">Submit a pull request to pull a specified branch into a specified area</td> <td style="padding:15px">{base_path}/{version}/bpocore/asset-manager/api/v1/areas/{pathv1}/pullrequests?{query}</td> <td style="padding:15px">Yes</td> </tr> <tr> <td style="padding:15px">countPullRequests(areaName, pendingOnly, q, limit, callback)</td> <td style="padding:15px">Count of the pull requests for an area</td> <td style="padding:15px">{base_path}/{version}/bpocore/asset-manager/api/v1/areas/{pathv1}/pullrequests/count?{query}</td> <td style="padding:15px">Yes</td> </tr> <tr> <td style="padding:15px">headCountPullRequests(areaName, pendingOnly, q, limit, callback)</td> <td style="padding:15px">Count of the pull requests for an area</td> <td style="padding:15px">{base_path}/{version}/bpocore/asset-manager/api/v1/areas/{pathv1}/pullrequests/count?{query}</td> <td style="padding:15px">Yes</td> </tr> <tr> <td style="padding:15px">getPullRequest(areaName, requestId, callback)</td> <td style="padding:15px">Get a specific pull request for an area based on the request identifier</td> <td style="padding:15px">{base_path}/{version}/bpocore/asset-manager/api/v1/areas/{pathv1}/pullrequests/{pathv2}?{query}</td> <td style="padding:15px">Yes</td> </tr> <tr> <td style="padding:15px">headGetPullRequest(areaName, requestId, callback)</td> <td style="padding:15px">Get a specific pull request for an area based on the request identifier</td> <td style="padding:15px">{base_path}/{version}/bpocore/asset-manager/api/v1/areas/{pathv1}/pullrequests/{pathv2}?{query}</td> <td style="padding:15px">Yes</td> </tr> <tr> <td style="padding:15px">getFileBytes(areaName, pathParam, commitHash, callback)</td> <td style="padding:15px">Get the bytes on disk of a specific file by path managed by an area in the Asset Manager</td> <td style="padding:15px">{base_path}/{version}/bpocore/asset-manager/api/v1/areas/{pathv1}/raw-files/{pathv2}?{query}</td> <td style="padding:15px">Yes</td> </tr> <tr> <td style="padding:15px">headGetFileBytes(areaName, pathParam, commitHash, callback)</td> <td style="padding:15px">Get the bytes on disk of a specific file by path managed by an area in the Asset Manager</td> <td style="padding:15px">{base_path}/{version}/bpocore/asset-manager/api/v1/areas/{pathv1}/raw-files/{pathv2}?{query}</td> <td style="padding:15px">Yes</td> </tr> <tr> <td style="padding:15px">listAreaUpgrades(areaName, pendingOnly, offset, limit, pageToken, callback)</td> <td style="padding:15px">List the upgrade history for an area</td> <td style="padding:15px">{base_path}/{version}/bpocore/asset-manager/api/v1/areas/{pathv1}/upgrades?{query}</td> <td style="padding:15px">Yes</td> </tr> <tr> <td style="padding:15px">headListAreaUpgrades(areaName, pendingOnly, offset, limit, pageToken, callback)</td> <td style="padding:15px">List the upgrade history for an area</td> <td style="padding:15px">{base_path}/{version}/bpocore/asset-manager/api/v1/areas/{pathv1}/upgrades?{query}</td> <td style="padding:15px">Yes</td> </tr> <tr> <td style="padding:15px">createAreaUpgrade(areaName, sourceDir, callback)</td> <td style="padding:15px">Submit a request to upgrade an area to the currently installed release version</td> <td style="padding:15px">{base_path}/{version}/bpocore/asset-manager/api/v1/areas/{pathv1}/upgrades?{query}</td> <td style="padding:15px">Yes</td> </tr> <tr> <td style="padding:15px">countAreaUpgrades(areaName, pendingOnly, q, limit, callback)</td> <td style="padding:15px">Count the upgrade history events for an area</td> <td style="padding:15px">{base_path}/{version}/bpocore/asset-manager/api/v1/areas/{pathv1}/upgrades/count?{query}</td> <td style="padding:15px">Yes</td> </tr> <tr> <td style="padding:15px">headCountAreaUpgrades(areaName, pendingOnly, q, limit, callback)</td> <td style="padding:15px">Count the upgrade history events for an area</td> <td style="padding:15px">{base_path}/{version}/bpocore/asset-manager/api/v1/areas/{pathv1}/upgrades/count?{query}</td> <td style="padding:15px">Yes</td> </tr> <tr> <td style="padding:15px">getAreaUpgrade(areaName, requestId, callback)</td> <td style="padding:15px">Get a specific upgrade request for an area based on the request identifier</td> <td style="padding:15px">{base_path}/{version}/bpocore/asset-manager/api/v1/areas/{pathv1}/upgrades/{pathv2}?{query}</td> <td style="padding:15px">Yes</td> </tr> <tr> <td style="padding:15px">headGetAreaUpgrade(areaName, requestId, callback)</td> <td style="padding:15px">Get a specific upgrade request for an area based on the request identifier</td> <td style="padding:15px">{base_path}/{version}/bpocore/asset-manager/api/v1/areas/{pathv1}/upgrades/{pathv2}?{query}</td> <td style="padding:15px">Yes</td> </tr> <tr> <td style="padding:15px">listFiles(areaName, commitHash, callback)</td> <td style="padding:15px">Get the list of files managed by an area in the AssetManager</td> <td style="padding:15px">{base_path}/{version}/bpocore/asset-manager/api/v1/areas/{pathv1}/files?{query}</td> <td style="padding:15px">Yes</td> </tr> <tr> <td style="padding:15px">headListFiles(areaName, commitHash, callback)</td> <td style="padding:15px">Get the list of files managed by an area in the AssetManager</td> <td style="padding:15px">{base_path}/{version}/bpocore/asset-manager/api/v1/areas/{pathv1}/files?{query}</td> <td style="padding:15px">Yes</td> </tr> <tr> <td style="padding:15px">listKeys(offset, limit, pageToken, callback)</td> <td style="padding:15px">List all of the SSH public keys authorized for git access in the Asset Manager</td> <td style="padding:15px">{base_path}/{version}/bpocore/asset-manager/api/v1/keys?{query}</td> <td style="padding:15px">Yes</td> </tr> <tr> <td style="padding:15px">headListKeys(offset, limit, pageToken, callback)</td> <td style="padding:15px">List all of the SSH public keys authorized for git access in the Asset Manager</td> <td style="padding:15px">{base_path}/{version}/bpocore/asset-manager/api/v1/keys?{query}</td> <td style="padding:15px">Yes</td> </tr> <tr> <td style="padding:15px">createKey(key, callback)</td> <td style="padding:15px">Add an SSH public key to the list of the SSH public keys authorized for git access in the Asset Man</td> <td style="padding:15px">{base_path}/{version}/bpocore/asset-manager/api/v1/keys?{query}</td> <td style="padding:15px">Yes</td> </tr> <tr> <td style="padding:15px">countKeys(limit, callback)</td> <td style="padding:15px">List the SSH public keys authorized for git access in the Asset Manager</td> <td style="padding:15px">{base_path}/{version}/bpocore/asset-manager/api/v1/keys/count?{query}</td> <td style="padding:15px">Yes</td> </tr> <tr> <td style="padding:15px">headCountKeys(limit, callback)</td> <td style="padding:15px">List the SSH public keys authorized for git access in the Asset Manager</td> <td style="padding:15px">{base_path}/{version}/bpocore/asset-manager/api/v1/keys/count?{query}</td> <td style="padding:15px">Yes</td> </tr> <tr> <td style="padding:15px">deleteKey(keyId, callback)</td> <td style="padding:15px">Remove an SSH public key from the list of the SSH public keys authorized for git access in the Asse</td> <td style="padding:15px">{base_path}/{version}/bpocore/asset-manager/api/v1/keys/{pathv1}?{query}</td> <td style="padding:15px">Yes</td> </tr> <tr> <td style="padding:15px">getPing(callback)</td> <td style="padding:15px">Ping the system to see whether the component is ready to handle requests or not</td> <td style="padding:15px">{base_path}/{version}/bpocore/asset-manager/api/v1/ping?{query}</td> <td style="padding:15px">Yes</td> </tr> <tr> <td style="padding:15px">headGetPing(callback)</td> <td style="padding:15px">Ping the system to see whether the component is ready to handle requests or not</td> <td style="padding:15px">{base_path}/{version}/bpocore/asset-manager/api/v1/ping?{query}</td> <td style="padding:15px">Yes</td> </tr> <tr> <td style="padding:15px">getBpocorePoliciesApiV1Ping(callback)</td> <td style="padding:15px">Ping the system to see whether the component is ready to handle requests or not</td> <td style="padding:15px">{base_path}/{version}/bpocore/policies/api/v1/ping?{query}</td> <td style="padding:15px">Yes</td> </tr> <tr> <td style="padding:15px">headBpocorePoliciesApiV1Ping(callback)</td> <td style="padding:15px">Ping the system to see whether the component is ready to handle requests or not</td> <td style="padding:15px">{base_path}/{version}/bpocore/policies/api/v1/ping?{query}</td> <td style="padding:15px">Yes</td> </tr> <tr> <td style="padding:15px">getLekhaApiV1(from, to, lastDays, callback)</td> <td style="padding:15px">Exports audit logs based on query params.</td> <td style="padding:15px">{base_path}/{version}/lekha/api/v1/?{query}</td> <td style="padding:15px">Yes</td> </tr> <tr> <td style="padding:15px">deleteLekhaApiV1(from, to, lastDays, callback)</td> <td style="padding:15px">Delete locally stored audit logs based on query params.</td> <td style="padding:15px">{base_path}/{version}/lekha/api/v1/?{query}</td> <td style="padding:15px">Yes</td> </tr> <tr> <td style="padding:15px">getAuditProfiles(name, testType, typeGroups, auditType, include, callback)</td> <td style="padding:15px">Retrieves a list of auditProfiles provided with the satisfying parameters</td> <td style="padding:15px">{base_path}/{version}/audit/api/v1/auditProfiles?{query}</td> <td style="padding:15px">Yes</td> </tr> <tr> <td style="padding:15px">getAuditProfileById(auditProfileId, include, callback)</td> <td style="padding:15px">Retrieves a specific auditProfiles</td> <td style="padding:15px">{base_path}/{version}/audit/api/v1/auditProfiles/{pathv1}?{query}</td> <td style="padding:15px">Yes</td> </tr> <tr> <td style="padding:15px">postAuditTarget(body, callback)</td> <td style="padding:15px">Creates an auditTarget</td> <td style="padding:15px">{base_path}/{version}/audit/api/v1/auditTargets?{query}</td> <td style="padding:15px">Yes</td> </tr> <tr> <td style="padding:15px">getAuditTargetById(auditTargetId, callback)</td> <td style="padding:15px">Retrieves a specific auditTarget</td> <td style="padding:15px">{base_path}/{version}/audit/api/v1/auditTargets/{pathv1}?{query}</td> <td style="padding:15px">Yes</td> </tr> <tr> <td style="padding:15px">getAudits(auditType, testType, auditName, auditProfileNames, auditRunAuditStateState, include, callback)</td> <td style="padding:15px">Retrieves a list of audits provided with the satisfying parameters</td> <td style="padding:15px">{base_path}/{version}/audit/api/v1/audits?{query}</td> <td style="padding:15px">Yes</td> </tr> <tr> <td style="padding:15px">postAudit(body, callback)</td> <td style="padding:15px">Creates an audit</td> <td style="padding:15px">{base_path}/{version}/audit/api/v1/audits?{query}</td> <td style="padding:15px">Yes</td> </tr> <tr> <td style="padding:15px">getAuditById(auditId, include, callback)</td> <td style="padding:15px">Retrieves a specific audit</td> <td style="padding:15px">{base_path}/{version}/audit/api/v1/audits/{pathv1}?{query}</td> <td style="padding:15px">Yes</td> </tr> <tr> <td style="padding:15px">deleteAudit(auditId, callback)</td> <td style="padding:15px">Deletes a specific audit</td> <td style="padding:15px">{base_path}/{version}/audit/api/v1/audits/{pathv1}?{query}</td> <td style="padding:15px">Yes</td> </tr> <tr> <td style="padding:15px">postAuditRun(auditId, callback)</td> <td style="padding:15px">Creates an audit Run</td> <td style="padding:15px">{base_path}/{version}/audit/api/v1/audits/{pathv1}/auditRuns?{query}</td> <td style="padding:15px">Yes</td> </tr> <tr> <td style="padding:15px">deleteAuditRun(auditId, auditRunId, callback)</td> <td style="padding:15px">Deletes a specific auditRun</td> <td style="padding:15px">{base_path}/{version}/audit/api/v1/audits/{pathv1}/auditRuns/{pathv2}?{query}</td> <td style="padding:15px">Yes</td> </tr> <tr> <td style="padding:15px">patchAuditRun(auditId, auditRunId, body, callback)</td> <td style="padding:15px">Patches an audit Run</td> <td style="padding:15px">{base_path}/{version}/audit/api/v1/audits/{pathv1}/auditRuns/{pathv2}?{query}</td> <td style="padding:15px">Yes</td> </tr> <tr> <td style="padding:15px">getAuditFindings(auditId, auditRunId, profileName, testType, fixStateState, include, limit, callback)</td> <td style="padding:15px">Retrieves List of Audit Finding for a specific auditRun</td> <td style="padding:15px">{base_path}/{version}/audit/api/v1/audits/{pathv1}/auditRuns/{pathv2}/auditFindings?{query}</td> <td style="padding:15px">Yes</td> </tr> <tr> <td style="padding:15px">fixAuditFindings(auditId, auditRunId, body, callback)</td> <td style="padding:15px">Patches an audit findings with a fixState under the given auditRun</td> <td style="padding:15px">{base_path}/{version}/audit/api/v1/audits/{pathv1}/auditRuns/{pathv2}/auditFindings?{query}</td> <td style="padding:15px">Yes</td> </tr> <tr> <td style="padding:15px">getAuditFindingById(auditId, auditRunId, auditFindingId, include, callback)</td> <td style="padding:15px">Retrieves auditFinding for a specific audit and a specific auditRun</td> <td style="padding:15px">{base_path}/{version}/audit/api/v1/audits/{pathv1}/auditRuns/{pathv2}/auditFindings/{pathv3}?{query}</td> <td style="padding:15px">Yes</td> </tr> <tr> <td style="padding:15px">getTestTypes(auditType, callback)</td> <td style="padding:15px">Return list of testTypes</td> <td style="padding:15px">{base_path}/{version}/audit/api/v1/testTypes?{query}</td> <td style="padding:15px">Yes</td> </tr> <tr> <td style="padding:15px">getTestTypeById(testTypeId, callback)</td> <td style="padding:15px">Retrieves a list of testType provided with the satisfying parameters</td> <td style="padding:15px">{base_path}/{version}/audit/api/v1/testTypes/{pathv1}?{query}</td> <td style="padding:15px">Yes</td> </tr> <tr> <td style="padding:15px">listBackupJobs(callback)</td> <td style="padding:15px">List details of all backup processes</td> <td style="padding:15px">{base_path}/{version}/backupservice/api/v1/backup?{query}</td> <td style="padding:15px">Yes</td> </tr> <tr> <td style=