Overview
This node integrates with the NetSuite REST API to perform various record-related operations. Specifically, the "List Records" operation retrieves multiple records of a specified type from a NetSuite account. It supports pagination and filtering through query parameters, allowing users to fetch all records or limit the number returned.
Common scenarios for this node include:
- Extracting sales orders, invoices, or customer data for reporting or synchronization with other systems.
- Automating data retrieval workflows where bulk access to NetSuite records is required.
- Querying custom records or standard records with specific filters using SuiteQL queries.
For example, a user might list all open sales orders to trigger follow-up actions or export customer contact information for marketing campaigns.
Properties
| Name | Meaning |
|---|---|
| Record Type | The type of NetSuite record to retrieve. Options include many standard types such as Assembly Item, Billing Account, Calendar Event, Cash Sale, Contact, Customer, Invoice, Sales Order, Vendor, and also Custom Record. |
| Custom Record Script ID | Required if "Custom Record (*)" is selected as Record Type. This is the internal identifier (script ID) of the custom record type in NetSuite, typically starting with "customrecord". |
| Query | Optional filter or query string to refine which records are returned. Can be used to specify conditions or sorting. |
| Return All | Boolean flag indicating whether to return all matching records or only up to a specified limit. |
| Limit | When Return All is false, limits the number of records returned. Minimum 1, maximum 1000. Default is 100. |
| Offset | Number of records to skip before starting to return results. Useful for pagination. Default is 0. |
| API Version | The version of the NetSuite REST API to use. Currently only "v1" is supported. |
| Options | Additional options: - Concurrency: Maximum number of simultaneous REST requests sent to NetSuite (default 1). - Full Response: Whether to return the full HTTP response instead of just the body. |
Output
The output consists of an array of JSON objects representing the retrieved NetSuite records. Each item corresponds to one record and contains its fields as key-value pairs.
If the "Full Response" option is enabled, the output includes the entire HTTP response details such as status code and headers alongside the body.
No binary data output is produced by this operation.
Dependencies
- Requires valid NetSuite API credentials including authentication tokens and account identifiers.
- Uses the NetSuite REST API endpoint configured via these credentials.
- Supports concurrency control to manage rate limits and optimize throughput.
- Relies on n8n's credential management to securely store and provide necessary authentication details.
Troubleshooting
Common Issues:
- Invalid or missing credentials will cause authentication failures.
- Selecting "Custom Record (*)" without providing a valid Custom Record Script ID will result in errors.
- Exceeding API rate limits may cause request throttling or failures.
- Improperly formatted queries can lead to empty results or API errors.
Error Messages:
- Errors from the NetSuite API are surfaced with messages extracted from the response body.
- If "Continue On Fail" is disabled, the node throws exceptions on errors; otherwise, it returns error details in the output.
- Common error hints include invalid record type, missing internal IDs, or malformed queries.
Resolutions:
- Verify that API credentials are correctly configured and have sufficient permissions.
- Ensure the Custom Record Script ID matches exactly the internal ID in NetSuite.
- Use the "Limit" and "Offset" properties to paginate large datasets.
- Validate query syntax according to NetSuite SuiteQL or REST API documentation.