15 Commits

Author SHA1 Message Date
ivy 94e457f240 fix: fall back to get_collectible_item_id when publish returns status=0 2026-03-07 14:07:10 -05:00
ivy 83fbf9a91e fix: include response body in publish_collectible auth error 2026-03-07 13:54:27 -05:00
ivy 698f4b10aa feat: add publish_collectible method for Limited publishing step 2026-03-07 13:41:52 -05:00
ivy 3230afae61 fix: use itemconfiguration endpoint for get_collectible_item_id 2026-03-07 13:37:20 -05:00
ivy e2ab1c0afb fix: use economy API for get_collectible_item_id (simpler, no CSRF needed) 2026-03-07 13:29:01 -05:00
ivy ac1f0e63a7 fix: add CSRF token to get_collectible_item_id request 2026-03-07 13:23:04 -05:00
ivy 23a70073a1 feat: add get_collectible_item_id method; fix onsale_asset to use PATCH with collectible_item_id 2026-03-07 12:57:03 -05:00
ivy 00b5caf776 fix: onsale_asset now uses PATCH with collectible_item_id and saleStatus 0 2026-03-07 12:53:14 -05:00
ivy 2a2be5f7de fix: skip proxy for itemconfiguration.roblox.com (not supported by roproxy) 2026-03-07 12:37:35 -05:00
ivy 0e7d7d0aec fix gplv3 2026-02-18 18:18:41 -05:00
ivy 2eb249cf4f Change license from MIT to GPLv3 2026-02-18 18:16:55 -05:00
ivy 44b4e40c40 feat: add batch upload, CLI, and exception hierarchy
- Add RbxError base class with AuthError, RateLimitError, UploadError,
  and AssetNotFoundError subclasses
- Add BatchUploadItem and BatchResult dataclasses
- Add batch_upload method with semaphore-limited concurrency (2 at a time)
- Add configurable max_attempts and poll_interval to upload_clothing_image
- Add CLI with upload and onsale commands (rbx-upload[cli] extra)
- Improve auth error handling across all client methods
- Bump version to 0.2.0
2026-02-18 15:45:17 -05:00
ivy ebe3ad08d0 test: add pytest suite, fixtures, and CI workflow 2026-02-18 11:09:04 -05:00
ivy 6d15b06cc2 feat: add RobloxClient and package exports
- Add client.py with RobloxClient class (migrated from clothing-upload-bot)
- Credentials passed via constructor instead of module-level env globals
- Supports async context manager and manual close()
- Add __init__.py exporting RobloxClient, RateLimitError, and models
- Add .gitignore
2026-02-18 09:36:31 -05:00
ivy d2c69fa3a3 Initial commit 2026-02-17 19:28:52 -05:00