/sessions

The sessions endpoint is used to authenticate the user and create a session token for accessing all other Lighthouse endpoints.

post

Create a new authenticated session.

get

Retrieve the state of an authentication session by ID. A session ID may be valid for some period after the user logs out.

put

Apply a challenge response to a session

delete

Log out of and delete a session

/nodes

Creating/registering and viewing the state of console server nodes.

get

Gets nodes attached to this lighthouse instance.

Any number of search query parameters can be provided to perform an ANDed search on the nodes. The parameters possible should be retrieved with GET /nodes/fields. The list provided is dynamic.

The standard ember-data pagination fields {per_page} and {page} apply to this list.

{per_page} and {page} are optional but both are to be supplied if pages are requested.

A node response will also contain a list of tags, which represents the user-editable attributes assigned to this node.

{interfaces}, {ports}, {tags}, {etags}, and {config_push} data can be excluded from the response to improve response time if the data is not required. You can do this be specifying {interfaces}=false, etc. in the query parameters.

post

Enqueue a new node for enrollment. This can either be a direct (Lighthouse-driven) enrollment, or a enrollment request by a new node ("call-home"). The "call-home" parameter in the enrollment request body dictates what style it should be. If true, the request is not authenticated with a sesstion token (ie. from the web UI), but an enrollment request token. The caller should also pass a hostname to be used for the node name, and can optionally pass a bundle identifier to request enrollment against a specific bundle. If the enrollment is not "call-home", but directly driven from the Lighthouse, the request should be in an authenticted session, and provide the node details (name, address, username, password and auto-approve). The address must be a valid IPv4 address.

get

Retrieve a list of node smart groups

post

Create a new node smart group

get

Retrieve the details for a smart group.

delete

Delete a smart group.

put

Updates the details for a smart group.

get

Current member nodes of the resolved smart group

get

Download the system manifest file

get

Find a node by unique ID

put

Update a node

delete

Delete (unenroll) a node.

get

Retrieve the enrollment package for a node, secured by the package password generated by lighthouse.

Each node can have a list of tags associated with it. These tags are references to a global list of tags, allowing for the grouping of nodes. For example one can group nodes into geographical location by assigning multiple nodes with a tag (tag="Location", value="New York").

get

Get the list of all tags associated with this node.

post

Create and associate a new tag with the node.

get

Get a tag's information by ID.

delete

Delete a tag value from the node.

put

Update tag information for {node_tag_id} in node {id}

If configured each node can display runtime cell health details this includes the result of the last connectivity test run There may be some delay between the connectivity test and the other results due to the time that a connectivity test can take, up to 5 minutes.

get

Get the current cell health runtime details

get

Obtain a list of node ids, for example /nodes/ids?config:name=test.

Any number of search query parameters can be provided to perform an ANDed search on the nodes. The parameters possible should be retrieved with GET /nodes/fields. The list provided is dynamic.

The standard ember-data pagination fields {per_page} and {page} apply to this list.

{per_page} and {page} are optional but both are to be supplied if pages are requested.

get

Obtain a list of fields which can be used to perform queries against nodes.

get

Retrieve a list of all ports belonging to a node.

/ports

Used for working with port information.

get

Gets ports attached to this lighthouse instance.

Any number of search query parameters can be provided to perform an ANDed search on the ports.

The standard ember-data pagination fields {per_page} and {page} apply to this list.

{per_page} and {page} are optional but both are to be supplied if pages are requested.

get

Retrieve a single port by ID.

get

Retrieve a list of smart groups for port objects

post

Create a new smart group for port objects

get

Retrieve a port smart group by ID

put

Update a port smart group by ID

delete

Delete a port smart group by ID

/managed_devices

Retrieving information on managed devices grouped by nodes

get

Retrieve a list of managed devices grouped by nodes Any number of search query parameters can be provided to perform an ANDed search on the ports and nodes. This search must be performed with field names in the context of a port search. The standard ember-data pagination fields {per_page} and {page} apply to this list. {per_page} and {page} are optional but both are to be supplied if pages are requested.

Used to perform searches on nodes and ports on the system.

Creating a search ID for nodes from the given query parameters.

get

