Discussions
Stay up-to-date with the latest news from NetSuite. You’ll be in the know about how to connect with peers and take your business to new heights at our virtual, in-person, on demand events, and much more.
New AI Community Guidelines. Please review and follow them to ensure AI use stays safe, accurate, and compliant.
Keep an eye out for upcoming NetSuite events, including meetups, workshops, and webinars. These sessions are a great way to connect with peers, learn from experts, and stay current on the latest NetSuite updates and best practices. Registration links are provided in each event.
Save $30 - limited to first 1,000 registrants
Join the NetSuite community to innovate, connect, and discover what’s next.
SuiteWorld brings thousands of innovators, builders, and leaders together to learn, connect, and shape what’s next. This October, explore how to build a stronger foundation for growth through inspiring keynotes, major product reveals, hands-on sessions, and unforgettable moments—all in one place for our biggest event of the year. Register now
Join the NetSuite community to innovate, connect, and discover what’s next.
SuiteWorld brings thousands of innovators, builders, and leaders together to learn, connect, and shape what’s next. This October, explore how to build a stronger foundation for growth through inspiring keynotes, major product reveals, hands-on sessions, and unforgettable moments—all in one place for our biggest event of the year. Register now
Invalid Signature oauth 1.0
Hello, I keep getting invalid signature in my login audit trail in NetSuite, I have tried multiple methods to try to construct this signature correctly but am not sure how to troubleshoot it. The code below is how I am generating the signature.
const crypto = require('crypto');
// Function to generate OAuth 1.0 signature for NetSuite
function generateNetSuiteOAuthSignature(consumerKey, consumerSecret, token, tokenSecret, method, url, params) {
const baseString = `${method.toUpperCase()}&${encodeURIComponent(url)}&${encodeURIComponent(params)}`;
const key = `${encodeURIComponent(consumerSecret)}&${encodeURIComponent(tokenSecret)}`;
const signature = crypto.createHmac('sha256', key).update(baseString).digest('base64');
return signature;
}
const consumerKey = 'KEY';
const consumerSecret = 'SECRET';
const token = 'TOKEN';
const tokenSecret = 'SECRET';
const method = 'POST';
const url = 'https://ACCOUNTID-sb1.restlets.api.netsuite.com/rest/requesttoken';
const params = `oauth_callback=${inputData.callbackURL}&oauth_consumer_key=${inputData.consumerKey}&oauth_nonce=${inputData.nonce}&oauth_signature_method=HMAC-SHA256&oauth_timestamp=${inputData.vtimestamp}&6oauth_version=1.0&6role=1042`;
// Generate OAuth 1.0 signature for NetSuite
const oauthSignature = generateNetSuiteOAuthSignature(consumerKey, consumerSecret, token, tokenSecret, method, url, params);
// Output the generated signature
output = [{ oauthSignature }];
Tagged:
0