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.5.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.5-py3-none-any.whl (6.2 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: usageflow_flask-0.3.5.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.5.tar.gz
Algorithm Hash digest
SHA256 081ef8b3911f819a8dedce15d6c1d1ba7633eabd43d1d27f04be5bc7cd31c7f3
MD5 d175aeb1509c734575403b87d6469124
BLAKE2b-256 4e989b71f3616e0c598929493304c0324f0a43763673576d646809679035f3bd

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for usageflow_flask-0.3.5-py3-none-any.whl
Algorithm Hash digest
SHA256 f653654575a89f73a416576b156f6ff03d964f981acbad52a618d517bf8e2193
MD5 8aa6afdd99559edcfc823bd82230c81a
BLAKE2b-256 251150a20c374ff8f59f8d9e5068588848b715798930f085c5771d86d118f2e4

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