# (c) cavaliba.com - api/ package
# ruff: noqa: F401

"""
app_data.api: REST-ish endpoints under /api/, apikey-authenticated via
app_data.api.aaa.start_api(). Routing lives in urls.py; workflow conventions
(routing, auth, permission gating, response/param conventions, tests, docs to
update) are documented in API.md.

Module inventory:

    aaa         - API key authentication (start_api) and stat bookkeeping
    helper      - response builders (send_response/send_error/...) and
                  common GET-parameter parsing (page/size/expand/refs/rev)
    ping        - /api/ and /api/ping/ (no auth)
    testapi     - /api/test/ (diagnostics)
    version     - /api/version/
    info        - /api/info/ (object counts)
    schema      - /api/schemas/
    asset       - /api/assets/ (generic Instance read/search)
    app_status  - /api/appstatus/worklist/ (status poller protocol)
    permission  - /api/permissions/
    keyname     - /api/keyname/ (rename an instance's keyname)
    load        - /api/load/ (synchronous small-batch JSON write via load_broker)
    conf        - /api/conf/ (read/write CavalibaConfiguration DB rows)
    pipeline    - /api/pipelines/ (list, run)
    rawfile     - /api/rawfile/ (json/yaml/csv bulk import, optional pipeline) - was /api/import/
    task        - /api/tasks/ (list, poll, stop async DataTask)
"""

from . import (
    app_status,
    asset,
    conf,
    info,
    keyname,
    load,
    permission,
    ping,
    pipeline,
    rawfile,
    schema,
    task,
    testapi,
    version,
)  # noqa: F401
