SPEKTRA Edge Integration Guide

How to integrate SPEKTRA Edge services to your system.

All of SPEKTRA Edge’s functionality is provided by the API. The web dashboard that users normally access retrieves and displays all data via the API. The cuttle command also uses the same API to retrieve data. In other words, all data displayed on the dashboard and values returned by the cuttle command can be retrieved via the API.

Supported API types

The SPEKTRA Edge controller is provided with three API protocols.

gRPC

The SPEKTRA Edge controller’s main API is provided as a gRPC endpoint. Starting with the cuttle command, clients using the SPEKTRA Edge controller communicate with the SPEKTRA Edge controller using gRPC. gRPC is implemented over HTTP2, so gRPC traffic can pass through any HTTP proxy or HTTP2-compliant firewalls.

gRPC is the native protocol for SPEKTRA Edge, and it is recommended that gRPC be used if there are no implementation constraints.

gRPC-web

The SPEKTRA Edge controller also supports the gRPC-web protocol. gRPC-web is a protocol for using gRPC in a web browser. It is implemented over HTTP2, but due to various limitations cannot be used directly in a browser’s JavaScript environment. In contrast, gRPC-web works as-is in current browsers. The SPEKTRA Edge controller supports the gRPC-web protocol by using the Envoy proxy.

gRPC-web is recommended for calling the SPEKTRA Edge Controller API from a web browser.

REST

The SPEKTRA Edge controller also supports API calls via regular HTTP requests. It is possible to perform CRUD operations on each resource using the so-called REST method.

The REST API is automatically generated from gRPC API definitions and is provided by the Envoy proxy. API calls via REST are useful, for example, for simple scripting. Please note, however, that the REST API is automatically generated and is not supported in any way. Specifications are subject to change without notice.

SDK

To enable third-party client development using gRPC, an SDK is provided; the SDK is divided into several parts, each published as a different Github repository.

Each SDK includes a gRPC definition file (.proto) that allows users to generate their own code, as well as a client library for the Go language. Please refer to the README file in the repository for details on how to use the libraries.

API references (list of available APIs, parameters, etc.) are included in the docs/apis of each SDK.

SPEKTRA Edge SDK

https://github.com/cloudwan/edgelq-sdk

SPEKTRA Edge SDK is the main SDK and contains general-purpose functionality such as IAM, Devices, and Applications.

Watchdog SDK

https://github.com/cloudwan/watchdog-sdk

The Watchdog SDK is an SDK that contains the resources used in Service Experience Insights. Agents (Probe) and other resources are included in this SDK. Please note that Service Experience Insights as a whole also uses the IAM and Monitoring services included in the SPEKTRA Edge SDK.

Goten SDK

https://github.com/cloudwan/goten-sdk

Goten SDK is the SDK that contains the Goten framework referenced by SPEKTRA Edge SDK and Watchdog SDK, and is used indirectly when using SPEKTRA Edge SDK and Watchdog SDK.


Quick Start

Quickly start the API integration with SPEKTRA edge platform.