Skip to main content

Trading Card API Changelog

Stay up-to-date with the latest changes, improvements, and new features in the Trading Card API itself.

API vs Documentation Changes

This page shows changes to the Trading Card API service. For changes to this documentation site, see the Documentation Changelog.


Latest Releases

All notable changes to the Trading Card API are documented here. The API follows Semantic Versioning and maintains a Keep a Changelog format.


🚀 Recent Updates

📦 [0.4.7] - September 18, 2025

Latest Release

This is the current production version of the Trading Card API.

📦 [0.4.7] - September 18, 2025

Latest Release

This is the current production version of the Trading Card API.

Fixed

  • Fix JSON escaping in trigger-docs-update.yaml workflow

🔗 Release Information


🔗 Release Information


📦 [0.4.6] - September 18, 2025

📦 [0.4.6] - September 18, 2025

Added

  • Add workflow to trigger documentation updates on releases

Changed

  • Trigger CI after cleaning up test tags

🔗 Release Information


🔗 Release Information


📦 [0.4.5] - September 7, 2025

🔄 Latest API Release

✨ Key API Features

  • Comprehensive rate limiting with Redis backend
  • OAuth2 authentication with Laravel Passport
  • JSON:API specification compliance
  • UUID primary keys for all resources
  • Polymorphic relationships and advanced querying
  • OpenAPI/Swagger documentation with interactive explorer

📚 Additional Resources

🔗 Release Information


📦 [0.4.4] - September 5, 2025

📦 [0.4.4] - September 5, 2025

Added

  • Add commit deduplication to changelog script
  • Add token fallback for Dependabot PRs

Changed

  • github-actions(deps): bump actions/download-artifact from 4 to 5

🔗 Release Information


🔗 Release Information


📦 [0.4.3] - September 5, 2025

📦 [0.4.3] - September 5, 2025

Changed

  • Use actual committer's name and email for automation commits
  • Use DEPLOY_APP_TOKEN to trigger status checks on automation commits
  • Replace manual git commands with git-auto-commit-action
  • Improve auto-version-bump exclusion logic
  • Disable auto-version-bump for workflow development branches
  • Restore content to empty 0.4.3 changelog section

Fixed

  • Fix git-auto-commit-action configuration issues

🔗 Release Information


🔗 Release Information


📦 [0.4.2] - September 5, 2025

📦 [0.4.2] - September 5, 2025

Added

  • Document new automated PR version management system

Changed

  • Update CLAUDE.md with new automated PR workflow documentation
  • Start fresh: remove entire 0.4.2 section for clean automation test
  • Resolve changelog conflict - accept clean automated version
  • Re-enable automation for all release PRs including workflow development
  • Automate version bump workflow for release PRs

Removed

  • Remove useless automatic version updates comment from workflow
  • Remove manual changelog entry to let automation handle everything
  • Remove outdated manual workflow instructions from PR comments

Fixed

  • Fix PR status checks by forcing CI run on final commit
  • Fix all remaining markdown linting issues in documentation
  • Fix corrupted changelog structure after merge conflict
  • Final fix: disable auto-version-bump for workflow development branches

🔗 Release Information


🔗 Release Information


📦 [0.4.1] - September 5, 2025

📦 [0.4.1] - September 5, 2025

Changed

  • Updated GitHub Actions dependencies
  • Bump actions/checkout from v4 to v5 (Dependabot)

🔗 Release Information


🔗 Release Information


📦 [0.4.0] - September 5, 2025

📦 [0.4.0] - September 5, 2025

