Recuperar esos identificadores de hilo pesados con un bookmarklet cómodo If you’ve been building on top of OpenAI’s shiny Assistants API, you’ve probably hit the same wall I did: There’s no API endpoint to list your thread IDs. None. Zero. Nada. No hay un punto final de la API para listar sus identificadores de thread. No hay nada. cero. Puedes crear un thread ( ) de POST /v1/threads Puede descargar un hilo si ya conoce su ID ( ) de GET /v1/threads/{id} Usted puede incluso eliminar una ( ) de DELETE /v1/threads/{id} Si desea una simple para enumerar todos los threads que has creado? No existe, y la ausencia de ese punto final único cambia todo sobre cómo se construye en la parte superior de esta plataforma. GET /v1/threads Forget it. El hecho de que falta una pieza tan básica del ciclo CRUD hace que los desarrolladores sientan que están trabajando ciegamente. Esa elección de diseño se siente intencional. OpenAI quiere empujar la persistencia de nuevo en usted: “Es tu responsabilidad almacenar los identificadores de thread”. But half the time we’re just prototyping so: No tenemos una tabla de bases de datos para los threads. No queremos construir un tubo de almacenamiento de datos solo para probar una idea. Sólo queremos disparar un montón de cables de prueba, ver lo que sucede y seguir adelante. Y luego llega el día en que te das cuenta de que has generado cientos (o decenas de miles dependiendo de la escala) de hilos, y ahora tienes que limpiarlos, auditarlos, o simplemente confirmar lo que existe. Es cuando te metes en la pared y ni siquiera puedes ver lo que has creado.Cuanto más piensas en ello, más te das cuenta de que este es un problema de visibilidad que afecta a todo, desde el desgaste hasta la conformidad. La brecha OpenAI deja ampliamente abierta Every sane API platform in the known universe usually has a list endpoint. Es el ciclo de vida CRUD más básico - Crear, leer, actualizar, eliminar.Y el "R" no se trata sólo de recoger un registro, también se trata de enumerarlos. Los desarrolladores esperan poder preguntar, Al dejarlo fuera, OpenAI efectivamente te obliga a registrar y almacenar IDs desde el primer día - o arriesgarte a perder el rastro por completo. “¿Qué es lo que existe?” From a developer’s perspective, that’s a liability. From a data management perspective, it’s a bloody mess. From a security standpoint? A fucking nightmare. Menos puntos finales de la lista significa menos responsabilidad por qué datos todavía existen en su lado. Sin un punto final de listado, no se puede auditar el uso. No puedes limpiar fácilmente los experimentos estables. No se puede automatizar la gestión del ciclo de vida. Estás dejado en la oscuridad, esperando confiar en tus propios registros y nunca preguntar qué está sentado allí. Ya sea que se trate de seguridad, privacidad o simplemente de mantener la superficie de la API más pequeña, el resultado es el mismo: Esa ausencia no sólo causa inconvenientes, sino que crea desconfianza, lo que hace que los desarrolladores se pregunten si realmente tienen el control de lo que crean. we can’t list our own threads. Rodea los endpoints de la lista de OpenAI con tu navegador y My Simple JavaScript Bookmarklet If OpenAI won’t give us a list endpoint, well, we’ll just have to pull up our pants and scrape the goddamn thing. Pero en lugar de construir alguna herramienta estúpidamente específica usando un agente de flujo de trabajo sin cabeza, y más más de lo que usted puede recordar correctamente... ya tiene la herramienta perfecta. Python Tu navegador y un humilde bookmarklet de JavaScript. Un bookmarklet es sólo un marcador de navegador que ejecuta JavaScript contra la página en la que estás.Y si estás mirando los registros de respuesta de la API en el navegador, ya tienes todos los identificadores de filtro que necesitas - simplemente están enterrados en el texto. Pero lo mejor de todo es que el bookmarklet no le importa si la página está formata o bonita. Es lo más cercano a un “punto final de la lista de los pobres”. thread_... Here’s the magic snippet: javascript:(function(){ const ids = [...document.body.innerText.matchAll(/thread_[A-Za-z0-9]+/g)] .map(m => m[0]); if (!ids.length) { alert("No thread IDs found on this page."); return; } navigator.clipboard.writeText([...new Set(ids)].join("\n")) .then(() => alert("Copied " + ids.length + " thread IDs to clipboard!")); })(); Añádelo como la URL de un marcador de navegador, haz clic en cualquier página en la que aparezcan los ID de hilo, y boom: cada La cadena se rasca, deduplica y copia en su clipboard. thread_... No hay plugins. No hay extensiones. No hay herramientas de gimnasia de desarrolladores. Solo un clic. So yes, it takes a little time… Escalera Cargar más Escalera Cargar más Pero una vez que llegue al final (o a su longitud deseada), puede simplemente hacer clic en el bookmarklet guardado arriba... y hacer una lista ordenadamente copiada de ID de filtro para que pueda hacer con lo que desee. ¿Por qué esto importa This isn’t only a neat, functional hack. It’s a reminder of the gap between developer needs and API design. Estamos acostumbrados a las APIs transparentes y de ciclo de vida completo.La decisión de OpenAI de dejar fuera la lista de thread se siente como un patrón oscuro, lo que nos hace más difíciles de ver lo que se acumula en el fondo. Si mantienen esos datos o no está fuera del punto - lo que importa es que No podemos comprobarlo nosotros mismos. Si está construyendo un producto regulado donde la audibilidad importa, literalmente no puede probar cuáles son los hilos que ha sacudido. Si estás experimentando, estás garantizado de crear una confusión que no puedes ver. El bookmarklet es una forma de recuperar esa visibilidad. No soluciona la API que falta, pero te da la agencia. Con un solo clic, puedes ver cada ID de hilo visible en tus registros, clipboardlos y pipa-los en un flujo de eliminación en masa. También redefine la relación: los desarrolladores no deben tener que confiar en los hackers para obtener información sobre sus propios recursos.Esto es una señal de que la plataforma no está sirviendo a sus usuarios como podría.El bookmarklet funciona, pero su propia existencia destaca el desequilibrio. Qué hacer una vez que tenga su Thread ID Ponerlos en un archivo de texto, Google Sheet, lo que sea. Guardarlos para la referencia, ordenar y dedupe si es necesario. Usa una solicitud HTTP para loop sobre cada ID y llame DELETE /v1/threads/{id}. Nuke todo.Si ya no necesita esos hilos, borralos y duerma mejor sabiendo que han desaparecido.Hazlo en pedazos gestionables para mantenerse por debajo de los límites de tasa de API. Añade un plan de ciclo de vida. En el futuro, decida si desea registrar los ID de forma permanente, borrarlos inmediatamente después de usarlos o almacenarlos temporalmente con un TTL. Automatiza la limpieza. Configure una tarea o flujo de trabajo recurrente que borre automáticamente los ID antiguos. Combine con alertas para que sepa cuándo se quedan los hilos. Audite periódicamente. Incluso si usa el bookmarklet, haga un hábito de comprobar lo que está ahí en un horario. La imagen más grande OpenAI podría resolver esto con un punto final estúpidamente simple: GET /v1/threads Los desarrolladores no tendrían que raspar, bookmarklet o spelunk a través de los registros n8n. Hasta que lo hagan, sin embargo, bookmarklets como este son la cinta de conducto que mantiene las cosas en movimiento. That’s it. Es absurdo que necesitemos hacks de navegador para gestionar nuestros propios recursos. Rompe la confianza que los desarrolladores tienen en una API cuando falta una pieza básica de funcionalidad.No deberíamos ser obligados a inventar soluciones para lo que deberían ser las apuestas de mesa. Esto es más que un inconveniente para el desarrollador: es un problema de visibilidad. La visibilidad es responsabilidad. Sin ella, los usuarios no pueden probar qué datos existen, no pueden borrar con confianza y no pueden construir una automatización fiable. El bookmarklet es una bandaje inteligente, pero la herida es la omisión deliberada de OpenAI.Pero en la práctica, deja a todos los desarrolladores constantemente en segundo plano: ¿Qué he creado? ¿qué todavía está sentado allí? ¿Estoy realmente en el control? Cuando confiamos en los hackers para gestionar nuestro propio contenido, subrayamos cuánto poder tiene la plataforma sobre nosotros, y cuánto recurso tenemos cuando se retiene la funcionalidad. Sí, la API de Asistentes es potente, pero la potencia sin la simple visibilidad estándar es peligrosa.Si usted es serio acerca de usarlo en la producción, comience a registrar sus ID de thread desde el primer día. Pero si usted es como el resto de nosotros - arruinarse, prototipar rápidamente, y luego darse cuenta de que necesita limpiar - mi bookmarklet es su mesías. Click, copy, paste, delete. Done. Y quizás, sólo quizás, OpenAI tomará la pista y nos dará el único punto final que todos los desarrolladores esperan: una manera de listar nuestros propios recursos. Until then, hacks like this bookmarklet aren’t just useful. They’re essential. Hasta entonces, hacks como este bookmarklet no son sólo útiles.