Secure, scalable, and seamless routing for all Sendora services.
The central API Gateway connecting Auth Server, API Host, and Admin Portal.
{
"routes": {
"api": {
"path": "/api/**",
"target": "ApiHost:44360"
},
"auth": {
"path": "/connect/**",
"target": "AuthServer:44382"
},
"admin": {
"path": "/admin/**",
"target": "AdminPortal:44321"
}
}
}
A unified communication platform with powerful backend services
Sendora is a comprehensive communication system offering multiple backend services that work together seamlessly to provide secure authentication, business logic, centralized management, and intelligent routing.
At the center of this ecosystem is the API Gateway — the central access layer that connects all services, ensuring high performance, security, and unified API management. It acts as the bridge that orchestrates communication between all Sendora components.
Secure authentication and authorization with OpenIddict
Business logic, integrations, and RESTful APIs
Centralized management and monitoring dashboard
Central routing, control, and scalability layer
Built to power Sendora's distributed architecture
Intelligent request routing powered by YARP (Yet Another Reverse Proxy). Seamlessly route traffic to Auth Server, API Host, and Admin Portal with path-based routing.
Seamless integration with Sendora's Auth Server. JWT Bearer authentication with OpenIddict, OAuth 2.0, and identity management for all services.
Protect backend services from overload with intelligent rate limiting. Configure per-user, per-endpoint, or global traffic policies.
Real-time insights powered by Serilog structured logging. Monitor performance, track errors, and analyze traffic patterns through the Admin Portal.
Single entry point for all APIs. The gateway routes to API Host for business logic, messaging services, and third-party integrations like WAHA.
Built on modern .NET architecture with industry-standard security practices. HTTPS enforcement, CORS policies, and comprehensive request validation.
How traffic flows through the Sendora ecosystem
Powered by YARP: Microsoft's high-performance reverse proxy. All requests flow through the gateway, which intelligently routes to the appropriate service based on path patterns.
Simple APIs, clear documentation, and unified SDKs make integration effortless
Built on modern .NET architecture with comprehensive OpenAPI documentation. Interactive API docs at /swagger.
.NET client library with built-in authentication, token refresh, and strongly-typed models for rapid integration.
Get started quickly with our comprehensive documentation, quickstart guides, and example applications.
Pre-configured Dockerfiles and Helm charts for seamless deployment to any environment.
# Send a message via Sendora Gateway
curl -X POST https://edge.sendora.vertocore.com/api/messaging/send \
-H "Authorization: Bearer YOUR_JWT_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"phoneNumber": "+1234567890",
"message": "Hello from Sendora!",
"instanceName": "default"
}'
// Using Sendora API Client
const response = await fetch('https://edge.sendora.vertocore.com/api/messaging/send', {
method: 'POST',
headers: {
'Authorization': 'Bearer YOUR_JWT_TOKEN',
'Content-Type': 'application/json'
},
body: JSON.stringify({
phoneNumber: '+1234567890',
message: 'Hello from Sendora!',
instanceName: 'default'
})
});
const data = await response.json();
console.log(data);
# Python example with Sendora
import requests
url = "https://edge.sendora.vertocore.com/api/messaging/send"
headers = {
"Authorization": "Bearer YOUR_JWT_TOKEN",
"Content-Type": "application/json"
}
payload = {
"phoneNumber": "+1234567890",
"message": "Hello from Sendora!",
"instanceName": "default"
}
response = requests.post(url, json=payload, headers=headers)
print(response.json())
// Using Sendora .NET Client SDK
using Sendora.ApiClient;
var options = new SendoraApiClientOptions
{
BaseUrl = "https://edge.sendora.vertocore.com",
ClientId = "your-client-id",
ClientSecret = "your-secret"
};
var client = new SendoraApiClient(options);
var result = await client.SendMessageAsync(
"+1234567890",
"Hello from Sendora!",
"default"
);
Console.WriteLine(result);
Experience the power of a unified communication platform with enterprise-grade infrastructure.