La API de Coinbase Pro

Durante estas vacaciones me he estado peleando con la API de Coinbase Pro y sobre como poder llamarla correctamente a través de Google Apps Script, la plataforma de desarrollo de Google que integra toda su suite de productos.

El mayor problema es que es muy complicado, por no decir imposible, encontrar información fiable sobre como realizar llamadas a la API de Coinbase Pro con Google Apps Script y sobre todo como firmarlas siguiendo el protocolo de seguridad que implementa.

Después de muchos intentos finalmente conseguí hacerlo y este es el código que utilicé.

var globalvars_CB = {
   'apikey'     : 'f7d2dkifmdXXXXXXXXXXXXXa18c',
   'secret'     : 'ptjlbXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXZAMe1TV1zuh5U6WFiFw==',
   'passphrase' : 'cXXXXXXXXXXXXXXXXXX',
   'uri'        : 'https://api.pro.coinbase.com'
  }


function SignAndCallAPI(method, requestPath, body) {
//method: "GET", "POST",...
//requestpath: el path para ejecutar la función (por ejemplo: "/accounts")
//body: los parámetros de llamada. Habitualmente solo para POST

  var timestamp = Math.floor(Date.now() / 1000).toString();
  var what = Utilities.base64Decode(Utilities.base64Encode(timestamp+method+requestPath+body));
  var decodedsecret = Utilities.base64Decode(globalvars_CB.secret);
  var hmac = Utilities.base64Encode(Utilities.computeHmacSha256Signature(what, decodedsecret));
     
  var options = {
    'method' : method,
    'payload' : body,
    'muteHttpExceptions' : true,     
    'headers' : {
      'Content-Type': 'application/json',
      'CB-ACCESS-KEY' : globalvars_CB.apikey,
      'CB-ACCESS-SIGN' : hmac,
      'CB-ACCESS-TIMESTAMP' : timestamp,
      'CB-ACCESS-PASSPHRASE' :  globalvars_CB.passphrase,
     }
  }  
      
return(UrlFetchApp.fetch(globalvars_CB.uri+requestPath, options));

}

El mayor problema estaba en como firmar con SHA256 y con el formato de datos que se precisa además de evitar confundirse con la API de Coinbase que es ligeramente diferente de la de Coinbase Pro.

Fam i Fe

«Fam i Fe – L’entrada dels Pastorells» es el título del libro de Jaume Riera i Sans que describe y analiza la entrada de los llamados «Pastorells» en julio de 1320 en el Sobrarbe aragonés provenientes de Francia y que cruzaron los Pirineos con la intención de extender la fe cristina entre judíos y musulmanes pero sobre todo cambiar el orden de instituciones y las jerarquías sociales que estaban llevando a la miseria y al hambre a miles de personas.

El libro es especialmente interesante porque explica con todo tipo de detalles y con rigor histórico, gracias a la abundante documentación guardada en el Archivo de la Corona de Aragón, como los Pastorells hacen noche en Ainsa y al día siguiente se dirigen a la desaparecida Monclús donde saquean la judería y matan a decenas de judíos mientras que muchos otros son bautizados por la fuerza.

El Rey Jaime II de Aragón y su hijo llevan a cabo varios procesos judiciales contra ellos y contra todos los vecinos de los pueblos colindantes que les ayudaron y se dictan varias penas de muerte a finales de julio. La lista de encausados es larga y detallada e incluye además de algunos de los Pastorells capturados, muchos vecinos de Ainsa, Sieste, Boltaña y Monclús que participaron en la masacre.

De entre el listado de personajes no hay ningún «Sampietro» aunque sí aparece un tal Juan de San Pedro, de Aínsa, dentro del grupo de más de 100 simpatizantes de los Pastorells que fueron encausados en el 1320. Este hecho puede alimentar una teoría alternativa sobre el origen de mi apellido porque tampoco he encontrado ninguna reseña a judios conversos con apellidos de santos a raíz de la matanza de la judería de Monclús.

El libro está excelentemente documentado y la única pena es que esté solo en catalán, lo que dificulta la extensión del conocimiento del fenómeno de los Pastorells para los que no conocen esta lengua.