Shape your requests
Learn how arguments, pagination, filtering, field selection, responses, and errors work with the NetSuite API on MindCloud.
Once your first NetSuite request works, use this page to shape real production requests. MindCloud keeps the app-specific API details behind one REST format, so you can control arguments, pagination, filtering, fields, and errors without learning a separate convention for every provider. If you have not connected NetSuite yet, start with Connect to NetSuite.
Arguments
Arguments are the inputs an action needs. Pass them as flat fields beside the Universal API fields: query parameters for read and delete actions, JSON body fields for create and update actions. Each NetSuite action page documents its exact argument keys, types, and which ones are required. Keys are case-sensitive, and requests with missing or invalid required arguments fail instead of guessing.
Request format
The REST format is intentionally plain. Choose a NetSuite action, call its Universal API URL, authenticate with your MindCloud API Key, and include the connection and action fields in the correct lane for the HTTP method.
| Piece | Where it goes |
|---|---|
| Action fields | Query parameters for GET and DELETE; JSON body fields for POST, PUT, and PATCH. |
connectionId | Query string for reads and deletes; body for creates and updates. |
limit, offset, where, sort, fields | Universal API controls; always query parameters, never body fields. |
Pagination
Paginated list actions accept limit and offset as query parameters. Some providers use page numbers, some use cursors; MindCloud translates your request into whatever NetSuite expects, so you page through results the same way on every app. Start at offset=0, add limit to the offset after each page, and stop when a page returns fewer rows than you asked for.
curl --request GET \
--url "https://connect.mindcloud.co/v1/universal/netsuite/latest/actions/get-restlet" \
--header "Authorization: Bearer $MINDCLOUD_API_KEY" \
--get \
--data-urlencode "connectionId=$CONNECTION_ID" \
--data-urlencode "limit=25" \
--data-urlencode "offset=0"These NetSuite actions support pagination:
- Delete Vendor Credit
- Execute Custom Code
- List Accounting Periods
- List Accounts
- List Assembly Items
- List Bin Numbers
- List Cash Refunds
- List Cash Sales
- List Classifications
- List Contacts
- List Credit Memos
- List Custom Records
- List Customer Deposits
- List Customer Payments
- List Customer Refunds
- List Customers
- List Departments
- List Employees
- List Files
- List Group Items
- List Inbound Shipments
- List Inventory Adjustments
- List Inventory Items
- List Inventory Numbers
- List Invoices
- List Item Fulfillments
- List Item Receipts
- List Items
- List Locations
- List Lot Numbered Assembly Items
- List Lot Numbered Inventory Items
- List Non-Inventory Items
- List Opportunities
- List Other Charge Items
- List Payment Methods
- List Project Tasks
- List Projects
- List Promotion Codes
- List Purchase Orders
- List Record Fields
- List Return Authorizations
- List Sales Orders
- List Serialized Assembly Items
- List Serialized Inventory Items
- List Service Items
- List Shipping Items
- List States
- List Subsidiaries
- List Tasks
- List Terms
- List Time Bills
- List Transfer Orders
- List Vendor Bills
- List Vendor Credits
- List Vendor Return Authorizations
- List Vendors
- List Work Orders
- Search using Saved Search
Filtering
Filterable list actions accept a where query parameter written as an RSQL expression. MindCloud translates it into the filtering shape NetSuite supports, and the filterable fields are listed on each action page.
| Operator | Meaning | Example |
|---|---|---|
== / != | Equals / does not equal | status==active |
> >= < <= | Comparisons | createdAt>=2026-01-01 |
=like= | Contains text, with * wildcards | name=like=*dan* |
Combine conditions with ; for AND and , for OR: status==active;createdAt>=2026-01-01.
These NetSuite actions support filtering:
- Delete Vendor Credit
- List Accounting Periods
- List Accounts
- List Assembly Items
- List Bin Numbers
- List Cash Refunds
- List Cash Sales
- List Classifications
- List Contacts
- List Credit Memos
- List Custom Records
- List Customer Deposits
- List Customer Payments
- List Customer Refunds
- List Customers
- List Departments
- List Employees
- List Files
- List Group Items
- List Inbound Shipments
- List Inventory Adjustments
- List Inventory Items
- List Inventory Numbers
- List Invoices
- List Item Fulfillments
- List Item Receipts
- List Items
- List Locations
- List Lot Numbered Assembly Items
- List Lot Numbered Inventory Items
- List Non-Inventory Items
- List Opportunities
- List Other Charge Items
- List Payment Methods
- List Project Tasks
- List Projects
- List Promotion Codes
- List Purchase Orders
- List Record Fields
- List Return Authorizations
- List Sales Orders
- List Serialized Assembly Items
- List Serialized Inventory Items
- List Service Items
- List Shipping Items
- List States
- List Subsidiaries
- List Tasks
- List Terms
- List Time Bills
- List Transfer Orders
- List Vendor Bills
- List Vendor Credits
- List Vendor Return Authorizations
- List Vendors
- List Work Orders
- Search using Saved Search
Sorting
Sortable list actions accept a sort query parameter: a comma-separated list of fields, with a - prefix for descending order, such as sort=-createdAt,name. MindCloud maps it into the sorting format NetSuite supports, and the sortable fields are listed on each action page.
These NetSuite actions support sorting:
- Delete Vendor Credit
- List Accounting Periods
- List Accounts
- List Assembly Items
- List Bin Numbers
- List Cash Refunds
- List Cash Sales
- List Classifications
- List Contacts
- List Credit Memos
- List Custom Records
- List Customer Deposits
- List Customer Payments
- List Customer Refunds
- List Customers
- List Departments
- List Employees
- List Files
- List Group Items
- List Inbound Shipments
- List Inventory Adjustments
- List Inventory Items
- List Inventory Numbers
- List Invoices
- List Item Fulfillments
- List Item Receipts
- List Items
- List Locations
- List Lot Numbered Assembly Items
- List Lot Numbered Inventory Items
- List Non-Inventory Items
- List Opportunities
- List Other Charge Items
- List Payment Methods
- List Project Tasks
- List Projects
- List Promotion Codes
- List Purchase Orders
- List Return Authorizations
- List Sales Orders
- List Serialized Assembly Items
- List Serialized Inventory Items
- List Service Items
- List Shipping Items
- List States
- List Subsidiaries
- List Tasks
- List Terms
- List Time Bills
- List Transfer Orders
- List Vendor Bills
- List Vendor Credits
- List Vendor Return Authorizations
- List Vendors
- List Work Orders
Field selection
Use the fields query parameter to return only the response fields your code reads, with dot notation for nested objects: fields=id,name,profile.email. Selection is applied to each row in data after the response is mapped, and id is kept whenever it exists so rows stay identifiable.
Responses and errors
Every NetSuite response is mapped into the same public envelope before it reaches your code: success, your rows in a data array (single-row actions return an array with one item), and optional meta. Failed requests return success: false with a stable code to branch on and a human-readable message:
{
"success": false,
"code": "CONNECTION_APP_MISMATCH",
"message": "Connection \"conn_123\" is not configured for this app."
}Check the HTTP status first: 401 or 403 for authentication and authorization, 400 for invalid request shape, and 5xx when MindCloud cannot complete the action upstream. Most failures come from a missing API Key, a missing or mismatched connection, or arguments that do not match the action page.