A NetSuite project? Our consultants are available Monday to Friday, 9 a.m.–5 p.m. (Paris time) · +33 6 38 55 26 66

FREN

NetSuite

NetSuite API: REST, SOAP or RESTlets, Which One Should You Choose?

Requête de type SQL et code JavaScript affichés sur un écran sombre

Your e-commerce site needs to send its orders to NetSuite. Your CRM needs to retrieve invoices. Your payroll tool needs to post its journal entries. Behind each of these connections lies the same technical question: which API should you use?

NetSuite offers three: SOAP, REST and RESTlets. For years, the choice mostly came down to developers’ preferences. Not anymore: NetSuite has scheduled the end of SOAP, and the API you choose now determines how long your integrations will last.

At SuiteVise, we design and maintain NetSuite integrations every day. Here, in simple terms, is what sets these three APIs apart and how to choose the right one.

The three NetSuite APIs in a nutshell

SOAP (SuiteTalk SOAP Web Services): NetSuite’s original API. It relies on XML exchanges and service contracts (WSDL) versioned with each release. Robust and widely used by off-the-shelf connectors, it is now reaching end of life.

REST (SuiteTalk REST Web Services): NetSuite’s modern API. It exchanges data in JSON, can read, create, update and delete most records, and gives access to SuiteQL, a SQL-like query language. It is the API NetSuite recommends for any new integration.

RESTlets: not a “ready-to-use” API, but entry points you develop yourself in SuiteScript, inside NetSuite. A RESTlet can hold the full logic of a business process: validating data, creating several records, applying specific rules, all in a single call.

SOAP: a scheduled end

Bundle of blue network cables connected to equipment

This is the most important point in this article. NetSuite has announced the gradual removal of its SOAP web services, in favor of the REST API and OAuth 2.0 authentication.

The main milestones of the announced timeline:

NetSuite releaseWhat changes
2025.2Last planned SOAP endpoint
2026.1No new SOAP endpoint with each release; NetSuite asks that every new integration be built on REST, with OAuth 2.0
2027.1No more new integrations built on SOAP, or with token-based authentication
2027.2Only the 2025.2 SOAP endpoint remains supported
2028.2Full removal of SOAP: SOAP integrations stop working

Each SOAP endpoint is supported for three years after its release, and the oldest one is disabled with each new release. An integration still pointing to an old endpoint can therefore stop working well before 2028.

What this means in practice:

  • No new integration should be built on SOAP.
  • Existing SOAP integrations should move at least to the 2025.2 endpoint, then be migrated to REST or RESTlets.
  • Off-the-shelf connectors (integration platforms, third-party applications) need to be checked: some still use SOAP behind the scenes.

REST, SOAP and RESTlets: the comparison

CriterionSOAPRESTRESTlets
FormatXMLJSONJSON, text or XML, depending on the development
NatureStandard NetSuite APIStandard NetSuite APICustom-built entry point
FutureFull removal in 2028.2API recommended by NetSuiteLong-lasting, based on SuiteScript
AuthenticationToken-based authentication (TBA)OAuth 2.0 (tokens accepted for existing integrations)OAuth 2.0 (tokens accepted for existing integrations)
SuiteQL queriesNoYesPossible in the code
Business logicIn the calling systemIn the calling systemIn NetSuite, in the RESTlet
Calls per processOften severalSeveral, sometimes fewer than with SOAPOften just one
DevelopmentNo code in NetSuiteNo code in NetSuiteSuiteScript code to write and maintain
Use of NetSuite resourcesConcurrency limitsConcurrency limitsConcurrency limits and SuiteScript governance units

Key takeaway: concurrency limits are shared by all three APIs. They depend on your account’s service tier and on any SuiteCloud Plus licenses. More integrations means sharing the same number of simultaneous calls.

Which API for which need?

Choose REST when…

  • You need standard operations on records: create a customer, update an order, read an invoice.
  • You want to extract data flexibly with SuiteQL, for example to feed a data warehouse or a reporting tool.
  • You use an integration platform or a connector that speaks REST.
  • You want to limit the code to maintain in NetSuite.

It is the default choice for a new integration.

Choose a RESTlet when…

  • The business process requires several linked operations: create an order and its lines, reserve stock and return a status, in a single call.
  • You need specific validation rules in NetSuite before saving the data.
  • You want to reduce the number of calls to preserve your concurrency limits.
  • The REST API does not cover the use case or certain specific records.

A RESTlet is powerful, but it is code: it must be documented, tested and maintained with every NetSuite update.

Keep SOAP only…

For an existing integration, while you migrate it, moving at least to the 2025.2 endpoint.

And often, both

In practice, many architectures combine REST for standard operations and RESTlets for complex processes. It is often the most balanced approach: little code, but custom work where it really adds value.

Points to watch, whatever the API

Blue network cable plugged into a numbered patch panel
  • Authentication: favor OAuth 2.0, the method NetSuite recommends and makes mandatory for every new integration from release 2027.1. Token-based authentication remains possible for existing integrations. In every case, set up a dedicated user and role for each integration. Never use a real user’s credentials.
  • Permissions: the integration role should have only the rights it needs. This is a matter of security, but also of traceability.
  • Concurrency: monitor the number of simultaneous calls. Beyond the limit, calls are rejected. Grouping processing and scheduling heavy flows during off-peak hours prevents many incidents.
  • Error handling: an integration must detect, log and replay failed calls. Otherwise, orders or invoices disappear without anyone noticing.
  • Existing scripts: API calls trigger server-side scripts and workflows, but not client-side scripts. A control rule placed only in a client script will not apply to data received through the API.
  • External IDs: use external IDs to link records across systems and avoid duplicates.
  • Documentation: every flow should be documented (direction, frequency, data, owner) so it can be maintained and evolve.

Frequently asked questions

What is the difference between REST and a RESTlet in NetSuite?

The REST API is a standard API provided by NetSuite to work with records and run SuiteQL queries. A RESTlet is an entry point you develop in SuiteScript to run custom business logic in a single call.

Is NetSuite’s SOAP API going away?

Yes. According to the timeline announced by NetSuite, the 2025.2 endpoint is the last one planned, new SOAP integrations are no longer possible from 2027.1, and SOAP is fully removed with release 2028.2.

Should SOAP integrations be migrated now?

At a minimum, they should move to the 2025.2 endpoint, and their migration to REST or RESTlets should be planned. An integration on an old endpoint can stop working before 2028.

What is SuiteQL?

A SQL-like query language, available in particular through the REST API. It extracts data more flexibly than saved searches.

Do RESTlets use NetSuite resources?

Yes. They share concurrency limits with the other APIs and consume SuiteScript governance units. But a well-designed RESTlet often replaces several calls.

Which API does NetSuite’s MCP connector use?

The standard tools of the AI Connector Service rely on NetSuite’s REST web services.

In short: REST by default, RESTlets for custom work, SOAP to migrate

For any new integration, the REST API is the natural choice: standard, modern and recommended by NetSuite. RESTlets complement it for complex business processes, provided you accept the code they involve. As for SOAP, its removal is scheduled: it is time to take stock of your existing integrations and plan their migration.

Not sure which integrations still use SOAP, or preparing a new flow with NetSuite? SuiteVise can help: an inventory of your integrations, the choice of architecture, migration to REST and RESTlet development. Let’s take 30 minutes to talk it through.

Further reading

More from our blog

Let’s talk about your project

Streamline your business processes with SuiteVise

Tell us about your needs and we will identify the NetSuite solutions that fit your business.

Back to top