APItoolkit isn’t just another API management tool. It’s the most feature-rich solution available, offering everything you need to manage your APIs effectively.
Start for free OR Get a Demo{target="\_blank" class="drop-shadow rounded-md border border-gray-200 bg-gray-100 hover:bg-gray-200 text-xs text-gray-900 inline-block px-4 py-2 sm:ml-1 mt-2 sm:mt-0 hs-init hs-inview"}
With comprehensive metrics tracking, you gain deep insights into how your API interacts with your system. Monitor every call and leverage alerting and notification to ensure you catch errors before they reach your customers.
Start for free OR Get a Demo{target="\_blank" class="drop-shadow rounded-md border border-gray-200 bg-gray-100 hover:bg-gray-200 text-xs text-gray-900 inline-block px-4 py-2 sm:ml-1 mt-2 sm:mt-0 hs-init hs-inview"}
By leveraging API documentation tools for clear instructions, API testing tools to identify and fix issues early, and API monitoring tools to catch problems before they impact users, you can deliver the dependable experience your customers deserve.
Start for free OR Get a Demo{target="\_blank" class="drop-shadow rounded-md border border-gray-200 bg-gray-100 hover:bg-gray-200 text-xs text-gray-900 inline-block px-4 py-2 sm:ml-1 mt-2 sm:mt-0 hs-init hs-inview"}
Test in both staging and production environments. Be aware of issues before they escalate. Perform rigorous tests effortlessly.
Start for free OR Get a Demo{target="\_blank" class="drop-shadow rounded-md border border-gray-200 bg-gray-100 hover:bg-gray-200 text-xs text-gray-900 inline-block px-4 py-2 sm:ml-1 mt-2 sm:mt-0 hs-init hs-inview"}
Monitor and pinpoint every single error. Understand the “Why,” “How,” and “When” these errors occur. Get a fully informative analytics dashboard. It applies to all use cases, including yours!
Start for free OR Get a Demo{target="\_blank" class="drop-shadow rounded-md border border-gray-200 bg-gray-100 hover:bg-gray-200 text-xs text-gray-900 inline-block px-4 py-2 sm:ml-1 mt-2 sm:mt-0 hs-init hs-inview"}
Watch errors, performance, and any numbers that matter over time.
Track errors, stack traces, and also record the incoming and outgoing requests which triggered the error. Get all information you need to reproduce a bug.
An OpenAPI schema and spec is automatically generated from your live traffic. Approve and acknowlege endpoints and fields.
Write powerful queries against your realtime data using our visual query builder or our query language for more complex queries.
Set up custom monitors and receive alerts when things go wrong via Slack or email.
Get daily or weekly reports about errors and performance of your entire application.
Here's how to quickly integrate APItoolkit into your Express.js application.
npm install apitoolkit-express
import express from "express";
import { APIToolkit } from "apitoolkit-express";
const app = express();
const apitoolkitClient = APIToolkit.NewClient({ apiKey: "{YOUR_API_KEY_HERE}" });
app.use(apitoolkitClient.expressMiddleware)
// All controllers should live here
app.get("/", (req, res) => {
});
// ...
// The error handler must be before any other error middleware
// and after all controllers
app.use(apitoolkitClient.errorHandler)
⏭️: Read the ExpressJS SDK guide to learn more.
Here's how to quickly integrate APItoolkit into your Elixir application.
{:apitoolkit_phoenix, "~> 0.1.1"}
``` js // route.ex file defmodule HelloWeb.Router do import ApitoolkitPhoenix
pipeline :api do plug ApitoolkitPhoenix, config: %{ apikey: "{YOURAPIKEYHERE}", } end
// Automatic error handling @impl Plug.ErrorHandler def handle_errors(conn, err) do conn = report_error(conn, err) json(conn, %{message: "Something went wrong"}) end end ``` ⏭️: Read the Phoenix SDK guide to learn more.
Here's how to quickly integrate APItoolkit into your Laravel application.
composer require apitoolkit/apitoolkit-laravel
First, set the APITOOLKIT_KEY
environment variable to your .env
file.
```bash
APITOOLKIT_KEY=xxxxxx-xxxxx-xxxxxx-xxxxxx-xxxxxx
```
Next, register the middleware in your app/Http/Kernel.php
file.
[
\APIToolkit\Http\Middleware\APIToolkit::class,
],
];
}
⏭️: Read the Laravel SDK guide to learn more.
Here's how to quickly integrate APItoolkit into your .NET application.
dotnet add package ApiToolkit.Net
var config = new Config
{
Debug = true, # Set debug flags to false in production
ApiKey = "{YOUR_API_KEY_HERE}"
};
var client = await APIToolkit.NewClientAsync(config);
# Register the middleware to use the initialized client
app.Use(async (context, next) =>
{
var apiToolkit = new APIToolkit(next, client);
await apiToolkit.InvokeAsync(context);
});
⏭️: Read the .Net Core SDK guide to learn more.
Here's how to quickly integrate APItoolkit into your Django application.
pip install apitoolkit-django
MIDDLEWARE = [
...,
'apitoolkit_django.APIToolkit',
...,
]
var config = new Config
{
Debug = true, # Set debug flags to false in production
ApiKey = "{YOUR_API_KEY_HERE}"
};
⏭️: Read the Django SDK guide to learn more.
Here's how to quickly integrate APItoolkit into your native Golang application.
go get -u github.com/apitoolkit/apitoolkit-go
package main
import (
"net/http"
"context"
apitoolkit "github.com/apitoolkit/apitoolkit-go"
)
func main() {
// Initialize APIToolkit client with your generated API key
ctx := context.Background()
apitoolkitClient, err := apitoolkit.NewClient(ctx, apitoolkit.Config{APIKey: "{YOUR_API_KEY_HERE}"})
if err != nil {
panic(err)
}
http.Handle("/", apitoolkitClient.Middleware(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
w.Write([]byte("Hello, World!"))
})))
http.ListenAndServe(":8080", nil)
}
⏭️: Read the Go Native SDK guide to learn more.
Here's how to quickly integrate APItoolkit into your FastAPI application.
pip install apitoolkit-fastapi
from fastapi import FastAPI
from apitoolkit_fastapi import APIToolkit
app = FastAPI()
apitoolkit = APIToolkit(api_key="{YOUR_API_KEY_HERE}")
app.middleware('http')(apitoolkit.middleware)
⏭️: Read the FastAPI SDK guide to learn more.
Here's how to quickly integrate APItoolkit into your Symfony PHP application.
composer require apitoolkit/apitoolkit-symfony
First, set the APITOOLKIT_KEY
environment variable in your .env
file.
APITOOLKIT_KEY=xxxxxx-xxxxx-xxxxxx-xxxxxx-xxxxxx
Next, register the service in your services.yaml
file.
services:
APIToolkit\EventSubscriber\APIToolkitService:
arguments:
$apiKey: '%env(APITOOLKIT_KEY)%'
# Optional: if you want to cache login result add this cache poll instance via setter injection
calls:
- setCachePool: ['@PutYourCachePoolServiceHere']
tags:
- { name: 'kernel.event_subscriber' }
⏭️: Read the Symfony SDK guide to learn more.
Here's how to quickly integrate APItoolkit into your Flask application.
pip install apitoolkit-flask
from flask import Flask
from apitoolkit_flask import APIToolkit
app = Flask(__name__)
apitoolkit = APIToolkit(api_key="{YOUR_API_KEY_HERE}", debug=True)
@app.before_request
def before_request():
apitoolkit.beforeRequest()
@app.after_request
def after_request(response):
apitoolkit.afterRequest(response)
return response
⏭️: Read the Flask SDK guide to learn more.
Here's how to quickly integrate APItoolkit into your Gin application.
go get github.com/apitoolkit/apitoolkit-go
package main
import (
"context"
apitoolkit "github.com/apitoolkit/apitoolkit-go"
"github.com/gin-gonic/gin"
)
func main() {
// Initialize the client using your apitoolkit.io generated apikey
apitoolkitClient, err := apitoolkit.NewClient(context.Background(), apitoolkit.Config{APIKey: "{YOUR_API_KEY_HERE}"})
if err != nil {
panic(err)
}
router := gin.New()
// Register with the corresponding middleware of your choice. For Gin router, we use the GinMiddleware method.
router.Use(apitoolkitClient.GinMiddleware)
}
⏭️: Read the Go Gin SDK guide to learn more.
Here's how to quickly integrate APItoolkit into your AdonisJS application.
npm install apitoolkit-adonis
First, configure the package.
node ace configure apitoolkit-adonis
Next, set API key in a /conf/apitoolkit.ts
file.
export const apitoolkitConfig = {
apiKey: "",
};
Then, add @ioc:APIToolkit
to your global middlewares in the start/kernel.ts
file.
Server.middleware.register([
() => import("@ioc:Adonis/Core/BodyParser"),
() => import("@ioc:APIToolkit"),
]);
⏭️: Read the AdonisJS SDK guide to learn more.
Here's how to quickly integrate APItoolkit into your Fastify.js application.
npm install apitoolkit-fastify
import APIToolkit from "apitoolkit-fastify";
import Fastify from "fastify";
const fastify = Fastify();
// Create and initialize an instance of the APIToolkit
const apittoolkitClient = APIToolkit.NewClient({
apiKey: "{YOUR_API_KEY_HERE}",
fastify,
});
apitoolkitClient.init();
⏭️: Read the Fastify SDK guide to learn more.
Here's how to quickly integrate APItoolkit into your Nest.js application.
npm install apitoolkit-express
import { NestFactory } from "@nestjs/core";
import { APIToolkit } from "apitoolkit-express";
import { AppModule } from "./app.module";
//
async function bootstrap() {
const apiToolkitClient = APIToolkit.NewClient({
apikey: "{YOUR_API_KEY_HERE}",
});
const app = await NestFactory.create(AppModule);
app.use(apiToolkitClient.expressMiddleware);
await app.listen(3000);
}
//
bootstrap();
⏭️: Read the NestJS SDK guide to learn more.
Here's how to quickly integrate APItoolkit into your Golang Gorilla Mux application.
go get -u github.com/gorilla/mux
package main
import (
"context"
"net/http"
"github.com/gorilla/mux"
apitoolkit "github.com/apitoolkit/apitoolkit-go"
)
func main() {
ctx := context.Background()
// Initialize the client using your generated apikey
apitoolkitClient, err := apitoolkit.NewClient(ctx, apitoolkit.Config{APIKey: "{YOUR_API_KEY_HERE}"})
if err != nil {
panic(err)
}
r := mux.NewRouter()
// Register middleware
r.Use(apitoolkitClient.GorillaMuxMiddleware)
}
⏭️: Read the Go Gorilla Mux SDK guide to learn more.
Here's how to quickly integrate APItoolkit into your Pyramid application.
pip install apitoolkit-pyramid
from wsgiref.simple_server import make_server
from pyramid.config import Configurator
from pyramid.response import Response
from pyramid.view import view_config
@view_config(
route_name='home'
)
def home(request):
return Response('Welcome!')
if __name__ == '__main__':
setting = {"APITOOLKIT_KEY": "{YOUR_API_KEY_HERE}"}
with Configurator(settings=setting) as config:
# Add APItoolkit tween
config.add_tween("apitoolkit_pyramid.APIToolkit")
config.add_route('home', '/')
config.scan()
app = config.make_wsgi_app()
server = make_server('0.0.0.0', 6543, app)
server.serve_forever()
⏭️: Read the Pyramid SDK guide to learn more.