A microservice for interacting with Jupiter API v6, providing functionality for token swaps, price quotes, and transaction monitoring.
- Token price and quote management
- Real-time price quotes
- Token balance tracking
- Transaction status monitoring
- Asynchronous request processing
- Automatic retry mechanism
- Rate limiting and overload protection
- Python 3.8+
- FastAPI
- Pydantic
- aiohttp
- uvicorn
- pytest (for testing)
# Create virtual environment
python -m venv venv
# Activate
source venv/bin/activate # Linux/Mac
# or
venv\Scripts\activate # Windows
# Install dependencies
pip install -r requirements.txtuvicorn src.main:app --reloadGET /health- Service health checkGET /pools- Get Jupiter pools and quotesGET /balance/{address}- Get token balance/pricePOST /balances- Get multiple token balancesGET /transaction/{tx_id}- Check transaction statusPOST /criteria/update- Update criteria
Jupiter/
├── src/
│ ├── api.py # Jupiter API client
│ ├── models.py # Pydantic models
│ └── config.py # Configuration
├── tests/
│ ├── test_api.py # Unit tests
│ └── test_integration.py # Integration tests
└── main.py # FastAPI application
pytest -v tests/MIT