Skip to main content

Flask middleware for UsageFlow - Usage-based pricing made simple

Project description

UsageFlow Flask

⚠️ Beta Notice: This package is currently in beta. While we strive to maintain stability, there may be breaking changes as we continue to improve the API.

The Flask package of UsageFlow provides easy integration with Flask applications for API usage tracking and management.

Installation

pip install usageflow-flask

Quick Start

from flask import Flask, jsonify
from usageflow.flask import UsageFlowMiddleware

app = Flask(__name__)

# Initialize UsageFlow middleware
UsageFlowMiddleware(
    app,
    api_key="your_api_key_here",
    pool_size=10  # Optional: Number of WebSocket connections (default: 10)
)

@app.route("/api/v1/users")
def get_users():
    return jsonify({"users": ["user1", "user2"]})

if __name__ == "__main__":
    app.run()

Configuration

The middleware accepts the following parameters:

  • app: Your Flask application instance (required)
  • api_key: Your UsageFlow API key (required)
  • pool_size (optional): Number of WebSocket connections in the pool (default: 10)

Features

  • Automatic request tracking
  • JWT token extraction and validation
  • Request/response metadata collection
  • Rate limiting and quota management
  • Endpoint blocking support

Development

To contribute to the project:

  1. Clone the repository
  2. Install development dependencies:
    pip install -e ".[dev]"
    
  3. Run tests:
    pytest
    

License

MIT License

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

usageflow_flask-0.3.4.tar.gz (8.6 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

usageflow_flask-0.3.4-py3-none-any.whl (6.2 kB view details)

Uploaded Python 3

File details

Details for the file usageflow_flask-0.3.4.tar.gz.

File metadata

  • Download URL: usageflow_flask-0.3.4.tar.gz
  • Upload date:
  • Size: 8.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.2

File hashes

Hashes for usageflow_flask-0.3.4.tar.gz
Algorithm Hash digest
SHA256 5571ab1a1830dc4b47ab38a55a5a784e10d4cb4cbdfba9f6f6b40e497814b6d8
MD5 b41390aff84ddbec8fc52d8b1eebee2c
BLAKE2b-256 f569d011ee5fc6f59fa4281556d2669f01af15d2498265888d1e5cf36d6463b5

See more details on using hashes here.

File details

Details for the file usageflow_flask-0.3.4-py3-none-any.whl.

File metadata

File hashes

Hashes for usageflow_flask-0.3.4-py3-none-any.whl
Algorithm Hash digest
SHA256 e50d37dd74458a6ebf6962a0557c21744dcd46862341c2007cecf6dd3651d566
MD5 47ed092ef2df0655b3152d668fd696d3
BLAKE2b-256 4ec0faf5602e4789f6d6aa041fa4f478c5a5e3cc4f2d1264328d559afb26ecdb

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page