Repository navigation
Releases: mare011rs/basecampapi
Releases · mare011rs/basecampapi
Release list
v2.0.0
BasecampAPI Wrapper v2.0.0
Release Date: August 4, 2025
Overview
This major release introduces a complete architectural overhaul of the BasecampAPI wrapper, moving from a class inheritance model to a client-resource pattern. This change provides a more intuitive and flexible API for interacting with Basecamp resources, along with numerous quality-of-life improvements.
Breaking Changes
-
New Client-Resource Pattern: Resources are now created through the Basecamp client instead of inheriting from it
# Old way (v1.x) from basecampapi import Basecamp, MessageBoard bc = Basecamp(credentials=credentials) mb = MessageBoard(project_id=123456, message_board_id=123456) # New way (v2.0) from basecampapi import Basecamp client = Basecamp(credentials=credentials) mb = client.message_board(project_id=123456, message_board_id=123456)
-
Required Data Parameter: All methods that send data to the API now require a
datadictionary parameter instead of individual parameters# Old way (v1.x) mb.create_message(subject="Title", content="Content") # New way (v2.0) mb.create_message(data={"subject": "Title", "content": "Content", "status": "active"})
-
Fixed Module Name: Corrected the misspelling in module name from
camprife.pytocampfire.py
New Features
- Dedicated Comments Module: Added a standalone Comments module that works with any commentable resource
- To-dos Support: Added comprehensive support for To-do sets, To-do lists, and To-dos
- Chatbots Support: Added support for posting messages as chatbots
- Custom Request Method: Added a generic
requestmethod to access any Basecamp API endpoint - Flexible Headers: All methods now accept custom headers
- Response Data: All methods that modify resources now return the response data
Improvements
- Documentation Links: Added links to the Basecamp API documentation in all method docstrings
- Resource URLs: Methods now print URLs to view created or updated resources in Basecamp
- Enhanced Attachments: Improved the Attachments module with helper methods and better error handling
- Consistent Parameter Naming: Standardized parameter names across all modules
- Type Hints: Added comprehensive type hints throughout the codebase
- Better Error Messages: Improved error handling and messaging
Documentation Updates
- Completely revised README.md with clear examples for all features
- Added sections for each major component (Message Boards, Campfires, Attachments, To-dos, Chatbots)
- Included migration guide for users upgrading from v1.x
Package Updates
- Updated package metadata in pyproject.toml
- Added proper license information (MIT)
- Added repository and homepage URLs
- Added keywords and classifiers for better discoverability on PyPI
- Specified minimum version requirements for dependencies
Contributors
- mare011rs
Links
v1.2.0
v1.1.0
v1.0.0
- Removed necessity to define sessions in each object, credentials are now automatically passed to each object after authentication is established through Basecamp object
- Removed the Authorization object and merged its functionality with Basecamp object
- Account_id is now defined inside credentials dictionary
- New object Attachments now replaces Basecamp.upload_file() method
- Improved initial authentication flow
v0.2.4
v0.2.1
v0.2.0
- Created Authorization object for easier initial authentication
- Easier package import - now it's enough to only
import basecampapi - Added exception raising for bad requests
- Added docstrings to all objects and their methods
- Full documentation on README.md