You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: apps/docs/content/docs/en/integrations/netsuite.mdx
+19-21Lines changed: 19 additions & 21 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -25,9 +25,9 @@ import { BlockInfoCard } from "@/components/ui/block-info-card"
25
25
## Usage notes
26
26
27
27
- Record fields and supported actions vary by account, enabled features, custom records, forms, role, and permissions. Use **List Record Types** and **Get Record Metadata** before constructing create, update, upsert, action, or transform bodies. Sim intentionally accepts JSON for these dynamic record shapes instead of guessing a fixed schema.
28
-
- Paged operations return one page only. The default limit is 100, the maximum is 1,000, and the offset must be a non-negative multiple of the limit. Sim never fetches later pages automatically. NetSuite limits ordinary collection traversal to 1,000 pages and SuiteQL queries to 100,000 results.
29
-
- Homogeneous batch operations accept 1–100 records of one record type and always run asynchronously. Preserve the returned `location` or `jobId`, use **Get Async Status** with **Job Status** until the job completes, choose **List Tasks** to collect task IDs, check each ID with **Task Status**, then use completed IDs with **Get Async Operation Result**.
30
-
- Sim limits each materialized request body and successful SuiteTalk response to 16 MiB. Split work into smaller pages or batches when a request or response would exceed that ceiling, even if NetSuite would otherwise accept the payload.
28
+
- Paged operations return one page only. The default limit is 100, the maximum is 1,000, and the offset must be a non-negative multiple of the limit. Sim never fetches later pages automatically. Requests must stay within NetSuite's first 100,000 results and first 1,000 pages.
29
+
- Homogeneous batch operations accept 1–100 records of one record type and always run asynchronously. NetSuite processes records in parallel, and individual tasks can fail independently; submission is not an all-or-none transaction. Preserve the returned `location` or `jobId`, use **Get Async Status** with **Job Status** until the job completes, choose **List Tasks** to collect task IDs, check each ID with **Task Status**, then use completed IDs with **Get Async Operation Result**. Canceling or timing out the local Sim request does not cancel a batch that NetSuite has already accepted.
30
+
- Sim limits each materialized request body and successful SuiteTalk response to 16 MiB. Request JSON is also limited to 100 levels of nesting and 100,000 JSON values. Split work into smaller pages or batches when a request or response would exceed these ceilings, even if NetSuite would otherwise accept the payload.
31
31
- When attaching a contact with a role, provide either the role's internal ID or external ID, not both. File attachments do not use a contact role.
32
32
-**Attach/Detach**, homogeneous batch operations, **Get Record Form**, and **Get Select Options** require a NetSuite 2026.1-compatible account. Oracle introduced these SuiteTalk REST capabilities in [NetSuite 2026.1](https://docs.oracle.com/en/cloud/saas/netsuite/ns-online-help/section_N3950559.html).
33
33
-**Get Governance Limits** returns data only for roles allowed by NetSuite; Oracle documents Administrator access for that operation.
@@ -58,7 +58,7 @@ List one page of a NetSuite record collection, optionally filtered with a q expr
58
58
|`recordType`| string | Yes | NetSuite REST record type script ID, such as customer or salesOrder |
59
59
|`q`| string | No | NetSuite record collection filter expression |
60
60
|`limit`| number | No | Results to return in this page \(1-1000; default 100\)|
61
-
|`offset`| number | No | Zero-based result offset; must be divisible by limit and select one of the first 1,000 pages |
61
+
|`offset`| number | No | Zero-based result offset; must be divisible by limit and stay within the first 100,000 results and 1,000 pages |
62
62
63
63
#### Output
64
64
@@ -125,7 +125,7 @@ Create a NetSuite record using the account-specific record metadata schema.
125
125
| Parameter | Type | Description |
126
126
| --------- | ---- | ----------- |
127
127
|`status`| number | HTTP status returned by NetSuite |
128
-
|`data`| json |NetSuite response body; record fields are account-specific and dynamic|
128
+
|`data`| json |Empty for standard HTTP 204 creation; replacement creation can return the documented HTTP 201 post-state object|
129
129
|`location`| string | Newly created record URL from the Location response header |
130
130
131
131
### NetSuite Update Record
@@ -150,7 +150,7 @@ Update fields on an existing NetSuite record with PATCH.
150
150
| Parameter | Type | Description |
151
151
| --------- | ---- | ----------- |
152
152
|`status`| number | HTTP status returned by NetSuite |
153
-
|`data`| json |NetSuite response body; record fields are account-specific and dynamic|
153
+
|`data`| json |Empty for the documented HTTP 204 No Content response|
154
154
|`location`| string | Updated record URL from the Location response header |
155
155
156
156
### NetSuite Upsert Record
@@ -175,7 +175,7 @@ Create or update a NetSuite record by external ID with PUT.
175
175
| Parameter | Type | Description |
176
176
| --------- | ---- | ----------- |
177
177
|`status`| number | HTTP status returned by NetSuite |
178
-
|`data`| json |NetSuite response body; record fields are account-specific and dynamic|
178
+
|`data`| json |Empty for the documented HTTP 204 No Content response|
179
179
180
180
### NetSuite Delete Record
181
181
@@ -197,7 +197,7 @@ Delete one NetSuite record by internal or external ID.
197
197
| Parameter | Type | Description |
198
198
| --------- | ---- | ----------- |
199
199
|`status`| number | HTTP status returned by NetSuite |
200
-
|`data`| json |NetSuite response body; record fields are account-specific and dynamic|
200
+
|`data`| json |Empty for the documented HTTP 204 No Content response|
201
201
202
202
### NetSuite Get Subresource
203
203
@@ -266,7 +266,7 @@ Retrieve valid select values for one or more fields on a new or existing record.
266
266
|`q`| string | No | Optional select-option filter using CONTAIN, IS, or START_WITH |
267
267
|`body`| json | No | Record fields matching the account-specific NetSuite metadata schema |
268
268
|`limit`| number | No | Results to return in this page \(1-1000; default 100\)|
269
-
|`offset`| number | No | Zero-based result offset; must be divisible by limit and select one of the first 1,000 pages |
269
+
|`offset`| number | No | Zero-based result offset; must be divisible by limit and stay within the first 100,000 results and 1,000 pages |
270
270
271
271
#### Output
272
272
@@ -343,18 +343,15 @@ Execute a supported NetSuite record action such as approve, reject, or confirm.
343
343
|`recordType`| string | Yes | NetSuite REST record type script ID, such as customer or salesOrder |
344
344
|`recordId`| string | Yes | NetSuite internal ID or an external-ID reference beginning with eid: |
345
345
|`action`| string | Yes | NetSuite record action ID without the @ prefix |
346
-
|`body`| json | No |Record fields matching the account-specific NetSuite metadata schema|
346
+
|`body`| json | No |Parameters accepted by the selected NetSuite record action|
347
347
348
348
#### Output
349
349
350
350
| Parameter | Type | Description |
351
351
| --------- | ---- | ----------- |
352
352
|`status`| number | HTTP status returned by NetSuite |
0 commit comments