Skip to content

Commit da76758

Browse files
committed
fix(tools): handle all Atlassian error formats in parseJsmErrorMessage
Update parseJsmErrorMessage to extract errors from all Atlassian API response formats: errorMessage (JSM), errorMessages array (Jira), errors[].title RFC 7807 (Confluence/Forms), field-level errors object, and message (gateway). Remove redundant prefix wrapping so the raw error message surfaces cleanly through the extractor.
1 parent bce638d commit da76758

File tree

1 file changed

+26
-3
lines changed

1 file changed

+26
-3
lines changed

apps/sim/tools/jsm/utils.ts

Lines changed: 26 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -50,13 +50,36 @@ export function parseJsmErrorMessage(
5050
): string {
5151
try {
5252
const errorData = JSON.parse(errorText)
53+
// JSM Service Desk: singular errorMessage
5354
if (errorData.errorMessage) {
54-
return `JSM Forms API error: ${errorData.errorMessage}`
55+
return errorData.errorMessage
56+
}
57+
// Jira Platform: errorMessages array
58+
if (Array.isArray(errorData.errorMessages) && errorData.errorMessages.length > 0) {
59+
return errorData.errorMessages.join(', ')
60+
}
61+
// Confluence v2 / Forms API: RFC 7807 errors array
62+
if (Array.isArray(errorData.errors) && errorData.errors.length > 0) {
63+
const err = errorData.errors[0]
64+
if (err?.title) {
65+
return err.detail ? `${err.title}: ${err.detail}` : err.title
66+
}
67+
}
68+
// Jira Platform field-level errors object
69+
if (errorData.errors && !Array.isArray(errorData.errors)) {
70+
const fieldErrors = Object.entries(errorData.errors)
71+
.map(([field, msg]) => `${field}: ${msg}`)
72+
.join(', ')
73+
if (fieldErrors) return fieldErrors
74+
}
75+
// Generic message fallback
76+
if (errorData.message) {
77+
return errorData.message
5578
}
5679
} catch {
5780
if (errorText) {
58-
return `JSM Forms API error: ${errorText}`
81+
return errorText
5982
}
6083
}
61-
return `JSM Forms API error: ${status} ${statusText}`
84+
return `${status} ${statusText}`
6285
}

0 commit comments

Comments
 (0)