Anaconda · AsyncAPI Specification
Anaconda Events
Version
View Spec
View on GitHub
CompanyData ScienceMachine LearningArtificial IntelligencePackage ManagementPythonDeveloper ToolsSoftware Supply ChainRepositoryPackage RegistryCondaMCPAsyncAPIWebhooksEvents
AsyncAPI Specification
generated: '2026-08-02'
method: derived
source: openapi/anaconda-server-openapi-original.json, https://anaconda.com/docs/llms.txt
spec_type: none
asyncapi_published: false
webhooks_published: false
note: >-
Anaconda publishes NO AsyncAPI document and NO webhook catalog — the documentation
index at https://anaconda.com/docs/llms.txt contains zero webhook pages. It does,
however, expose a real event surface: three WebSocket endpoints declared inside the
Anaconda Server OpenAPI (tagged `websocket`), plus an asynchronous audit-event export
pipeline. That surface is catalogued below so it is not silently dropped. Nothing here
is a fabricated specification; no AsyncAPI or Webhooks pointer is wired in apis.yml
because neither exists.
streaming_endpoints:
- protocol: websocket
path: /channels/{channel_name}/cves/ws
operation_id: repo.endpoints.channels.channel_artifacts.cve_report_batched
api: anaconda:server-api
tags: [websocket]
purpose: Batched CVE report stream for every artifact in a channel — the streaming
alternative to paging GET /channels/{channel_name}/cves.
auth: jwt bearer or X-Auth user token
- protocol: websocket
path: /channels/{channel_name}/subchannels/{subchannel_name}/cves/ws
operation_id: repo.endpoints.channels.subchannel_artifacts.cve_report_batched
api: anaconda:server-api
tags: [websocket]
purpose: The same batched CVE report stream scoped to a subchannel.
auth: jwt bearer or X-Auth user token
- protocol: websocket
path: /account/history/ws
operation_id: repo.endpoints.account.publish_events
api: anaconda:server-api
tags: [websocket]
purpose: Publishes account activity/history events to a connected client.
auth: jwt bearer or X-Auth user token
status: the backing REST account-history operation is marked deprecated in the specification
async_job_surfaces:
- name: Audit log bulk export
api: anaconda:audit-logs-api
pattern: submit job -> poll status -> download JSON Lines
operations:
- create_export_job_export_post
- get_export_job_status_export__job_id__get
- download_export_export__job_id__download_get
docs: https://anaconda.com/docs/anaconda-platform/admin/audit-logs/create-export-job
- name: Audit event export (on-premises)
docs: https://anaconda.com/docs/psm-on-prem/6.8.0/admin/advanced/audit_event_export
note: Anaconda Server on-premises can export audit events to an external sink; format
and transport are documented per release rather than as a machine-readable contract.
- name: CVE notification generation
api: anaconda:server-api
operations:
- repo.endpoints.channels.channels_cve_history.generate_cve_notifications
- repo.endpoints.channels.subchannels_cve_history.generate_cve_notifications
note: Generates CVE history/notification records for a channel or subchannel at a
given timestamp. Notification delivery is in-product, not a webhook.
gaps:
- No AsyncAPI document for the three WebSocket channels — message payloads are undocumented.
- No outbound webhooks anywhere in the estate, so a consumer cannot subscribe to CVE,
artifact-upload or seat-assignment events without polling.
x-evidence:
probed:
- {url: 'https://anaconda.com/docs/llms.txt', http_status: 200, webhook_pages: 0}
websocket_operations_found: 3