Commit Graph

116 Commits

Author SHA1 Message Date
Tony Murray
3a98aa2ec6 API Oxidized source optimization (#15560)
* API Oxidized source optimization
Don't fetch the device twice from the database.

* qualify device_id
2023-11-07 15:44:47 -06:00
VTS
47c6842b01 API: get poller group (#15493)
* API: get poller group

* missed string in doc

* return all poller groups if name/id aren't specified

* add missing doc link

* style fixes

* more style

---------

Co-authored-by: Tony Murray <murraytony@gmail.com>
2023-11-01 22:33:35 -05:00
Tony Murray
91b829edd3 Fix API get_location by ID (#15506) 2023-10-25 13:05:04 -05:00
Tony Murray
0e453e5938 API: allow add device to set location (#15469) 2023-10-18 02:00:39 -05:00
Tony Murray
d8c372bbf4 Refactor MAC utilities into a single class (#15379)
* Refactor MAC utils to a new utility class

* Apply fixes from StyleCI

* Inline functions
Add tests
Handle bridgeid format

* Apply fixes from StyleCI

* Dedicated code path for stp bridge parsing, and improve STP output a bit

* Correctly parse dot1dBaseBridgeAddress and don't store int in bool field

* trim any unexpected character from bridge addresses, add extra test data.

* better comment

* barsBridge can handle dot1dBaseBridgeAddress correctly now

* parseBridge, check for properly formatted mac first.

* update test data, empty data = empty mac

* Fix new usage after rebase

* import

---------

Co-authored-by: StyleCI Bot <bot@styleci.io>
2023-10-06 07:34:14 -05:00
Tony Murray
52e264a417 Allow port search API to search ifAlias again (#15320)
Was accidentally omitted when fixing a security issue with the API.
fixes #15316
2023-09-14 08:45:20 -05:00
Wheel
a6ccb596df Custom ssh,telnet port with oxidized (#15255)
* Custom ssh,telnet,http port with oxidized

* Lint fixes

* copy paste minors
2023-09-03 20:15:51 -05:00
Tony Murray
d7ae34d390 Fix API availability graph duration (#15250)
Add default duration
2023-08-24 14:40:33 -05:00
VTS
7381c2046c API get_location (#14779)
* api endpoint to get specific location

* missing nl

* fix missed styleci error

* make requested change
2023-08-03 19:35:20 -05:00
richard-ririe
4c8e5fc783 Add API endpoint to get service graphs (#15138)
* Add API endpoint to get service graphs

* Docs: Add missing title to get_graph_by_service
2023-07-19 22:19:43 -05:00
hirose003
7cdb81b2e9 change display query to pattern match (#15147) 2023-07-19 22:17:28 -05:00
tarik
3ad19607d0 adding human readable version of /api/v0/fdb/{mac}/detail (#15045)
* adding human readable version of /api/v0/fdb/{mac}/detail

* adding last seen field in human readable format

* fixing styling issue

* fixing another styling issue

* removing stale variable

* adding a limit to number of results returned in order to limit memory issues

* adding the documentation for fdb_detail api

* Wording fix

* wording fix again. smh

---------

Co-authored-by: Justin Lentz <monkeybrains7@gmail.com>
2023-07-07 23:24:50 -05:00
Tony Murray
e1b6fd0165 Fix more refactor errors (#14998) 2023-04-23 20:33:50 -05:00
Tony Murray
3fe3db747c Refactor billing (#14979)
* Refactor common billing code into a namespace
Prevents issues of usages where the code hasn't been loaded.

* remove redundant Billing in method names

* remove accidental duplication

* more use statements

* Style fixes
2023-04-21 19:52:47 -05:00
Stef
82bd437e47 Syslog sink over http for logstash (or any json source) (#14424)
* inital commit of a new syslog sink over http

* cosmetics

* cosmetics fix...

* cosmetic fix again

* cosmetics fix again

* its nice now...

* add non blocking option

* Syslog Sink integrated as API PUT method

* lint fix

* Update includes/html/api_functions.inc.php

Co-authored-by: Tony Murray <murraytony@gmail.com>

* Update includes/html/api_functions.inc.php

Co-authored-by: Tony Murray <murraytony@gmail.com>

* Update includes/html/api_functions.inc.php

Co-authored-by: Tony Murray <murraytony@gmail.com>

* change to POST, fix decoding issue and json exception

* logstash/json documentation added. syslog documentation a bit re-structured

* lint fix

---------

Co-authored-by: Tony Murray <murraytony@gmail.com>
2023-03-15 08:14:38 -05:00
Andy Norwood
3023aa7e0f API: add display query to list_devices function (#14747)
* add display query type

* add display to query examples

* fix typo
2023-02-08 18:36:20 +02:00
electrocret
1e5e26492e Use Oxidized API client and add support for groups on config get (#14750)
* Use API client and add support for groups.

* Being Stylish.

* Update incorrect doc
2023-02-01 11:49:29 -06:00
Andy Norwood
d091788f28 API list_devices update with sysName, location_id and type (#14731)
* Add sysName, location_id, type to list_devices

* Add new list_devices type
2022-12-15 08:25:11 -06:00
Tony Murray
752bbc1531 Port search API search more than one fields (#14646)
* Fix port search columns

* Port search API search more than one fields
Fixup port APIs
Change validate_column_list api helper to throw a renderable exception on error and return the valid columns
DeviceCache::get() can handle a bigger range of input

* whitespace

* Refactor exceptions a bit

* change throws type to be more generic

* Lint fixes
2022-11-18 16:27:56 -06:00
electrocret
4c0ebb6f74 Add Columns to search_ports API function (#14348)
* Add Columns to search_ports function

* StyleCI

* StyleCI

* Add to Docs

* Suggested If fix
2022-11-17 10:18:09 -06:00
geg347
96c7e7166e Adding device's field in get_alert_rule and list-alert-rules API function (new) (#14481)
* Adding device's field in get_alert_rule and lis-alert-rules API function

* Converting SQL request for list/get_alert_rules to Eloquent (thanks a lot to Murrant)

* Manually added #14500 to pass pipeline

* Fixing StyleCI error + trying to fix PHPStan errors

* Trying to fix PHPStan errors (part 2)
2022-11-09 08:21:41 -06:00
Talk Straight Ltd
9826fa9089 feat: Add sortorder parameter to list_logs (#14600) 2022-11-08 18:20:34 +01:00
Tony Murray
511e345321 API graphs, variable whitelist (#14552)
* API graphs, variable whitelist
Restore several missing parameters that relied on graphing code fetching from $_GET directly.
Whitelist valid parameters to set on the request get
Move common parameter handling into common code

* Fix style

* Include previous
2022-11-03 01:08:52 -05:00
Tony Murray
4b65dc41d2 Graphing cleanup (#14492)
* WIP

* Fixes and cleanups

* Move parseAtTime to Time util class

* lint fixes, explicitly define variables

* Style fixes
2022-10-28 08:06:29 -05:00
Jellyfrog
b90fbcb9bf Undefined array key fixes (#14532)
* Undefined array key fixes

* Update check-services.php
2022-10-27 21:02:27 +02:00
rhinoau
6372041d39 Fix update_device hostname handling #14435 (#14448)
* Fix device_update hostname handling #14435

* Use Eloquent

* Update Device.php

Co-authored-by: Tony Murray <murraytony@gmail.com>
2022-10-22 15:45:47 -05:00
Tony Murray
aefd14d3aa Graph API use new code path (#14493)
* Graph API use new code path
Improves error handling significantly

* Actually base64 encode it
2022-10-22 14:58:51 -05:00
Tony Murray
e4451714e2 version and git helper improvements (#14412)
* Fix up version and git helpers
Improve method names
Move all git calls into the git helper
Allow runtime and external cache of results where appropriate
Consolidate version headers for discovery, poller, and validate

* Style fixes

* improve consistency in git calls

* fix style

* don't send name inconsistently

* Improve database versions

* No need to cache Version it is not used more than once currently.
2022-10-02 00:41:56 -05:00
bp0
384e0449c1 API: allow delete location by id (#14334)
* API: allow delete location by id

Otherwise impossible to delete location "".

* docs/API: location can be name or id for edit and delete
2022-09-13 09:03:55 -05:00
bp0
94830fe47e API update_device, make location field work (as does location_id) (#14325)
* update_device, add location to list of bad_fields

The field 'location' can't be changed using API update_device_field, even when used with 'override_sysLocation'. It should not return success, with the "Device fields have been updated" message that is untrue.

* Actually make it work

Co-authored-by: Tony Murray <murraytony@gmail.com>
2022-09-09 11:40:55 -05:00
electrocret
e458f95bd8 Billing module fix/cleanup (#14309)
* Delete autoadd definitions

Never actually used. Inherited from Observium.

* Allow Billing API to set dir_95th (for agg bills)

Currently we're unable to set dir_95th via API to configure Aggregate bills. This should fix that.
2022-09-06 11:49:15 -05:00
Tony Murray
8f5582f85a Fix more percent calculations (#14294) 2022-09-05 09:22:42 +02:00
Tony Murray
34163703fb Percentage calculation helper (#14235)
* Percentage calculation helper
Helper function to prevent divide by zero mistakes
Replace all percent calculations

* style
2022-08-24 21:01:54 +02:00
rhinoau
d248e6561f Standardize device and device group maintenance API (#14153)
* Standardise device and devicegroup maintenance API

* styleci fixes
2022-07-28 11:38:46 -05:00
Tony Murray
30cb0a5fb3 Fix maintenance APIs not associating device or group (#14127) 2022-07-21 07:07:44 -05:00
Chris A. Evans
5a085f79e5 Feature: Add support to REST API for creating Maintenance Schedules for Device Groups (#13985)
* Add support to REST API for creating Maintenance Schedules for Device Groups

* Update documentation to include the maintenance_devicegroup API endpoint

* Fix quotes

* Fix whitespace

Co-authored-by: Tony Murray <murraytony@gmail.com>
2022-05-27 10:38:47 -05:00
sajiby3k
a7147a17e1 Submitting change to oxidized group api to include device purpose or device notes (#13976) 2022-05-14 12:13:44 -05:00
Claude Brown
958556dc18 Ensure 'add_device' API returns indexed-array (as per documented behaviour) (#13887) 2022-04-03 14:03:03 +01:00
Tony Murray
8df92a5f2b API: device_add support display field (#13846)
* API: device_add support display field
remove legacy code path
update docs
A few improvements to the new code too

* some fixes, port_association_mode was not available

* hand version -> snmpver translation
2022-03-15 06:54:02 -05:00
Josh Silvas
a9e111f3eb Adds API call to update port notes on devices. (#13834)
* Adds API call to update port notes on devices.

* Lint fixes.

* Fixes file permissions to proper values.
2022-03-10 22:29:08 +01:00
Andrea Beccaris
0fc2f9e4c9 Add API-routes for listing MPLS SAPs and services (#13561)
* add apis for mpsl services and saps

* updated docs

* removed dbFetch, orm instead

* changed queries

* Removed unused variables

* Update api_functions.inc.php

* Update api_functions.inc.php

* Update api_functions.inc.php

* Update api_functions.inc.php

Co-authored-by: laf <gh+n@laf.io>
2022-01-20 08:15:23 -06:00
Tony Murray
4b64d33d13 API detect if new location should be fixed by default (#13637) 2021-12-27 17:32:50 -06:00
VTS
1ac60e3b1d set fixed_coordinates via api (#13593)
* set fixed_coordinates via api

* update api doc

* fix style problem

* Update Locations.md

* Update api_functions.inc.php

* Update api_functions.inc.php

Co-authored-by: Tony Murray <murraytony@gmail.com>
2021-12-23 15:32:02 -06:00
Claude Brown
6bf97c6ac9 API 'list_parents_of_host' - mostly doco, but one small code enhancement (#13567)
* Allow 'list_devices' to query by exact device-id

* Remove 'http://' prefix from --dev-addr in doco for 'mkdocs serve'

* Document 'list_parents_of_host' API call by reference to 'list_devices' call

* Remove possibility of SQL injection attacks

* Remove possibility of SQL injection attacks
2021-11-25 22:38:50 +01:00
Nathan Manzi
fb7d89c4c3 Add get_ports_by_group API function (#13361)
* implement api route get_ports_by_group

* Update API docs for new get_ports_by_group

* Fix misspelling of function names and routes
2021-10-18 20:47:37 -05:00
DanielMuller-TN
16584d8090 Added conditional check for rules parameter on add_device_group API function (#13353) 2021-10-11 21:08:16 -05:00
SourceDoctor
708d1ebb87 API Call to set instant Maintenance mode (#13237)
* API Call to set instance Maintenance mode

* .

* remove unused code

* update query

* Use recent code

* remove accidental line return

* fix duration in success string

* style fix

* Try to fix bad code merge

Co-authored-by: Tony Murray <murraytony@gmail.com>
2021-09-28 21:54:52 +02:00
SourceDoctor
11dfbc02b7 API Call to assign/remove a Portgroup to Ports (#13245)
* API Call to assign/remove a Portgroup to Ports

* .

* .
2021-09-21 08:41:01 -05:00
SourceDoctor
0d499b538b API port search by arbitrary field (#13231)
* DB Field specific Port Search

* .

* seperate function for API Call

* second parameter now optional

* code adjustments

* Update api_functions.inc.php

Co-authored-by: Tony Murray <murraytony@gmail.com>
2021-09-19 19:28:42 -05:00
SourceDoctor
a8ca79152c API add_device: respond with more device information (#13251)
* Advanced Response Information API add_device

* .
2021-09-19 18:47:50 -05:00