MCPcopy Create free account
hub / github.com/ForgeAILab/forge / getApiErrorMessage

Function getApiErrorMessage

web/src/lib/api-error.ts:4–26  ·  view source on GitHub ↗
(error: unknown, fallback = 'Request failed')

Source from the content-addressed store, hash-verified

2import { ApiError } from '@/api/client'
3
4export function getApiErrorMessage(error: unknown, fallback = 'Request failed'): string {
5 if (error instanceof ApiError) {
6 let message = error.message || fallback
7 let requestId = error.requestId
8 try {
9 const parsed = JSON.parse(error.message) as {
10 message?: unknown
11 request_id?: unknown
12 }
13 if (typeof parsed.message === 'string' && parsed.message) {
14 message = parsed.message
15 }
16 if (typeof parsed.request_id === 'string' && parsed.request_id) {
17 requestId = parsed.request_id
18 }
19 } catch {
20 // Non-JSON error bodies are already usable as-is.
21 }
22 return `${message}${requestId ? ` Request ID: ${requestId}` : ''}`
23 }
24 if (error instanceof Error) return error.message
25 return fallback
26}
27
28export function getApiErrorCode(error: unknown): string | undefined {
29 if (!(error instanceof ApiError)) return undefined

Callers 15

handleActionFunction · 0.90
handleInstallMissingFunction · 0.90
onStatusChangeFunction · 0.90
onRecoverTaskFunction · 0.90
onApproveGateFunction · 0.90
onRejectGateFunction · 0.90
ErrorBannerFunction · 0.90
TaskReviewPanelFunction · 0.90
TaskTerminalPanelFunction · 0.90
handleStartFunction · 0.90
handleReattachFunction · 0.90

Calls 1

parseMethod · 0.80

Tested by

no test coverage detected