Apuntes generales

Port Monitor proporciona una API REST para desarrolladores. Usando esta API puedes integrar Port Monitor en tu sitio web, scripts, aplicación web... ¡Sin límites!

RESTful

Esta API está implementada conforme a la técnica de arquitectura software REST.

JSON

JSON es usado para el intercambio de datos y mensajes.

Acceso exclusivo SSL

Todas las peticiones a la API se deberán realizar mediante SSL.

Codificación UTF-8

Cada cadena recibida o enviada a la API estará codificada en UTF-8.

Formato de fechas

Las fechas se codifican utilizando el formato ISO 8601. Por ejemplo la fecha 1/31/2013 00:00:00 es GMT+2 se codificaría como: 2013-01-31T00:00:00+02:00.

Crea tu propia aplicación

Cada petición deberá incluir el parámetro app_key. Su valor identifica a la app, así que lo primero que debes de hacer es ir a 'New app' y obtener tu propio app_key.

REST API

Registros

Registrar un nuevo usuario.

POST https://www.port-monitor.com/api/users/sign-up

Parámetros requeridos:
app_key
user[email]
user[password]

Parámetros opcionales:

Editar el usuario actual.

PUT https://www.port-monitor.com/api/users

Parámetros requeridos:
app_key
auth_token

Parámetros opcionales:
user[email]
user[password]

Cancelar la cuenta del usuario actual.

DELETE https://www.port-monitor.com/api/users

Parámetros requeridos:
app_key
auth_token

Parámetros opcionales:

Sesiones

Iniciar sesión.

POST https://www.port-monitor.com/api/users/login

Parámetros requeridos:
app_key
user[email]
user[password]

Parámetros opcionales:

Cerrar sesión.

DELETE https://www.port-monitor.com/api/users/logout

Parámetros requeridos:
app_key
auth_token

Parámetros opcionales:

Perfil

Mostrar perfil.

GET https://www.port-monitor.com/api/profile

Parámetros requeridos:
app_key
auth_token

Parámetros opcionales:

Mostrar lenguajes disponibles.

GET https://www.port-monitor.com/api/profile/languages

Parámetros requeridos:
app_key
auth_token

Parámetros opcionales:

Mostrar zonas horarias disponibles.

GET https://www.port-monitor.com/api/profile/time_zones

Parámetros requeridos:
app_key
auth_token

Parámetros opcionales:

Actualizar perfil.

PUT https://www.port-monitor.com/api/profile

Parámetros requeridos:
app_key
auth_token

Parámetros opcionales:
profile[language]
profile[country]
profile[time_zone]

Grupos

Listar todos los grupos.

GET https://www.port-monitor.com/api/groups

Parámetros requeridos:
app_key
auth_token

Parámetros opcionales:

Mostrar el grupo con id [ID].

GET https://www.port-monitor.com/api/groups/[ID]

Parámetros requeridos:
app_key
auth_token

Parámetros opcionales:

Añadir un nuevo grupo.

POST https://www.port-monitor.com/api/groups

Parámetros requeridos:
app_key
auth_token
group[name]

Parámetros opcionales:

Editar el grupo con id [ID].

PUT https://www.port-monitor.com/api/groups/[ID]

Parámetros requeridos:
app_key
auth_token

Parámetros opcionales:
group[name]

Eliminar el grupo con id [ID].

DELETE https://www.port-monitor.com/api/groups/[ID]

Parámetros requeridos:
app_key
auth_token

Parámetros opcionales:

Objetivos

Listar todos los monitores en el grupo con id [GROUP_ID].

GET https://www.port-monitor.com/api/groups/[GROUP_ID]/targets

Parámetros requeridos:
app_key
auth_token

Parámetros opcionales:

Listar los monitores [TARGETS] en el grupo con id [GROUP_ID].

Posibles valores de [TARGETS]: 'urls', 'custom_ports', 'pings'.

