37 lines
1.2 KiB
Markdown
37 lines
1.2 KiB
Markdown
# Playtomic API Wrapper 🎾
|
|
|
|
A **FastAPI-based** microservice that provides a clean, structured REST interface over Playtomic's private APIs. It automatically handles authentication, token persistence, and data normalization.
|
|
|
|
## 🚀 Key Features
|
|
|
|
- **Auto-Auth**: Manages Bearer tokens and handles automatic 401 refresh logic.
|
|
- **Modular Design**: Organized by domain (Users, Bookings, Clubs) for easy scaling.
|
|
- **Docker-Ready**: Fully containerized with Docker Compose for instant deployment.
|
|
- **Auto-Documentation**: Integrated Swagger UI and ReDoc.
|
|
- **Developer Friendly**: Built with modern Python standards (PEP 621, Pydantic v2).
|
|
|
|
## 🛠 Tech Stack
|
|
|
|
- **Python 3.11+**
|
|
- **FastAPI** (Web framework)
|
|
- **Pydantic** (Data validation & Settings)
|
|
- **Requests** (HTTP Client with Session reuse)
|
|
- **Docker & Docker Compose**
|
|
|
|
---
|
|
|
|
## 🚦 Getting Started
|
|
|
|
### 1. Configuration
|
|
|
|
Create a `.env` file in the project root based on the provided environment variables:
|
|
|
|
```env
|
|
PROJECT_NAME="Playtomic Wrapper"
|
|
VERSION="1.0.0"
|
|
API_V1_STR="/api/v1"
|
|
|
|
PLAYTOMIC_EMAIL="your_email@example.com"
|
|
PLAYTOMIC_PASSWORD="your_password"
|
|
PLAYTOMIC_API_URL="[https://api.playtomic.io](https://api.playtomic.io)"
|