EdgeView allows users to use its APIs, allowing for easy third party application integration. The following APIs are available for use:

  • Collection: For accessing collections.
  • Device: For accessing device information.  
  • Policy: For accessing a specific policy. 
  • Report: For accessing the Report API.

This section describes how to use EdgeView APIs.

Use EdgeView APIs

To use an EdgeView API, perform the following steps:

  1. From the EdgeView menu bar, click the Menu icon on the top-right corner and select Edit Profile. The User Profile page appears.

  2. Go to the Access Token tab and create an access token. For more information on managing access tokens, see Manage EdgeView Access Tokens.

  3. Use the generated token in REST API calls as a bearer token for authorization. To test this, click the Menu icon on the top-right corner and select References > EdgeView API

    You are taken to the updated EdgeView API documentation.

  4. You can try out any of the APIs listed here, by selecting the desired API and entering the required information along with the access token. For more information on how to try out the available APIs, refer to Use EdgeView Access Tokens.

    To access a printable version of the EdgeView API documentation, execute the following command in EdgeView installation scc-build directory:

    docker cp evapi:/usr/local/tomcat/webapps/evapi/WEB-INF/classes/index.html.

    This command results in an index HTML file with the printable version of EdgeView API documentation in it.

EdgeView API Mapping to EdgeMarc Configuration Parameters

The following table lists the EdgeView API inputs and their corresponding EdgeMarc configuration parameters:

EdgeView APIs and EdgeMarc Configuration Parameters

EV-API device/{deviceId}/property

EdgeMarc Configuration File/Parameter

network:wan:dns_manual:enable/etc/config/intf.conf
PRI_DNS_MANUAL
network:wan:secondary:dns_manual:enable/etc/config/intf.conf
SEC_DNS_MANUAL
sip:multihomed_proxy:enable/etc/config/alg_defs.conf
SIP_MULTIHOME
sip:server_redundancy:enable/etc/config/local_defs.conf
AVAILABILITY
device:expiration:override:enable/etc/config/alg_defs.conf
SIP_EXP_ENABLE
management:ssh:wan:enable/etc/config/fw_defs.conf
ENABLE_SSH
sip:keep_alive_messages:enable/etc/config/local_defs.conf
ACTIVE_MONITOR
sip:transparent_proxy:enable/etc/config/alg_defs.conf
SIP_TRANSPARENT
sip:b2bua_pass_useragent:enable/etc/config/alg_defs.conf
SIP_B2BUA_PASS_USERAGENT_HDR
sip:monitor_messages:enable/etc/config/local_defs.conf
SIP_MSG_MONITOR
management:remote_syslog:enable/etc/config/snmpd_defs.conf
REMOTE_SYSLOG_ENABLE
management:gui:wan:http:enable/etc/config/fw_defs.conf
ENABLE_HTTP
management:gui:wan:https:enable/etc/config/fw_defs.conf
ENABLE_HTTPS
management:system_monitor:enable/etc/config/system.conf
MONIT_ENABLED
management:analytics:enable/etc/config/analytics.conf
ENABLE_ANALYTICS
sip:sip_statistics:enable/etc/config/analytics.conf
SIP_STATS_ENABLE
management:snmp:wan:enable/etc/config/fw_defs.conf
ENABLE_SNMP
management:snmp:v1:enable/etc/config/snmpd_defs.conf
SNMP_ENABLE
network:ntp:server:enable/etc/config/time_defs.conf
ENABLE_SNTP
network:dhcpd:enable/etc/config/dhcpd_defs_lan.conf
ENABLE_DHCP
sip:mos_scoring:enable/etc/config/snmpd_defs.conf
ENABLE_MOS
sip:custom_domain:enable/etc/config/alg_defs.conf
SIP_USE_DOMAIN
management:collectd:enable/etc/config/collectd_defs.conf
COLLECTD_ENABLE
network:wan:secondary:default_gateway/etc/config/intf.conf
SEC_GATEWAY_IP
network:wan:secondary:v6:default_gateway/etc/config/intf.conf
SEC_GATEWAY_IP6
network:wan:dns_primary/etc/config/intf.conf
PRI_DNS_IP_1
network:wan:dns_secondary/etc/config/intf.conf
PRI_DNS_IP_2
network:wan:secondary:dns_primary/etc/config/intf.conf
SEC_DNS_IP_1
network:wan:secondary:dns_secondary/etc/config/intf.conf
SEC_DNS_IP_2
sip:default_server:host/etc/config/alg_defs.conf
SIP_CALLAGENT_IP
sip:default_server:port/etc/config/alg_defs.conf
SIP_PORT
sip:transport:type/etc/config/alg_defs.conf
SIP_SERVER_TRANSPORT
sip:custom_domain:server_domain/etc/config/local_defs.conf
SIP_PROXY_DOMAIN
sip:udp:alg_ports/etc/config/alg_defs.conf
SIP_UDP_INB_PORTS
sip:message_rate:pacing_behavior/etc/config/alg_defs.conf
SIP_THROTTLE_MODE
sip:message_rate:pacing_interval/etc/config/alg_defs.conf
SIP_THROTTLE
management:analytics:timeout/etc/config/analytics.conf
DISABLE_ANALYTICS_TIMEOUT
device:expiration:override:value/etc/config/alg_defs.conf
SIP_EXPIRES
management:snmp:v1:ro_community/etc/config/snmpd_defs.conf
SNMP_RO_COMM
management:snmp:v1:host/etc/config/snmpd_defs.conf
SNMP_TRAPAGENTIP
network:ntp:server:host/etc/config/time_defs.conf
SNTP_SERVER_ADDR
network:dhcpd:range/etc/config/dhcpd_defs_lan.conf
DHCP_RANGE_1
network:dhcpd:ntp_server_address/etc/config/dhcpd_defs_lan.conf
OPTION_42
management:autoconfig:auto_cfg_type/etc/config/auto_cfg.conf
AUTO_CFG_TYPE
sip:mos_scoring:value/etc/config/snmpd_defs.conf
MOS_THRESHOLD
network:dhcpd:ftp_server_address/etc/config/dhcpd_defs_lan.conf
OPTION_66_QUOTED
management:remote_syslog:hosts/etc/config/snmpd_defs.conf
REMOTE_SYSLOG_HOSTS
management:autoconfig:ztp:server_list/etc/config/auto_cfg.conf
ZTP_SERVER_LIST
management:autoconfig:broadworks:dm_url/etc/config/auto_cfg.conf
DM_URL
management:autoconfig:broadworks:dm_wget_options/etc/config/auto_cfg.conf
DM_WGET_OPTIONS

