Escrito por Jose Vicente
Índice
Aunque Sistrix ofrece una buena interfaz web con informes y paneles personalizados con los que analizar rápidamente el comportamiento de un dominio, en ocasiones necesitamos ir más allá y mostrar estos datos desde otras plataformas para procesarlos o comprarlos con otros datos. El objetivo de este pequeño tutorial es aprovechar la API para automatizar la consulta de indicadores de Sistrix de nuestro propio dominio y/o de competidores.
Como cualquier API (Application Programming Interface), la de Sistrix nos ofrece un acceso por programación a ciertas funcionalidades y datos que solemos obtener mediante su interfaz Web. Esto es muy útil cuando queremos implementar nuestros propios cuadros de mando por programación. Aunque la herramienta nos permite diseñar nuestros propios cuadros de mando, consultando su API podemos mezclar la información con la de otras APIs desde herramientas externas.
La API de Sistrix nos ofrece un acceso por programación a ciertas funcionalidades y datos de la plataforma
El acceso a la API de Sistrix se realiza mediante http y podemos obtener los datos de nuestras consultas en formato JSON o XML, por lo que podemos integrar sus datos en cualquier plataforma que sea capaz de realizar este tipo de consultas y manejar sus datos en este formato. Por ejemplo, podríamos implementar los indicadores de Sistrix que queramos monitorizar en el back end de nuestra página web y no tener que acceder cada vez a su interfaz para consultar la visibilidad de nuestro sitio o el de nuestra competencia. Claro está que esta implementación conlleva un coste y debemos estar seguros de que nos va a ahorrar tiempo en el análisis diario de nuestro negocio.
Acceso a la API
Para poder acceder a la API de Sistrix necesitamos tener una cuenta. Una vez logueados con nuestra cuenta debemos acceder a la página https://www.sistrix.de/api/ para obtener nuestra clave de acceso a la API. La clave de acceso es un código alfanumérico de 32 caracteres de longitud que deberemos incluir en cada petición a la API.
En la página de la API también obtendremos datos sobre los créditos disponibles. Esta información también puede ser consultada a la propia API con la petición https://api.sistrix.com/credits?api_key=[API_KEY] donde $key será nuestra clave de la API y la respuesta tendrá el siguiente formato XML por defecto.
<response>
<method>credits</method>
<answer>
<credits value=»43623«/>
</answer>
</response>
En este caso podemos comprobar que nos quedan 43.623 créditos disponibles.
La página de la API dispone además de un log de los accesos realizados incluyendo:
- Fecha del acceso
- Función solicitada
- Créditos consumidos
- IP que realizó la solicitud
Formato de las peticiones
Como hemos podido comprobar en la consulta de los créditos disponibles, la petición a la API se realiza con una URL que identifica la funcionalidad de la que queremos hacer uso y parámetros que son necesarios para cada función de la API con los datos que queremos consultar. En la documentación de la API https://www.sistrix.de/api/ podemos consultar toda esta información y el listado de funciones disponibles, con sus parámetros obligatorios, opcionales, etc.
Además de la clave de la API, en la mayoría de las peticiones debemos identificar la base de datos del país que queremos consultar. Si no identificamos el país, por defecto la API nos devolverá datos de Alemania. Cada país se identifica por el código ISO de 2 caracteres correspondiente.
Si la programación con la que consultamos la API no es capaz de manejar XML o nos es más sencillo gestionar respuesta en JSON, podemos cambiar el formato de respuesta de la petición a la API entre XML –por defecto– o JSON. Si en el ejemplo de la petición del número de créditos que restan en nuestra cuenta hubiéramos añadido el parámetro format con valor json la respuesta habría sido la siguiente.
{«method»:[[«credits»]],»answer»:[{«credits»:[{«value»:»43623«}]}]}
Cómo consultar la API de Sistrix desde Google Drive
Aunque no sería difícil desarrollar un sencillo Framework en php o cualquier lenguaje de programación Web para usar la API de Sistrix, vamos a ver unos ejemplos de cómo consultar datos desde una hoja de cálculo o Spreadsheet de Google Drive para que sea accesible para usuarios que no tengan conocimientos de programación.
Entre otras funciones para importar datos, las hojas de cálculo de Google Drive nos permiten importar datos en XML a través de una petición http con la función IMPORTXML. Este es justo el formato que maneja por defecto la API de Sistrix, por lo que podemos usarlo para implementar un cuadro de mando que podremos compartir con otros usuarios.
La función IMPORTXML https://support.google.com/docs/answer/3093342?hl=es tiene el siguiente formato:
IMPORTXML(url; consulta_xpath)
Donde la URL será la petición a la API de Sistrix y consulta_xpath el elemento que queremos obtener del XML. Pero veamos algunos ejemplos para entenderlo mejor.
Antes de implementar el cuadro de mando se recomienda tener una pestaña con los datos comunes de configuración para la API, en este caso estamos hablando de datos como la clave de acceso a la API y el código ISO del país de la base de datos que queremos consultar. De este modo, si en cualquier momento tuviésemos que cambiar la clave o realizar el análisis para un país diferente solo tendríamos que cambiar el dato en estas celdas.
Índice de visibilidad de un dominio
Para obtener el índice de visibilidad de un dominio con la API de Sistrix debemos usar el siguiente formato de petición a la API.
https://api.sistrix.com/domain.sichtbarkeitsindex?api_key=$key&domain=$domain&country=$country
Opcionalmente podremos obtener el histórico o el dato de una fecha concreta, pero si no especificamos nada obtendremos el último dato disponible. Para importar este dato en una hoja de cálculo de Google Drive tendremos que hacer uso de la función IMPORTXML de la siguiente forma:
=IMPORTXML(«http://api.sistrix.net/domain.sichtbarkeitsindex?api_key=[CLAVE]&domain=[DOMINIO]&country=[PAIS],»//sichtbarkeitsindex/@value»)
Como se puede ver en el ejemplo, a la función IMPORTXML se le pasa como primer parámetro la petición a la API con nuestra clave, el dominio que queremos consultar y el país del que queremos obtener la visibilidad. La respuesta de la API para, por ejemplo, el dominio bikestocks.es sería el siguiente:
El dato que nos interesa mostrar en nuestra hoja de cálculo es el value dentro del nodo sichtbarkeitsindex, por lo que el segundo parámetro de la función IMPORTXML será //sichtbarkeitsindex/@value . El formato del parámetro para identificar el valor a extraer siempre está formado por //NOMBRE_NODO seguido de /@[NOMBRE_PARAMETRO].
En la sección Domain https://www.sistrix.de/api/domain de la documentación de la API de Sistrix podemos encontrar el resto de peticiones relacionadas con datos sobre la API.
Otro dato que nos puede ser útil conocer son los datos de las señales sociales relacionadas con un dominio, esto lo hacemos con una llamada a la función http://api.sistrix.net/domain.social.url que nos devolverá el total de señales sociales y un desglose de Facebook, Twitter y Google Plus como podemos ver en la siguiente captura.
En este caso, para obtener los datos de cada una de las redes sociales tendremos que hacer la misma petición a la API de Sistrix y variar el segundo parámetro de IMPORTXML para obtener el dato que queramos en cada caso.
- //current/@total
- //current/@facebook
- //current/@twitter
- //current/@googleplus
Consultas de posiciones de palabras clave
Por último vamos a ver cómo sería un ejemplo de consulta a la API de posición de un dominio para una búsqueda concreta. Podemos consultar las funciones relacionadas con las palabras clave en la documentación de la API de la herramienta http://www.sistrix.de/service/api/keyword-methoden/ .
Para realizar la consulta desde nuestro ejemplo en Google Drive deberíamos ejecutar el siguiente comando:
=IMPORTXML(«http://api.sistrix.net/keyword.seo?api_key=[CLAVE_API]&domain=[DOMINIO]&country=[PAIS]&kw=[KEYWORD]&date=now»,»//result/@position»)
Al identificar el dominio y la fecha actual con date=now además de la keyword, podemos obtener la posición actual del dominio para la búsqueda especificada. Como podemos ver en la siguiente captura la respuesta incluye además de la posición la URL que también podríamos consultar identificando el dato como //result/@url en la función IMPORTXML de las hojas de cálculo de Google Drive.
Cuadro de mando Sistrix en Google Drive
Con algunas de las funciones que nos ofrece la API de Sistrix podemos montar fácilmente cuadros de mando comparativos como el siguiente. Este tipo de cuadros nos puede servir para consultar de forma rápida los datos de nuestra competencia u obtener indicadores de fuerzas y debilidades de competidores de un sitio que nos haya pedido presupuesto.
Al estar referenciadas todas las celdas con su correspondiente dominio en la cabecera de la columna, solo tenemos que cambiar los dominios y seleccionar keywords relevantes para comparar rápidamente datos de visibilidad, redes sociales o posicionamiento de los dominios a analizar. Podéis acceder a este Drive de prueba en este enlace, solo hay que añadir una clave de la API de Sistrix en la pestaña de Configuración para hacerlo funcionar.
Esperamos que este pequeño tutorial os sirva para aprovechar al máximo la herramienta Sistrix y que os facilite el seguimiento del posicionamiento de vuestro negocio en internet o el de la competencia.
Buenas,
Lo primero, felicitarte por el post, fue muy instructivo en su momento, aunque hace ya meses que tengo problemas con la llamada a la API de Sistrix a través de Drive.
El contenido no termina de importarse y queda siempre en «Loading» (he podido dejar las llamadas cargando durante varias horas sin éxito). Da igual que haga cientos de llamadas en la misma hoja o que haga 1, el resultado siempre es el mismo. Desde el navegador la misma URL carga ipso-facto, y en Sistrix me dicen que el problema es de Drive.
¿Alguien más con este problema? ¿Alguna solución conocida?
Gracias de antemano, un saludo!