API monitoring made easy.
Apitally is a simple API monitoring & analytics tool with a focus on data privacy.
It is super easy to use for API projects in Python or Node.js and never collects sensitive data.
๐ apitally.io
This client library for Apitally currently supports the following Python web frameworks:
Learn more about Apitally on our ๐ website or check out the ๐ documentation.
- Middleware for different frameworks to capture metadata about API endpoints, requests and responses (no sensitive data is captured)
- Non-blocking clients that aggregate and send captured data to Apitally in regular intervals
Use pip
to install and provide your framework of choice as an extra, for
example:
pip install apitally[fastapi]
The available extras are: fastapi
, flask
, django_rest_framework
,
django_ninja
, starlette
and litestar
.
Our setup guides include all the details you need to get started.
This is an example of how to add the Apitally middleware to a FastAPI application. For further instructions, see our setup guide for FastAPI.
from fastapi import FastAPI
from apitally.fastapi import ApitallyMiddleware
app = FastAPI()
app.add_middleware(
ApitallyMiddleware,
client_id="your-client-id",
env="dev", # or "prod" etc.
)
This is an example of how to add the Apitally middleware to a Flask application. For further instructions, see our setup guide for Flask.
from flask import Flask
from apitally.flask import ApitallyMiddleware
app = Flask(__name__)
app.wsgi_app = ApitallyMiddleware(
app,
client_id="your-client-id",
env="dev", # or "prod" etc.
)
This is an example of how to add the Apitally middleware to a Django Ninja or Django REST Framework application. For further instructions, see our setup guide for Django.
In your Django settings.py
file:
MIDDLEWARE = [
"apitally.django.ApitallyMiddleware",
# Other middleware ...
]
APITALLY_MIDDLEWARE = {
"client_id": "your-client-id",
"env": "dev", # or "prod" etc.
}
This is an example of how to add the Apitally plugin to a Litestar application. For further instructions, see our setup guide for Litestar.
from litestar import Litestar
from apitally.litestar import ApitallyPlugin
app = Litestar(
route_handlers=[...],
plugins=[
ApitallyPlugin(
client_id="your-client-id",
env="dev", # or "prod" etc.
),
]
)
If you need help please create a new discussion on GitHub or join our Slack workspace.
This library is licensed under the terms of the MIT license.