Bowire is a multi-protocol API workbench designed to simplify the exploration and interaction with APIs across various protocols, including gRPC, REST, GraphQL, SignalR, MQTT, WebSocket, SSE, OData, and more. It serves as a comprehensive tool for discovering, invoking, recording, mocking, and replaying endpoints, enabling seamless communication with services without requiring code changes.
Key Features:
Multi-protocol Support: Connect to APIs using gRPC (with reflection + transcoding), REST (OpenAPI/Swagger), GraphQL, SignalR, MQTT, WebSocket, SSE, OData, and other protocols.
Embedded Mode: Integrate Bowire directly into an existing ASP.NET application for on-demand API exploration within the development environment.
Local Operation: Operates entirely offline with no cloud dependencies, ensuring data privacy and security.
Recording and Mocking: Capture API interactions to create mock scenarios, enabling testing and development in isolated environments.
Protocol Plugins: Supports additional protocols like Küstenlogik Surgewave, Apache Kafka, IEEE 1278 DIS, and raw UDP through plugin integration.
Audience & Benefit:
Ideal for developers, API designers, and QA engineers who need a versatile tool to interact with APIs across diverse protocols. Bowire streamlines API exploration and testing by providing a unified interface, reducing the need for multiple tools or external dependencies. It empowers users to work efficiently in both embedded and standalone environments, ensuring flexibility and productivity throughout the development lifecycle.
Bowire can be installed via winget for easy setup and integration into existing workflows.
README
Bowire
The multi-protocol API workbench. gRPC, REST, GraphQL, JSON-RPC, SignalR, WebSocket, SSE, MQTT, Socket.IO, MCP, OData, AsyncAPI, AMQP, Kafka, Akka.NET, NATS, SOAP, Pulsar — run against any service URL with zero code changes.
Windows MSIs, portable ZIPs, Docker images, winget install Kuestenlogik.Bowire, and choco install bowire — with a Homebrew tap still pending — all listed on the Downloads page. It's the source of truth for what's available right now.
Mount the workbench inside an existing ASP.NET host:
dotnet add package Kuestenlogik.Bowire
var app = WebApplication.Create(args);
app.MapBowire(); // workbench at /bowire
app.Run();
Discovery picks services off the host's IServiceProvider — REST routes, gRPC reflection, SignalR hubs, custom protocols. See Setup → Embedded.
On a shared or production host, set options.LockServerUrl = true (standalone: --url) and, if needed, options.AllowedServerUrls (--allowed-server-url) and options.AllowedAuthUrls for identity providers (--allowed-auth-url). They are enforced server-side: the workbench then refuses to dial any target outside the configured set with 403, so it can't be used as a relay into your network. See Options → LockServerUrl.
Documentation
Everything user-facing lives at bowire.io. The most-asked entries: