Funciones del API de bit.ly

  • Por
  • PHP
Exploración de las distintas posibilidades que nos ofrece el API de bit.ly, con ejemplos de URLs para obtener información y la respuesta que nos devuelve el API.
En el API del servicio web de bit.ly podemos encontrar distintas funcionalidades. Quizás la más habitual sería la de acortar una URL, pero no es lo único que podemos conseguir. En este artículo haremos un recorrido sobre las diferentes opciones que nos ofrece.

En la entrega anterior del Manual del API de bit.ly que estamos publicando en DesarrolloWeb.com, ya explicamos las generalidades sobre el funcionamiento del servicio web bit.ly para acortar direcciones, por lo que convendría su lectura previa. Así que podemos pasar sin más preámbulos a presentar un listado de los comandos que podríamos invocar. Para cada uno de los comandos veremos una pequeña descripción, una URL de ejemplo para invocar ese comando y la respuesta que obtenemos del API en formato JSON, que es el formato de respuesta por defecto.

/shorten

Este comando sirve para recortar una URL larga y obtener una URL más corta, proporcionada por bit.ly, que redireccionará a la URL original.

Ejemplo de consulta:

http://api.bit.ly/shorten?version=2.0.1&longUrl=http://desarrolloweb.com&login=tuusuario&apiKey=R_000000000000000

Nota: Quizás sobra decir, pues ya se comentó en el anterior artículo, que vosotros tenéis que sustituir el nombre de usuario, enviado en el parámetro "login" y la llave del API, enviado en el parámetro apiKey, por los vuestros que habréis obtenido al registraros en bit.ly.

Respuesta para la anterior consulta: {
   "errorCode": 0,
   "errorMessage": "",
   "results": {
      "http://desarrolloweb.com": {
         "hash": "tTVQF",
         "shortCNAMEUrl": "http://bit.ly/c1SivH",
         "shortKeywordUrl": "",
         "shortUrl": "http://bit.ly/c1SivH",
         "userHash": "c1SivH"
      }
    },
   "statusCode": "OK"
}

/expand

Este comando sirve para obtener la URL larga correspondiente a una URL corta de bit.ly. Es decir, hace el paso contrario de acortar la URL, teniendo la dirección corta, conseguimos averiguar la larga. Un detalle importante es que, para invocar expand, tenemos dos opciones, una es enviar la URL corta (como vemos en el ejemplo siguiente) y la otra es enviar el dato " hash" de esa URL, que podemos ver entre los datos que se obtuvieron al hacer el comando shorten.

Ejemplo de invocación:

http://api.bit.ly/expand?version=2.0.1&shortUrl=http://bit.ly/c1SivH&login=tuusuario&apiKey=R_000000000000000

Resultado obtenido para esta consulta:

{
   "errorCode": 0,
   "errorMessage": "",
   "results": {
      "c1SivH": {
         "longUrl": "http://desarrolloweb.com/"
      }
   },
   "statusCode": "OK"
}

/info

A partir de una URL corta o un Hash, obtenemos información variada sobre ese item, como puede ser la URL larga a la que corresponde, su título, keywors, descripción o los usuarios que están relacionados a esa entrada.

Ejemplo de invocación: (en el que esta vez enviamos un Hash)

http://api.bit.ly/info?version=2.0.1&hash=tTVQF&login=tuusuario&apiKey=R_000000000000000

La consulta devuelve el siguiente código JSON:

{
    "errorCode": 0,
   "errorMessage": "",
   "results": {
      "tTVQF": {
         "calais": {},
         "calaisId": "",
         "calaisResolutions": {},
         "contentLegth": 77862,
         "contentLength": "",
         "contentType": "text/html",
         "exif": {},
         "fileExtension": "",
         "globalHash": "tTVQF",
         "hash": "tTVQF",
         "htmlMetaDescription": "Todo lo que pueden necesitar los programadores y diseu00f1adores web para aprender o profundizar en el desarrollo de webs...",
         "htmlMetaKeywords": [ "recursos para pu00e1ginas web", "manuales de html css", "promociu00f3n de pu00e1ginas web", ... ],
         "htmlTitle": "Desarrollo Web, Tu mejor ayuda para aprender a hacer webs.",
         "id3": {},
         "indexed": 1253659877,
         "keyword": "",
         "keywords": [],
         "longUrl": "http://desarrolloweb.com/",
         "metacarta": [],
         "mirrorUrl": "",
         "robotsAllowed": true,
         "shortenedByUser": "bitly",
         "surbl": 0,
         "thumbnail": {},
         "urlFetched": "http://desarrolloweb.com/",
         "userHash": "",
         "users": [],
         "version": 1.0
      }
   },
   "statusCode": "OK" }

/stats

Una interesante opción que nos ofrece el servicio web de bit-ly, que consiste en una serie de datos estadísticos sobre una URL corta, o Hash, como los accesos que ha tenido, la procedencia de los mismos, etc.

Ejemplo de URL para hacer una consulta sobre datos estadísticos de una URL corta.

http://api.bit.ly/stats?version=2.0.1&shortUrl=bit.ly/dmsnKV&login=tuusuario&apiKey=R_000000000000000

{
    "errorCode": 0,
   "errorMessage": "",
   "results": {
      "clicks": 315,
      "hash": "dmsnKV",
      "referrers": {
         "": { "direct": 174 },
         "hootsuite.com": { "/dashboard": 3 },
         "iconfactory.com": { "/twitterrific": 2 },
         "partners.bit.ly": { "/td": 44 },
         "search.twitter.com": { "/search": 2 },
         "seesmic.com": { "/web/index.html": 4 },
         "twitoaster.com": { "/": 2 },
         "twitter.com": { "/": 63,
            "/ChicadeSeda/tesorodelsaber": 1,
            "/Kika381": 1,
            "/tuusuario": 3,
            "/elgusar": 1,
            "/favorites": 1,
            "/home": 2,
            "/jordisalvia": 1,
            "/profesor4": 7,
            "/profesor4/favorites": 1
         },
         "www.twitscoop.com": { "/": 1 },
         "www.twittergadget.com": { "/gadget.asp": 1 },
         "www.yoono.com": { "": 1 }
      }
   }, "statusCode": "OK"
}

/errors

Una lista de los códigos de error con sus descripciones que se pueden producir al acceder al API. Esta lista de códigos de error nos servirá para poder entender mejor qué es lo que pueda estar pasando cuando el API no responda como podríamos esperar.

Consulta para ver los errores:

http://api.bit.ly/errors?version=2.0.1&login=tuusuario&apiKey=R_000000000000000

El resultado de los errores es demasiado largo para publicarlo aquí, pero podríamos verlo simplemente si accedemos a la URL anterior con nuestros datos de acceso al API.

Este artículo informativo sobre las capacidades del API de bit.ly acaba por aquí, dado que ya hemos enumerado y explicado todas las posibilidades que existen en la versión actual, en el momento de escribir este texto, que es la 2.0.1.

En el próximo artículo vamos a mostrar ya cómo utilizar el API para consumir información del mismo desde páginas PHP, un paso que seguramente querrás conocer si estás leyendo estas líneas.

Autor

Miguel Angel Alvarez

Miguel es fundador de DesarrolloWeb.com y la plataforma de formación online EscuelaIT. Comenzó en el mundo del desarrollo web en el año 1997, transformando su hobby en su trabajo.

Compartir