

API significa interfaz de programación de aplicaciones. Una persona usa un sitio web haciendo clic y leyendo. Un programa no puede hacer clic, así que necesita una ventana de servicio para formular una pregunta precisa y obtener una respuesta precisa en un formato que pueda entender. Esa ventana es la API. Octopart es un sitio web donde nuestros usuarios pueden buscar un componente electrónico y verlo desde todos los ángulos. Esta vista incluye quién tiene el componente en stock, su costo, el estado de su ciclo de vida, atributos técnicos y más. Incluso puede buscar un componente para ver qué otros componentes son similares. La API de Nexar ofrece esa misma información directamente dentro de los sistemas de software empresariales de su compañía.
La API de Nexar consiste principalmente en:
Datos de suministro son la información de piezas de Octopart: el lado de suministro de la API ofrece acceso a más de 95 millones de piezas, con stock, precios, estado del ciclo de vida, plazo de entrega, hojas de datos, atributos técnicos, modelos CAD y sugerencias de piezas similares, obtenidos de distribuidores electrónicos y actualizados diariamente.
Datos de diseño son para clientes de Altium, y cubren el contenido de sus espacios de trabajo de diseño, desde proyectos hasta detalles de componentes. El modelo de datos de Nexar es de valor público aquí: Nexar Voyager. En el modelo de datos, cada operación lleva un prefijo que indica qué toca: sup para suministro, des para diseño y adm para administración de cuentas.

