NetSuite Tool
Read NetSuite records — customers, sales orders, invoices — via the SuiteTalk REST Record API.
Tool ID
netsuite-records
Credential Required
Yes — a server-refreshed oauth credential (auth mode oauth_user). The InTouch server resolves and refreshes the linked OAuth credential and hands the tool a live access token; the tool never refreshes or stores tokens itself. Requests are sent with Authorization: Bearer <access_token> to the account-specific host https://{accountId}.suitetalk.api.netsuite.com/services/rest (the accountId comes from the task input, not the credential).
Credential Properties
| Property | Type | Default | Description |
|---|---|---|---|
client_id |
string | — | OAuth app client ID. |
client_secret |
string | — | OAuth app client secret (if required on refresh). |
token_url |
string | — | Provider OAuth token endpoint — used to refresh. |
access_token |
string | — | Required. Current access token — kept fresh by the server; do not edit by hand. |
refresh_token |
string | — | Refresh token; enables automatic server-side refresh. |
token_type |
string | Bearer |
Token type. |
scope |
string | — | Granted OAuth scopes (space-separated). |
expires_at |
string | — | Access-token expiry in epoch seconds (0 = non-expiring). |
Operations
1. list_customers — List customers
Lists customer records. Calls GET /record/v1/customer.
Properties:
| Property | Type | Default | Description |
|---|---|---|---|
operation |
string | — | Required. list_customers |
accountId |
string | — | Required. NetSuite account ID — forms the account-specific host {accountId}.suitetalk.api.netsuite.com (e.g. 123456 or 123456_SB1). |
query |
string | — | Optional query params as a JSON object string, e.g. {"limit": 10, "offset": 0}. |
Published Outputs:
- result — the JSON response body
- status — HTTP status code
2. get_customer — Get one customer
Fetches a single customer record by internal id. Calls GET /record/v1/customer/{id}.
Properties:
| Property | Type | Default | Description |
|---|---|---|---|
operation |
string | — | Required. get_customer |
accountId |
string | — | Required. NetSuite account ID — forms the account-specific host {accountId}.suitetalk.api.netsuite.com (e.g. 123456 or 123456_SB1). |
id |
string | — | Required. Record internal id. |
query |
string | — | Optional query params as a JSON object string. |
Published Outputs:
- result — the JSON response body
- status — HTTP status code
3. list_sales_orders — List sales orders
Lists sales order records. Calls GET /record/v1/salesOrder.
Properties:
| Property | Type | Default | Description |
|---|---|---|---|
operation |
string | — | Required. list_sales_orders |
accountId |
string | — | Required. NetSuite account ID — forms the account-specific host {accountId}.suitetalk.api.netsuite.com (e.g. 123456 or 123456_SB1). |
query |
string | — | Optional query params as a JSON object string, e.g. {"limit": 10, "offset": 0}. |
Published Outputs:
- result — the JSON response body
- status — HTTP status code
4. list_invoices — List invoices
Lists invoice records. Calls GET /record/v1/invoice.
Properties:
| Property | Type | Default | Description |
|---|---|---|---|
operation |
string | — | Required. list_invoices |
accountId |
string | — | Required. NetSuite account ID — forms the account-specific host {accountId}.suitetalk.api.netsuite.com (e.g. 123456 or 123456_SB1). |
query |
string | — | Optional query params as a JSON object string, e.g. {"limit": 10, "offset": 0}. |
Published Outputs:
- result — the JSON response body
- status — HTTP status code
5. get_invoice — Get one invoice
Fetches a single invoice record by internal id. Calls GET /record/v1/invoice/{id}.
Properties:
| Property | Type | Default | Description |
|---|---|---|---|
operation |
string | — | Required. get_invoice |
accountId |
string | — | Required. NetSuite account ID — forms the account-specific host {accountId}.suitetalk.api.netsuite.com (e.g. 123456 or 123456_SB1). |
id |
string | — | Required. Record internal id. |
query |
string | — | Optional query params as a JSON object string. |
Published Outputs:
- result — the JSON response body
- status — HTTP status code
License
This tool requires a per-tool connector license on Department and Enterprise editions (Personal, Solo, and Team editions are unaffected). Apply the license via the tool's Apply License action.
Self-Contained JAR
The jar bundles all runtime dependencies; only intouch-tool-api is provided by the server.
Publishes
The keys a later task may reference as {{taskName.key}}. Referencing anything not listed here resolves to nothing at run time.
completeoperationresultstatuswarning