Everything NetSuite

A Blog by Dave Weiss

NetSuite SuiteTalk Web Services Options

By Dave Weiss, Published on September 5th, 2021

When connecting to NetSuite programmatically, there are two methods to access the web services APIs - SOAP XML and REST. Collectively, NetSuite refers to these web services offerings as "SuiteTalk".

This post explores both methods.

SOAP XML

SOAP stands for Simple Access Object Protocol. Don't let the name fool you. "Simple" is a misnomer. SOAP XML is a complex and highly detailed, standardized method for system-to-system communication via Extensible Markup Language (XML). It uses a service definition file called a WSDL (Web Services Description Language), which lays out the specifics of every function a web service provides and defines the structures of the data to be sent and received by the web service.

The WSDL itself can be a complicated document to read and understand, so making use of it and a SOAP-based web service requires some "middleware" to make using the web service easier and more friendly.

To give you an idea of the complexity of SOAP and NetSuite's implementation of the SOAP protocol, take a look at the current NetSuite WSDL.

But don't misunderstand... The NetSuite SOAP web service is AWESOME, and has a very long track record of solid, highly tested and hardened service dating back over a decade.

REST

REST is an acronym for REpresentational State Transfer. It's a bit easier to understand than the SOAP counterpart, and it's intuitive. For example, look at the following NetSuite UI URL:

"/app/accounting/transactions/salesord.nl?id=175150"

It's immediately obvious we are looking at a salesorder, and its unique ID is 175150. Using RESTFul web services to retrieve data is very similar.