🔒 Major Security & Rate Limiting Features
  • Comprehensive Rate Limiting System with Redis backend and tiered limits (Issues #678, #680, #681)
  • Anonymous rate limits: 100 requests/hour
  • Authenticated rate limits: 2000 requests/hour
  • OAuth client rate limits: 1000 requests/hour
  • OAuth token endpoint: 10 requests/minute
  • Rate limit headers in all responses
  • Comprehensive test suite with performance and edge case testing
📊 API Usage Analytics & Monitoring
  • Comprehensive API usage logging system for rollout analytics (Issue #735)
  • ApiUsageLogging middleware for automatic request tracking
  • LogApiUsage job for asynchronous database logging
  • Database migration for api_usage_logs table with optimized indexes
  • Complete test coverage with 20 test cases (unit and feature tests)
  • Analytics queries for endpoint popularity, response times, and error rates
  • Endpoint normalization for ID and UUID parameters
🔧 Infrastructure & Dependencies
  • Updated all PHP and Node.js dependencies to latest secure versions (Issue #791)
  • Laravel framework 12.21.0 → 12.28.1
  • Laravel Passport 13.0.6 → 13.2.0
  • PHPUnit 11.5.27 → 11.5.36
  • Node.js 22 → 23
  • Security fixes for @usebruno/cli and newman packages
  • Updated GitHub Actions to latest versions

📚 Enhanced Documentation & Testing

  • Comprehensive rate limiting documentation across all relevant files
  • Manual rate limiting testing command (php artisan test:rate-limiting)
  • Bruno CLI integration tests for rate limiting scenarios
  • Troubleshooting procedures and debugging guides
  • Enhanced documentation generation with preserved manual content
  • Fixed documentation template formatting issues

⚠️ Breaking Changes

  • New rate limiting may affect high-volume API consumers:
  • Anonymous users now limited to 100 requests/hour (previously unlimited)
  • OAuth token generation limited to 10 requests/minute
  • New rate limit headers in all responses

🐛 Bug Fixes

  • Resolved API usage logging content removal during version bumps

🔗 Release Information


🔗 Release Information


📦 [0.3.9] - August 13, 2025

📦 [0.3.9] - August 13, 2025

Fixed

  • Documentation workflow not triggering when workflow file itself is updated

🔗 Release Information


🔗 Release Information


📦 [0.3.8] - August 12, 2025

📦 [0.3.8] - August 12, 2025

Fixed

  • Documentation generation workflow references to non-existent docs/generated/ directory

🔗 Release Information


🔗 Release Information


📦 [0.3.7] - August 12, 2025

📦 [0.3.7] - August 12, 2025

Fixed

  • Documentation generation workflow failing due to incorrect npm script name

🔗 Release Information


🔗 Release Information


📦 [0.3.6] - August 12, 2025

📦 [0.3.6] - August 12, 2025

Fixed

  • OAuth key file ownership issues causing "Key path does not exist or is not readable" errors (Issue #689)

🔗 Release Information


🔗 Release Information


📦 [0.3.5] - August 12, 2025

📦 [0.3.5] - August 12, 2025

Fixed

  • OAuth client authentication failures with "This password does not use the Bcrypt algorithm" error (Issue #675)
  • Laravel Passport 13 client secret validation by updating plain text secrets to bcrypt format
  • Production API authentication issues for OAuth clients with legacy plain text secrets
  • Docker builds failing on Debian Trixie due to nginx.org repository compatibility
  • Integration test failures by adding HTTP support alongside HTTPS in nginx configuration

Added

  • oauth:fix-client-secrets artisan command to safely update OAuth client secrets to bcrypt format
  • Database migration to automatically fix OAuth client secret format during deployment
  • Dry-run mode for OAuth client secret fix command with safety confirmations

🔗 Release Information


🔗 Release Information


📦 [0.3.4] - August 8, 2025

📦 [0.3.4] - August 8, 2025

Added

  • Comprehensive PROJECT_OVERVIEW.md markdown description file with strategic business and technical analysis (Issue #648)

🔗 Release Information


🔗 Release Information


📦 [0.3.2] - August 8, 2025

📦 [0.3.2] - August 8, 2025

Fixed

  • Version script master branch logic simplified to use reliable git tag-based versioning instead of fragile commit message parsing (Issue #666)

🔗 Release Information


🔗 Release Information


📦 [0.3.1] - August 8, 2025

📦 [0.3.1] - August 8, 2025

Added

  • Comprehensive version script test suite in build/tests/ with validation for all branch scenarios
  • Version script validation integrated into lint checks (npm run lint:version)
  • ./build/scripts/test-version unified test runner for version script validation
  • Improved npm test scripts: npm test now runs PHP tests and version script validation (CI-safe)

Changed

  • Update CHANGELOG.md for version script hotfix
  • Auto-update OpenAPI documentation

Fixed

  • Fix version script tests for CI environments
  • Fix version script tag selection to prefer higher version numbers
  • Fix version script conditional logic bug and add comprehensive tests
  • Critical version script bug: Fixed conditional logic in build/version.sh where line 61 was overwriting release branch version extraction (Issue #662)
  • Version synchronization between release branches and actual release versions
  • Release branch version extraction now properly uses branch names (e.g., release/0.3.00.3.0)

🔗 Release Information


🔗 Release Information


📦 [0.3.0] - August 7, 2025

📦 [0.3.0] - August 7, 2025

Added

  • Bruno API testing collection with comprehensive endpoint coverage and CI/CD validation
  • OAuth integration tests with automatic token management and authentication flow validation
  • Complete OpenAPI 3.0 documentation with interactive Swagger UI
  • OpenAPI schema definitions for all API resources in /app/OpenApi/Schemas.php
  • L5-Swagger integration for automatic documentation generation
  • GitHub Actions workflow for automated documentation validation and deployment
  • Makefile commands: make docs, make docs-validate, make help
  • Public documentation directory /public/docs/ with usage examples
  • V1 namespaced controllers with complete OpenAPI documentation for versioned endpoints
  • Complete documentation generation system with automated repository documentation from OpenAPI specifications

Changed

  • All API endpoints now include comprehensive OpenAPI attributes
  • Updated L5-Swagger configuration for optimal documentation generation
  • Enhanced README with OpenAPI documentation section
  • V1 routes now use dedicated V1 controllers in App\Http\Controllers\V1 namespace
  • OpenAPI documentation includes both legacy and V1 versioned endpoints with separate tags
  • make changelog-update command now also updates OpenAPI documentation to ensure version consistency
  • User-friendly development scripts with comprehensive output and error handling moved to build/scripts/
  • Removed obsolete gulp build system, Postman tooling, and legacy file references for simplified development workflow

🔗 Release Information


🔗 Release Information


📦 [0.2.85] - July 27, 2025

📦 [0.2.85] - July 27, 2025

Added

  • New make release-notes-preview command to preview GitHub release notes before merging
  • Enhanced GitHub release notes with clean, organized format and quick navigation
  • Dedicated "Issues Fixed" section in release notes with clickable GitHub issue links
  • Claude API integration for intelligent release summary generation based on commits, file changes, and changelog content

Changed

  • GitHub release notes now use curated changelog content instead of raw commit messages
  • Release notes structure improved with sections for Summary, What's Changed, Links & Resources, and Deployment
  • Docker image links now included directly in release notes for easy access

🔗 Release Information


🔗 Release Information


📦 [0.2.84] - July 26, 2025

📦 [0.2.84] - July 26, 2025

Added

  • Added make changelog-update command to automatically organize changelog with next version
  • Added make changelog-preview command to see next version and current unreleased changes
  • Added changelog requirements to pull request template
  • Added --master flag to version script to simulate master branch version

Changed

  • Modified build process to remove automatic changelog commits during merge conflicts
  • Updated changelog maintenance to manual process with make commands for organization
  • Updated documentation (CLAUDE.md and VERSION_MANAGEMENT.md) to explain changelog workflow
  • Removed automatic changelog commits from build workflow entirely

Fixed

  • Resolved merge conflict issues caused by automated changelog updates
  • Fixed recursive changelog generation that included meta-commits

🔗 Release Information


🔗 Release Information


📦 [0.2.83] - July 27, 2025

📦 [0.2.83] - July 27, 2025

Fixed

  • fix: modify how changelog gets updated

🔗 Release Information


🔗 Release Information


📦 [0.2.82] - July 27, 2025

📦 [0.2.82] - July 27, 2025

Changed

  • chore: cleanup changelog entries

🔗 Release Information


🔗 Release Information


📦 [0.2.81] - July 27, 2025

📦 [0.2.81] - July 27, 2025

Added

  • API versioning strategy with URL path versioning (/v1/)
  • Version information endpoint (/version)
  • Dynamic version generation from Git using build/version.sh
  • Synchronized versioning across application, API, and CI/CD
  • Comprehensive changelog documentation

🔗 Release Information


🔗 Release Information


📦 [0.2.80] - July 27, 2025

📦 [0.2.80] - July 27, 2025

Fixed

  • fix: fix the release process

🔗 Release Information


🔗 Release Information


📦 [0.2.79] - July 27, 2025

📦 [0.2.79] - July 27, 2025

Fixed

  • fix: fix docker image tagging process

🔗 Release Information


🔗 Release Information


📦 [0.2.78] - July 27, 2025

📦 [0.2.78] - July 27, 2025

Added

  • feat: add API versioning with v1 endpoints
  • #611 Add tests for new routes
  • #611 Add versioning support to the api

Changed

  • Merge pull request #616 from cardtechie/feature/611-change-versioning
  • #611: Automate document updates
  • Merge branch 'master' into feature/611-change-versioning
  • #611 Dynamically figure out the version

Fixed

  • Fix: Fix process with generation of version number
  • #611 Fix failing tests on github

🔗 Release Information


🔗 Release Information


📦 [0.2.73+] - January 26, 2024

📦 [0.2.73+] - January 26, 2024

Added

  • Pre-release API with comprehensive trading card management
  • Core endpoints: cards, sets, players, teams, genres, years, manufacturers, brands
  • OAuth2 authentication with Laravel Passport 13
  • JSON:API specification compliance
  • UUID primary keys for all models
  • Polymorphic OnCard relationships (Players, Teams, PlayerTeams)
  • Automatic card name generation with format tokens (%d, %o, %l, %a, %s)
  • Soft delete functionality via Laravel observers
  • Docker containerization with multi-environment support
  • OpenAPI/Swagger documentation
  • Comprehensive test suite (PHPUnit, linting, code standards)
  • GitHub Actions CI/CD pipeline

Technical Details

  • Framework: Laravel 12 with PHP 8.2+
  • Database: MySQL 8.0 with UUID primary keys
  • Authentication: Laravel Passport 13 OAuth2
  • API Standard: JSON:API specification compliance
  • Testing: PHPUnit 11, PHP CodeSniffer, OpenAPI validation
  • Containerization: Docker with development, testing, and production environments

Endpoints

  • GET|POST /cards - Card management
  • GET|POST /sets - Set management with checklist support
  • GET|POST /players - Player management
  • GET|POST /teams - Team management
  • GET|POST /playerteams - Player-team relationship management
  • GET|POST /attributes - Card attribute management
  • GET|POST /object-attributes - Object attribute relationships
  • GET|POST /genres - Genre management with soft delete support
  • GET|POST /years - Year management
  • GET|POST /manufacturers - Manufacturer management
  • GET|POST /brands - Brand management
  • GET /stats/{type} - Statistics endpoint

Security

  • OAuth2 client credentials flow
  • Environment-based configuration
  • SSL/TLS support with Let's Encrypt
  • No sensitive data in repository

🔗 Release Information


🔗 Release Information


📊 Release Statistics

  • Latest Stable: 0.4.7
  • Total Releases: 26+ releases since inception
  • Release Frequency: Weekly updates with patches, monthly for minor versions

🔗 Additional Resources

📖 API Documentation

🐙 GitHub Resources

🛠️ Development Tools

🏷️ Version Information

  • Current API Version: 0.4.7
  • API Base URL: https://api.tradingcardapi.com
  • Release Schedule: Continuous deployment with semantic versioning
  • Support Policy: Latest 3 major versions supported

🔔 Stay Updated

📧 Get Notified

💬 Community & Support


Questions About a Release?

Have questions about a specific API change or need help upgrading? We're here to help! Reach out through GitHub Issues or email support.


Automated Updates

This changelog is regularly updated with the latest API releases. For real-time updates, follow the API repository on GitHub.


Last updated: September 25, 2025 at 04:12 AM UTC