S30LABS
  • CNM
  • Features
  • API

Select your language

  • Español (España)
  • English (United Kingdom)
KB
GET
  • GET /auth/token.json
  • GET /devices
  • GET /views
  • GET /alerts
  • GET /tickets
  • GET /metrics/info
  • GET /metrics/data
  • GET /embed/metric_graph
  • GET /users
  • GET /backup
POST
  • POST /devices
  • POST /events
  • POST /profiles
  • POST /users
  • POST /backup
PUT
  • PUT /devices
  • PUT /users
  • PUT /profiles

API Introduction

CNM incluye un API (Application Programming Interface) que permite a los programadores integrar sus datos en aplicaciones de terceros de forma sencilla. 

Se basa en servicios WEB de tipo REST (Representational State Transfer) sobre protocolo HTTPS.

Esto significa que utiliza los "verbos" GET, POST, PUT y DELETE definidos en dicho protocolo para implementar las diferentes acciones:

GET: Permite obtener información
POST: Permite crear un recurso
PUT: Permite actualizar un recurso
DELETE: Permite eliminar un recurso (1)

(1) En este momento sólo se soportan las peticiones de tipo GET, POST y PUT.

Las peticiones al API de CNM se pueden hacer desde un navegador, un terminal o un programa.
Los ejemplos que aparecen en esta documentación utilizan el programa curl que funciona sobre Unix o Windows, pero se podría haber utilizado cualquier otro programa que permita obtener datos mediante protocolo https como wget o código basado en cualquier lenguaje de programación.

Los datos devueltos por el API están codificados en JSON por su sencillez y por ser más compacto que otras alternativas comoXML.

El manejo de errores se debe hacer a partir de los códigos de retorno del protocolo HTTP.

A lo largo de la documentación se detallan los diferentes endpoints o métodos proporcionados.

 

ACCESO

El acceso es exclusivamente por SSL, desde una URL con el siguiente aspecto:

https://localhost/onm/api/1.0/endpoint.json

Los endpoints se corresponden con los métodos disponibles y se detallan en la documentación.

 

AUTENTICACIÓN

La mayor parte de los endpoints requieren autenticación.

Está basada en el uso de un token de acceso en cada petición que se incluye dentro de la cabecera HTTPAuthentication.

Dicho token se obtiene a través del endpoint:

GET auth/token.json

curl -ki "https://localhost/onm/api/1.0/auth/token.json?u=admin&p=cnm123"

Y se debe incuir de la siguiente forma:

Authorization: 854b5c0254572b995b3e96d8a05e31b9

 

ENDPOINTS DISPONIBLES


Actualmente están disponibles los siguientes endpoints:

  • devices
  • metrics
  • views
  • alerts
  • tickets
  • views
  • profiles
  • users
  • backup
  • embed/metric_graph

 

GET /auth/token.json

API endpoints need authentication with a token or session id.

This token must be suplied in the HTTP header HTTPAuthentication as shown in the following example::

Authorization: 854b5c0254572b995b3e96d8a05e31b9

This token is created with an expiration time of 180 seconds. After that period (or before) it should be necessary to renew it.

 

GET /auth/token.json Obtains the authentication token for the API endpoints.

Parameters

Name Type Mandatory Default value Description
u Text Yes None User name.  
p Text Yes None User password.

Response Code

Code Description
200 OK
400 Request error
401 Authentication error
403 Access permissions error
500 Internal error

Return value

It is a JSON encoded value:

{"status":0,"sessionid":"04eea9a0eedeef04022ecbc2d38b7af3"}

Name Type Default value Description
status Integer   None Status
sessionid   Text None Token id  

Examples

curl -ki "https://10.2.254.222/onm/api/1.0/auth/token.json?u=admin&p=cnm123"

HTTP/1.1 200 OK
Date: Thu, 13 Feb 2014 12:52:26 GMT
Server: Apache/2.2.16 (Debian) PHP/5.3.3-7 with Suhosin-Patch proxy_html/3.0.1 mod_ssl/2.2.16 OpenSSL/0.9.8o mod_perl/2.0.4 Perl/v5.10.1
X-Powered-By: PHP/5.3.3-7
Expires: Thu, 19 Nov 1981 08:52:00 GMT
Cache-Control: no-store, no-cache, must-revalidate, post-check=0, pre-check=0
Pragma: no-cache
:
Vary: Accept-Encoding
Content-Length: 59
Content-Type: text/html; charset=utf-8

{"status":0,"sessionid": "04eea9a0eedeef04022ecbc2d38b7af3"}

CNM
  • Features
  • API
Pages
  • Sitemap
  • KB >> Monitorización de certificados digitales - EN
© 2022 by S30Labs IT Advanced Systems SL. All rights reserved.