REST Proxy API  

The following API is added to EV-API to call an SBC Edge 11.0 REST API via the REST Proxy:                                                                                                                                                         

Modified: for 16.2.2

Method EndpointDescriptionRequired Role(s)/Permission(s)
GET, POST, PUT, DELETE/evapi/v1/proxy/node/{deviceId}/<SBC Edge REST API>proxy: an SBC Edge REST API
{deviceld}: the mac address of the device
tenantadmin/ztp


The following example shows the usage of the SBC Edge REST API:

Example:
// For example, to perform system backup of a SBC Edge instance
curl -k -o backup.tar   -H "Authorization: Bearer <EV-API token> "
"https://<EdgeVieww ipaddress>/evapi/v1/proxy/node/<macaddr (1k/2k0 or management ID (SBC Edge CNE>/rest/system?action=backup" 
--header 'Content-Type: application/x-www-form-urlencoded' -d "Passphrase=dummy"
 
//get the list of alarms
curl -k -H "Authorization: Bearer 03581470-2674-4a6d-939a-6b8f3ae011dd" 
--request GET 'https://10.10.94.70/evapi/v1/proxy/node/54:39:68:a0:00:00:02:c1/rest/activealarm'
 
// get alarm details
curl -k -H "Authorization: Bearer 03581470-2674-4a6d-939a-6b8f3ae011dd" 
--request GET --url 'https://10.10.94.70/evapi/v1/proxy/node/54:39:68:a0:00:00:02:c1/rest/activealarm/35'
 
// ack an alarm
// ** NOTE the data part -d "smoethext=somethext" 
is required as discovered by Kim during our initial testing of the rest api.It throws an error if this -d "dummy data" is absent.
curl -k -H "Authorization: Bearer 03581470-2674-4a6d-939a-6b8f3ae011dd" 
--request POST --url 'https://10.10.94.70/evapi/v1/proxy/node/54:39:68:a0:00:00:02:c1/rest/activealarm/35?action=ack'
-d "Passphdddadfasdfadfarase=dumadfadsfasdfmy"
 
// when evuser is not a tenantadmin or ztp user:
curl -k -H "Authorization: Bearer 34a05ccf-9657-414c-91f3-5886613dd2bc" 
--request GET --url 'https://10.10.94.70/evapi/v1/proxy/node/54:39:68:a0:00:00:02:c1/rest/activealarm/35'
 
{"request":"http://10.10.94.70/evapi/v1/proxy/node/54:39:68:a0:00:00:02:c1/rest/activealarm/35",
"message":"Field = FORBIDDEN, ErrorMessage = User is not authorized to perform proxy calls."}