๐ What is SuiteTalk?
SuiteTalk is NetSuiteโs official API framework that allows external applications to interact with NetSuite records. It supports:
- REST Web Services (recommended for new integrations)
- SOAP Web Services (legacy support, still available but not advised for new projects)
With SuiteTalk, you can:
- Create, read, update, and delete records (customers, sales orders, invoices, etc.)
- Run saved searches
- Automate data exchange with external platforms
๐ REST vs SOAP in NetSuite
Feature | REST (Recommended) | SOAP (Legacy Support) |
---|---|---|
Format | JSON (lightweight, modern) | XML (verbose, older style) |
Developer Friendly | Easy to test with Postman & modern tools | Requires WSDL and XML handling |
Performance | Faster (less overhead) | Slower due to XML size |
Availability | Expanding with each release (2020.2+) | Still supported but may be phased out |
NetSuite Guidance | Use REST for new projects | Maintain only if your system already uses it |
๐ According to NetSuite documentation:
- REST Web Services should be used for all new integrations.
- SOAP remains available for backward compatibility, but its use is discouraged.
โ๏ธ Authentication Methods
- Token-Based Authentication (TBA) โ Most common and secure
- OAuth 2.0 โ Modern standard, required for some integrations
- User/Password โ Deprecated and not recommended
๐งโ๐ป Example: REST Web Services Request
Retrieve a customer record:
Request (GET):
GET https://<account_id>.suitetalk.api.netsuite.com/services/rest/record/v1/customer/456
Authorization: NLAuth nlauth_account=1234567, nlauth_consumer_key=XXXX, nlauth_token=YYYY
Response (JSON):
{
"id": "456",
"companyName": "ABC Corp",
"email": "info@abccorp.com",
"phone": "123-456-7890"
}
๐งโ๐ป Example: SOAP Web Services Request (Legacy)
A SOAP request to get a customer (only if maintaining old systems):
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:platformCore="urn:core_2022_1.platform.webservices.netsuite.com">
<soapenv:Header>
<platformCore:passport>
<platformCore:account>1234567</platformCore:account>
<platformCore:email>user@example.com</platformCore:email>
<platformCore:password>********</platformCore:password>
<platformCore:role internalId="3"/>
</platformCore:passport>
</soapenv:Header>
<soapenv:Body>
<platformCore:get>
<platformCore:baseRef xsi:type="platformCore:RecordRef" internalId="456" type="customer"/>
</platformCore:get>
</soapenv:Body>
</soapenv:Envelope>
โ ๏ธ Note: Use SOAP only when supporting legacy systems. For new builds, always use REST.
๐ Summary
- SuiteTalk is NetSuiteโs API framework.
- REST Web Services = Recommended for new integrations (fast, simple, JSON-based).
- SOAP Web Services = Still supported but legacy; avoid for new projects.
- Authentication is usually via Token-Based Auth or OAuth 2.0.
This page gave you an overview of SuiteTalk. In the next tutorial, weโll learn about RESTlets โ custom APIs you can build inside NetSuite for advanced logic.
Leave a Reply