Gets a search ID for searching nodes attached to this lighthouse instance. Any number of search query parameters can be provided to perform an ANDed search on the nodes. The parameters possible should be retrieved with GET /nodes/fields. The list provided is dynamic.

Creating a search ID for ports from the given query parameters.

get

Gets a search ID for searching ports attached to this lighthouse instance. Any number of search query parameters can be provided to perform an ANDed search on the ports. The list provided is dynamic.

Creating a search ID for managed devices from the given query parameters.

get

Gets a search ID for searching managed devices attached to this lighthouse instance. Any number of search query parameters can be provided to perform an ANDed search on the managed devices. The list provided is dynamic. This search must be performed with field names in the context of a port search.

/services

Used for working with the properties of the various services running on the system.

Provides access to the SSL certificate used by web services on the device.

get

Fetch HTTPS certificate details, or a CSR file if the zip flag is set.

put

Update HTTPS details. A certificate matching the CSR can be uploaded by setting the https.cert field, a CSR can be cancelled by sending through no https.csr body, and a new csr can be created by sending through a https.csr body with a csr value of "new".

Used for Configuring Cellular Health Report.

get

Fetch Cellular Health Report configuration.

put

Updates the cellular health report

Provides access to the NTP client configuration on the system.

get

Fetch NTP client configuration.

put

Update NTP client configuration, including enabling/disabling the NTP service.

get

Requests config parameters related to the Console Gateway service.

put

Update config parameters related to the Console Gateway service.

Retrieve and configure the lhvpn settings.

get

Get the LHVPN configuration.

put

Update the LHVPN configuration.

Retrieve and configure the SNMP daemon settings.

get

Get the snmp configuration.

put

Update the snmp configuration.

Provides access to the remote syslog server configuration.

get

Fetch remote syslog server configuration list.

post

Create a new syslog server data in the configuration.

get

Returns the syslog server configuration for given id

put

Update syslog server configuration

delete

Delete a syslog server

Retrieve and configure the SNMP TRAP/INFORM settings.

get

Get the snmp manager configuration.

put

Update the snmp manager configuration.

/tags

Tags are a user definable set of name/value pairs which can be assigned to Lighthouse system objects like nodes.

Provides the ability to retrieve and manipulate all tags associated with Lighthouse nodes.

get

Returns the global tag list and associated values. Each associated name/value pair can be referenced from any node by using nodes/:id/tags/:tag_value_id.

post

Create a global node tag

put

Update tag values for the given id.

delete

Delete a tag by id.

/interfaces

Read and manipulate the network interfaces on the Lighthouse server.

get

Get a list of the network interfaces on the Lighthouse server.

get

Get interface information by id.

put

Update settings for interface {id}

/system

System endpoints are related to configuring and accessing information about the Lighthouse system itself.

Retrieve or change the Lighthouse system's hostname.

get

Get the Lighthouse hostname.

put

Update the Lighthouse hostname.

Retrieve the unique Lighthouse system name.

get

Get the Lighthouse system name.

Retrieve or change the Lighthouse web session timeout.

get

Retrieve the web session timeout (in minutes).

put

Update the web session timeout (in minutes).

Retrieve or change the Lighthouse CLI session timeout.

get

Retrieve the CLI session timeout (in minutes).

put

Update the CLI session timeout (in minutes).

Retrieve or update the Lighthouse server's global enrollment token.

get

Retrieve the Lighthouse's global enrollment token.

put

Update the Lighthouse's global enrollment token.

The primary network address to reach the Lighthouse (taken from the current network interface configuration).

get

Retrieve the default network address;

The SSH port used in Direct SSH links.

get

Retrieve the system SSH port.

put

Update the system SSH port.

Retrieve and update the system's timezone.

get

Retrieves the system timezone.

put

Update the system timezone.

Configured external endpoints for nodes to reach the Lighthouse system. A maximum of 5 endpoints can be added.

get

Retrieve the configured external endpoints.

post

Create a new external endpoint.

get

Get an external endpoint by ID

put

Update an external endpoint

delete

Delete an external endpoint

Retrieve and update the Lighthouse server's time.

get

Retrieve the Lighthouse current time.

put

Update the Lighthouse current time.

delete

