Traducción automática
Esta página fue traducida automáticamente por IA y puede contener errores. Si algo no está claro, consulte la fuente en inglés.
Descubrimiento de Endpoints y Hoja de Ruta de Mejoras¶
Parte de la referencia de la API web de Perplexity — mapa completo en el índice de API.
1. Elementos conocidos no explorados / por determinar¶
- Campo de ordenación de
list_collection_threadsy semántica exacta detotal_threads(instantánea de cuenta activa de julio de 2026: reportó 99 frente a 27 elementos de nivel superior). - Espectro completo de valores de
threadAccess/access/user_permission(muestra observada en julio de 2026: threadAccess 5 normal, 1 con 🔒; collection access 1; permission 4 owner / 2 can edit; los datos de assets también incluyen thread_access). - Formas correctas de los parámetros para
list_ask_threads,list_scheduled_computer_tasks(GET directo devuelve 400). - Estructuras de respuesta de
collections/*/request-access-info,spaces/<uuid>/recurring_tasks,assets/<id>/members. - Por qué las operaciones GraphQL del panel de control no están registradas (PERSISTED_QUERY_NOT_FOUND): desfase de versión o restricción de contexto; cuando sea necesario, reextraer con hashes en vivo de la captura de red.
- División de trabajo entre
frontend_uuidvsuuidvscontext_uuiden hilos de Computer. - Campos de señal de API de hilos de rama compartidos entre cuentas (branch_of) (puntero padre / marcador de rama) — mecanismo confirmado (final de §3.3); ninguna instancia archivada al 23 de julio de 2026; verificar y registrar cuando aparezca la primera.
2. Método de descubrimiento de endpoints: análisis estático del bundle del frontend (coste de API cero; establecido el 20 de julio de 2026)¶
Se descubrieron 147 endpoints de /rest/ en una pasada; el método es reutilizable (reejecutar después de rediseños del frontend):
- La entrada de carga de página
_spa/assets/index.html-*.jsreferencia abootstrap-*.js(el runtime contiene todos los mapeos de chunks); - Extraer 682 nombres de archivos de chunk (patrón
<name>-<hash8>.js) del bootstrap; filtrar los relacionados con API por nombre (client/api/thread/collection/space/computer…); - Descargar directamente desde la CDN pública
https://pplx-next-static-public.perplexity.ai/_spa/assets/<chunk>.js(no se necesita cookie); módulos hub:platform-core-*(cliente API),spa-shell-*,spa-metadata-*; grep -o '/rest/[a-zA-Z0-9_/.$_{}-]*'produce la lista de endpoints (147);- Los chunks también filtran formas de llamada (por ejemplo,
format:'md'yfile_content_64de export). - También existen sourcemaps:
https://pplx-static-sourcemaps.perplexity.ai/_spa/assets/<chunk>.js.map(no explorados).
2.1 Apéndice: 147 endpoints agrupados por categoría (relevancia para archivo marcada)¶
- thread:
/rest/thread/{entry_uuid_or_slug},/rest/thread/export★,/rest/thread/{uuid}/members,/rest/thread/list_recent,/rest/thread/list_ask_threads,/rest/thread/list_pinned_ask_threads,/rest/thread/list_scheduled_computer_tasks,/rest/thread/request-access-info/{uuid} - collections/spaces★: ver la tabla completa de §3.3 (incluye batch_move/batch_remove, list_user_collections, request-access-info, recurring_tasks, pins/threads, scheduled_threads)
- assets★:
/rest/assets/{asset_id}/data,/rest/assets/{asset_id}/members,/rest/assets/{asset_id}/published-access,/rest/assets/sites/{site_id}/publish-info - analytics:
/rest/analytics/computer/usage,/rest/analytics/computer/usage/members(ambos 403 NOT_ORG_MEMBER — solo cuentas de organización) - models/skills:
/rest/models/config(/v2),/rest/skills,/rest/skills/selectable,/rest/skills/grants,/rest/skills/submissions(/source) - files/uploads:
/rest/file-repository/*(list/download/get-file-upload-urls/delete-files…),/rest/files/list(/list-infinite/list-errors),/rest/uploads/(batch_)create_upload_url(s),/rest/connectors/attachments/upload - tasks/computer:
/rest/tasks/,/rest/tasks/{task_id},/rest/tasks/shortcuts/mentions,/rest/tasks/shortcuts/paste/{copy_token},/rest/computer/asset,/rest/computer/menu,/rest/computer/onboarding_cards - user/auth:
/rest/user/settings,/rest/user/get_user_ai_profile,/rest/user/promotions,/rest/user/site-instructions,/rest/auth/get_special_profile,/rest/visitor/* - billing/stripe:
/rest/billing/*(credits/paypal/subscription…),/rest/stripe/* - enterprise/org:
/rest/enterprise/*,/rest/organizations/{id}/credit-limits*,/rest/pplx-api/v2/enterprise-api-org - sse:
/rest/sse/attachment_processing/subscribe,/rest/sse/index_files,/rest/sse/perplexity_terminate,/rest/sse/related-queries/{entry_uuid} - verticals (irrelevantes para archivo):
/rest/finance/*,/rest/sports/*,/rest/travel/hotels/{slug},/rest/health-assistant/*,/rest/article/{uuid_or_slug} - misc:
/rest/pins,/rest/rate-limit/(all|status),/rest/notifications/web-push/*,/rest/attribution/*,/rest/homepage-widgets/upsell,/rest/ntp/upsell/,/rest/sidebar/upsell/,/rest/incentives/comet-activation,/rest/connector-service/usage
(★ = directamente relevante para archivo)
3. Estado de capacidad de endpoint a herramienta y hoja de ruta¶
El estado de implementación a continuación se sincronizó con el código actual y el conjunto de pruebas el 24 de julio de 2026. La evidencia de la API mantiene la fecha y el alcance de la observación en vivo original o el análisis estático; esta sincronización de documentación no volvió a sondear endpoints privados. Los recuentos de cuentas/archivos son instantáneas, no garantías a nivel de plataforma.
Significados de estado:
- Implementado — una CLI actual o ruta de producción utiliza el endpoint para la capacidad indicada.
- Parcial — el endpoint está en uso, pero la capacidad descendente en la hoja de ruta sigue incompleta.
- Probado, no integrado — se observó el comportamiento de la API en vivo, pero ninguna ruta de herramienta lo consume.
- Planificado — existe evidencia, pero la implementación no ha comenzado.
- Bloqueado — un bloqueador upstream o de protocolo conocido impide la implementación.
- Cerrado — la evidencia refutó el uso propuesto o lo colocó fuera del alcance.
3.1 Matriz de estado de capacidad¶
| Endpoint / operación | Base de verificación | Integración actual | Estado | Brecha restante |
|---|---|---|---|---|
collections/get_collection |
observación en vivo + código actual | spaces --fetch-meta construye el índice de propietario/miembro del espacio |
Implementado | — |
collections/list_collection_threads |
observación en vivo + código actual | space-index usa REST por defecto con mapeo de ID dual context_uuid; WebBridge es alternativa |
Implementado | El orden de clasificación y la semántica exacta de total_threads siguen sin determinar |
assets/<uuid>/data |
probado en vivo el 20 de julio de 2026 + código actual | assets-backfill --online actualiza las URL firmadas para UUIDs de assets reales |
Implementado | Los handles de espacio de trabajo en la nube de toolu_ están fuera de la cobertura de este endpoint |
LibraryThreadsRelayQuery y consulta de paginación |
APQ capturado + código actual | index/batch proporcionan indexación completa y parada temprana incremental |
Implementado | Las consultas de filtro de modo del panel de control siguen bloqueadas por separado |
collections/list_user_collections |
observado en vivo en julio de 2026 + código actual | init usa una coincidencia de título exacta para descubrir el espacio BOT |
Parcial | Construir un registro de espacios autoritativo de la cuenta para el descubrimiento de nuevos espacios y la reconstrucción de spaces |
credits/thread-usage |
probado en vivo el 20 de julio de 2026 + código actual | usage-backfill escribe index/credit_usage_<account>.json |
Parcial | Decidir si enriquecer thread.json y/o las filas del índice de la biblioteca sin duplicar la autoridad |
models/config/v2 |
probado en vivo el 21 de julio de 2026 + código actual | pplx-ask models lista modelos/valores predeterminados; las constantes de normalización se verifican contra él |
Parcial | Persistir metadatos de visualización de modelos estables en registros de archivo/índice si es útil |
POST /rest/thread/export |
md/pdf/docx probado en vivo el 20 de julio de 2026 | sin integración en CLI | Probado, no integrado | Archivado multiformato y reconciliación de Markdown oficial |
rate-limit/status |
observación de carga de página; semántica de respuesta no explorada | ninguno | Planificado | Validar semántica antes de usarlo para limitación adaptativa |
file-repository/list-files |
solo análisis estático del frontend | ninguno | Planificado | Validar si puede enumerar/rescatar handles de toolu_; una instantánea de archivo de julio de 2026 registró 270 handles sin un canal de descarga |
pins, tasks/{id} |
análisis estático del frontend / observaciones de carga de página | ninguno | Planificado | Enriquecimiento de estado y duración de tareas de Computer |
thread/<uuid>/members |
probado en vivo en julio de 2026 | ninguno | Planificado | Aristas de uso compartido a nivel de hilo para el grafo de relaciones |
GraphQL del panel de control threadGroup + filtros de modo |
llamadas directas devolvieron PERSISTED_QUERY_NOT_FOUND |
ninguno | Bloqueado | Recuperar hashes de consulta persistida en vivo o establecer el contexto requerido |
related_queries / sse/related-queries |
análisis forense de todo el archivo resuelto el 23 de julio de 2026 | deliberadamente no produce aristas de relación | Cerrado | Reabrir solo si nueva evidencia establece una identidad de hilo resoluble |
3.2 Hoja de ruta activa¶
3.2.1 P0 — Integración de exportación oficial¶
- Archivado multiformato: conservar opcionalmente los productos PDF/DOCX devueltos por
POST /rest/thread/export. - Reconciliación de renderizador: comparar el Markdown oficial de todo el hilo con
conversation.mdcomo señal de regresión independiente.
3.2.2 P1 — Descubrimiento de espacios¶
- Promover
list_user_collectionsde búsqueda por título BOT a un registro de espacios autoritativo y con ámbito de cuenta utilizado para el descubrimiento de nuevos espacios y la reconstrucción despaces.
3.2.3 P2 — Metadatos, control de riesgos y rescate de assets¶
- Decidir y documentar el límite de autoridad para el uso de crédito: mantener el
credit_usage_<account>.jsondedicado, o también enriquecerthread.json/ filas de la biblioteca. - Agregar metadatos de visualización de modelos, estado de pin, duración de tareas de Computer y relaciones de uso compartido de hilos solo donde la semántica del endpoint sea estable.
- Validar
rate-limit/statusantes de diseñar la limitación adaptativa. - Probar
file-repository/list-filescomo posible ruta de rescate detoolu_antes de agregar cualquier mutación de archivo.
3.2.4 P3 — Descubrimiento bloqueado¶
- Recapturar los hashes de consulta persistida de GraphQL del panel de control solo si la indexación incremental por modo se vuelve lo suficientemente valiosa como para justificar el costo de mantenimiento.
3.3 Decisiones cerradas / no adoptadas¶
- Exportación oficial como fuente de informes: refutado. El endpoint devuelve
Markdown de todo el hilo sin el cuerpo del informe; la cadena de URL firmada sigue
siendo la fuente oficial para
report.md(§3.6). - Relaciones de
related_queries: refutado el 23 de julio de 2026. Los UUIDs de elementos no son UUIDs de hilos y los textos de recomendación no se resolvieron en consultas archivadas; no se construyen aristas de relación (§4). analytics/computer/usage(/members): observado como solo para organizaciones (403 NOT_ORG_MEMBER) para las cuentas probadas.thread/request-access-info: probado como relacionado con la unión a organizaciones, no una señal dethreadAccess.- Los verticales de facturación/Stripe/empresa y finanzas/deportes permanecen fuera del alcance de la herramienta de archivo.
Este documento complementa pplx_export/README.md (arquitectura de la herramienta) y overview.md (diseño del sistema).