Bit
09/03/2024, 6:39 PMCeligo AI
09/03/2024, 6:39 PMAI generated answer (using internal Slack threads):In SuiteScript, you can catch an exception in a RESTlet script and return the log, the stack trace, and error message in the RESTlet output by using a try-catch block. Here is a simple example:
javascript
function POST(requestBody) {
try {
// Your code here
} catch (e) {
log.error('Error', {
title: e.name,
details: e.message
});
return {
error: {
name: e.name,
message: e.message,
stack: e.stack
}
};
}
}
In this example, if an error occurs in the try block, the catch block is executed. The error is logged using log.error
and the error details are returned in the RESTlet output.
If you want to throw a custom error and return a cleaner error message, you can use the error.create
method and throw the error. Here is an example:
javascript
throw error.create({
name: 'NO_ORDERS_FOUND',
message: 'No Matching Orders',
notifyOff: true
});
In this case, if no orders are found, a custom error is thrown with the name 'NO_ORDERS_FOUND' and the message 'No Matching Orders'. The notifyOff
parameter is set to true, which means that the user is not notified of the error.
Remember, if your RESTlet `return`s normally, the client will receive a `200`; if your RESTlet `throw`s, the client will receive a 400
. You cannot control the response code any further than that.
******
Disclaimer:
This response was generated by an artificial intelligence assistant based on previous conversations from multiple Slack channels, and may contain inaccuracies or mistakes.
******Celigo AI
09/03/2024, 6:40 PMSlack thread 1: here (available only if the original thread was posted in the last 90 days)
Similarity score: 0.835225105
Slack thread 2: here (available only if the original thread was posted in the last 90 days)
Similarity score: 0.834434
Slack thread 3: here (available only if the original thread was posted in the last 90 days)
Similarity score: 0.832153618
Celigo AI
09/03/2024, 6:40 PM