GET https://www.port-monitor.com/api/groups/[GROUP_ID]/target/[TARGETS]

Parámetros requeridos:
app_key
auth_token

Parámetros opcionales:

Mostrar monitor con id [ID] en el grupo con id [GROUP_ID].

GET https://www.port-monitor.com/api/groups/[GROUP_ID]/targets/[ID]

Parámetros requeridos:
app_key
auth_token

Parámetros opcionales:

Añadir un nuevo monitor [TARGET] en el grupo con id [GROUP_ID].

Posibles valores de [TARGETS] 'urls', 'custom_ports', 'pings'.
Posibles valores de [TARGET]: '[target_url]', '[target_custom_port]', '[target_ping]'.
El tipo de [TARGETS] y [TARGET] deben coincidir. Algunos parámetros opcionales pueden ser requeridos dependiendo del valor de [TARGET].

POST https://www.port-monitor.com/api/groups/[GROUP_ID]/target/[TARGETS]

Parámetros requeridos:
app_key
auth_token
[TARGET][name]
[TARGET][group_id]

Parámetros opcionales:
[TARGET][url]
[TARGET][host]
[TARGET][port_number]
[TARGET][seconds_between_checks]
[TARGET][timeout]
[TARGET][retries_per_check]

Update target with id [ID] in the group with id [GROUP_ID].

Posibles valores de [TARGETS] 'urls', 'custom_ports', 'pings'.
Posibles valores de [TARGET]: '[target_url]', '[target_custom_port]', '[target_ping]'.
El tipo de [TARGETS] y [TARGET] deben coincidir. Algunos parámetros opcionales pueden ser requeridos dependiendo del valor de [TARGET].

PUT https://www.port-monitor.com/api/groups/[GROUP_ID]/target/[TARGETS]/[ID]

Parámetros requeridos:
app_key
auth_token

Parámetros opcionales:
[TARGET][name]
[TARGET][url]
[TARGET][host]
[TARGET][port_number]
[TARGET][seconds_between_checks]
[TARGET][timeout]
[TARGET][retries_per_check]
[TARGET][group_id]

Delete target with id [ID] in the group with id [GROUP_ID].

Posibles valores de [TARGETS] 'urls', 'custom_ports', 'pings'.

DELETE https://www.port-monitor.com/api/groups/[GROUP_ID]/target/[TARGETS]/[ID]

Parámetros requeridos:
app_key
auth_token

Parámetros opcionales:

Eventos

Listar todos los eventos para un rango de fechas específico y todos los monitores o para los monitores seleccionados.

El parámetro 'target_ids' es una lista de ids de monitores, separados por coma.

GET https://www.port-monitor.com/api/events

Parámetros requeridos:
app_key
auth_token

Parámetros opcionales:
date_range[from]
date_range[to]
target_ids

Informes

Listar el tiempo en funcionamiento para un rango de fechas específico y todos los monitores o para los monitores seleccionados.

El parámetro 'target_ids' es una lista de ids de monitores, separados por coma.

GET https://www.port-monitor.com/api/reports/uptimes

Parámetros requeridos:
app_key
auth_token

Parámetros opcionales:
date_range[from]
date_range[to]
target_ids

Listar el tiempo de respuesta para un rango de fechas específico y todos los monitores o para los monitores seleccionados.

El parámetro 'target_ids' es una lista de ids de monitores, separados por coma.

GET https://www.port-monitor.com/api/reports/response_times

Parámetros requeridos:
app_key
auth_token

Parámetros opcionales:
date_range[from]
date_range[to]
target_ids

Postman sandbox

Postman es un cliente REST para Google Chrome. Proporcionamos ejemplos dividios en colecciones para que puedes descargarlos y usarlos en Postman. Una vez descargados, modifícalos a tu antojo.

Colecciones de Postman:

Soporte

No dudes en usar las <i class='icon-github'></i> Incidencias si encuentras algo que no funciona correctamente.