Table of Contents |
---|
Introduction
Discoveries are preprepared data items that enable you to run a discovery upon a network in a single click, without entering the details of that network each and every time.
How Does it Work?
Excerpt |
---|
Creating a DiscoveryA discovery can be created using the web interface if a user has a role that contains the discoveries::create permission. Go to menu: Discover -> Discoveries -> Create Discoveries. There is also a "+" button on the collection page. |
View Discovery Details
Go to menu: Discover -> Discoveries -> List Discoveries.
You will see a list of attributes. You can view an attribute by clicking on the blue view button. You can also edit or delete Discovery.
Insert excerpt | ||||||
---|---|---|---|---|---|---|
|
Database Schema
The schema for the database is below. It can also be found in the application is the user has database::read permission by going to menu: Admin -> Database -> List Tables, then clicking on the "discoveries" table.
Code Block | ||||
---|---|---|---|---|
| ||||
CREATE TABLE `discoveries` ( `id` int(10) unsigned NOT NULL AUTO_INCREMENT, `name` varchar(100) NOT NULL DEFAULT '', `org_id` int(10) unsigned NOT NULL DEFAULT '1', `description` varchar(100) NOT NULL DEFAULT '', `type` varchar(100) NOT NULL DEFAULT '', `devices_assigned_to_org` int(10) unsigned DEFAULT NULL, `devices_assigned_to_location` int(10) unsigned DEFAULT NULL, `network_address` varchar(100) NOT NULL DEFAULT '', `system_id` int(10) unsigned NOT NULL DEFAULT '0', `other` text NOT NULL, `device_count` int(10) unsigned NOT NULL DEFAULT '0', `discard` enum('y','n') NOT NULL DEFAULT 'n', `created_by` varchar(200) NOT NULL DEFAULT '', `created_on` datetime NOT NULL DEFAULT '2000-01-01 00:00:00', `last_run` datetime NOT NULL DEFAULT '2000-01-01 00:00:00', `complete` enum('y','n') NOT NULL DEFAULT 'n', PRIMARY KEY (`id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8; |
Example Database Entry
Discoveries are stored in the database in the "discoveries" table. A typical entry will look as below.
Code Block | ||||
---|---|---|---|---|
| ||||
id: 1 name: My Home Network org_id: 1 description: 192.168.1.0/24 type: subnet devices_assigned_to_org: NULL devices_assigned_to_location: NULL network_address: http://192.168.1.20/open-audit/ system_id: 0 other: {"subnet":"192.168.1.0\/24"} device_count: 0 discard: n created_by: Administrator created_on: 2016-12-05 14:31:24 last_run: 2000-01-01 00:00:00 complete: y |
API / Web Access
You can access the /discoveries collection using the normal Open-AudIT JSON based API. Just like any other collection. Please see the API documentation for further details.
API Routes
Request Method | ID | Action | Resulting Function | Permission Required | URL Example | Notes | Example Response |
---|---|---|---|---|---|---|---|
POST | n | create | discoveries::create | /discoveries | Insert a new discoveries entry. | discoveries_create.json | |
GET | y | read | discoveries::read | /discoveries/{id} | Returns a discovery's details. | discoveries_create.json | |
PATCH | y | update | discoveries::update | /discoveries/{id} | Update an attribute of a discoveries entry. | discoveries_update.json | |
DELETE | y | delete | discoveries::delete | /discoveries/{id} | Delete a discoveries entry. | discoveries_delete.json | |
GET | n | collection | discoveries::read | /discoveries | Returns a list of discoveries. | discoveries_collection.json | |
GET | y | execute | discoveries::read | /discoveries/{id}/execute | Execute (run) a discovery. | discoveries_execute.json |
Web Application Routes
Request Method | ID | Action | Resulting Function | Permission Required | URL Example | Notes |
---|---|---|---|---|---|---|
GET | n | create | create_form | discoveries::create | /discoveries/create | Displays a standard web form for submission to POST /discoveries. |
GET | y | update | update_form | discoveries::update | /discoveries/{id}/update | Show the discovery's details with the option to update attributes using PATCH to /discoveries/{id} |
GET | n | import | import_form | discoveries::create | /discoveries/import | Displays a standard web form for submission to POST /discoveries/import. |
POST | n | import | import | discoveries::create | /discoveries/import | Import multiple discoveries using a CSV. |