Simple, privacy-focused API monitoring & analytics
Apitally helps you understand how your APIs are being used and alerts you when things go wrong.
Just add two lines of code to your project to get started.
This client library for Apitally currently supports the following Python web frameworks:
Learn more about Apitally on our 🌎 website or check out the 📚 documentation.
Track traffic, error and performance metrics for your API, each endpoint and individual API consumers, allowing you to make informed, data-driven engineering and product decisions.
Understand which validation rules in your endpoints cause client errors. Capture error details and stack traces for 500 error responses, and have them linked to Sentry issues automatically.
Drill down from insights to individual requests or use powerful filtering to understand how consumers have interacted with your API. Configure exactly what is included in the logs to meet your requirements.
Get notified immediately if something isn't right using custom alerts, synthetic uptime checks and heartbeat monitoring. Notifications can be delivered via email, Slack or Microsoft Teams.
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 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 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 Starlette application. For further instructions, see our setup guide for Starlette.
from starlette.applications import Starlette
from apitally.starlette import ApitallyMiddleware
app = Starlette(routes=[...])
app.add_middleware(
ApitallyMiddleware,
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.