Delete the configuration effectively performing a system reset. The Lighthouse host will reset to factory settings and reboot. The user will need to access the device via the console to set the root password before the network will be available.

post

Upgrade the system firmware either by uploading a file or providing a url to download the file from. This endpoint will always return success if the firmware upgrade job was started - it occurs in the background and the state of which should be retrieved from the GET /system/firmware_upgrade_status endpoint. At least 'file' or 'firmware_url' are required.

get

Retrieve the status of the most recent firmware upgrade job.

Retrieve entitlement information for the Lighthouse based on the licenses applied.

get

Retrieve a list of entitlements.

Create and view licenses applied to the Lighthouse system.

get

Retrieve a list of license strings.

post

Apply a list of licenses.

Upload a Lighthouse license file

post

Upload a Lighthouse license file

Retrieve the Lighthouse's most recent firmware and REST API version.

get

Get the version information.

Retrieve the Lighthouse alternate enrollment API information.

get

Get the enrollment API information.

put

Set the enrollment API information.

/stats

Retrieve statistical information about the Lighthouse deployment.

get

A summary of connected, pending and disconnected nodes

get

A count of nodes by cellular health status. If cellular health monitoring is disabled, the response will be an empty JSON object.

/support_report

Obtain a report which will provide information about the state of the Lighthouse server. This information can be used to help analyse and understand the state of the system. The report is large and may take in the order of a minute to obtain.

get

Retrieve the support report data.

/auth

Configure remote authentication, authorization, accounting (AAA) servers.

get

Retrieve information on AAA servers.

put

Update the AAA config.

/bundles

Creating/registering and viewing the state of console server bundles.

get

Gets bundles attached to this lighthouse instance.

The standard ember-data pagination fields {per_page} and {page} apply to this list.

{per_page} and {page} are optional but both are to be supplied if pages are requested. A bundle response will also contain a list of tags, which represents the user-editable attributes assigned to this bundle.

post

Add a new Bundle. The automatic_tags values must be valid as obtained using by a GET on endpoint /tags/node_tags.

get

Find a bundle by unique ID

put

Update a bundle

Each bundle can have a list of tags associated with it. These tags are references to a global list of tags. Any node that enrolls against a specific bundle will automatically be assigned these tags and specified values at time of enrollment.

get

Get the list of all automatic tags for this bundle.

post

Create and associate a new tag with the bundle.

get

Retrieves a bundle's tag by id.

delete

Delete a bundle's tag by id.

put

Update tag information for {bundle_tag_id} in bundle {id}

get

Download the bundle specific manifest file

/users

Retrieve and update user information.

get

Retrieve a list of users.

post

Create a new User data in the config.

get

Retrieve the User information by ID.

put

Update a User.

delete

Delete a User

/groups

Retrieve or update group information.

get

Retrieve a list of groups.

post

Create a new Group in the config.

get

Retrieve the Group information by ID.

put

Update a Group data in the config.

delete

Delete a Group

/templates

Create and view configuration templates.

get

Retrieve a list of templates.

post

Create a new Template.

View, change, and delete existing templates.

get

Retrieve a single template.

put

Update a template.

delete

Delete a template.

/template_push

Create and view configuration template pushes to nodes.

get

Retrieve a list of template pushes.

post

Create a new template push in a default configured (ready for pre-flight) state.

put

Change the stage of a template push, either to start the preflight process, or start the execute process.

/multiple_instance

Configure Lighthouse Multiple Instance support

Access dependent Lighthouse instance information

get

Get dependent Lighthouse instance information

post

Create new dependent Lighthouse instance

Access information for a given dependent Lighthouse instance

get

Get dependent Lighthouse instance information

put

Update a dependent Lighthouse Instance

delete

Remove a dependent lighthouse instance

Access multiple instance LHVPN information

get

Get multiple instance LHVPN information

put

Update the configuration for a dependent Lighthouse instance

Register this Lighthouse as a secondary instance

post

/netops

Work with NetOps features and modules

Get NetOps modules information

get

Get NetOps modules information

Update the configuration for a particular NetOps module

put

Update the configuration for a particular NetOps module

Update all nodes that are running old versions of the particular NetOps module

get