Introduction

As at 1.12.8 we have introduced the Connections endpoint.

Creating a Connection

A connection can be created using the web interface if a user has a role that contains the connection::create permission. Go to menu -> Resources -> Connections -> Create. There is also a create button on the collection page.

View Connection Details

Go to menu -> Admin -> Connections -> List Connections.

You will see a list of connections. You can view a connection by clicking on the it's ID (in green). You can also edit or delete the connection.

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, then clicking on the groups table.

CREATE TABLE `connections` (
  `id` int(10) unsigned NOT NULL AUTO_INCREMENT,
  `org_id` int(10) unsigned NOT NULL DEFAULT '1',
  `name` varchar(100) NOT NULL,
  `provider` varchar(100) NOT NULL,
  `service_type` varchar(100) NOT NULL,
  `product_name` varchar(100) NOT NULL,
  `service_identifier` varchar(100) NOT NULL,
  `speed` float(7,3) NOT NULL DEFAULT '0.000',
  `location_id_a` int(10) unsigned NOT NULL DEFAULT '1',
  `location_id_b` int(10) unsigned NOT NULL DEFAULT '1',
  `system_id_a` int(10) unsigned DEFAULT NULL,
  `system_id_b` int(10) unsigned DEFAULT NULL,
  `line_number_a` varchar(100) NOT NULL,
  `line_number_b` varchar(100) NOT NULL,
  `ip_address_external_a` varchar(30) NOT NULL,
  `ip_address_external_b` varchar(30) NOT NULL,
  `ip_address_internal_a` varchar(30) NOT NULL,
  `ip_address_internal_b` varchar(30) NOT NULL,
  `edited_by` varchar(200) NOT NULL DEFAULT '',
  `edited_date` datetime NOT NULL DEFAULT '2000-01-01 00:00:00',
  PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;

Example Database Entry

Connections are stored in the database in the "connections" table. A typical entry will look as below. 

                   id: 5
               org_id: 0
                 name: Marks Home Connection
             provider: Telstra 23
         service_type: Cable
         product_name: Bigpond Cable Ultimate
   service_identifier: 
                speed: 100.000
        location_id_a: 2
        location_id_b: 2
          system_id_a: 0
          system_id_b: 0
        line_number_a: 
        line_number_b: 
ip_address_external_a: 
ip_address_external_b: 
ip_address_internal_a: 
ip_address_internal_b: 


API / Web Access

You can access the /connections 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
POSTn createconnections::create/connectionsInsert a new connections entry.connections_create.json
GETy readconnections::read/connections/{id}Returns a connection's details.connections_read.json
PATCHy updateconnections::update/connections/{id}Update an attribute of a connections entry.connections_patch.json
DELETEy deleteconnections::delete/connections/{id}Delete a connections entry.connections_delete.json
GETn collectionconnections::read/connectionsReturns a list of connections.connections_collection.json

Web Application Routes

Request Method
ID
Action
Resulting Function
Permission Required
URL Example
Notes
GETncreatecreate_formconnections::create/connections/createDisplays a standard web form for submission to POST /connections.
GETyupdateupdate_formconnections::update/connections/{id}/updateShow the connection's details with the option to update attributes using PATCH to /connections/{id}
GETnimportimport_formconnections::create/connections/importDisplays a standard web form for submission to POST /connections/import.
POSTnimportimportconnections::create/connections/importImport multiple connections using a CSV.