Trello es una herramienta web de gran potencia que nos permite gestionar proyectos y tareas pequeños de una forma muy eficiente. Ahora imagina utilizar toda esa potencia y unirla a Google Apps Script. Los resultados pueden ser espectaculares.
En este tutorial os explicaré como importar datos de trello a una hoja de cálculo con Google Apps Script, pero realmente las posibilidades son espectaculares: Poder enviar correos cuando alguien cambia el estado de una tarjeta, guardar información de clientes en los contactos de Google... las posibilidades son infinitas.
El como se hace, es bastante más fácil de lo que podría parecer en un principio. Sencillamente Trello proporciona una API muy sencilla de usar, con poco que la miréis sabréis hacerlo. Si no tenéis claro os recomiendo que reviséis el artículo sobre como usar APIs con Google Apps Script
Este es el código:
function TrelloImport() { //CONFIGURACION var api_key = "AQUI_VA_TU_KEY_DE_TRELLO"; var api_token = "AQUI_VA_TU_TOKEN_DE_TRELLO"; var board_id = "AQUI_VA_EL_BOARD_QUE_QUIERES_IMPORTAR"; var url = "https://api.trello.com/1/"; //LIMPIAMOS LA HOJA var spreadsheet = SpreadsheetApp.getActiveSheet(); spreadsheet.clear(); spreadsheet.appendRow(["Fecha", "Tarea", "Quien", "Lista", "Link"]); //OBTENEMOS LOS DATOS DE TRELLO var response = UrlFetchApp.fetch(url + "boards/" + board_id + "/lists?cards=all&key=" + api_key + "&token=" + api_token); var lists = JSON.parse((response.getContentText())); for (var i = 0 ; i < lists.length ; i++) { var list = lists[i]; var response = UrlFetchApp.fetch(url + "list/" + list.id + "/cards?key=" + api_key + "&token=" + api_token); var cards = JSON.parse(response.getContentText()); if(!cards) continue; for (var j = 0; j < cards.length; j++) { var card = cards[j]; var response = UrlFetchApp.fetch(url + "cards/" + card.id + "/?actions=all&key=" + api_key + "&token=" + api_token); var detalles = JSON.parse(response.getContentText()).actions; if(!detalles) continue; for (var k=0; k < detalles.length; k++) { var fecha = detalles[k].date; var nombre = detalles[k].memberCreator.fullName; var tarea = card.name; var link = card.url; var lista = list.name; } spreadsheet.appendRow([fecha, tarea, nombre, lista, link]); } } }
No hay comentarios:
Publicar un comentario