Files
api-company/ROADMAP.md
agent-company d1bcab16e7
Validate Flux manifests / kustomize-build (pull_request) Failing after 22s
docs: update ROADMAP.md and STATUS.md for VIN Decoder sprint wave (#117–#141)
- ROADMAP.md: add VIN Decoder note at top; reference vin-decoder repo in
  Phase 1; add NHTSA vPIC data source note in Phase 2; add Fastify server
  note in Phase 3; add metrics + Gatus items in Phase 4; add docs/blog
  items in Phase 5; add DNS + RapidAPI listing items in Phase 6; update
  revenue target table to reflect 4 APIs
- STATUS.md: add VIN Decoder row to APIs table; document VIN Decoder wave
  #117–#141 with per-issue status; add VIN Decoder P1 blockers (#120, #121,
  #127); record this cycle in Completed This Cycle section

Closes leeworks-agents/api-company#145
Closes leeworks-agents/api-company#146
2026-05-31 10:06:20 +00:00

2.8 KiB

api-company Roadmap

Cross-repo milestones. Per-API phases live in each API repo's ROADMAP.md.

As of 2026-05-30, a 4th API (VIN Decoder) has been added. Per-API phases also live in leeworks-agents/vin-decoder.

Phase 0 — Orientation (one-time)

  • Audit cluster: nodes, namespaces, ingress, Flux state → docs/cluster-audit.md
  • Add Flux GitRepository + Kustomization watching leeworks-agents/api-company
  • Deploy gitea-act-runner in cluster via Flux HelmRelease (flux/gitea-runner/)
  • Stand up registry.leeworks.dev (container registry) — required before any API CI works

Phase 1 — API Contracts

Each API repo writes its openapi.yaml first and lints it. Spec is the source of truth.

  • See: leeworks-agents/zip-enrichment, holidays, air-quality, vin-decoder

Phase 2 — Data

Per-API: pull free public data sources, cache locally (SQLite or in-memory), schedule monthly re-seed.

  • VIN Decoder: NHTSA vPIC as data source — SQLite cache seeded on demand (issue #120)

Phase 3 — Servers

Per-API: implement Fastify/FastAPI service matching openapi.yaml exactly. RapidAPI proxy-secret middleware on every route.

  • VIN Decoder: Fastify server implementation (issue #121)

Phase 4 — Monitoring

  • Prometheus + Grafana via Flux HelmRelease (flux/monitoring/)
  • Gatus public status page at status.leeworks.dev
  • Instrument every API with api_requests_total, api_response_duration_seconds, api_data_freshness_seconds
  • VIN Decoder metrics instrumentation + Grafana dashboard (issue #129)
  • VIN Decoder Gatus health check (issue #134 — closed )

Phase 5 — Documentation site

  • docs-site/ Astro + Redoc skeleton
  • Gitea Actions pipeline that copies per-API openapi.yaml files at build time
  • Deploy to docs.leeworks.dev via Flux
  • One SEO blog post per API minimum (see master prompt §Phase 5)
  • VIN Decoder docs page (issue #123 — closed )
  • VIN Decoder SEO blog post (issue #124 — closed )

Phase 6 — Pre-launch

  • docs/legal/terms-of-service.md
  • docs/legal/privacy-policy.md
  • docs/legal/acceptable-use-policy.md
  • DNS: zip.leeworks.dev, holidays.leeworks.dev, aqi.leeworks.dev, docs., status., registry.
  • VIN Decoder DNS vin.leeworks.dev (issue #130 — closed )
  • VIN Decoder RapidAPI listing (issue #131 — closed as tracker; operator action required)
  • PayPal linked to RapidAPI (manual, on 18th birthday)
  • Paid tiers enabled on RapidAPI listings (manual)

Revenue target

$100/mo net ≈ $136/mo gross after RapidAPI 25% + PayPal ~2%.

Plan baseline Subs needed for net $100/mo
15 Basic @ $9 $122 net
7 Pro @ $19 $97 net
3 Ultra @ $49 $107 net

(Per-API rough math; mix-and-match across all 4 APIs — ZIP Enrichment, Holidays, Air Quality, VIN Decoder.)