Introduction
The Attributes endpoint allows you to add customized values to different attributes in Open-AudIT, at the moment this feature works on the Class, Environment, Status and Type attributes on Devices only.
How Does it Work?
Creating an Attribute Entry
A user entry can be created using the web interface if the current user logged in has a role that contains the user::create permission. Go to menu: Manage -> Users -> Create Users. Also can be created from the Users View, using the "Create" button.
To add a new value for an attributes you need to select an organization, select the type of attribute, provide a name and the value.
You have to select one of the types from the drop down menu (device_class, device_environment, device_status, device_type).
View Attributes Details
Go to menu: Manage-> Attributes -> List Attributes.
Database Schema
The schema for the database is below. It can also be found in the application is the user has attributes::read permission by going to menu: Manage -> Database -> List Database, then clicking on the "attributes" table.
Create Table: CREATE TABLE `attributes` ( `id` int(10) unsigned NOT NULL AUTO_INCREMENT, `org_id` int(10) unsigned NOT NULL DEFAULT '1', `resource` varchar(200) NOT NULL DEFAULT '', `type` varchar(200) NOT NULL DEFAULT '', `name` varchar(200) NOT NULL DEFAULT '', `value` varchar(200) NOT NULL DEFAULT '', `edited_by` varchar(200) NOT NULL DEFAULT '', `edited_date` datetime NOT NULL DEFAULT '2000-01-01 00:00:00', PRIMARY KEY (`id`) ) ENGINE=InnoDB AUTO_INCREMENT=103 DEFAULT CHARSET=utf8
A typical entry looks as below.
id: 102 org_id: 1 resource: devices type: device_type name: Wireless Router value: wireless router edited_by: system edited_date: 2000-01-01 00:00:00
API / Web Access
You can access the /attibute collection using the normal Open-AudIT JSON based API. Just like any other collection. Please see the API documentation for further details.
Access is provided as part of a roles permissions. Summaries is a standard resource and can have create, read, update and delete permissions.
The API routes below are usable from both a JSON Restful API and the web interface. The Web application routes are specifically designed to be called from the web interface (a browser).
API Routes
Request Method | ID | Action | Resulting Function | Permission Required | URL Example | Notes | Example Response |
---|---|---|---|---|---|---|---|
POST | n | create | summaries::create | /summaries | Insert a new summaries entry. | ||
GET | y | read | summaries::read | /summaries/{id} | Returns a summaries details. | ||
PATCH | y | update | summaries::update | /summaries/{id} | Update an attribute of a summaries entry. | ||
DELETE | y | delete | summaries::delete | /summaries/{id} | Delete a summaries entry. | ||
GET | n | collection | summaries::read | /summaries | Returns a list of summaries. | ||
POST | n | import | import | summaries::create | /summaries/import | Import multiple connections using a CSV. | |
GET | y | execute | execute | summaries::read | /summaries/2/execute | Execute (run) a summary and show the result. |
Web Application Routes
Request Method | ID | Action | Resulting Function | Permission Required | URL Example | Notes |
---|---|---|---|---|---|---|
GET | n | create | create_form | summaries::create | /summaries/create | Displays a standard web form for submission to POST /summaries. |
GET | y | update | update_form | summaries::update | /summaries/{id}/update | Show the summaries details with the option to update attributes using PATCH to /summaries/{id} |
GET | n | import | import_form | summaries::create | /summaries/import | Displays a standard web form for submission to POST /summaries/import. |