Altium DBLib API

API REST que permite gestionar librerías de componentes DBLib de Altium.
Cómo surge
Tras retomar proyectos en los que necesitaba construir ciertas partes hardware (proyectos que iré publicando en este blog) fui observando que cada vez me resultaba más trabajoso mantener mis antiguas librerías de componentes, en especial en lo que a pasivos SMD se refiere. Las librerías empezaron a ser un nido de componentes copiados-pegados con simples cambios en el valor de los pasivos y empezaba también a complicarse el propio hecho de conocer qué tenía y que no tenía en las librerías distribuidas en múltiples ficheros. Tras buscar alternativas todo apuntaba a que la mejor solución era migrar mis ficheros de librería a una basada en base de datos, por lo que instalé MSSQL en una VM y empecé a montar las tablas iniciales con la estructura que requiere Altium. Aquel cambio fue un gran salto, sabía en todo momento qué tenía y sobretodo, sabía que no tendría que generar un nuevo símbolo para cada pasivo que introdujese, lo que me permitía trabajar ya cómodamente con componentes reales con fabricante y part number y no con componentes genéricos que complican la posterior gestión de la BOM. Sin embargo, seguía siendo muy trabajoso gestionar los ficheros PCBlib y SCHlib de footprints y símbolos respectivamente, por lo que pensé que era buena oportunidad automatizar el proceso de alta de un nuevo componente, footprint o símbolo. De esta idea nació esta API.
Qué ofrece
La API ofrece endpoints REST a través de los cuales es posible introducir en la base de datos componentes, símbolos y footprints y establecer entre ellos las relaciones oportunas con el fin de crear un componente que puede ser leído por Altium. Además, desde su versión 1.2.0, se ofrece la posibilidad de gestionar el stock de los componentes pudiendo establecer niveles de stock y alarmas.
La API ofrece endpoints REST a través de los cuales es posible introducir en la base de datos componentes, símbolos y footprints y establecer entre ellos las relaciones oportunas con el fin de crear un componente que puede ser leído por Altium. Además, desde su versión 1.2.0, se ofrece la posibilidad de gestionar el stock de los componentes pudiendo establecer niveles de stock y alarmas. Hasta el momento no existen interfaces gráficas con las que poder interactuar con la API, por lo que a día de hoy el consumo de la misma se realiza a través de CURL o bien a través del cliente Postman, que hace que su utilización sea relativamente sencilla.