MCPcopy Create free account
hub / github.com/PSPDFKit/nutrient-document-engine-mcp-server / handleApiError

Function handleApiError

src/utils/ErrorHandling.ts:17–97  ·  view source on GitHub ↗
(error: unknown)

Source from the content-addressed store, hash-verified

15}
16
17export function handleApiError(error: unknown): never {
18 if (axios.isAxiosError(error)) {
19 const status = error.response?.status;
20 const data = error.response?.data;
21
22 switch (status) {
23 case 400:
24 throw new DocumentEngineError(
25 data?.message || 'Bad request - invalid parameters',
26 'BAD_REQUEST',
27 400,
28 data
29 );
30 case 401:
31 throw new DocumentEngineError(
32 'Authentication failed - check your API token',
33 'AUTHENTICATION_FAILED',
34 401,
35 data
36 );
37 case 403:
38 throw new DocumentEngineError(
39 'Access forbidden - insufficient permissions',
40 'ACCESS_FORBIDDEN',
41 403,
42 data
43 );
44 case 404:
45 throw new DocumentEngineError(
46 data?.message || 'Resource not found',
47 'NOT_FOUND',
48 404,
49 data
50 );
51 case 409:
52 throw new DocumentEngineError(
53 data?.message || 'Conflict - resource already exists or is in use',
54 'CONFLICT',
55 409,
56 data
57 );
58 case 413:
59 throw new DocumentEngineError(
60 'File too large - exceeds size limits',
61 'FILE_TOO_LARGE',
62 413,
63 data
64 );
65 case 429:
66 throw new DocumentEngineError(
67 'Rate limit exceeded - too many requests',
68 'RATE_LIMIT_EXCEEDED',
69 429,
70 data
71 );
72 case 500:
73 case 502:
74 case 503:

Callers 5

applyPageRotationFunction · 0.85
applyWatermarkFunction · 0.85
mergeDocumentsFunction · 0.85
removePagesFunction · 0.85
attemptFunction · 0.85

Calls

no outgoing calls

Tested by

no test coverage detected