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.1.tar.gz (4.5 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.1-py3-none-any.whl (4.7 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: usageflow_flask-0.3.1.tar.gz
  • Upload date:
  • Size: 4.5 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.1.tar.gz
Algorithm Hash digest
SHA256 93bf25b5875c6ebf7ce9cb78daeb11618cb7124a159d3b02f3ef92bec00fc5df
MD5 ba95dd110c5c28880e60d0a5c02f3625
BLAKE2b-256 70b48accf8879377f987a00cc7b4357b569eab83b38f7bf56169310e5e1a3c8e

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for usageflow_flask-0.3.1-py3-none-any.whl
Algorithm Hash digest
SHA256 d4a3ff37198d79f3eb70970438de0946e4741aaa4c660c292271705f03259ae1
MD5 25b94c7f7aafa3d7e61c4dc28009f3dd
BLAKE2b-256 85d4eb458de207b271fb533f13a02713de23731855d1678f8efc8f348436cc4b

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