Skip to content

Retire API v1 ingest URLs (/api/raw-packet/, legacy node paths) #319

@pskillen

Description

@pskillen

Summary

Meshtastic packet ingest v1 used unscoped URLs (POST /api/raw-packet/, /api/nodes/) that predate the current packets app layout. v2 uses observer-scoped routes:

  • POST /api/packets/{node_id}/ingest/
  • POST /api/packets/{node_id}/nodes/

OpenAPI now documents v2 paths and marks POST /raw-packet/ as deprecated (SP-01 #308). v1 is not registered in the current Django urlconf (Meshflow/urls.pypackets.urls only exposes {node_id}/ingest/ and {node_id}/nodes/).

Goal

Formally retire v1 on the API side and coordinate with meshflow-bot dropping STORAGE_API_VERSION=1 (see linked bot issue).

Scope (API)

  • Confirm no production urlconf / reverse-proxy still depends on /api/raw-packet/ (or document explicit redirect shim if required during transition)
  • Remove or gate any dead v1 view code if it still exists in the tree
  • Update operator docs (docs/features/packet-ingestion/, deploy examples) to state v2-only
  • After bot default is v2 and operators migrated: remove deprecated POST /raw-packet/ from openapi.yaml (or keep stub only if a compat redirect remains)

Out of scope

  • URL prefix rename /api/packets//api/meshtastic/ (meshcore rename SP-03+)
  • MeshCore ingest (/api/meshcore/packets/ingest/)

Related

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions