Skip to content

feat(docs): pre-built Postman collection generated from /openapi.json#59

Merged
CryptoJones merged 1 commit into
masterfrom
feat/postman-collection
May 18, 2026
Merged

feat(docs): pre-built Postman collection generated from /openapi.json#59
CryptoJones merged 1 commit into
masterfrom
feat/postman-collection

Conversation

@CryptoJones
Copy link
Copy Markdown
Owner

Summary

Adds setup/TimeTrackerAPI.postman_collection.json — 47 endpoints in 16 entity folders, generated from app/config/openapi.js via openapi-to-postmanv2. Single source of truth stays OpenAPI; this is just a derived artifact for the Postman/Bruno/Insomnia crowd.

README gets the import-it pointer + the regenerate one-liner so future API changes can refresh the collection in one command.

Test plan

  • jq confirms valid v2.1 collection with info.name = "TimeTrackerAPI"
  • 2 top-level folders (healthz + v1), 16 entity subfolders under v1
  • Generated via the same command documented in README
  • Manual import into Postman (haven't run it through Postman UI in this session)

Proudly Made in Nebraska. Go Big Red! 🌽 https://xkcd.com/2347/

setup/TimeTrackerAPI.postman_collection.json — 47 endpoints across
16 entity folders, generated via openapi-to-postmanv2 from the
single source of truth in app/config/openapi.js. README adds a
short pointer + the one-liner to regenerate after API changes.

Why generate, not hand-write:
  - app/config/openapi.js is the spec we already maintain
    (PR #50 conventions kept it in sync with router additions).
    Hand-writing a separate Postman collection would create a
    second source of truth that immediately drifts.
  - openapi-to-postmanv2 is the canonical generator and produces
    a v2.1 collection that imports cleanly into Postman / Bruno /
    Insomnia.

The 1MB collection size is example-payload bloat from the
generator — unavoidable without templating support that Postman
v2.1 doesn't fully expose. Worth the cost for "import → click →
authenticated request" out-of-the-box ergonomics.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
@CryptoJones CryptoJones merged commit 8811b7e into master May 18, 2026
@CryptoJones CryptoJones deleted the feat/postman-collection branch May 18, 2026 00:28
CryptoJones added a commit that referenced this pull request May 18, 2026
Continues the docs-sync pattern from #44 and #53. CHANGELOG
[Unreleased] now reflects:

  Added:
    - Sequelize associations (#54)
    - Integration test harness (#55)
    - Postman collection (#59)
    - TLS reverse-proxy compose (#60)
    - docker-compose.override.yml committed (#56)

  Fixed:
    - setup/TimeTracker.sql idempotency (#57) — removes the
      \`docker compose down -v\` workaround

  Docs:
    - Integration bring-up flow (#56, #58)
    - README sections for Testing and Behind TLS

Co-authored-by: Aaron K. Clark <akclark@thenetwerk.net>
Co-authored-by: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant