NetSuite - Gather API Credentials

The API (Application Programming Interface) provides automated communication between connected systems.

To gather the credentials for NetSuite Token-based Authentication, follow these required steps in order:

When these steps are complete, you will have gathered the following required credentials:

1: Create an Integration Record

The Integration Record identifies the application in NetSuite’s system. Follow these steps to create the required Integration Record.

  1. In NetSuite, go to the Integrations page, or perform a global search for page:integrations.
  2. Create an Integration Record if none exists.
  3. After you create the record, retain the displayed Consumer Key and Consumer Secret.
  4. If the Integration Record already exists, but it doesn't have a Consumer Key and Consumer Secret: edit the Integration Record, then click Reset Credentials, and set them to:
    • Name: Your-Application-Name
    • Authentication: Token-Based Authentication
    • State: Enabled

2: Enable Token-based Authentication

  1. In NetSuite, go to Setup > Company > Setup Tasks > Enable Features > SuiteCloud > Manage Authentication.
  2. Make sure Token Based Authentication is enabled.
  3. Click Save.

3: Create a Token Role

The administrator does not have token permissions by default. If you do not create a token role and assign it to your administrator, you will get a Login access has been disabled for this role error when creating a token.

  1. In NetSuite, perform a global search for page:role, then choose New Role.
  2. Click Permissions > Setup.
  3. Add the following permissions:
    • User Access Tokens: Full
    • Access Token Management: Full
    • SOAP Web Services: Full

4: Add Token Management Permissions

  1. In NetSuite, perform a global search for page:employees.
  2. Edit your employee record.
  3. Go to Access > Roles, and add the token auth role you just created.

5: Create Access Tokens

  1. Perform a global search for page:tokens.
  2. Click New Access Token.
  3. Select the application and role you created earlier, then click Save.
  4. Retain the Token ID and Token secret.

You can also view a video guide of the above steps:

6: Account ID

  1. In NetSuite Admin, click Setup > Integration > Web Service Preferences.
  2. Retain the Account ID displayed under the Account ID heading.

7: Grant permissions to the Token Role

  1. In NetSuite, go to Setup > Setup Manager.


  1. On the left, click Users/Roles. Under User Management, click Manage Roles.
  2. Next to the Token role, click Edit.


  1. Under Permissions, grant Full permission for the following Transactions and Lists
    (clicking ✓ Add after each one), if you will be using the associated transaction type:

Sales Orders

To enable Sales Orders transactions, grant Full permission to the Token Role for the following:

Transactions > Sales Order
Transactions > Item Fulfillment
Transactions > Fulfill Orders
Transactions > Find Transaction
Lists > Items
Lists > Locations
Lists > Customers


Purchase Orders

For Purchase Orders transactions, grant Full permission to the Token Role for the following permissions:

Transactions > Purchase Order
Transactions > Item Receipt
Transactions > Find Transaction
Lists > Items
Lists > Locations


Inventory Adjustment

For Inventory Adjustment transactions, grant Full permission to the Token Role for the following permissions:

Transactions > Adjust Inventory
Lists > Locations
Lists > Accounts


If you will use the Order Import Saved Search feature, which imports orders based on the results of a Saved Search in NetSuite, grant Full access level to the Token Role for the following permission:

Lists > Perform Search


Expand Kits

If you will use the Expand Kits feature, which includes kit item component lines on the sales order:

First, make sure REST Web Services is enabled in NetSuite account options under Setup > Company > Setup Tasks > Enable Features, in the SuiteTalk (Web Services) section:


Then, enable the following permissions for the token role:

Reports > SuiteAnalytics Workbook, Level: Edit
Setup > REST Web Services, Level: Full



8: Gather NetSuite Location ID (optional)

The Location ID is an optional parameter which is only used when Multi-Location Inventory feature is enabled.

There should be a single location to represent inventory in the third-party fulfillment center.

  1. From NetSuite Admin, click Setup > Company > Locations.
  2. Click View next to the location.
  3. Retain the numeric Location ID, displayed under the heading Internal ID.

Next: Enable API Access

Was this article helpful?
0 out of 0 found this helpful
Have more questions? Submit a request



Please sign in to leave a comment.