Files
cameleer-server/ui/src/api/schema.d.ts
hsiegeln f2744e3094
All checks were successful
CI / build (push) Successful in 1m28s
CI / cleanup-branch (push) Has been skipped
CI / docker (push) Successful in 50s
CI / deploy (push) Successful in 38s
CI / deploy-feature (push) Has been skipped
fix: correct response field mappings and add logout button
- SearchResult uses 'data' not 'items', 'total' not 'totalCount'
- ExecutionStats uses 'p99LatencyMs' not 'p99DurationMs'
- TimeseriesBucket uses 'time' not 'timestamp'
- Add user Dropdown with logout action to LayoutShell

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-19 18:06:49 +01:00

249 lines
7.5 KiB
TypeScript

// Placeholder — regenerate with: npm run generate-api:live
// This file will be overwritten by openapi-typescript when the backend is running.
export interface paths {
'/auth/login': {
post: {
requestBody: { content: { 'application/json': { username: string; password: string } } };
responses: { 200: { content: { 'application/json': { accessToken: string; refreshToken: string; displayName?: string } } } };
};
};
'/auth/refresh': {
post: {
requestBody: { content: { 'application/json': { refreshToken: string } } };
responses: { 200: { content: { 'application/json': { accessToken: string; refreshToken: string; displayName?: string } } } };
};
};
'/auth/oidc/config': {
get: {
responses: { 200: { content: { 'application/json': { clientId?: string; authorizationEndpoint?: string; endSessionEndpoint?: string } } } };
};
};
'/auth/oidc/callback': {
post: {
requestBody: { content: { 'application/json': { code: string; redirectUri: string } } };
responses: { 200: { content: { 'application/json': { accessToken: string; refreshToken: string; displayName?: string; idToken?: string } } } };
};
};
'/agents': {
get: {
parameters: { query?: { status?: string; group?: string } };
responses: { 200: { content: { 'application/json': components['schemas']['AgentInstanceResponse'][] } } };
};
};
'/agents/events-log': {
get: {
parameters: { query?: { appId?: string; agentId?: string; from?: string; to?: string; limit?: number } };
responses: { 200: { content: { 'application/json': components['schemas']['AgentEventResponse'][] } } };
};
};
'/search/executions': {
post: {
requestBody: { content: { 'application/json': components['schemas']['SearchRequest'] } };
responses: { 200: { content: { 'application/json': components['schemas']['SearchResultExecutionSummary'] } } };
};
};
'/search/stats': {
get: {
parameters: { query: { from: string; to?: string; routeId?: string; group?: string } };
responses: { 200: { content: { 'application/json': components['schemas']['ExecutionStats'] } } };
};
};
'/search/stats/timeseries': {
get: {
parameters: { query: { from: string; to?: string; buckets?: number; routeId?: string; group?: string } };
responses: { 200: { content: { 'application/json': components['schemas']['StatsTimeseries'] } } };
};
};
'/executions/{executionId}': {
get: {
parameters: { path: { executionId: string } };
responses: { 200: { content: { 'application/json': components['schemas']['ExecutionDetail'] } } };
};
};
'/executions/{executionId}/processors/{index}/snapshot': {
get: {
parameters: { path: { executionId: string; index: number } };
responses: { 200: { content: { 'application/json': Record<string, unknown> } } };
};
};
'/diagrams/{contentHash}/render': {
get: {
parameters: { path: { contentHash: string } };
responses: { 200: { content: { 'application/json': components['schemas']['DiagramLayout'] } } };
};
};
'/diagrams': {
get: {
parameters: { query: { group: string; routeId: string } };
responses: { 200: { content: { 'application/json': Record<string, unknown> } } };
};
};
'/routes/catalog': {
get: {
responses: { 200: { content: { 'application/json': components['schemas']['AppCatalogEntry'][] } } };
};
};
'/routes/metrics': {
get: {
parameters: { query?: { from?: string; to?: string; appId?: string } };
responses: { 200: { content: { 'application/json': components['schemas']['RouteMetrics'][] } } };
};
};
}
export interface components {
schemas: {
ExecutionSummary: {
executionId: string;
routeId: string;
agentId: string;
groupName: string;
status: string;
startTime: string;
endTime?: string;
durationMs: number;
errorMessage?: string;
correlationId?: string;
exchangeId?: string;
};
SearchRequest: {
timeFrom?: string;
timeTo?: string;
routeId?: string;
group?: string;
agentId?: string;
status?: string;
text?: string;
offset?: number;
limit?: number;
sortField?: string;
sortDir?: string;
};
ExecutionDetail: {
executionId: string;
routeId: string;
agentId: string;
groupName: string;
status: string;
startTime: string;
endTime?: string;
durationMs: number;
errorMessage?: string;
errorStacktrace?: string;
correlationId?: string;
exchangeId?: string;
diagramContentHash?: string;
children: components['schemas']['ProcessorNode'][];
};
ProcessorNode: {
processorId: string;
processorType: string;
diagramNodeId?: string;
status: string;
startTime: string;
endTime?: string;
durationMs: number;
errorMessage?: string;
children: components['schemas']['ProcessorNode'][];
};
ExecutionStats: {
totalCount: number;
failedCount: number;
avgDurationMs: number;
p99LatencyMs: number;
activeCount: number;
totalToday: number;
prevTotalCount: number;
prevFailedCount: number;
prevAvgDurationMs: number;
prevP99DurationMs: number;
};
StatsTimeseries: {
buckets: components['schemas']['TimeseriesBucket'][];
};
TimeseriesBucket: {
time: string;
totalCount: number;
failedCount: number;
avgDurationMs: number;
p99DurationMs: number;
activeCount: number;
};
SearchResultExecutionSummary: {
data: components['schemas']['ExecutionSummary'][];
total: number;
offset: number;
limit: number;
};
UserInfo: {
userId: string;
provider: string;
email: string;
displayName: string;
createdAt: string;
};
AgentInstanceResponse: {
id: string;
name: string;
group: string;
status: string;
routeIds: string[];
registeredAt: string;
lastHeartbeat: string;
tps: number;
errorRate: number;
activeRoutes: number;
totalRoutes: number;
uptimeSeconds: number;
};
AgentEventResponse: {
id: number;
agentId: string;
appId: string;
eventType: string;
detail?: string;
timestamp: string;
};
AppCatalogEntry: {
appId: string;
routes: components['schemas']['RouteSummary'][];
agents: components['schemas']['AgentSummary'][];
agentCount: number;
health: string;
exchangeCount: number;
};
RouteSummary: {
routeId: string;
exchangeCount: number;
lastSeen?: string;
};
AgentSummary: {
id: string;
name: string;
status: string;
tps: number;
};
RouteMetrics: {
routeId: string;
appId: string;
exchangeCount: number;
successRate: number;
avgDurationMs: number;
p99LatencyMs: number;
errorRate: number;
throughputPerSec: number;
sparkline: number[];
};
DiagramLayout: Record<string, unknown>;
PositionedNode: Record<string, unknown>;
PositionedEdge: Record<string, unknown>;
OidcAdminConfigResponse: Record<string, unknown>;
OidcAdminConfigRequest: Record<string, unknown>;
OidcTestResult: Record<string, unknown>;
OidcPublicConfigResponse: Record<string, unknown>;
AuthTokenResponse: { accessToken: string; refreshToken: string; displayName?: string };
ErrorResponse: { error: string; details?: string };
};
}