refactor: reorganize gateway routes under /api/ prefix (closes #178, closes #179)

- Gateway management: /api/gateway/register, /api/gateway/endpoints
- Agent proxy: /api/agents/:agent/*
- /healthz stays at root (CF/k8s convention)
- Skip dashboard auth for gateway register routes
- Update CLI serve tunnel registration paths
- Update dashboard API client paths

Ref: #177
This commit is contained in:
2026-05-11 15:48:13 +08:00
parent da6bcb10d6
commit 93145cf08c
5 changed files with 1044 additions and 14 deletions
@@ -42,7 +42,7 @@ export async function registerWithGateway(
agentToken: string,
): Promise<boolean> {
try {
const resp = await fetch(`${gatewayUrl}/register`, {
const resp = await fetch(`${gatewayUrl}/api/gateway/register`, {
method: "POST",
headers: { "Content-Type": "application/json" },
body: JSON.stringify({ name, url: tunnelUrl, secret, agentToken }),
@@ -65,7 +65,7 @@ export async function unregisterFromGateway(
secret: string,
): Promise<void> {
try {
await fetch(`${gatewayUrl}/register/${name}`, {
await fetch(`${gatewayUrl}/api/gateway/register/${name}`, {
method: "DELETE",
headers: { Authorization: `Bearer ${secret}` },
});