Oracle NetSuite is a cloud ERP platform for financials, order management, inventory, procurement, CRM, and analytics. Sim connects through SuiteTalk REST Web Services using NetSuite's OAuth 2.0 client-credentials flow; it does not require a RESTlet or a user-interactive login.
Before you connect
Follow the Oracle NetSuite service-account setup to enable SuiteTalk, configure a dedicated role and certificate mapping, and save a reusable credential in Sim. NetSuite limits certificate validity to two years, so plan renewal when creating the credential.
Usage notes
- 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.
- Select the stored NetSuite account once per block. Record Type and known-job Async Task fields use account-backed pickers; switch a field to Advanced mode to type or reference an identifier that is not present in the bounded picker result. Enter SuiteAnalytics dataset IDs manually after finding them with List SuiteAnalytics Datasets.
- Create Record without
replacereturns NetSuite's HTTP 204 response with no body; withreplace, it returns HTTP 201 and the created record object. Both cases expose the validatedlocationreturned by NetSuite. Thereplaceoption applies to create and update, not upsert. - 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.
- 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
locationorjobId, 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. - Sim gives the OAuth token exchange and each SuiteTalk request up to 30 seconds. A timed-out request fails locally, but a mutation that NetSuite already accepted may still finish remotely.
- 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.
- 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.
- 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.
- Get Governance Limits returns data only for roles allowed by NetSuite; Oracle documents Administrator access for that operation.
- This integration does not include a trigger. SuiteTalk has no generic API for registering record-change webhooks; polling or customer-deployed SuiteScript requires a separate design.
Connection guides: Service account.
Use the block
Connect a reusable Oracle NetSuite service-account credential to SuiteTalk REST Web Services. Read and write account-specific records, execute SuiteQL and SuiteAnalytics datasets, run asynchronous record batches, inspect metadata, and monitor async jobs.
Actions
NetSuite List/Search Records
List one page of a NetSuite record collection, optionally filtered with a q expression.
NetSuite Get Record
Retrieve one NetSuite record by internal or external ID.
NetSuite Create Record
Create a NetSuite record using the account-specific record metadata schema.
NetSuite Update Record
Update fields on an existing NetSuite record with PATCH.
NetSuite Upsert Record
Create or update a NetSuite record by external ID with PUT.
NetSuite Delete Record
Delete one NetSuite record by internal or external ID.
NetSuite Get Subresource
Retrieve a record sublist, subrecord, referenced record, or nested subresource.
NetSuite Get Record Form
Return a prepopulated create form, or an edit form when a record ID is supplied.
NetSuite Get Select Options
Retrieve valid select values for one or more fields on a new or existing record.
NetSuite Attach Record or File
Attach a contact or file to another NetSuite record.
NetSuite Detach Record or File
Detach a contact or file from another NetSuite record.
NetSuite Execute Record Action
Execute a supported NetSuite record action such as approve, reject, or confirm.
NetSuite Transform Record
Transform a supported source record into another NetSuite record type.
NetSuite Batch Get Records
Submit an asynchronous request to retrieve up to 100 records of one type.
NetSuite Batch Create Records
Submit an asynchronous batch that creates up to 100 records of one type.
NetSuite Batch Update Records
Submit an asynchronous batch that updates up to 100 records of one type.
NetSuite Batch Upsert Records
Submit an asynchronous batch that creates or updates up to 100 records by external ID.
NetSuite Batch Delete Records
Submit an asynchronous request to delete up to 100 records of one type.
NetSuite Execute SuiteQL
Execute one page of a SuiteQL query through SuiteTalk REST web services.
NetSuite List SuiteAnalytics Datasets
List one page of SuiteAnalytics Workbook datasets available to the authenticated role.
NetSuite Execute SuiteAnalytics Dataset
Execute one page of a standard or custom SuiteAnalytics Workbook dataset.
NetSuite List Record Types
List record types exposed to the authenticated role by the REST metadata catalog.
NetSuite Get Record Metadata
Retrieve account-specific metadata for one NetSuite record type.
NetSuite Get Async Status
Retrieve job status, list job tasks, or retrieve one task status.
NetSuite Get Async Operation Result
Retrieve the provider response for one task within a completed asynchronous job.
NetSuite Get Server Time
Retrieve the current UTC time from the NetSuite server.
NetSuite Get Governance Limits
Retrieve REST web-services concurrency limits for the NetSuite account and integration; NetSuite requires an Administrator role.