Nexar usa GraphQL, un lenguaje de consulta para APIs. Con otras infraestructuras de API, usted solicita un bloque fijo de datos, recibe todo y escribe código para descartar lo que no quería. Con GraphQL, usted escribe la forma de la respuesta, y esa forma es la que regresa. Aquí está la forma documentada de una búsqueda por MPN (número de pieza del fabricante):
query MpnSearch {
supSearchMpn {
results { part { id name mpn } }
}
}
Léalo en voz alta: ejecuta una búsqueda sobre números de pieza del fabricante, dime cuántos resultados hubo y, para cada resultado, dame el identificador de la pieza, el nombre y el MPN. No regresa nada más. Si pide más, obtiene más. En una demostración en vivo de Altium, la búsqueda de un microcontrolador RA0E2 de la familia Renesas RA devolvió la pieza; al añadir especificaciones técnicas se confirmó que estaba marcada como compatible con RoHS (restricción de sustancias peligrosas); al añadir la hoja de datos se devolvió un enlace al archivo, su nombre y su fecha de creación, porque Octopart puntúa las hojas de datos disponibles y puede devolver la mejor. Nada de eso llegó hasta que se solicitó.
Al igual que Octopart, la API de Nexar es flexible en la forma en que puede buscar un componente. Si desea realizar una búsqueda amplia, puede buscar un MPN parcial o buscar por palabras clave. Si sabe exactamente lo que quiere, entonces puede buscar el MPN exacto.
Para la búsqueda más amplia, la operación que quiere utilizar en la API es ‘supSearch’. Esta operación realizará una búsqueda de coincidencia difusa.
query search {
supSearch (q: "Current sensor") {
hits
results {
part {
id
name
shortDescription
}
}
}
}
En el ejemplo anterior, la búsqueda de “current sensor” devolvería el número de resultados, los ID de las piezas, los nombres y una breve descripción del componente.
La operación ‘supMultiMatch’ toma una lista de hasta 100 piezas, identificadas por MPN o por SKU (unidad de mantenimiento de stock), y las resuelve en conjunto. A diferencia de ‘supSearch’, cuando utiliza ‘supMultiMatch’ se ignoran todas las coincidencias parciales. Este ejemplo consulta dos componentes:
query MultiSearch {
supMultiMatch (queries: [
{mpn: "SY55855VKG", limit: 1},
{mpn: "BAV99-7-F"},
]) { hits parts { id name mpn } }
}
Cada entrada puede ser una línea de una BOM (lista de materiales), de modo que toda una lista se cotiza sin que nadie tenga que abrir un navegador.
El diseño funciona de la misma manera. Las operaciones con el prefijo des, como ‘desWorkspaces’, acceden a sus espacios de trabajo de Altium 365. Debido a que los datos tienen forma de grafo, usted sigue las relaciones hacia afuera desde donde comience: de un espacio de trabajo a los diseños que contiene, y de un diseño a lo que incluye, que abarca desde redes y detalles de componentes hasta MCAD (diseño mecánico asistido por computadora) e información posicional. Usted elige qué tan lejos avanzar y cuánto de cada parada traer de vuelta.
Leer es solo la mitad. Una mutación escribe: agregar un comentario, cargar un proyecto. Cuando una operación necesita un archivo, primero lo publica en el servicio de archivos de Nexar, en files.nexar.com/File/Upload, pasando un token que lleva los alcances design.domain, user.access y openid. Lo que regresa es un identificador, válido durante 24 horas si no se usa, al que usted hace referencia en la propia solicitud. Trate ese identificador como opaco, porque su formato está sujeto a cambios.
El valor se aprecia con más facilidad observando cómo tres funciones ya emplean su tiempo y en qué parte de ese tiempo la API les devuelve valor.
En un EMS (proveedor de servicios de fabricación electrónica) o un OEM (fabricante de equipos originales), esta persona confirma que cada pieza de una fabricación está en stock, encuentra un distribuidor que pueda cumplir la fecha de entrega, entiende el precio y realiza el pedido. Eso puede ser un puñado de pedidos por semana o de 50 a 100 al día. El trabajo normalmente se hace pieza por pieza desde una hoja de cálculo: escribir un MPN, comprobar disponibilidad, hacer clic hasta el distribuidor y repetir. Primero se revisan los distribuidores autorizados, y la búsqueda se amplía a corredores no autorizados solo si no hay nada en stock. Muchos compradores vuelven a comprobar inmediatamente antes de hacer el pedido, por si algo cambió durante la noche.
Cada uno de esos pasos tiene un equivalente arriba. Una consulta a la API reemplaza cien búsquedas separadas. Usar el filtro de solo autorizados en la API equivale al mismo instinto de “primero los preferidos, luego ampliar”, pero escrito como una configuración en lugar de una segunda ronda de búsqueda manual. La reverificación previa al pedido se convierte en una tarea que se ejecuta según una programación y alerta solo cuando algo ha cambiado. Lo que se recupera no es el criterio, que sigue estando en manos del comprador, sino la escritura y el cambio de pestañas que actualmente lo consumen. Los precios contractuales negociados previamente siguen estando del lado del distribuidor, por lo que la API sirve para preseleccionar y detectar cambios, no para reemplazar la orden de compra.
En un OEM, esta persona es responsable del ciclo de vida del diseño eléctrico, desde el diagrama de bloques hasta la selección de componentes, la captura esquemática, el layout y la liberación de la BOM. Su restricción principal es contundente: un componente que no puede abastecerse es un problema de diseño. Por eso se usa Octopart como paso de validación, para responder “¿realmente se puede comprar esta pieza, y en más de un lugar?” y como herramienta de descubrimiento para encontrar y comparar candidatos. La amplitud de distribuidores es en sí misma la señal, porque una pieza almacenada por un solo distribuidor (o con varios distribuidores pero con un inventario total que disminuye semana tras semana) es un riesgo de la cadena de suministro antes incluso de convertirse en un problema de compras.
Llevado a la API, esa verificación deja de ser un reflejo pieza por pieza y se convierte en una compuerta. Cada línea de una BOM puede comprobarse en el momento de la liberación, y cualquier elemento con un solo distribuidor, poco stock o una marca de ciclo de vida puede señalarse antes de que se apruebe el diseño, en lugar de meses después. El riesgo específico y costoso que esto aborda es que una pieza llegue a EOL (fin de vida) después de haber sido incorporada al diseño, obligando a un rediseño. Las hojas de datos también pueden incorporarse a sus propias herramientas al mismo tiempo, aunque los ingenieros seguirán verificando las especificaciones contra la propia hoja de datos, como debe ser.
Presente en OEM medianos y grandes, especialmente en los sectores aeroespacial, defensa, automotriz y médico, esta persona normalmente no crea diseños nuevos. Gestiona las piezas que ya están en producción: mantiene actualizada la biblioteca de piezas aprobadas, detecta la obsolescencia antes de que se convierta en una crisis y califica alternativas cuando una pieza se descontinúa. Las piezas en riesgo se colocan en una lista de seguimiento que se revisa periódicamente, en parte porque una pieza descontinuada a veces vuelve al mercado.
Una lista de seguimiento con autoverificación es la ventaja más clara de este artículo. En lugar de depender de que alguien recuerde volver a revisar una lista, una consulta programada la recorre e informa las excepciones. Como una sola aplicación puede mantener juntos los ámbitos de suministro y diseño, la biblioteca puede leerse desde el lado del diseño y compararse con datos de mercado en vivo del lado del suministro en la misma ejecución, convirtiendo una auditoría manual periódica en un informe permanente. Octopart sigue abriendo el embudo en lugar de cerrarlo: de aquí provienen los candidatos alternativos y la disponibilidad en el mercado, mientras que la verificación de forma, ajuste, función, cumplimiento y ciclo de vida sigue realizándose en herramientas PLM (gestión del ciclo de vida del producto) y proveedores de datos especializados.
Ninguna de estas personas busca visitar un sitio web nuevo. Lo que piden es que la respuesta llegue dentro del sistema en el que ya trabajan, en el momento en que importa, sin que alguien tenga que ir a buscarla. Para eso sirve una API, y se parece bastante a cómo Nexar describe su propio propósito: democratizar la información y unir a las personas para que puedan trabajar con mayor eficiencia y tomar decisiones empresariales más inteligentes.
Puede ejecutar todos los ejemplos anteriores en un editor GraphQL como Nitro (antes Banana Cake Pop) o Postman antes de escribir una sola línea de código de aplicación. Los endpoints son api.nexar.com/graphql para la API, identity.nexar.com/connect/token para los tokens y files.nexar.com/File/Upload para las cargas.
Vea la API en acción. Rob Barton, Head of Platform API en Altium, recorre la evolución de la API de Altium y ejecuta consultas en vivo sobre datos de suministro de Octopart en el pódcast OnTrack: Altium API Deep Dive: Opening PCB Data to Developers en YouTube.
Escuche el episodio. OnTrack: The PCB Design Podcast, presentado por Zach Peterson.
Explore el modelo de datos. Nexar Voyager ofrece una representación visual del esquema GraphQL.
Lea la documentación. La documentación completa y un glosario de términos están disponibles en support.nexar.com. En el GitHub de NexarDeveloper se publican ejemplos de código prácticos.