megaphone
Update your Profile with your Support type to get your Support Type badge.
Nominate Your Peers for NetSuite Support Community's Choice of the Quarter! Submit your nomination today.
Expand your NetSuite knowledge by joining our Ask A Guru Live sessions. RSVP on this event now.
Stay in the know of how NetSuite can help grow your business with our guides, webinars, and events. Subscribe Here
What Topic Should We Cover Next? Your idea could be our next feature—drop your suggestion now!
No Limits. Just possibilities. Join us for complimentary one-day events around the world and step into a future fueled by AI and limitless potential. Discover what's next at SuiteConnect Tour 2026.
Try Intelligent Payment Automation – Fee Free For Your First Month For more information, visit this thread.

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.
Now is the time to ask your NetSuite-savvy friends and colleagues to join the NetSuite Support Community! Refer now! Click here to watch and learn more!
Stay in the Know

Be sure you're subscribed to NetSuite communication to stay in the know about monthly happenings, updates and announcements. Subscribe

Invalid Signature oauth 1.0

edited Jan 12, 2024 8:17PM in Ask A Guru 6 comments

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 }];

Howdy, Stranger!

Log In

To view full details, sign in.

Register

Don't have an account? Click here to get started!

Leaderboard

Community Whiz

Quarter 1 (Jan-Mar 2026)

This Week's Leaders

This Month's Leaders

All Time Leaders