games:refresh
Refreshes game information from itch.io for specific games or all visible games.
Overview
This command updates game information by fetching the latest data from itch.io. It can refresh various aspects of game data including basic information, version details, and metadata like tags, ratings, and screenshots.
Usage
php artisan games:refresh [options]
Options
- --game-id=ID
- ID of the specific game to refresh.
- --game-name=NAME
- Name (or part of name) of the game(s) to refresh.
- --all
- Refresh all visible games.
- --limit=LIMIT
- Limit the number of games to process when using --all (default: 10).
- --sort=FIELD
- Sort games by field (id, name, created_at, updated_at) (default: id).
- --update-version
- Refresh version information.
- --update-info
- Refresh base game information.
- --update-metadata
- Refresh metadata (tags, ratings, descriptions, screenshots, game jams).
- --force
- Force refresh even for abandoned/canceled games.
- --max-retries=COUNT
- Maximum number of retries for rate-limited requests (default: 3).
- --retry-cooldown=SECONDS
- Base cooldown time in seconds between retries (default: 30).
Refresh Types
The command can refresh different aspects of game data:
Basic Information (--update-info)
- Game title and description
- Developer/creator information
- Publication status
- Basic game metadata
Version Information (--update-version)
- Latest version details
- Download links and file information
- Version-specific metadata
- Platform support information
Metadata (--update-metadata)
- Tags and categories
- User ratings and reviews
- Screenshots and media
- Game jam associations
- Detailed descriptions
Examples
php artisan games:refresh --game-id=123
Refreshes all information for game ID 123.
php artisan games:refresh --game-name="Doki Doki"
Refreshes all games with "Doki Doki" in the name.
php artisan games:refresh --game-id=123 --update-version
Only refreshes version information for the specified game.
php artisan games:refresh --all --update-metadata --limit=50
Refreshes metadata for up to 50 games.
php artisan games:refresh --game-id=123 --force
Forces refresh even if the game is marked as abandoned.
When to Use
Recommended Usage Scenarios
- After discovering games need updated information
- When game metadata appears outdated
- To refresh specific games after manual changes
- For bulk updates during maintenance windows
- When troubleshooting data inconsistencies
Processing Modes
| Mode | Description | Performance Impact |
| Single Game | Refresh one specific game | Low |
| By Name | Refresh games matching pattern | Medium |
| Batch (--all) | Refresh multiple games | High |
| Selective Updates | Only specific data types | Reduced |
Rate Limiting
The command includes comprehensive rate limiting handling:
- Automatic Detection: Recognizes 429 responses from itch.io
- Exponential Backoff: Increasing delays between retries
- Configurable Retries: Adjustable retry count and cooldown
- Progress Preservation: Continues from where it left off
Related Commands
- games:refresh-feedless: Refresh games not in feed
- feed:process: Automatic feed-based updates
- games:process-screenshots: Process downloaded screenshots