Welcome to the Puzzel SMS Gateway Python Client (Kiota) documentation.
Start here if you're new to the client:
- Main README - Overview, installation, and quick start guide
- 01 - uv Setup Guide - Complete guide for setting up with uv (recommended)
- 02 - Getting Started Guide - Step-by-step guide for beginners
- 03 - Quick Reference - Cheat sheet for common operations
- Basic Example - Simple SMS sending example
-
01 - uv Setup Guide - Complete guide for setting up with uv (recommended)
- Installation and project creation
- Virtual environment management
- Common commands and best practices
- Troubleshooting
-
02 - Getting Started Guide - Step-by-step guide for beginners
- Send your first SMS in 5 minutes
- Common issues and troubleshooting
- Complete working examples
- 03 - Quick Reference Guide - Quick lookup for common operations
- Common code snippets
- Status codes
- Model hierarchy
- Best practices
-
04 - Usage Examples - Comprehensive code examples covering all features
- Basic message sending
- Message settings and configuration
- Batch operations
- Advanced use cases
- Error handling
- Production patterns
-
05 - API Models Reference - Detailed documentation of all data models
- Request and response models
- Message models
- Settings models
- Batch models
- Error models
- Enums
-
06 - Advanced Topics - Deep dive into advanced features
- Architecture overview
- Request adapters
- Authentication
- Middleware
- Timeout and retry configuration
- Performance optimization
- Security best practices
- Monitoring and observability
- Troubleshooting
-
07 - Testing Guide - Running and writing tests
- Running the test suite with uv
- Coverage reporting
- Test structure overview
- What is tested (client, models, request builders)
- Shared fixtures reference
- Writing sync, async, and parametrized tests
-
08 - Publishing Guide - Publishing the package to PyPI with uv
- Bumping the version
- Building wheel and sdist with
uv build - Publishing to TestPyPI for validation
- Publishing to PyPI with
uv publish - Storing credentials securely
Practical examples you can run directly (located in docs/examples/):
- example_basic.py - Send a simple SMS
- example_advanced.py - Send SMS with all configuration options
- example_multiple_recipients.py - Send to multiple recipients
- example_batch_management.py - Manage message batches
Python/
├── README.md # Main documentation
├── docs/
│ ├── 00-README.md # This file - Documentation index
│ ├── 01-uv-setup.md # uv setup guide
│ ├── 02-getting-started.md # Getting started guide
│ ├── 03-quick-reference.md # Quick reference guide
│ ├── 04-examples.md # Comprehensive examples
│ ├── 05-models.md # API models reference
│ ├── 06-advanced.md # Advanced topics
│ ├── 07-testing.md # Testing guide
│ ├── 08-publishing.md # Publishing guide
│ └── examples/ # Example code files
│ ├── README.md # Examples guide
│ ├── example_basic.py # Basic example
│ ├── example_advanced.py # Advanced example
│ ├── example_multiple_recipients.py # Multiple recipients
│ └── example_batch_management.py # Batch management
└── src/ # Generated Kiota client code
├── mt_http_client.py # Main client
├── models/ # Data models
├── gw/ # Gateway endpoints
├── management/ # Management endpoints
└── ...
- Send a simple SMS
- Send to multiple recipients
- Send personalized messages
- Schedule messages
- Set custom sender ID
- Send premium SMS
- MtHttpClient - Main entry point for the SDK
- GatewayRequest - Request object for sending messages
- Message - Individual SMS message
- Settings - Message configuration options
- GatewayResponse - Response from send operations
client.gw.rs.send_messages- Send messagesclient.management- Batch management operations
For detailed API reference, see 05 - API Models Reference.
If you're migrating from the previous version (v2.x), see the Migration Guide in the main README.
Key differences:
- Fully asynchronous (requires async/await)
- Credentials in request instead of client
- Fluent, path-based API
- Type-safe dataclass models
- Main Documentation: README.md
- Puzzel Website: www.puzzel.com
- SMS Gateway Documentation: Contact Puzzel support
- 01 - uv Setup Guide - Set up your development environment
- Installation - Install the client
- 02 - Getting Started Guide - Send your first SMS
- Quick Start - Quick code example
- Basic Example - Runnable example
- 03 - Quick Reference - Common operations cheat sheet
When the API changes:
- Update 05-models.md with new or changed models
- Add examples to 04-examples.md
- Update 03-quick-reference.md snippets
- Add migration notes to README.md if needed
New examples should:
- Be placed in docs/examples/ as
example_*.py - Be referenced in this index under Example Files
- Include detailed comments
- Follow the existing style
For issues, questions, or contributions, please contact Puzzel support.
Released under the MIT license. See LICENSE for details.
Last Updated: March 2026
Version: 3.0 (Kiota-generated)