# mulesoft NetSuite REST Connector - Full Documentation --- product: NetSuite REST Connector version: 1.0 is-latest-version: true --- # Configuring Batch and Asynchronous Operations > For the full documentation index, see: https://docs.mulesoft.com/llms.txt Configure the batch operations that act on up to 100 records at a time (**Add List**, **Update List**, **Upsert List**, **Delete List**, and **Get List**) and the operations that track the resulting asynchronous jobs (**Get Async Job Status**, **Get Async Job Task List**, and **Get Async Job Task Result**). Batch operations run asynchronously. Each batch operation returns immediately with a job ID, and NetSuite processes the records on the server. Use **Get Async Job Status** to poll for completion, **Get Async Job Task List** to retrieve the task IDs, and **Get Async Job Task Result** to retrieve per-record results. Every item in a single batch must be the same record type, and each batch accepts a maximum of 100 records. For full parameter, output, and error details, see [NetSuite REST Connector Reference](https://docs.mulesoft.com/netsuite-rest-connector/latest/netsuite-rest-connector-reference). ## Configure the Add List Operation The **Add List** operation submits an asynchronous batch create request for up to 100 records by sending `POST /record/v1/{recordType}` with the `Prefer: respond-async` header. To configure the **Add List** operation: 1. Select the operation on the Anypoint Code Builder or Studio canvas. 2. In the **General** properties tab for the operation, enter these values: - **Record Type** The NetSuite record type for every item in the batch. - **Body** Pre-formatted batch body as `{"items": [..]}` with at most 100 records. Defaults to `#[payload]`. - **Idempotency Key** Optional UUID (RFC 4122) for idempotent submission, sent as the `X-NetSuite-Idempotency-Key` header. A duplicate UUID returns HTTP 409. ### XML Configuration This is the XML for this operation: ```xml #[payload] ``` ### Output Configuration The operation outputs a Binary payload with `NetSuiteRestAttributes`. The response contains the async job ID. Use **Get Async Job Status** to poll for completion. ## Configure the Update List Operation The **Update List** operation submits an asynchronous batch update request for up to 100 records by sending `PATCH /record/v1/{recordType}` with the `Prefer: respond-async` header. Each item must include `id` or `externalId`, and only the fields included in each item are updated (merge-patch semantics). To configure the **Update List** operation: 1. Select the operation on the Anypoint Code Builder or Studio canvas. 2. In the **General** properties tab for the operation, enter these values: - **Record Type** The NetSuite record type for every item in the batch. - **Body** Request body as `{"items": [..]}`. Each item must have `id` or `externalId`. Maximum 100 items. Defaults to `#[payload]`. - **Idempotency Key** Optional UUID (RFC 4122) for idempotent submission, sent as the `X-NetSuite-Idempotency-Key` header. A duplicate UUID returns HTTP 409. ### XML Configuration This is the XML for this operation: ```xml #[payload] ``` ### Output Configuration The operation outputs a Binary payload with `NetSuiteRestAttributes`, containing the async job ID. ## Configure the Upsert List Operation The **Upsert List** operation submits an asynchronous batch upsert request for up to 100 records by sending `PUT /record/v1/{recordType}` with the `Prefer: respond-async` header. Each item must have `externalId` or `id`. If both are provided, the internal ID takes precedence. Matching records are updated, and others are created. To configure the **Upsert List** operation: 1. Select the operation on the Anypoint Code Builder or Studio canvas. 2. In the **General** properties tab for the operation, enter these values: - **Record Type** The NetSuite record type for every item in the batch. - **Body** Request body as `{"items": [..]}`. Each item must have `externalId` or `id`. Maximum 100 items. Defaults to `#[payload]`. - **Idempotency Key** Optional UUID (RFC 4122) for idempotent submission, sent as the `X-NetSuite-Idempotency-Key` header. A duplicate UUID returns HTTP 409. ### XML Configuration This is the XML for this operation: ```xml #[payload] ``` ### Output Configuration The operation outputs a Binary payload with `NetSuiteRestAttributes`, containing the async job ID. ## Configure the Delete List Operation The **Delete List** operation submits an asynchronous batch delete request for up to 100 records by ID, by sending `DELETE /record/v1/{recordType}?ids=…​` with the `Prefer: respond-async` header. Accepts a comma-separated list of internal IDs or external IDs. For external IDs, use the `eid:` prefix. To configure the **Delete List** operation: 1. Select the operation on the Anypoint Code Builder or Studio canvas. 2. In the **General** properties tab for the operation, enter these values: - **Record Type** The NetSuite record type for every ID in the batch. - **IDs** Comma-separated internal IDs or external IDs with the `eid:` prefix (for example, `123,eid:ext1,456`). Quote external IDs that contain spaces (for example, `eid:'ext ID with spaces'`). Maximum 100 IDs. - **Idempotency Key** Optional UUID (RFC 4122) for idempotent submission, sent as the `X-NetSuite-Idempotency-Key` header. A duplicate UUID returns HTTP 409. ### XML Configuration This is the XML for this operation: ```xml ``` ### Output Configuration The operation outputs a Binary payload with `NetSuiteRestAttributes`, containing the async job ID. ## Configure the Get List Operation The **Get List** operation submits an asynchronous batch read request for up to 100 records by ID, by sending `GET /record/v1/{recordType}?ids=…​&expandRecords=…​` with the `Prefer: respond-async` header. When **Expand Records** is `true`, full record bodies are included. Otherwise, only metadata is returned. To configure the **Get List** operation: 1. Select the operation on the Anypoint Code Builder or Studio canvas. 2. In the **General** properties tab for the operation, enter these values: - **Record Type** The NetSuite record type for every ID in the batch. - **IDs** Comma-separated internal IDs or external IDs with the `eid:` prefix. Quote external IDs that contain spaces. Maximum 100 IDs. - **Expand Records** Whether to include full record bodies in each task result. Defaults to `true`. - **Expand Sub-Resources**, **Expand**, and **Fields** Optionally inline sublists and sub-records, expand specific sublists or subrecords, or limit the response to a comma-separated list of field names. - **Idempotency Key** Optional UUID (RFC 4122) for idempotent submission, sent as the `X-NetSuite-Idempotency-Key` header. ### XML Configuration This is the XML for this operation: ```xml ``` ### Output Configuration The operation outputs a Binary payload with `NetSuiteRestAttributes`, containing the async job ID. ## Configure the Get Async Job Status Operation The **Get Async Job Status** operation retrieves the current status of an asynchronous job by sending `GET /async/v1/job/{jobId}`. Poll this operation until `completed` is `true`. While the job is in progress, `progress` is `processing`. On success it becomes `succeeded`, and `endTime` is present. To configure the **Get Async Job Status** operation: 1. Select the operation on the Anypoint Code Builder or Studio canvas. 2. In the **General** properties tab for the operation, enter these values: - **Job ID** The async job ID returned by a batch operation (for example, **Add List**, **Update List**, or **Get List**). ### XML Configuration This is the XML for this operation: ```xml ``` ### Output Configuration The operation outputs a Binary payload with `NetSuiteRestAttributes`. When `completed` is `true`, use **Get Async Job Task List** to retrieve task IDs. ## Configure the Get Async Job Task List Operation The **Get Async Job Task List** operation retrieves the list of tasks for a completed asynchronous job by sending `GET /async/v1/job/{jobId}/task/`. Call this operation after **Get Async Job Status** reports `completed: true`. The response contains a `links` array; extract each task ID from the last path segment of each `href`. To configure the **Get Async Job Task List** operation: 1. Select the operation on the Anypoint Code Builder or Studio canvas. 2. In the **General** properties tab for the operation, enter these values: - **Job ID** The async job ID whose tasks should be listed. ### XML Configuration This is the XML for this operation: ```xml ``` ### Output Configuration The operation outputs a Binary payload with `NetSuiteRestAttributes`. Extract task IDs from the `links` array for use with **Get Async Job Task Result**. ## Configure the Get Async Job Task Result Operation The **Get Async Job Task Result** operation retrieves the result of a single task within an asynchronous job by sending `GET /async/v1/job/{jobId}/task/{taskId}/result`. Call this operation for each task ID from **Get Async Job Task List**. Successful tasks return an empty body `{}`, and failed tasks return a body that describes the failure. Check `attributes.statusCode` to distinguish success (`2xx`) from failure (`4xx`/`5xx`). To configure the **Get Async Job Task Result** operation: 1. Select the operation on the Anypoint Code Builder or Studio canvas. 2. In the **General** properties tab for the operation, enter these values: - **Job ID** The async job ID. - **Task ID** The task ID whose result should be retrieved. Extract this ID from the **Get Async Job Task List** response. ### XML Configuration This is the XML for this operation: ```xml ``` ### Output Configuration The operation outputs a Binary payload with `NetSuiteRestAttributes`. Check `attributes.statusCode` for per-record success or failure. ## See Also - [NetSuite REST Connector Overview](https://docs.mulesoft.com/netsuite-rest-connector/latest/) - [Configuring Record Operations](https://docs.mulesoft.com/netsuite-rest-connector/latest/configuring-record-operations) - [NetSuite REST Connector Reference](https://docs.mulesoft.com/netsuite-rest-connector/latest/netsuite-rest-connector-reference) - [Salesforce Help](https://help.salesforce.com) --- product: NetSuite REST Connector version: 1.0 is-latest-version: true --- # Configuring Change-Tracking Sources > For the full documentation index, see: https://docs.mulesoft.com/llms.txt Configure the polling sources that emit an event when NetSuite records change: **On New Object**, **On Modified Object**, and **On Deleted Object**. Each source polls NetSuite on a schedule, maintains a watermark in an object store, and emits an event for each record found since the last poll. In a cluster, only the primary node polls by default, and the shared watermark lets a failover resume from the persisted boundary day with at-least-once delivery. The three sources filter on different NetSuite date columns (datecreated, lastmodifieddate, deleteddate). On Deleted Object also queries the deletedrecord table, filters on record type, and returns deletion metadata. For full parameter, output, and error details, see [NetSuite REST Connector Reference](https://docs.mulesoft.com/netsuite-rest-connector/latest/netsuite-rest-connector-reference). ## Shared Source Parameters The following parameters apply to all three sources: - **Record Type** The NetSuite record type to poll (for example, `customer`). For **On Deleted Object**, this value is matched case-insensitively against the `deletedrecord` `type` column. - **Start Date** Calendar-day lower bound for the first poll when no watermark has been stored yet (for example, `2025-01-15`). Only the date portion is used. If omitted, the source defaults to today in the configured **Start Timezone** (or UTC if that is also omitted). - **Start Timezone** IANA timezone used to compute today when neither a stored watermark nor a **Start Date** is present (for example, `America/Los_Angeles`). Defaults to `UTC`. - **Page Size** Rows fetched per SuiteQL page (1–1000). The source paginates until a short or last page is reached. Defaults to 100. - **Primary Node Only** Determines whether to run this source on only the primary node when running Mule in a cluster. Defaults to `true`. - **Scheduling Strategy** Configures the scheduler that triggers the polling. - **Redelivery Policy** Defines a policy for processing the redelivery of the same message. ## Configure the On New Object Source The **On New Object** source polls NetSuite for records of a specified type that were created since the last poll, filtering on `datecreated`, and emits an event for each one found. ### XML Configuration This is the XML for this source: ```xml ``` ### Output Configuration Each emitted event contains a newly created record and `NetSuiteRestAttributes`. ## Configure the On Modified Object Source The **On Modified Object** source polls NetSuite for records of a specified type that were created or updated since the last poll, filtering on `lastmodifieddate`. Because `lastmodifieddate` is set on both insert and update, this source includes both new and later-modified records. ### XML Configuration This is the XML for this source: ```xml ``` ### Output Configuration Each emitted event contains a created or modified record and `NetSuiteRestAttributes`. ## Configure the On Deleted Object Source The **On Deleted Object** source polls NetSuite for deleted-record metadata and emits an event for each deletion found. It queries the `deletedrecord` SuiteQL table filtered on `deleteddate` and the record type column. Emitted rows are deletion metadata (for example, record ID, type, and deleted date), not the deleted record’s full body. ### XML Configuration This is the XML for this source: ```xml ``` ### Output Configuration Each emitted event contains deletion metadata and `NetSuiteRestAttributes`. ## See Also - [NetSuite REST Connector Overview](https://docs.mulesoft.com/netsuite-rest-connector/latest/) - [Configuring Record Operations](https://docs.mulesoft.com/netsuite-rest-connector/latest/configuring-record-operations) - [NetSuite REST Connector Reference](https://docs.mulesoft.com/netsuite-rest-connector/latest/netsuite-rest-connector-reference) - [Salesforce Help](https://help.salesforce.com) --- product: NetSuite REST Connector version: 1.0 is-latest-version: true --- # Configuring Metadata Operations > For the full documentation index, see: https://docs.mulesoft.com/llms.txt Configure the operations that retrieve schema, catalog, and system information from NetSuite: **Get Record Metadata**, **Get Record Types Catalog**, **Get Select Value**, **Get Governance Limits**, and **Get Server Time**. Use these operations to discover record structures, validate field values, and synchronize with NetSuite system state. For full parameter, output, and error details, see [NetSuite REST Connector Reference](https://docs.mulesoft.com/netsuite-rest-connector/latest/netsuite-rest-connector-reference). ## Configure the Get Record Metadata Operation The **Get Record Metadata** operation retrieves the OpenAPI metadata schema for a record type, including field definitions, data types, required fields, and valid select values, by sending `GET /record/v1/metadata-catalog/{recordType}` with `Accept: application/swagger+json`. Use this metadata for validation or documentation. To configure the **Get Record Metadata** operation: 1. Select the operation on the Anypoint Code Builder or Studio canvas. 2. In the **General** properties tab for the operation, enter these values: - **Record Type** The NetSuite record type (for example, `customer` or `salesOrder`). ### XML Configuration This is the XML for this operation: ```xml ``` ### Output Configuration The operation outputs a Binary payload containing the record-type metadata schema as JSON, with `NetSuiteRestAttributes`. ## Configure the Get Record Types Catalog Operation The **Get Record Types Catalog** operation retrieves the list of available record types from the metadata catalog, including standard and custom types with their internal names and labels, by sending `GET /record/v1/metadata-catalog/`, optionally with `?select=type`. When **Select** has a single value, the API returns a single record-type object instead of an `items` collection. To configure the **Get Record Types Catalog** operation: 1. Select the operation on the Anypoint Code Builder or Studio canvas. 2. In the **General** properties tab for the operation, enter these values: - **Select** Optional comma-separated record-type names to retrieve (for example, `customer` or `assemblybuild,customer,journalEntry`). When omitted, all record types are returned as an `items` array. - **As Swagger Spec** When `true`, sends `Accept: application/swagger+json` so NetSuite returns a combined OpenAPI 3.0 specification for all selected record types. Required for a multi-value **Select** to return the documented combined spec. Defaults to `false`, which preserves the original JSON behavior. ### XML Configuration This is the XML for this operation: ```xml ``` ### Output Configuration The operation outputs a Binary payload with `NetSuiteRestAttributes`, containing the record-types catalog or the combined OpenAPI specification. ## Configure the Get Select Value Operation The **Get Select Value** operation retrieves select-option metadata for one or more fields on a record type, with automatic pagination, by sending `POST /record/v1/{recordType}`. Each For Each iteration yields one select-option object (for example, `{"id": 16, "refName": "Active"}`). To configure the **Get Select Value** operation: 1. Select the operation on the Anypoint Code Builder or Studio canvas. 2. In the **General** properties tab for the operation, enter these values: - **Record Type** The NetSuite record type (for example, `customer`, `salesOrder`, or `invoice`). - **Fields** Comma-separated list of field names to retrieve select options for, passed as the `fields` URL query parameter. Supports dot notation for sublist fields (for example, `line.dueToFromSubsidiary`), and multiple fields (for example, `entitystatus,category`). - **Page Size** and **Max Total Results** Control the number of select options per page (default 100) and the maximum total returned across all pages (default `-1`, unlimited). - **Record Body** Optional JSON body that provides record context used to filter the returned select options. ### XML Configuration This is the XML for this operation: ```xml ``` ### Output Configuration The operation outputs an array of messages, each with a Binary payload (one select-option object) and `NetSuiteRestAttributes`. Page attributes are copied onto each item. ## Configure the Get Governance Limits Operation The **Get Governance Limits** operation retrieves governance concurrency limits for the current account and integration by sending `GET /system/v1/governanceLimits`. It returns account-level limits (total and unallocated) and integration-level limits (allocated concurrency and limit type). This operation requires administrator-level permissions. The `integrationConcurrencyLimit` field is present only when `integrationLimitType` is `integrationSpecific`. To configure the **Get Governance Limits** operation: 1. Select the operation on the Anypoint Code Builder or Studio canvas. 2. In the **General** properties tab for the operation, enter these values: This operation takes no operation-specific parameters other than the configuration reference. ### XML Configuration This is the XML for this operation: ```xml ``` ### Output Configuration The operation outputs a Binary payload containing the governance limits as JSON, with `NetSuiteRestAttributes`. ## Configure the Get Server Time Operation The **Get Server Time** operation retrieves the current NetSuite server time in UTC, regardless of the user’s time zone, by sending `GET /system/v1/serverTime`. Use it for synchronization that must compare against server time rather than client time. To configure the **Get Server Time** operation: 1. Select the operation on the Anypoint Code Builder or Studio canvas. 2. In the **General** properties tab for the operation, enter these values: This operation takes no operation-specific parameters other than the configuration reference. ### XML Configuration This is the XML for this operation: ```xml ``` ### Output Configuration The operation outputs a Binary payload containing the current server time in UTC, with `NetSuiteRestAttributes`. ## See Also - [NetSuite REST Connector Overview](https://docs.mulesoft.com/netsuite-rest-connector/latest/) - [Configuring Query Operations](https://docs.mulesoft.com/netsuite-rest-connector/latest/configuring-query-operations) - [NetSuite REST Connector Reference](https://docs.mulesoft.com/netsuite-rest-connector/latest/netsuite-rest-connector-reference) - [Salesforce Help](https://help.salesforce.com) --- product: NetSuite REST Connector version: 1.0 is-latest-version: true --- # Configuring Query Operations > For the full documentation index, see: https://docs.mulesoft.com/llms.txt Configure the operations that read collections of NetSuite data with automatic pagination: **SuiteQL Query** and **Get All Records**. Both operations paginate automatically and return an array of messages, so you can use a For Each scope to process individual rows or records. Pagination attributes are available on each item’s message attributes. For full parameter, output, and error details, see [NetSuite REST Connector Reference](https://docs.mulesoft.com/netsuite-rest-connector/latest/netsuite-rest-connector-reference). ## Configure the SuiteQL Query Operation The **SuiteQL Query** operation runs a SuiteQL query against NetSuite data with automatic pagination by sending `POST /query/v1/suiteql`. SuiteQL is a SQL-like query language for NetSuite records. To configure the **SuiteQL Query** operation: 1. Select the operation on the Anypoint Code Builder or Studio canvas. 2. In the **General** properties tab for the operation, enter these values: - **Query** The SuiteQL query string (for example, `SELECT id, companyname FROM customer WHERE companyname LIKE 'A%'`). - **Page Size** Number of rows per page, which maps to the REST API `limit` parameter. Defaults to 100. - **Max Total Results** Maximum total rows to return across all pages. Defaults to 100000, which matches NetSuite’s hard cap per query. Set to `-1` for unlimited, but NetSuite returns an error if the result set exceeds 100,000 rows. ### XML Configuration This is the XML for this operation: ```xml ``` ### Output Configuration The operation outputs an array of messages, each with a Binary payload (one SuiteQL row as JSON) and `NetSuiteRestAttributes`. Pagination attributes such as `hasMore` and `offset` are available on each item. ## Configure the Get All Records Operation The **Get All Records** operation retrieves a collection of records with automatic pagination and optional filtering by sending `GET /record/v1/{recordType}`. It returns ID stubs, so use **Get Record** to fetch full record bodies. To configure the **Get All Records** operation: 1. Select the operation on the Anypoint Code Builder or Studio canvas. 2. In the **General** properties tab for the operation, enter these values: - **Record Type** The NetSuite record type (for example, `customer`, `salesOrder`, or `invoice`). - **Filter Query** Optional NetSuite filter expression (for example, `email IS john@example.com`). For complex queries, use **SuiteQL Query** instead. - **Page Size** Number of records per page, which maps to the REST API `limit` parameter. Defaults to 100. - **Max Total Results** Maximum total records to return across all pages. Defaults to `-1` (unlimited). ### XML Configuration This is the XML for this operation: ```xml ``` ### Output Configuration The operation outputs an array of messages, each with a Binary payload (one record ID stub) and `NetSuiteRestAttributes`. Pagination attributes such as `hasMore`, `offset`, and `links` are available on each item. ## See Also - [NetSuite REST Connector Overview](https://docs.mulesoft.com/netsuite-rest-connector/latest/) - [Configuring Record Operations](https://docs.mulesoft.com/netsuite-rest-connector/latest/configuring-record-operations) - [NetSuite REST Connector Reference](https://docs.mulesoft.com/netsuite-rest-connector/latest/netsuite-rest-connector-reference) - [Salesforce Help](https://help.salesforce.com) --- product: NetSuite REST Connector version: 1.0 is-latest-version: true --- # Configuring Record Operations > For the full documentation index, see: https://docs.mulesoft.com/llms.txt Configure the operations that act on a single NetSuite record: **Create Record**, **Get Record**, **Update Record**, **Delete Record**, **Upsert Record**, **Create Form**, **Edit Form**, **Initialize Record (Transform)**, **Attach Record**, and **Detach Record**. Each of these operations targets a NetSuite record type (for example, `customer`, `salesOrder`, or `invoice`) and can raise the standard `MS-NETSUITE-REST:*` errors. For the full parameter, output, and error details, see [NetSuite REST Connector Reference](https://docs.mulesoft.com/netsuite-rest-connector/latest/netsuite-rest-connector-reference). ## Configure the Create Record Operation The **Create Record** operation creates a new record of the specified type in NetSuite by sending `POST /record/v1/{recordType}`. To help avoid duplicate records, consider **Upsert Record** with an external ID instead. To configure the **Create Record** operation: 1. Select the operation on the Anypoint Code Builder or Studio canvas. 2. In the **General** properties tab for the operation, enter these values: - **Record Type** The NetSuite record type to create (for example, `customer`, `salesOrder`, or `invoice`). - **Record Body** JSON body containing the field values for the new record. Defaults to `#[payload]`. ### XML Configuration This is the XML for this operation: ```xml #[payload] ``` ### Output Configuration The operation outputs a Binary payload with `NetSuiteRestAttributes`. On success, NetSuite returns `204 No Content` with the new record’s URL in the `Location` response header, available on `attributes.headers.Location`. ## Configure the Get Record Operation The **Get Record** operation retrieves a record by internal ID or external ID by sending `GET /record/v1/{recordType}/{id}` or `GET /record/v1/{recordType}/eid:{externalId}`. Provide exactly one of **Internal ID** or **External ID**. To configure the **Get Record** operation: 1. Select the operation on the Anypoint Code Builder or Studio canvas. 2. In the **General** properties tab for the operation, enter these values: - **Record Type** The NetSuite record type to retrieve. - **Internal ID** The internal ID of the record to retrieve. - **External ID** The external ID of the record to retrieve, as an alternative to **Internal ID**. - **Expand Sub-Resources** If true, inline sublists and sub-records (for example, `addressBook` and `contacts`) via `?expandSubResources=true`. If false (default), they are returned as links. ### XML Configuration This is the XML for this operation: ```xml ``` ### Output Configuration The operation outputs a Binary payload containing the record as JSON, with `NetSuiteRestAttributes`. ## Configure the Update Record Operation The **Update Record** operation applies a partial update to an existing record by sending `PATCH /record/v1/{recordType}/{id}`. Merge-patch semantics apply: only the fields in the request body are updated, and omitted fields are left unchanged. To configure the **Update Record** operation: 1. Select the operation on the Anypoint Code Builder or Studio canvas. 2. In the **General** properties tab for the operation, enter these values: - **Record Type** The NetSuite record type to update. - **Internal ID** The internal ID of the record to update. - **Record Body** JSON body of the record fields to update. Set a field to `null` to clear it. Defaults to `#[payload]`. ### XML Configuration This is the XML for this operation: ```xml #[payload] ``` ### Output Configuration The operation outputs a Binary payload with `NetSuiteRestAttributes`. Check `attributes.statusCode` to confirm the update. ## Configure the Delete Record Operation The **Delete Record** operation deletes a record by its internal ID by sending `DELETE /record/v1/{recordType}/{id}`. To configure the **Delete Record** operation: 1. Select the operation on the Anypoint Code Builder or Studio canvas. 2. In the **General** properties tab for the operation, enter these values: - **Record Type** The NetSuite record type to delete. - **Internal ID** The internal ID of the record to delete. ### XML Configuration This is the XML for this operation: ```xml ``` ### Output Configuration The operation outputs a Binary payload with `NetSuiteRestAttributes`. On success, NetSuite returns `204 No Content`. If the record doesn’t exist, the connector raises `MS-NETSUITE-REST:NOT_FOUND`. ## Configure the Upsert Record Operation The **Upsert Record** operation creates or updates a record by its external ID by sending `PUT /record/v1/{recordType}/eid:{externalId}`. If a record with that external ID exists, it is updated. Otherwise a new record is created. Because an external ID is required, upsert is supported only for record types that have an external ID field. To configure the **Upsert Record** operation: 1. Select the operation on the Anypoint Code Builder or Studio canvas. 2. In the **General** properties tab for the operation, enter these values: - **Record Type** The NetSuite record type to upsert. - **External ID** The external ID of the record. Creates the record if it isn’t found, and updates it if it exists. - **Record Body** JSON body containing field values. Must include all mandatory fields for creation. Defaults to `#[payload]`. ### XML Configuration This is the XML for this operation: ```xml #[payload] ``` ### Output Configuration The operation outputs a Binary payload with `NetSuiteRestAttributes`. ## Configure the Create Form Operation The **Create Form** operation retrieves a prefilled create form for a new record of the specified type, with NetSuite defaults applied, by sending `POST /record/v1/{recordType}` with `Accept: application/vnd.oracle.resource+json; type=create-form`. The form isn’t submitted. Use the returned data as a template for a subsequent **Create Record** call. To configure the **Create Form** operation: 1. Select the operation on the Anypoint Code Builder or Studio canvas. 2. In the **General** properties tab for the operation, enter these values: - **Record Type** The NetSuite record type (for example, `customer`, `salesOrder`, or `invoice`). - **Record Body** Optional JSON body with seed field values (for example, `{"entity":{"id":107}}`) to trigger server-side defaulting. When omitted or null, an empty JSON object is sent, representing a blank new-record context. - **Expand Sub-Resources**, **Expand**, and **Fields** Optionally inline sublists and sub-records, expand specific sublists or subrecords, or limit the response to a comma-separated list of field names. ### XML Configuration This is the XML for this operation: ```xml #[{"entity": {"id": 107}}] ``` ### Output Configuration The operation outputs a Binary payload containing the prefilled form as JSON, with `NetSuiteRestAttributes`. ## Configure the Edit Form Operation The **Edit Form** operation retrieves a recalculated edit form for an existing record with proposed changes applied, by sending `PATCH /record/v1/{recordType}/{id}` with `Accept: application/vnd.oracle.resource+json; type=edit-form`. The record isn’t modified. Use this operation to preview server-side calculations such as tax, totals, and dependent fields before you commit an update. To configure the **Edit Form** operation: 1. Select the operation on the Anypoint Code Builder or Studio canvas. 2. In the **General** properties tab for the operation, enter these values: - **Record Type** The NetSuite record type. - **Internal ID** The internal ID of the record to preview changes on. - **Record Body** JSON body of the record changes used to preview the update without committing it. Defaults to `#[payload]`. - **Expand Sub-Resources**, **Expand**, and **Fields** Optionally inline sublists and sub-records, expand specific sublists or subrecords, or limit the response to a comma-separated list of field names. ### XML Configuration This is the XML for this operation: ```xml #[payload] ``` ### Output Configuration The operation outputs a Binary payload containing the recalculated form as JSON, with `NetSuiteRestAttributes`. ## Configure the Initialize Record (Transform) Operation The **Initialize Record (Transform)** operation transforms a source record into a target record type and pre-populates fields (for example, `salesOrder` to `invoice`) by sending `POST /record/v1/{sourceType}/{id}/!transform/{targetType}` with `Accept: application/vnd.oracle.resource+json; type=create-form`. It returns a prefilled form that isn’t submitted. You can modify the form before you submit it with **Create Record**. To configure the **Initialize Record (Transform)** operation: 1. Select the operation on the Anypoint Code Builder or Studio canvas. 2. In the **General** properties tab for the operation, enter these values: - **Source Record Type** The source record type (for example, `salesOrder`). - **Source Internal ID** The internal ID of the source record. - **Target Record Type** The record type to transform into (for example, `invoice`). - **Override Fields** Optional JSON body with field overrides to apply on top of the prefilled defaults. ### XML Configuration This is the XML for this operation: ```xml ``` ### Output Configuration The operation outputs a Binary payload containing the prefilled target-record form as JSON, with `NetSuiteRestAttributes`. ## Configure the Attach Record Operation The **Attach Record** operation attaches a contact or file to another record by sending `POST /record/v1/{recordType}/{recordId}/!attach/{attachRecordType}/{attachRecordId}`. When attaching a contact, you can specify the role in the body. For files, omit the body or send an empty JSON object. Both record IDs support the external ID format `eid:EXTERNAL_ID`. To configure the **Attach Record** operation: 1. Select the operation on the Anypoint Code Builder or Studio canvas. 2. In the **General** properties tab for the operation, enter these values: - **Record Type** and **Record ID** The type and internal ID (or `eid:EXTERNAL_ID`) of the record to attach to (for example, `customer` or `opportunity`). - **Attach Record Type** and **Attach Record ID** The type and internal ID (or `eid:EXTERNAL_ID`) of the record being attached. Supported values for **Attach Record Type** are `contact` and `file`. - **Attach Body** Optional JSON body for a contact role (for example, `{"role":{"id":"-10"}}`). Omit for file attachments. ### XML Configuration This is the XML for this operation: ```xml #[{"role": {"id": "-10"}}] ``` ### Output Configuration The operation outputs a Binary payload with `NetSuiteRestAttributes`. On success, NetSuite returns `204 No Content`. ## Configure the Detach Record Operation The **Detach Record** operation detaches a record (for example, a contact, employee, file, or invoice) from another record by sending `POST /record/v1/{recordType}/{recordId}/!detach/{detachRecordType}/{detachRecordId}`. Both record IDs support the external ID format `eid:EXTERNAL_ID`. To configure the **Detach Record** operation: 1. Select the operation on the Anypoint Code Builder or Studio canvas. 2. In the **General** properties tab for the operation, enter these values: - **Record Type** and **Record ID** The type and internal ID (or `eid:EXTERNAL_ID`) of the record to detach from. - **Detach Record Type** and **Detach Record ID** The type and internal ID (or `eid:EXTERNAL_ID`) of the record being detached. ### XML Configuration This is the XML for this operation: ```xml ``` ### Output Configuration The operation outputs a Binary payload with `NetSuiteRestAttributes`. On success, NetSuite returns `204 No Content`. ## See Also - [NetSuite REST Connector Overview](https://docs.mulesoft.com/netsuite-rest-connector/latest/) - [Configuring Batch and Asynchronous Operations](https://docs.mulesoft.com/netsuite-rest-connector/latest/configuring-batch-operations) - [NetSuite REST Connector Reference](https://docs.mulesoft.com/netsuite-rest-connector/latest/netsuite-rest-connector-reference) - [Salesforce Help](https://help.salesforce.com) --- product: NetSuite REST Connector version: 1.0 is-latest-version: true --- # NetSuite REST Connector 1.0 > For the full documentation index, see: https://docs.mulesoft.com/llms.txt Anypoint Connector for NetSuite REST (NetSuite REST Connector) enables Mule applications to connect to the NetSuite REST Record Web Services API and the SuiteQL query service. Use it to create, read, update, delete, upsert, and query NetSuite records, run SuiteQL statements, submit batch and asynchronous jobs, discover record metadata, and listen for record changes. The connector authenticates with OAuth 2.0 client credentials using a JWT bearer assertion, so no interactive user login is required, which makes it well suited to unattended, server-to-server integrations. For information about compatibility and fixed issues, see the NetSuite REST Connector release notes. ## Before You Begin To use this connector, you must be familiar with: - Anypoint Connectors - Mule runtime engine (Mule) - Elements and global elements in a Mule flow - How to create a Mule app using Anypoint Code Builder or Anypoint Studio - NetSuite records, record types, and the NetSuite REST Record Web Services API Before creating an app, you must have: - Apache Maven - Anypoint Platform - Anypoint Code Builder or Anypoint Studio - A NetSuite account with the SuiteTalk REST Web Services and Token-Based Authentication (OAuth 2.0) features enabled - A NetSuite integration record configured for OAuth 2.0 client credentials, along with a client ID, a certificate registered for JWT signing (certificate ID), and the matching PEM-encoded private key ## Connection Types NetSuite REST Connector supports one connection type. - **OAuth 2.0 Client Credentials (JWT Bearer)** Authenticates to NetSuite by presenting a JWT bearer assertion signed with a private key that is registered against a certificate in NetSuite. NetSuite exchanges the assertion for a short-lived access token, which the connector caches and refreshes automatically. Because the flow is machine-to-machine, no interactive user consent is required. ## Key Features NetSuite REST Connector simplifies NetSuite integration into Mule applications with: - Record CRUD Operations Create, read, update, and delete records of any standard or custom record type. Partial updates use merge-patch semantics, so only the fields you send are changed. - Upsert by External ID Create or update a record keyed on your own external ID to help avoid duplicate records in idempotent integrations. - SuiteQL Queries Run SQL-like SuiteQL statements with automatic pagination to read data across records and joins. - Batch and Asynchronous Jobs Submit batch create, update, upsert, delete, and read requests of up to 100 records. Batch operations run asynchronously and return a job ID that you poll for per-record results. - Forms and Transforms Retrieve prefilled create and edit forms to preview NetSuite server-side defaulting and calculations, and transform one record type into another (for example, sales order to invoice) before you commit. - Metadata Discovery Retrieve record-type metadata schemas, the record-types catalog, and field select-option values for validation, mapping, and documentation. - Change-Tracking Sources Listen for newly created, modified, or deleted records with polling sources that maintain a watermark and support at-least-once delivery in a cluster. - Governance Awareness Retrieve account and integration concurrency limits, and apply a configurable backoff strategy for HTTP 429 and 503 responses. ## Use Cases NetSuite REST Connector supports a wide range of data integration and automation scenarios.
RoleGoal

Integration Developer

Synchronize customers, sales orders, and invoices between NetSuite and external systems.

Data Engineer

Extract large datasets with SuiteQL for reporting, analytics, or a data warehouse.

Operations Team

Bulk-load or update records in batches while tracking per-record success and failure.

Finance Team

Transform sales orders into invoices and preview totals and taxes before posting.

## Authentication NetSuite REST Connector supports OAuth 2.0 client credentials with a JWT bearer assertion. You register a certificate against a NetSuite integration record and sign the JWT assertion with the matching private key. Supported JWT signing algorithms are ES256, ES384, ES512 (recommended), PS256, PS384, and PS512. Provide the private key through a secure property so that it is never committed in plain text. ## Limitations NetSuite REST Connector has these limitations: - Batch operations (**Add List**, **Update List**, **Upsert List**, **Delete List**, and **Get List**) accept a maximum of 100 records per request. - SuiteQL returns a maximum of 100,000 rows per query, which is a NetSuite hard cap. - Upsert operations require the record type to have an external ID field. - Get Governance Limits requires administrator-level permissions. - The connector accesses data through the NetSuite REST Record Web Services API and SuiteQL; features not exposed by those services aren’t available. ## Next Step After you complete the prerequisites, you are ready to create an app and configure the connector using [Anypoint Studio](https://docs.mulesoft.com/netsuite-rest-connector/latest/netsuite-rest-connector-studio) or [Anypoint Code Builder](https://docs.mulesoft.com/netsuite-rest-connector/latest/netsuite-rest-connector-config-acb). ## See Also - [Introduction to Anypoint Connectors](https://docs.mulesoft.com/connectors/introduction/introduction-to-anypoint-connectors) - [NetSuite REST Connector Reference](https://docs.mulesoft.com/netsuite-rest-connector/latest/netsuite-rest-connector-reference) - [Salesforce Help](https://help.salesforce.com) --- product: NetSuite REST Connector version: 1.0 is-latest-version: true --- # NetSuite REST Connector 1.0 - Additional Configuration Information > For the full documentation index, see: https://docs.mulesoft.com/llms.txt NetSuite REST Connector provides detailed configuration information for each operation and source type. Select the category you want to configure. - [Configure Record Operations](https://docs.mulesoft.com/netsuite-rest-connector/latest/configuring-record-operations) - [Configure Batch and Asynchronous Operations](https://docs.mulesoft.com/netsuite-rest-connector/latest/configuring-batch-operations) - [Configure Query Operations](https://docs.mulesoft.com/netsuite-rest-connector/latest/configuring-query-operations) - [Configure Metadata Operations](https://docs.mulesoft.com/netsuite-rest-connector/latest/configuring-metadata-operations) - [Configure Change-Tracking Sources](https://docs.mulesoft.com/netsuite-rest-connector/latest/configuring-change-tracking-sources) --- product: NetSuite REST Connector version: 1.0 is-latest-version: true --- # NetSuite REST Connector 1.0 Examples > For the full documentation index, see: https://docs.mulesoft.com/llms.txt These examples are Mule apps that expose NetSuite REST Connector through HTTP endpoints. Use them as a starting point for your own record flows. The two examples work together: the first creates a NetSuite `customer` record and returns its URL, and the second deletes a `customer` record by internal ID. Both examples share the same connector configuration. ## Shared Configuration Both examples use OAuth 2.0 client credentials (JWT bearer) to authenticate with NetSuite. Supply all credentials through properties, and provide the private key through a secure property so that it is never committed in plain text. ```xml ``` The connection parameters are: - `accountId` The NetSuite account ID (for example, the sandbox account `TSTDRV1234567`). - `clientId` and `certificateId` Values from the NetSuite integration record and the mapped certificate. - `privateKey` The PKCS#8 PEM private key that matches the uploaded certificate. Supply it through a secure property, and never commit it. - `signatureAlgorithm` The JWT signing algorithm: `ES512` (default), `ES256`, `ES384`, `PS256`, `PS384`, or `PS512`. It must match the certificate’s algorithm. ## Example: Create a Record This example exposes an HTTP endpoint that creates a NetSuite `customer` record from the JSON request body. On success, NetSuite returns `204 No Content` with the new record’s URL in the `Location` response header, and the flow logs the status code and the `Location` value. This example uses the **Create Record** operation, which sends `POST /record/v1/customer`. ```xml #[payload] ``` To test the flow, send a request to the `/create` endpoint: ```bash curl -X POST "http://localhost:8081/create" \ -H "Content-Type: application/json" \ -d '{ "companyName": "Acme Corp", "email": "billing@acme.example", "subsidiary": { "id": "1" } }' ``` NetSuite returns `204 No Content`, and the new record’s URL is on the `Location` header. The logged line looks like this: ```text Created customer | statusCode=204 | Location=https://.suitetalk.api.netsuite.com/services/rest/record/v1/customer/1234 ``` ## Example: Delete a Record This example exposes an HTTP endpoint that deletes a NetSuite `customer` record by internal ID, which is supplied as the `id` query parameter. The flow logs the status code. This example is a natural follow-on to the create example: use the ID from the create response’s `Location` header. This example uses the **Delete Record** operation, which sends `DELETE /record/v1/customer/{id}`. ```xml ``` To test the flow, send a request to the `/delete` endpoint: ```bash curl -X DELETE "http://localhost:8081/delete?id=1234" ``` NetSuite returns `204 No Content` on success, and the flow logs this line: ```text Deleted customer | statusCode=204 ``` If the record doesn’t exist, the connector raises `MS-NETSUITE-REST:NOT_FOUND`. ## See Also - [NetSuite REST Connector Overview](https://docs.mulesoft.com/netsuite-rest-connector/latest/) - [NetSuite REST Connector Reference](https://docs.mulesoft.com/netsuite-rest-connector/latest/netsuite-rest-connector-reference) - [Salesforce Help](https://help.salesforce.com) --- product: NetSuite REST Connector version: 1.0 is-latest-version: true --- # NetSuite REST Connector 1.0 Reference > For the full documentation index, see: https://docs.mulesoft.com/llms.txt Anypoint Connector for NetSuite REST (NetSuite REST Connector) uses the NetSuite REST Record Web Services API to create, read, update, delete, and query NetSuite records, run SuiteQL queries, manage batch and asynchronous jobs, and listen for record changes. ## Configurations ### Config Default configuration. Timeout defaults set here are inherited by operations and sources unless you override them on the connection, operation, or source. #### Parameters
NameTypeDescriptionDefault ValueRequired

Name

String

Name for this configuration. Connectors reference the configuration with this name.

x

Connection

The connection types to provide to this configuration.

x

Read Timeout

Number

Default maximum time to wait for a response from NetSuite. Interpreted with Read Timeout Unit. You can override this value per connection, operation, or source.

60

Read Timeout Unit

Enumeration, one of:

  • NANOSECONDS

  • MICROSECONDS

  • MILLISECONDS

  • SECONDS

  • MINUTES

  • HOURS

  • DAYS

Time unit for the Read Timeout field.

SECONDS

Connection Timeout

Number

Default maximum time to wait for a TCP connection to be established. Interpreted with Connection Timeout Unit. You can override this value per connection.

60

Connection Timeout Unit

Enumeration, one of:

  • NANOSECONDS

  • MICROSECONDS

  • MILLISECONDS

  • SECONDS

  • MINUTES

  • HOURS

  • DAYS

Time unit for the Connection Timeout field.

SECONDS

Encoding

String

Charset for the record payloads the connector emits to the flow, including paginated and SuiteQL item explosion and the CDC sources. If blank, the connector falls back to the runtime encoding (UTF-8 by default). Wire traffic to NetSuite remains UTF-8.

Name

String

ID used to reference this configuration.

x

Expiration Policy

Configures the minimum amount of time that a dynamic configuration instance can remain idle before Mule considers it eligible for expiration.

#### Connection Types ##### OAuth 2.0 Client Credentials (JWT Bearer) Use OAuth 2.0 client credentials with a JWT bearer assertion, signed with a private key registered in NetSuite, to authenticate to NetSuite REST. ###### Parameters
NameTypeDescriptionDefault ValueRequired

Token Object Store

ObjectStore

Object Store for OAuth token persistence across cluster nodes. When unset, a persistent, config-name-keyed store is created automatically.

Account ID

String

NetSuite account ID (for example, TSTDRV1234567 or 1234567_SB1).

x

Client ID

String

OAuth 2.0 Client ID from the integration record in NetSuite.

x

Certificate ID

String

The certificate ID (kid) registered in NetSuite for JWT signing.

x

Private Key (PEM)

String

PKCS#8 PEM-encoded private key (BEGIN PRIVATE KEY; EC P-256 for ES256, EC P-384 for ES384, EC P-521 for ES512, or RSA for PS256, PS384, or PS512). SEC1 keys (BEGIN EC PRIVATE KEY) are not supported.

x

Signature Algorithm

Enumeration, one of:

  • ES256

  • ES384

  • ES512

  • PS256

  • PS384

  • PS512

JWT signing algorithm: ES512 (recommended), ES256, ES384, PS256, PS384, or PS512.

ES512

Reconnection

When the application is deployed, a connectivity test is performed on all connectors. If set to true, deployment fails if the test doesn’t pass after exhausting the associated reconnection strategy.

Max Connections

Number

Maximum number of outbound HTTP connections. -1 means unlimited.

-1

Read Timeout

Number

Maximum time to wait for a response from NetSuite. Interpreted with Read Timeout Unit.

60

Read Timeout Unit

Enumeration, one of:

  • NANOSECONDS

  • MICROSECONDS

  • MILLISECONDS

  • SECONDS

  • MINUTES

  • HOURS

  • DAYS

Unit for the Read Timeout field.

SECONDS

Connection Timeout

Number

Maximum time to wait for a TCP connection to be established. Interpreted with Connection Timeout Unit.

60

Connection Timeout Unit

Enumeration, one of:

  • NANOSECONDS

  • MICROSECONDS

  • MILLISECONDS

  • SECONDS

  • MINUTES

  • HOURS

  • DAYS

Unit for the Connection Timeout field.

SECONDS

Proxy Configuration

ProxyConfig

HTTP proxy configuration for outbound connections to NetSuite.

Concurrency Management Strategy

A strategy for dealing with HTTP 429 (Too Many Requests) and 503 (Service Unavailable) responses. Defaults to no retry when unspecified.

TLS Configuration

Optional TLS context (custom truststore or keystore) for connections to NetSuite, which always uses HTTPS. Defaults to the JVM default truststore when unspecified.

## Supported Operations - [Add List](#AddList) - [Attach Record](#AttachRecord) - [Create Form](#CreateForm) - [Create Record](#CreateRecord) - [Delete List](#DeleteList) - [Delete Record](#DeleteRecord) - [Detach Record](#DetachRecord) - [Edit Form](#EditForm) - [Get All Records](#GetAllRecords) - [Get Async Job Status](#GetAsyncJobStatus) - [Get Async Job Task List](#GetAsyncJobTaskList) - [Get Async Job Task Result](#GetAsyncJobTaskResult) - [Get Governance Limits](#GetGovernanceLimits) - [Get List](#GetList) - [Get Record](#GetRecord) - [Get Record Metadata](#GetRecordMetadata) - [Get Record Types Catalog](#GetRecordTypesCatalog) - [Get Select Value](#GetSelectValue) - [Get Server Time](#GetServerTime) - [Initialize Record (Transform)](#InitializeRecord) - [SuiteQL Query](#SuiteqlQuery) - [Update List](#UpdateList) - [Update Record](#UpdateRecord) - [Upsert List](#UpsertList) - [Upsert Record](#UpsertRecord) ## Associated Sources - [On Deleted Object](#DeletedObjectListener) - [On Modified Object](#ModifiedObjectListener) - [On New Object](#NewObjectListener) ## Operations ### Add List `` Submits an asynchronous batch create request for up to 100 records. The operation returns immediately with a job ID. Record creation runs asynchronously on the NetSuite server. Use [Get Async Job Status](#GetAsyncJobStatus) to poll for completion and [Get Async Job Task Result](#GetAsyncJobTaskResult) to retrieve per-record results. This operation sends an HTTP `POST` to `/record/v1/{recordType}` with the `Prefer: respond-async` header. #### Parameters
NameTypeDescriptionDefault ValueRequired

Configuration

String

Name of the configuration to use.

x

Record Type

String

The NetSuite record type for every item in the batch.

x

Body

Any

Pre-formatted batch body as {"items": [..]} with at most 100 records.

#[payload]

Idempotency Key

String

Optional UUID (RFC 4122) for idempotent submission. Sent as the X-NetSuite-Idempotency-Key header. A duplicate UUID returns HTTP 409.

Output Mime Type

String

The MIME type of the payload that this operation outputs.

Output Encoding

String

The encoding of the payload that this operation outputs.

Config Ref

ConfigurationProvider

Name of the configuration to use to execute this component.

x

Streaming Strategy

Configures how Mule processes streams. Repeatable streams are the default behavior.

Read Timeout

Number

Maximum time to wait for a response from NetSuite. Interpreted with Read Timeout Unit. Overrides the config default when set.

Read Timeout Unit

Enumeration, one of:

  • NANOSECONDS

  • MICROSECONDS

  • MILLISECONDS

  • SECONDS

  • MINUTES

  • HOURS

  • DAYS

Time unit for the Read Timeout field.

Target Variable

String

Name of the variable that stores the operation’s output.

Target Value

String

An expression to evaluate against the operation’s output and store the expression outcome in the target variable.

#[payload]

Error Mappings

Array of Error Mapping

Set of error mappings.

Reconnection Strategy

Retry strategy in case of connectivity errors.

#### Output

Type

Binary

Attributes Type

#### For Configurations - [Config](#Config) #### Throws - MS-NETSUITE-REST:BAD\_REQUEST - MS-NETSUITE-REST:CONFLICT - MS-NETSUITE-REST:CONNECTIVITY - MS-NETSUITE-REST:FORBIDDEN - MS-NETSUITE-REST:INTERNAL\_SERVER\_ERROR - MS-NETSUITE-REST:NETSUITE\_ERROR - MS-NETSUITE-REST:NOT\_FOUND - MS-NETSUITE-REST:RETRY\_EXHAUSTED - MS-NETSUITE-REST:SERVICE\_UNAVAILABLE - MS-NETSUITE-REST:TOO\_MANY\_REQUESTS - MS-NETSUITE-REST:UNAUTHORIZED - MS-NETSUITE-REST:VALIDATION ### Attach Record `` Attaches a contact or file to another record. The NetSuite REST API officially supports attaching contacts and files. When attaching a contact, you can specify the role in the body. For files, omit the body or send an empty JSON object. Both return HTTP `204 No Content` on success. Both record IDs support the external ID format `eid:EXTERNAL_ID`. Endpoint: `POST /services/rest/record/v1/{recordType}/{recordId}/!attach/{attachRecordType}/{attachRecordId}`. #### Parameters
NameTypeDescriptionDefault ValueRequired

Configuration

String

Name of the configuration to use.

x

Record Type

String

Type of record to attach to (for example, customer, opportunity).

x

Record ID

String

Internal ID or external ID (use 'eid:EXTERNAL_ID' format) of record to attach to.

x

Attach Record Type

String

Type of record being attached. Supported values are contact and file.

x

Attach Record ID

String

Internal ID or external ID (use 'eid:EXTERNAL_ID' format) of record being attached.

x

Attach Body

Any

Optional JSON body for contact role (for example, {"role":{"id":"-10"}}). Omit for file attachments.

Output Mime Type

String

The MIME type of the payload that this operation outputs.

Output Encoding

String

The encoding of the payload that this operation outputs.

Config Ref

ConfigurationProvider

Name of the configuration to use to execute this component.

x

Streaming Strategy

Configures how Mule processes streams. Repeatable streams are the default behavior.

Read Timeout

Number

Maximum time to wait for a response from NetSuite. Interpreted with Read Timeout Unit. Overrides the config default when set.

Read Timeout Unit

Enumeration, one of:

  • NANOSECONDS

  • MICROSECONDS

  • MILLISECONDS

  • SECONDS

  • MINUTES

  • HOURS

  • DAYS

Time unit for the Read Timeout field.

Target Variable

String

Name of the variable that stores the operation’s output.

Target Value

String

An expression to evaluate against the operation’s output and store the expression outcome in the target variable.

#[payload]

Error Mappings

Array of Error Mapping

Set of error mappings.

Reconnection Strategy

Retry strategy in case of connectivity errors.

#### Output

Type

Binary

Attributes Type

#### For Configurations - [Config](#Config) #### Throws - MS-NETSUITE-REST:BAD\_REQUEST - MS-NETSUITE-REST:CONFLICT - MS-NETSUITE-REST:CONNECTIVITY - MS-NETSUITE-REST:FORBIDDEN - MS-NETSUITE-REST:INTERNAL\_SERVER\_ERROR - MS-NETSUITE-REST:NETSUITE\_ERROR - MS-NETSUITE-REST:NOT\_FOUND - MS-NETSUITE-REST:RETRY\_EXHAUSTED - MS-NETSUITE-REST:SERVICE\_UNAVAILABLE - MS-NETSUITE-REST:TOO\_MANY\_REQUESTS - MS-NETSUITE-REST:UNAUTHORIZED - MS-NETSUITE-REST:VALIDATION ### Create Form `` Retrieves a prefilled create form for a new record of the specified type, with NetSuite defaults applied. You can optionally seed the form with field values (for example, entity or subsidiary) to trigger server-side defaulting. The form is not submitted. Use the returned data as a template for a subsequent [Create Record](#CreateRecord) call. Endpoint: `POST /services/rest/record/v1/{recordType}` with `Accept: application/vnd.oracle.resource+json; type=create-form`. #### Parameters
NameTypeDescriptionDefault ValueRequired

Configuration

String

Name of the configuration to use.

x

Record Type

String

The NetSuite record type (for example, customer, salesOrder, invoice).

x

Record Body

Any

Optional JSON body with seed field values (for example, {"entity":{"id":107}}). When omitted or null, an empty JSON object is sent, representing a blank new-record context.

Output Mime Type

String

The MIME type of the payload that this operation outputs.

Output Encoding

String

The encoding of the payload that this operation outputs.

Config Ref

ConfigurationProvider

Name of the configuration to use to execute this component.

x

Streaming Strategy

Configures how Mule processes streams. Repeatable streams are the default behavior.

Expand Sub-Resources

Boolean

If true, inline sublists and sub-records via ?expandSubResources=true.

false

Expand

String

Comma-separated list of specific sublists or subrecords to expand inline (for example, addressBook,currency).

Fields

String

Comma-separated list of field names to include. When set, only these fields are returned (for example, companyName,email).

Read Timeout

Number

Maximum time to wait for a response from NetSuite. Interpreted with Read Timeout Unit. Overrides the config default when set.

Read Timeout Unit

Enumeration, one of:

  • NANOSECONDS

  • MICROSECONDS

  • MILLISECONDS

  • SECONDS

  • MINUTES

  • HOURS

  • DAYS

Time unit for the Read Timeout field.

Target Variable

String

Name of the variable that stores the operation’s output.

Target Value

String

An expression to evaluate against the operation’s output and store the expression outcome in the target variable.

#[payload]

Error Mappings

Array of Error Mapping

Set of error mappings.

Reconnection Strategy

Retry strategy in case of connectivity errors.

#### Output

Type

Binary

Attributes Type

#### For Configurations - [Config](#Config) #### Throws - MS-NETSUITE-REST:BAD\_REQUEST - MS-NETSUITE-REST:CONFLICT - MS-NETSUITE-REST:CONNECTIVITY - MS-NETSUITE-REST:FORBIDDEN - MS-NETSUITE-REST:INTERNAL\_SERVER\_ERROR - MS-NETSUITE-REST:NETSUITE\_ERROR - MS-NETSUITE-REST:NOT\_FOUND - MS-NETSUITE-REST:RETRY\_EXHAUSTED - MS-NETSUITE-REST:SERVICE\_UNAVAILABLE - MS-NETSUITE-REST:TOO\_MANY\_REQUESTS - MS-NETSUITE-REST:UNAUTHORIZED - MS-NETSUITE-REST:VALIDATION ### Create Record `` Creates a new record of the specified type in NetSuite. This operation sends an HTTP `POST` to `/record/v1/{recordType}`. To help avoid duplicate records, consider using [Upsert Record](#UpsertRecord) with an external ID instead. #### Parameters
NameTypeDescriptionDefault ValueRequired

Configuration

String

Name of the configuration to use.

x

Record Type

String

The NetSuite record type (for example, customer, salesOrder, invoice).

x

Record Body

Any

JSON body containing the field values for the new record.

#[payload]

Output Mime Type

String

The MIME type of the payload that this operation outputs.

Output Encoding

String

The encoding of the payload that this operation outputs.

Config Ref

ConfigurationProvider

Name of the configuration to use to execute this component.

x

Streaming Strategy

Configures how Mule processes streams. Repeatable streams are the default behavior.

Read Timeout

Number

Maximum time to wait for a response from NetSuite. Interpreted with Read Timeout Unit. Overrides the config default when set.

Read Timeout Unit

Enumeration, one of:

  • NANOSECONDS

  • MICROSECONDS

  • MILLISECONDS

  • SECONDS

  • MINUTES

  • HOURS

  • DAYS

Time unit for the Read Timeout field.

Target Variable

String

Name of the variable that stores the operation’s output.

Target Value

String

An expression to evaluate against the operation’s output and store the expression outcome in the target variable.

#[payload]

Error Mappings

Array of Error Mapping

Set of error mappings.

Reconnection Strategy

Retry strategy in case of connectivity errors.

#### Output

Type

Binary

Attributes Type

#### For Configurations - [Config](#Config) #### Throws - MS-NETSUITE-REST:BAD\_REQUEST - MS-NETSUITE-REST:CONFLICT - MS-NETSUITE-REST:CONNECTIVITY - MS-NETSUITE-REST:FORBIDDEN - MS-NETSUITE-REST:INTERNAL\_SERVER\_ERROR - MS-NETSUITE-REST:NETSUITE\_ERROR - MS-NETSUITE-REST:NOT\_FOUND - MS-NETSUITE-REST:RETRY\_EXHAUSTED - MS-NETSUITE-REST:SERVICE\_UNAVAILABLE - MS-NETSUITE-REST:TOO\_MANY\_REQUESTS - MS-NETSUITE-REST:UNAUTHORIZED - MS-NETSUITE-REST:VALIDATION ### Delete List `` Submits an asynchronous batch delete request for up to 100 records by ID. Accepts a comma-separated list of internal IDs or external IDs. For external IDs, use the `eid:` prefix (for example, `eid:CUST-EXT-001`). This operation sends an HTTP `DELETE` to `/record/v1/{recordType}?ids=…​` with the `Prefer: respond-async` header. #### Parameters
NameTypeDescriptionDefault ValueRequired

Configuration

String

Name of the configuration to use.

x

Record Type

String

The NetSuite record type for every ID in the batch (single record type per batch).

x

IDs

String

Comma-separated internal IDs or external IDs with the eid: prefix (for example, 123,eid:ext1,456). External IDs that contain spaces must be quoted (for example, eid:'ext ID with spaces'). Maximum 100 IDs.

x

Idempotency Key

String

Optional UUID (RFC 4122) for idempotent submission. Sent as the X-NetSuite-Idempotency-Key header. A duplicate UUID returns HTTP 409.

Output Mime Type

String

The MIME type of the payload that this operation outputs.

Output Encoding

String

The encoding of the payload that this operation outputs.

Config Ref

ConfigurationProvider

Name of the configuration to use to execute this component.

x

Streaming Strategy

Configures how Mule processes streams. Repeatable streams are the default behavior.

Read Timeout

Number

Maximum time to wait for a response from NetSuite. Interpreted with Read Timeout Unit. Overrides the config default when set.

Read Timeout Unit

Enumeration, one of:

  • NANOSECONDS

  • MICROSECONDS

  • MILLISECONDS

  • SECONDS

  • MINUTES

  • HOURS

  • DAYS

Time unit for the Read Timeout field.

Target Variable

String

Name of the variable that stores the operation’s output.

Target Value

String

An expression to evaluate against the operation’s output and store the expression outcome in the target variable.

#[payload]

Error Mappings

Array of Error Mapping

Set of error mappings.

Reconnection Strategy

Retry strategy in case of connectivity errors.

#### Output

Type

Binary

Attributes Type

#### For Configurations - [Config](#Config) #### Throws - MS-NETSUITE-REST:BAD\_REQUEST - MS-NETSUITE-REST:CONFLICT - MS-NETSUITE-REST:CONNECTIVITY - MS-NETSUITE-REST:FORBIDDEN - MS-NETSUITE-REST:INTERNAL\_SERVER\_ERROR - MS-NETSUITE-REST:NETSUITE\_ERROR - MS-NETSUITE-REST:NOT\_FOUND - MS-NETSUITE-REST:RETRY\_EXHAUSTED - MS-NETSUITE-REST:SERVICE\_UNAVAILABLE - MS-NETSUITE-REST:TOO\_MANY\_REQUESTS - MS-NETSUITE-REST:UNAUTHORIZED - MS-NETSUITE-REST:VALIDATION ### Delete Record `` Deletes a record by its internal ID. This operation sends an HTTP `DELETE` to `/record/v1/{recordType}/{id}`. #### Parameters
NameTypeDescriptionDefault ValueRequired

Configuration

String

Name of the configuration to use.

x

Record Type

String

The NetSuite record type (for example, customer, salesOrder, invoice).

x

Internal ID

String

The internal ID of the record to delete.

x

Output Mime Type

String

The MIME type of the payload that this operation outputs.

Output Encoding

String

The encoding of the payload that this operation outputs.

Config Ref

ConfigurationProvider

Name of the configuration to use to execute this component.

x

Streaming Strategy

Configures how Mule processes streams. Repeatable streams are the default behavior.

Read Timeout

Number

Maximum time to wait for a response from NetSuite. Interpreted with Read Timeout Unit. Overrides the config default when set.

Read Timeout Unit

Enumeration, one of:

  • NANOSECONDS

  • MICROSECONDS

  • MILLISECONDS

  • SECONDS

  • MINUTES

  • HOURS

  • DAYS

Time unit for the Read Timeout field.

Target Variable

String

Name of the variable that stores the operation’s output.

Target Value

String

An expression to evaluate against the operation’s output and store the expression outcome in the target variable.

#[payload]

Error Mappings

Array of Error Mapping

Set of error mappings.

Reconnection Strategy

Retry strategy in case of connectivity errors.

#### Output

Type

Binary

Attributes Type

#### For Configurations - [Config](#Config) #### Throws - MS-NETSUITE-REST:BAD\_REQUEST - MS-NETSUITE-REST:CONFLICT - MS-NETSUITE-REST:CONNECTIVITY - MS-NETSUITE-REST:FORBIDDEN - MS-NETSUITE-REST:INTERNAL\_SERVER\_ERROR - MS-NETSUITE-REST:NETSUITE\_ERROR - MS-NETSUITE-REST:NOT\_FOUND - MS-NETSUITE-REST:RETRY\_EXHAUSTED - MS-NETSUITE-REST:SERVICE\_UNAVAILABLE - MS-NETSUITE-REST:TOO\_MANY\_REQUESTS - MS-NETSUITE-REST:UNAUTHORIZED - MS-NETSUITE-REST:VALIDATION ### Detach Record `` Detaches a record (for example, a contact, employee, file, or invoice) from another record. Both record IDs support the external ID format `eid:EXTERNAL_ID`. Endpoint: `POST /services/rest/record/v1/{recordType}/{recordId}/!detach/{detachRecordType}/{detachRecordId}`. #### Parameters
NameTypeDescriptionDefault ValueRequired

Configuration

String

Name of the configuration to use.

x

Record Type

String

Type of record to detach from (for example, customer, opportunity).

x

Record ID

String

Internal ID or external ID (use 'eid:EXTERNAL_ID' format) of record to detach from.

x

Detach Record Type

String

Type of record being detached (for example, contact, employee, file, or invoice).

x

Detach Record ID

String

Internal ID or external ID (use 'eid:EXTERNAL_ID' format) of record being detached.

x

Output Mime Type

String

The MIME type of the payload that this operation outputs.

Output Encoding

String

The encoding of the payload that this operation outputs.

Config Ref

ConfigurationProvider

Name of the configuration to use to execute this component.

x

Streaming Strategy

Configures how Mule processes streams. Repeatable streams are the default behavior.

Read Timeout

Number

Maximum time to wait for a response from NetSuite. Interpreted with Read Timeout Unit. Overrides the config default when set.

Read Timeout Unit

Enumeration, one of:

  • NANOSECONDS

  • MICROSECONDS

  • MILLISECONDS

  • SECONDS

  • MINUTES

  • HOURS

  • DAYS

Time unit for the Read Timeout field.

Target Variable

String

Name of the variable that stores the operation’s output.

Target Value

String

An expression to evaluate against the operation’s output and store the expression outcome in the target variable.

#[payload]

Error Mappings

Array of Error Mapping

Set of error mappings.

Reconnection Strategy

Retry strategy in case of connectivity errors.

#### Output

Type

Binary

Attributes Type

#### For Configurations - [Config](#Config) #### Throws - MS-NETSUITE-REST:BAD\_REQUEST - MS-NETSUITE-REST:CONFLICT - MS-NETSUITE-REST:CONNECTIVITY - MS-NETSUITE-REST:FORBIDDEN - MS-NETSUITE-REST:INTERNAL\_SERVER\_ERROR - MS-NETSUITE-REST:NETSUITE\_ERROR - MS-NETSUITE-REST:NOT\_FOUND - MS-NETSUITE-REST:RETRY\_EXHAUSTED - MS-NETSUITE-REST:SERVICE\_UNAVAILABLE - MS-NETSUITE-REST:TOO\_MANY\_REQUESTS - MS-NETSUITE-REST:UNAUTHORIZED - MS-NETSUITE-REST:VALIDATION ### Edit Form `` Retrieves a recalculated edit form for an existing record with proposed changes applied. The record is not modified. The response shows what the record would look like if the changes were saved. Use this to preview server-side calculations such as tax, totals, and dependent fields before you commit an update. Endpoint: `PATCH /services/rest/record/v1/{recordType}/{id}` with `Accept: application/vnd.oracle.resource+json; type=edit-form`. #### Parameters
NameTypeDescriptionDefault ValueRequired

Configuration

String

Name of the configuration to use.

x

Record Type

String

The NetSuite record type (for example, customer, salesOrder, invoice).

x

Internal ID

String

The internal ID of the record to preview changes on.

x

Record Body

Any

JSON body of the record changes used to preview the update without committing it to NetSuite.

#[payload]

Output Mime Type

String

The MIME type of the payload that this operation outputs.

Output Encoding

String

The encoding of the payload that this operation outputs.

Config Ref

ConfigurationProvider

Name of the configuration to use to execute this component.

x

Streaming Strategy

Configures how Mule processes streams. Repeatable streams are the default behavior.

Expand Sub-Resources

Boolean

If true, inline sublists and sub-records via ?expandSubResources=true.

false

Expand

String

Comma-separated list of specific sublists or subrecords to expand inline (for example, addressBook,currency).

Fields

String

Comma-separated list of field names to include. When set, only these fields are returned (for example, companyName,email).

Read Timeout

Number

Maximum time to wait for a response from NetSuite. Interpreted with Read Timeout Unit. Overrides the config default when set.

Read Timeout Unit

Enumeration, one of:

  • NANOSECONDS

  • MICROSECONDS

  • MILLISECONDS

  • SECONDS

  • MINUTES

  • HOURS

  • DAYS

Time unit for the Read Timeout field.

Target Variable

String

Name of the variable that stores the operation’s output.

Target Value

String

An expression to evaluate against the operation’s output and store the expression outcome in the target variable.

#[payload]

Error Mappings

Array of Error Mapping

Set of error mappings.

Reconnection Strategy

Retry strategy in case of connectivity errors.

#### Output

Type

Binary

Attributes Type

#### For Configurations - [Config](#Config) #### Throws - MS-NETSUITE-REST:BAD\_REQUEST - MS-NETSUITE-REST:CONFLICT - MS-NETSUITE-REST:CONNECTIVITY - MS-NETSUITE-REST:FORBIDDEN - MS-NETSUITE-REST:INTERNAL\_SERVER\_ERROR - MS-NETSUITE-REST:NETSUITE\_ERROR - MS-NETSUITE-REST:NOT\_FOUND - MS-NETSUITE-REST:RETRY\_EXHAUSTED - MS-NETSUITE-REST:SERVICE\_UNAVAILABLE - MS-NETSUITE-REST:TOO\_MANY\_REQUESTS - MS-NETSUITE-REST:UNAUTHORIZED - MS-NETSUITE-REST:VALIDATION ### Get All Records `` Retrieves a collection of records with automatic pagination and optional filtering. Returns ID stubs. Use [Get Record](#GetRecord) to fetch full record bodies. Use a For Each scope to process individual records. Pagination attributes such as `hasMore`, `offset`, and `links` are available on each item’s message attributes. Endpoint: `GET /services/rest/record/v1/{recordType}`. #### Parameters
NameTypeDescriptionDefault ValueRequired

Configuration

String

Name of the configuration to use.

x

Record Type

String

The NetSuite record type (for example, customer, salesOrder, invoice).

x

Filter Query

String

NetSuite filter expression (for example, 'email IS john@example.com'). Uses the same endpoint as Record Collection Query; use SuiteQL for complex queries.

Page Size

Number

Number of records per page (maps to REST API limit param; default: 100).

100

Max Total Results

Number

Maximum total records to return across all pages (-1 = unlimited; default: -1).

-1

Output Mime Type

String

The MIME type of the payload that this operation outputs.

Output Encoding

String

The encoding of the payload that this operation outputs.

Config Ref

ConfigurationProvider

Name of the configuration to use to execute this component.

x

Streaming Strategy

Configures how Mule processes streams. Repeatable streams are the default behavior.

Read Timeout

Number

Maximum time to wait for a response from NetSuite. Interpreted with Read Timeout Unit. Overrides the config default when set.

Read Timeout Unit

Enumeration, one of:

  • NANOSECONDS

  • MICROSECONDS

  • MILLISECONDS

  • SECONDS

  • MINUTES

  • HOURS

  • DAYS

Time unit for the Read Timeout field.

Target Variable

String

Name of the variable that stores the operation’s output.

Target Value

String

An expression to evaluate against the operation’s output and store the expression outcome in the target variable.

#[payload]

Error Mappings

Array of Error Mapping

Set of error mappings.

Reconnection Strategy

Retry strategy in case of connectivity errors.

#### Output

Type

Array of Message of Binary payload and NetSuite REST Attributes attributes

#### For Configurations - [Config](#Config) #### Throws - MS-NETSUITE-REST:BAD\_REQUEST - MS-NETSUITE-REST:CONFLICT - MS-NETSUITE-REST:CONNECTIVITY - MS-NETSUITE-REST:FORBIDDEN - MS-NETSUITE-REST:INTERNAL\_SERVER\_ERROR - MS-NETSUITE-REST:NETSUITE\_ERROR - MS-NETSUITE-REST:NOT\_FOUND - MS-NETSUITE-REST:RETRY\_EXHAUSTED - MS-NETSUITE-REST:SERVICE\_UNAVAILABLE - MS-NETSUITE-REST:TOO\_MANY\_REQUESTS - MS-NETSUITE-REST:UNAUTHORIZED - MS-NETSUITE-REST:VALIDATION ### Get Async Job Status `` Retrieves the current status of an asynchronous job. Poll this operation until `completed` is `true`. While the job is in progress, `progress` is `processing`. On success it becomes `succeeded`. `endTime` is absent until the job finishes. When `completed` is `true`, use [Get Async Job Task List](#GetAsyncJobTaskList) to retrieve task IDs, then [Get Async Job Task Result](#GetAsyncJobTaskResult) for per-record results. This operation sends an HTTP `GET` to `/async/v1/job/{jobId}`. #### Parameters
NameTypeDescriptionDefault ValueRequired

Configuration

String

Name of the configuration to use.

x

Job ID

String

The async job ID returned by a batch operation (for example, Add List, Update List, or Get List).

x

Output Mime Type

String

The MIME type of the payload that this operation outputs.

Output Encoding

String

The encoding of the payload that this operation outputs.

Config Ref

ConfigurationProvider

Name of the configuration to use to execute this component.

x

Streaming Strategy

Configures how Mule processes streams. Repeatable streams are the default behavior.

Read Timeout

Number

Maximum time to wait for a response from NetSuite. Interpreted with Read Timeout Unit. Overrides the config default when set.

Read Timeout Unit

Enumeration, one of:

  • NANOSECONDS

  • MICROSECONDS

  • MILLISECONDS

  • SECONDS

  • MINUTES

  • HOURS

  • DAYS

Time unit for the Read Timeout field.

Target Variable

String

Name of the variable that stores the operation’s output.

Target Value

String

An expression to evaluate against the operation’s output and store the expression outcome in the target variable.

#[payload]

Error Mappings

Array of Error Mapping

Set of error mappings.

Reconnection Strategy

Retry strategy in case of connectivity errors.

#### Output

Type

Binary

Attributes Type

#### For Configurations - [Config](#Config) #### Throws - MS-NETSUITE-REST:BAD\_REQUEST - MS-NETSUITE-REST:CONFLICT - MS-NETSUITE-REST:CONNECTIVITY - MS-NETSUITE-REST:FORBIDDEN - MS-NETSUITE-REST:INTERNAL\_SERVER\_ERROR - MS-NETSUITE-REST:NETSUITE\_ERROR - MS-NETSUITE-REST:NOT\_FOUND - MS-NETSUITE-REST:RETRY\_EXHAUSTED - MS-NETSUITE-REST:SERVICE\_UNAVAILABLE - MS-NETSUITE-REST:TOO\_MANY\_REQUESTS - MS-NETSUITE-REST:UNAUTHORIZED - MS-NETSUITE-REST:VALIDATION ### Get Async Job Task List `` Retrieves the list of tasks for a completed asynchronous job. Call this after [Get Async Job Status](#GetAsyncJobStatus) reports `completed: true`. The response contains a `links` array. Extract task IDs from the last path segment of each `href` (for example, `/async/v1/job/{jobId}/task/{taskId}`). This operation sends an HTTP `GET` to `/async/v1/job/{jobId}/task/`. #### Parameters
NameTypeDescriptionDefault ValueRequired

Configuration

String

Name of the configuration to use.

x

Job ID

String

The async job ID whose tasks should be listed.

x

Output Mime Type

String

The MIME type of the payload that this operation outputs.

Output Encoding

String

The encoding of the payload that this operation outputs.

Config Ref

ConfigurationProvider

Name of the configuration to use to execute this component.

x

Streaming Strategy

Configures how Mule processes streams. Repeatable streams are the default behavior.

Read Timeout

Number

Maximum time to wait for a response from NetSuite. Interpreted with Read Timeout Unit. Overrides the config default when set.

Read Timeout Unit

Enumeration, one of:

  • NANOSECONDS

  • MICROSECONDS

  • MILLISECONDS

  • SECONDS

  • MINUTES

  • HOURS

  • DAYS

Time unit for the Read Timeout field.

Target Variable

String

Name of the variable that stores the operation’s output.

Target Value

String

An expression to evaluate against the operation’s output and store the expression outcome in the target variable.

#[payload]

Error Mappings

Array of Error Mapping

Set of error mappings.

Reconnection Strategy

Retry strategy in case of connectivity errors.

#### Output

Type

Binary

Attributes Type

#### For Configurations - [Config](#Config) #### Throws - MS-NETSUITE-REST:BAD\_REQUEST - MS-NETSUITE-REST:CONFLICT - MS-NETSUITE-REST:CONNECTIVITY - MS-NETSUITE-REST:FORBIDDEN - MS-NETSUITE-REST:INTERNAL\_SERVER\_ERROR - MS-NETSUITE-REST:NETSUITE\_ERROR - MS-NETSUITE-REST:NOT\_FOUND - MS-NETSUITE-REST:RETRY\_EXHAUSTED - MS-NETSUITE-REST:SERVICE\_UNAVAILABLE - MS-NETSUITE-REST:TOO\_MANY\_REQUESTS - MS-NETSUITE-REST:UNAUTHORIZED - MS-NETSUITE-REST:VALIDATION ### Get Async Job Task Result `` Retrieves the result of a single task within an asynchronous job. Call this for each task ID from [Get Async Job Task List](#GetAsyncJobTaskList). Successful tasks return an empty body `{}`. Failed tasks return a body that describes the failure. Check `attributes.statusCode` to distinguish success (`2xx`) from failure (`4xx`/`5xx`). This operation sends an HTTP `GET` to `/async/v1/job/{jobId}/task/{taskId}/result`. #### Parameters
NameTypeDescriptionDefault ValueRequired

Configuration

String

Name of the configuration to use.

x

Job ID

String

The async job ID.

x

Task ID

String

The task ID whose result should be retrieved. Extract this ID from the Get Async Job Task List response.

x

Output Mime Type

String

The MIME type of the payload that this operation outputs.

Output Encoding

String

The encoding of the payload that this operation outputs.

Config Ref

ConfigurationProvider

Name of the configuration to use to execute this component.

x

Streaming Strategy

Configures how Mule processes streams. Repeatable streams are the default behavior.

Read Timeout

Number

Maximum time to wait for a response from NetSuite. Interpreted with Read Timeout Unit. Overrides the config default when set.

Read Timeout Unit

Enumeration, one of:

  • NANOSECONDS

  • MICROSECONDS

  • MILLISECONDS

  • SECONDS

  • MINUTES

  • HOURS

  • DAYS

Time unit for the Read Timeout field.

Target Variable

String

Name of the variable that stores the operation’s output.

Target Value

String

An expression to evaluate against the operation’s output and store the expression outcome in the target variable.

#[payload]

Error Mappings

Array of Error Mapping

Set of error mappings.

Reconnection Strategy

Retry strategy in case of connectivity errors.

#### Output

Type

Binary

Attributes Type

#### For Configurations - [Config](#Config) #### Throws - MS-NETSUITE-REST:BAD\_REQUEST - MS-NETSUITE-REST:CONFLICT - MS-NETSUITE-REST:CONNECTIVITY - MS-NETSUITE-REST:FORBIDDEN - MS-NETSUITE-REST:INTERNAL\_SERVER\_ERROR - MS-NETSUITE-REST:NETSUITE\_ERROR - MS-NETSUITE-REST:NOT\_FOUND - MS-NETSUITE-REST:RETRY\_EXHAUSTED - MS-NETSUITE-REST:SERVICE\_UNAVAILABLE - MS-NETSUITE-REST:TOO\_MANY\_REQUESTS - MS-NETSUITE-REST:UNAUTHORIZED - MS-NETSUITE-REST:VALIDATION ### Get Governance Limits `` Retrieves governance concurrency limits for the current account and integration. Returns account-level limits (total and unallocated) and integration-level limits (allocated concurrency and limit type). Requires admin-level permissions. The `integrationConcurrencyLimit` field is present only when `integrationLimitType` is `integrationSpecific`. Endpoint: `GET /services/rest/system/v1/governanceLimits`. #### Parameters
NameTypeDescriptionDefault ValueRequired

Configuration

String

Name of the configuration to use.

x

Output Mime Type

String

The MIME type of the payload that this operation outputs.

Output Encoding

String

The encoding of the payload that this operation outputs.

Config Ref

ConfigurationProvider

Name of the configuration to use to execute this component.

x

Streaming Strategy

Configures how Mule processes streams. Repeatable streams are the default behavior.

Read Timeout

Number

Maximum time to wait for a response from NetSuite. Interpreted with Read Timeout Unit. Overrides the config default when set.

Read Timeout Unit

Enumeration, one of:

  • NANOSECONDS

  • MICROSECONDS

  • MILLISECONDS

  • SECONDS

  • MINUTES

  • HOURS

  • DAYS

Time unit for the Read Timeout field.

Target Variable

String

Name of the variable that stores the operation’s output.

Target Value

String

An expression to evaluate against the operation’s output and store the expression outcome in the target variable.

#[payload]

Error Mappings

Array of Error Mapping

Set of error mappings.

Reconnection Strategy

Retry strategy in case of connectivity errors.

#### Output

Type

Binary

Attributes Type

#### For Configurations - [Config](#Config) #### Throws - MS-NETSUITE-REST:BAD\_REQUEST - MS-NETSUITE-REST:CONFLICT - MS-NETSUITE-REST:CONNECTIVITY - MS-NETSUITE-REST:FORBIDDEN - MS-NETSUITE-REST:INTERNAL\_SERVER\_ERROR - MS-NETSUITE-REST:NETSUITE\_ERROR - MS-NETSUITE-REST:NOT\_FOUND - MS-NETSUITE-REST:RETRY\_EXHAUSTED - MS-NETSUITE-REST:SERVICE\_UNAVAILABLE - MS-NETSUITE-REST:TOO\_MANY\_REQUESTS - MS-NETSUITE-REST:UNAUTHORIZED - MS-NETSUITE-REST:VALIDATION ### Get List `` Submits an asynchronous batch read request for up to 100 records by ID. Accepts a comma-separated list of internal IDs or external IDs. For external IDs, use the `eid:` prefix. Quote external IDs that contain spaces (for example, `eid:'ext ID with spaces'`). When Expand Records is `true`, full record bodies are included. Otherwise only metadata is returned. This operation sends an HTTP `GET` to `/record/v1/{recordType}?ids=…​&expandRecords=…​` with the `Prefer: respond-async` header. #### Parameters
NameTypeDescriptionDefault ValueRequired

Configuration

String

Name of the configuration to use.

x

Record Type

String

The NetSuite record type for every ID in the batch (single record type per batch).

x

IDs

String

Comma-separated internal IDs or external IDs with the eid: prefix (for example, 123,eid:ext1,456). External IDs that contain spaces must be quoted (for example, eid:'ext ID with spaces'). Maximum 100 IDs.

x

Idempotency Key

String

Optional UUID (RFC 4122) for idempotent submission. Sent as the X-NetSuite-Idempotency-Key header. A duplicate UUID returns HTTP 409.

Output Mime Type

String

The MIME type of the payload that this operation outputs.

Output Encoding

String

The encoding of the payload that this operation outputs.

Config Ref

ConfigurationProvider

Name of the configuration to use to execute this component.

x

Streaming Strategy

Configures how Mule processes streams. Repeatable streams are the default behavior.

Expand Sub-Resources

Boolean

If true, inline sublists and sub-records via ?expandSubResources=true.

false

Expand

String

Comma-separated list of specific sublists or subrecords to expand inline (for example, addressBook,currency).

Fields

String

Comma-separated list of field names to include. When set, only these fields are returned (for example, companyName,email).

Expand Records

Boolean

Whether to include full record bodies in each task result.

true

Read Timeout

Number

Maximum time to wait for a response from NetSuite. Interpreted with Read Timeout Unit. Overrides the config default when set.

Read Timeout Unit

Enumeration, one of:

  • NANOSECONDS

  • MICROSECONDS

  • MILLISECONDS

  • SECONDS

  • MINUTES

  • HOURS

  • DAYS

Time unit for the Read Timeout field.

Target Variable

String

Name of the variable that stores the operation’s output.

Target Value

String

An expression to evaluate against the operation’s output and store the expression outcome in the target variable.

#[payload]

Error Mappings

Array of Error Mapping

Set of error mappings.

Reconnection Strategy

Retry strategy in case of connectivity errors.

#### Output

Type

Binary

Attributes Type

#### For Configurations - [Config](#Config) #### Throws - MS-NETSUITE-REST:BAD\_REQUEST - MS-NETSUITE-REST:CONFLICT - MS-NETSUITE-REST:CONNECTIVITY - MS-NETSUITE-REST:FORBIDDEN - MS-NETSUITE-REST:INTERNAL\_SERVER\_ERROR - MS-NETSUITE-REST:NETSUITE\_ERROR - MS-NETSUITE-REST:NOT\_FOUND - MS-NETSUITE-REST:RETRY\_EXHAUSTED - MS-NETSUITE-REST:SERVICE\_UNAVAILABLE - MS-NETSUITE-REST:TOO\_MANY\_REQUESTS - MS-NETSUITE-REST:UNAUTHORIZED - MS-NETSUITE-REST:VALIDATION ### Get Record `` Retrieves a record by internal ID or external ID. Provide exactly one of Internal ID or External ID. When Expand Sub-Resources is `true`, sublists and sub-records (for example, addressBook and contacts) are inlined in the response instead of returned as links. This operation sends an HTTP `GET` to `/record/v1/{recordType}/{id}` or `/record/v1/{recordType}/eid:{externalId}`. #### Parameters
NameTypeDescriptionDefault ValueRequired

Configuration

String

Name of the configuration to use.

x

Record Type

String

The NetSuite record type (for example, customer, salesOrder, invoice).

x

Expand Sub-Resources

Boolean

If true, inline sublists and sub-records (addressBook, contacts, etc.) via ?expandSubResources=true. If false (default), they are returned as links.

false

Output Mime Type

String

The MIME type of the payload that this operation outputs.

Output Encoding

String

The encoding of the payload that this operation outputs.

Config Ref

ConfigurationProvider

Name of the configuration to use to execute this component.

x

Streaming Strategy

Configures how Mule processes streams. Repeatable streams are the default behavior.

Internal ID

String

The internal ID of the record to retrieve.

External ID

String

The external ID of the record to retrieve (alternative to Internal ID).

Read Timeout

Number

Maximum time to wait for a response from NetSuite. Interpreted with Read Timeout Unit. Overrides the config default when set.

Read Timeout Unit

Enumeration, one of:

  • NANOSECONDS

  • MICROSECONDS

  • MILLISECONDS

  • SECONDS

  • MINUTES

  • HOURS

  • DAYS

Time unit for the Read Timeout field.

Target Variable

String

Name of the variable that stores the operation’s output.

Target Value

String

An expression to evaluate against the operation’s output and store the expression outcome in the target variable.

#[payload]

Error Mappings

Array of Error Mapping

Set of error mappings.

Reconnection Strategy

Retry strategy in case of connectivity errors.

#### Output

Type

Binary

Attributes Type

#### For Configurations - [Config](#Config) #### Throws - MS-NETSUITE-REST:BAD\_REQUEST - MS-NETSUITE-REST:CONFLICT - MS-NETSUITE-REST:CONNECTIVITY - MS-NETSUITE-REST:FORBIDDEN - MS-NETSUITE-REST:INTERNAL\_SERVER\_ERROR - MS-NETSUITE-REST:NETSUITE\_ERROR - MS-NETSUITE-REST:NOT\_FOUND - MS-NETSUITE-REST:RETRY\_EXHAUSTED - MS-NETSUITE-REST:SERVICE\_UNAVAILABLE - MS-NETSUITE-REST:TOO\_MANY\_REQUESTS - MS-NETSUITE-REST:UNAUTHORIZED - MS-NETSUITE-REST:VALIDATION ### Get Record Metadata `` Retrieves the OpenAPI metadata schema for a record type, including field definitions, data types, required fields, and valid select values. You can use this metadata for validation or documentation. This operation sends an HTTP `GET` to `/record/v1/metadata-catalog/{recordType}` with `Accept: application/swagger+json`. #### Parameters
NameTypeDescriptionDefault ValueRequired

Configuration

String

Name of the configuration to use.

x

Record Type

String

The NetSuite record type (for example, customer, salesOrder).

x

Output Mime Type

String

The MIME type of the payload that this operation outputs.

Output Encoding

String

The encoding of the payload that this operation outputs.

Config Ref

ConfigurationProvider

Name of the configuration to use to execute this component.

x

Streaming Strategy

Configures how Mule processes streams. Repeatable streams are the default behavior.

Read Timeout

Number

Maximum time to wait for a response from NetSuite. Interpreted with Read Timeout Unit. Overrides the config default when set.

Read Timeout Unit

Enumeration, one of:

  • NANOSECONDS

  • MICROSECONDS

  • MILLISECONDS

  • SECONDS

  • MINUTES

  • HOURS

  • DAYS

Time unit for the Read Timeout field.

Target Variable

String

Name of the variable that stores the operation’s output.

Target Value

String

An expression to evaluate against the operation’s output and store the expression outcome in the target variable.

#[payload]

Error Mappings

Array of Error Mapping

Set of error mappings.

Reconnection Strategy

Retry strategy in case of connectivity errors.

#### Output

Type

Binary

Attributes Type

#### For Configurations - [Config](#Config) #### Throws - MS-NETSUITE-REST:BAD\_REQUEST - MS-NETSUITE-REST:CONFLICT - MS-NETSUITE-REST:CONNECTIVITY - MS-NETSUITE-REST:FORBIDDEN - MS-NETSUITE-REST:INTERNAL\_SERVER\_ERROR - MS-NETSUITE-REST:NETSUITE\_ERROR - MS-NETSUITE-REST:NOT\_FOUND - MS-NETSUITE-REST:RETRY\_EXHAUSTED - MS-NETSUITE-REST:SERVICE\_UNAVAILABLE - MS-NETSUITE-REST:TOO\_MANY\_REQUESTS - MS-NETSUITE-REST:UNAUTHORIZED - MS-NETSUITE-REST:VALIDATION ### Get Record Types Catalog `` Retrieves the list of available record types from the metadata catalog, including standard and custom types with their internal names and labels. When **Select** has a single value (for example, `customer`), the API returns a single record-type object instead of an `items` collection. For reliable results, use a single **Select** value. This operation sends an HTTP `GET` to `/record/v1/metadata-catalog/`, optionally with `?select=type`. #### Parameters
NameTypeDescriptionDefault ValueRequired

Configuration

String

Name of the configuration to use.

x

Select

String

Optional comma-separated record type names to retrieve from the catalog (for example, customer or assemblybuild,customer,journalEntry). When omitted, all record types are returned as an items array.

As Swagger Spec

Boolean

When true, sends Accept: application/swagger+json so NetSuite returns a combined OpenAPI 3.0 specification for all selected record types. Required for a multi-value Select to return the documented combined spec; without it, NetSuite returns a single HATEOAS link object regardless of how many types are listed. When false (default), the original JSON behavior is preserved.

false

Output Mime Type

String

The MIME type of the payload that this operation outputs.

Output Encoding

String

The encoding of the payload that this operation outputs.

Config Ref

ConfigurationProvider

Name of the configuration to use to execute this component.

x

Streaming Strategy

Configures how Mule processes streams. Repeatable streams are the default behavior.

Read Timeout

Number

Maximum time to wait for a response from NetSuite. Interpreted with Read Timeout Unit. Overrides the config default when set.

Read Timeout Unit

Enumeration, one of:

  • NANOSECONDS

  • MICROSECONDS

  • MILLISECONDS

  • SECONDS

  • MINUTES

  • HOURS

  • DAYS

Time unit for the Read Timeout field.

Target Variable

String

Name of the variable that stores the operation’s output.

Target Value

String

An expression to evaluate against the operation’s output and store the expression outcome in the target variable.

#[payload]

Error Mappings

Array of Error Mapping

Set of error mappings.

Reconnection Strategy

Retry strategy in case of connectivity errors.

#### Output

Type

Binary

Attributes Type

#### For Configurations - [Config](#Config) #### Throws - MS-NETSUITE-REST:BAD\_REQUEST - MS-NETSUITE-REST:CONFLICT - MS-NETSUITE-REST:CONNECTIVITY - MS-NETSUITE-REST:FORBIDDEN - MS-NETSUITE-REST:INTERNAL\_SERVER\_ERROR - MS-NETSUITE-REST:NETSUITE\_ERROR - MS-NETSUITE-REST:NOT\_FOUND - MS-NETSUITE-REST:RETRY\_EXHAUSTED - MS-NETSUITE-REST:SERVICE\_UNAVAILABLE - MS-NETSUITE-REST:TOO\_MANY\_REQUESTS - MS-NETSUITE-REST:UNAUTHORIZED - MS-NETSUITE-REST:VALIDATION ### Get Select Value `` Retrieves select-option metadata for one or more fields on a record type, with automatic pagination. Each For Each iteration yields one select-option object (for example, `{"id": 16, "refName": "Active"}`), with page attributes copied onto each item. Endpoint: `POST /services/rest/record/v1/{recordType}`. #### Parameters
NameTypeDescriptionDefault ValueRequired

Configuration

String

Name of the configuration to use.

x

Record Type

String

The NetSuite record type (for example, customer, salesOrder, invoice).

x

Fields

String

Comma-separated list of field names to retrieve select options for, passed as the fields URL query parameter, not as a body field. Supports dot notation for sublist fields (for example, line.dueToFromSubsidiary). Multiple fields are supported (for example, entitystatus,category).

x

Page Size

Number

Number of select options per page (maps to REST API limit param; default: 100).

100

Max Total Results

Number

Maximum total select options to return across all pages (-1 = unlimited; default: -1).

-1

Record Body

Any

Optional JSON body that provides record context used to filter the returned select options (for example, based on parent record state).

Output Mime Type

String

The MIME type of the payload that this operation outputs.

Output Encoding

String

The encoding of the payload that this operation outputs.

Config Ref

ConfigurationProvider

Name of the configuration to use to execute this component.

x

Streaming Strategy

Configures how Mule processes streams. Repeatable streams are the default behavior.

Read Timeout

Number

Maximum time to wait for a response from NetSuite. Interpreted with Read Timeout Unit. Overrides the config default when set.

Read Timeout Unit

Enumeration, one of:

  • NANOSECONDS

  • MICROSECONDS

  • MILLISECONDS

  • SECONDS

  • MINUTES

  • HOURS

  • DAYS

Time unit for the Read Timeout field.

Target Variable

String

Name of the variable that stores the operation’s output.

Target Value

String

An expression to evaluate against the operation’s output and store the expression outcome in the target variable.

#[payload]

Error Mappings

Array of Error Mapping

Set of error mappings.

Reconnection Strategy

Retry strategy in case of connectivity errors.

#### Output

Type

Array of Message of Binary payload and NetSuite REST Attributes attributes

#### For Configurations - [Config](#Config) #### Throws - MS-NETSUITE-REST:BAD\_REQUEST - MS-NETSUITE-REST:CONFLICT - MS-NETSUITE-REST:CONNECTIVITY - MS-NETSUITE-REST:FORBIDDEN - MS-NETSUITE-REST:INTERNAL\_SERVER\_ERROR - MS-NETSUITE-REST:NETSUITE\_ERROR - MS-NETSUITE-REST:NOT\_FOUND - MS-NETSUITE-REST:RETRY\_EXHAUSTED - MS-NETSUITE-REST:SERVICE\_UNAVAILABLE - MS-NETSUITE-REST:TOO\_MANY\_REQUESTS - MS-NETSUITE-REST:UNAUTHORIZED - MS-NETSUITE-REST:VALIDATION ### Get Server Time `` Retrieves the current NetSuite server time in UTC, regardless of the user’s time zone. Useful for synchronization that must compare against server time rather than client time. Endpoint: `GET /services/rest/system/v1/serverTime`. #### Parameters
NameTypeDescriptionDefault ValueRequired

Configuration

String

Name of the configuration to use.

x

Output Mime Type

String

The MIME type of the payload that this operation outputs.

Output Encoding

String

The encoding of the payload that this operation outputs.

Config Ref

ConfigurationProvider

Name of the configuration to use to execute this component.

x

Streaming Strategy

Configures how Mule processes streams. Repeatable streams are the default behavior.

Read Timeout

Number

Maximum time to wait for a response from NetSuite. Interpreted with Read Timeout Unit. Overrides the config default when set.

Read Timeout Unit

Enumeration, one of:

  • NANOSECONDS

  • MICROSECONDS

  • MILLISECONDS

  • SECONDS

  • MINUTES

  • HOURS

  • DAYS

Time unit for the Read Timeout field.

Target Variable

String

Name of the variable that stores the operation’s output.

Target Value

String

An expression to evaluate against the operation’s output and store the expression outcome in the target variable.

#[payload]

Error Mappings

Array of Error Mapping

Set of error mappings.

Reconnection Strategy

Retry strategy in case of connectivity errors.

#### Output

Type

Binary

Attributes Type

#### For Configurations - [Config](#Config) #### Throws - MS-NETSUITE-REST:BAD\_REQUEST - MS-NETSUITE-REST:CONFLICT - MS-NETSUITE-REST:CONNECTIVITY - MS-NETSUITE-REST:FORBIDDEN - MS-NETSUITE-REST:INTERNAL\_SERVER\_ERROR - MS-NETSUITE-REST:NETSUITE\_ERROR - MS-NETSUITE-REST:NOT\_FOUND - MS-NETSUITE-REST:RETRY\_EXHAUSTED - MS-NETSUITE-REST:SERVICE\_UNAVAILABLE - MS-NETSUITE-REST:TOO\_MANY\_REQUESTS - MS-NETSUITE-REST:UNAUTHORIZED - MS-NETSUITE-REST:VALIDATION ### Initialize Record (Transform) `` Transforms a source record into a target record type and pre-populates fields (for example, salesOrder to invoice). Returns a prefilled form that is not submitted. You can modify the form before you submit it with [Create Record](#CreateRecord). Endpoint: `POST /services/rest/record/v1/{sourceType}/{id}/!transform/{targetType}` with `Accept: application/vnd.oracle.resource+json; type=create-form`. #### Parameters
NameTypeDescriptionDefault ValueRequired

Configuration

String

Name of the configuration to use.

x

Source Record Type

String

The source record type (for example, salesOrder).

x

Source Internal ID

String

The internal ID of the source record.

x

Target Record Type

String

Target record type to transform into (for example, invoice).

x

Override Fields

Any

Optional JSON body with field overrides to apply on top of the prefilled defaults.

Output Mime Type

String

The MIME type of the payload that this operation outputs.

Output Encoding

String

The encoding of the payload that this operation outputs.

Config Ref

ConfigurationProvider

Name of the configuration to use to execute this component.

x

Streaming Strategy

Configures how Mule processes streams. Repeatable streams are the default behavior.

Expand Sub-Resources

Boolean

If true, inline sublists and sub-records via ?expandSubResources=true.

false

Expand

String

Comma-separated list of specific sublists or subrecords to expand inline (for example, addressBook,currency).

Fields

String

Comma-separated list of field names to include. When set, only these fields are returned (for example, companyName,email).

Read Timeout

Number

Maximum time to wait for a response from NetSuite. Interpreted with Read Timeout Unit. Overrides the config default when set.

Read Timeout Unit

Enumeration, one of:

  • NANOSECONDS

  • MICROSECONDS

  • MILLISECONDS

  • SECONDS

  • MINUTES

  • HOURS

  • DAYS

Time unit for the Read Timeout field.

Target Variable

String

Name of the variable that stores the operation’s output.

Target Value

String

An expression to evaluate against the operation’s output and store the expression outcome in the target variable.

#[payload]

Error Mappings

Array of Error Mapping

Set of error mappings.

Reconnection Strategy

Retry strategy in case of connectivity errors.

#### Output

Type

Binary

Attributes Type

#### For Configurations - [Config](#Config) #### Throws - MS-NETSUITE-REST:BAD\_REQUEST - MS-NETSUITE-REST:CONFLICT - MS-NETSUITE-REST:CONNECTIVITY - MS-NETSUITE-REST:FORBIDDEN - MS-NETSUITE-REST:INTERNAL\_SERVER\_ERROR - MS-NETSUITE-REST:NETSUITE\_ERROR - MS-NETSUITE-REST:NOT\_FOUND - MS-NETSUITE-REST:RETRY\_EXHAUSTED - MS-NETSUITE-REST:SERVICE\_UNAVAILABLE - MS-NETSUITE-REST:TOO\_MANY\_REQUESTS - MS-NETSUITE-REST:UNAUTHORIZED - MS-NETSUITE-REST:VALIDATION ### SuiteQL Query `` Runs a SuiteQL query against NetSuite data with automatic pagination. SuiteQL is a SQL-like query language that provides direct access to NetSuite records without needing structured search criteria. This operation uses Mule’s PagingProvider framework. Use a For Each scope to process individual rows (each page’s items array is exploded). Pagination attributes are available on each item’s message attributes. This is a REST-only operation with no direct SOAP equivalent. The closest SOAP analog is the search operation, but they use fundamentally different approaches: SOAP uses structured XML criteria with metadata resolution, while SuiteQL uses raw SQL-like query strings. Endpoint: `POST /services/rest/query/v1/suiteql`. #### Parameters
NameTypeDescriptionDefault ValueRequired

Configuration

String

Name of the configuration to use.

x

Query

String

SuiteQL query string (for example, SELECT id, companyname FROM customer WHERE companyname LIKE 'A%').

x

Page Size

Number

Number of rows per page (maps to REST API limit param; default: 100).

100

Max Total Results

Number

Maximum total rows to return across all pages. The default of 100000 matches NetSuite’s hard cap per query. Set to -1 for unlimited, but NetSuite returns an error if the result set exceeds 100,000 rows.

100000

Output Mime Type

String

The MIME type of the payload that this operation outputs.

Output Encoding

String

The encoding of the payload that this operation outputs.

Config Ref

ConfigurationProvider

Name of the configuration to use to execute this component.

x

Streaming Strategy

Configures how Mule processes streams. Repeatable streams are the default behavior.

Read Timeout

Number

Maximum time to wait for a response from NetSuite. Interpreted with Read Timeout Unit. Overrides the config default when set.

Read Timeout Unit

Enumeration, one of:

  • NANOSECONDS

  • MICROSECONDS

  • MILLISECONDS

  • SECONDS

  • MINUTES

  • HOURS

  • DAYS

Time unit for the Read Timeout field.

Target Variable

String

Name of the variable that stores the operation’s output.

Target Value

String

An expression to evaluate against the operation’s output and store the expression outcome in the target variable.

#[payload]

Error Mappings

Array of Error Mapping

Set of error mappings.

Reconnection Strategy

Retry strategy in case of connectivity errors.

#### Output

Type

Array of Message of Binary payload and NetSuite REST Attributes attributes

#### For Configurations - [Config](#Config) #### Throws - MS-NETSUITE-REST:BAD\_REQUEST - MS-NETSUITE-REST:CONFLICT - MS-NETSUITE-REST:CONNECTIVITY - MS-NETSUITE-REST:FORBIDDEN - MS-NETSUITE-REST:INTERNAL\_SERVER\_ERROR - MS-NETSUITE-REST:NETSUITE\_ERROR - MS-NETSUITE-REST:NOT\_FOUND - MS-NETSUITE-REST:RETRY\_EXHAUSTED - MS-NETSUITE-REST:SERVICE\_UNAVAILABLE - MS-NETSUITE-REST:TOO\_MANY\_REQUESTS - MS-NETSUITE-REST:UNAUTHORIZED - MS-NETSUITE-REST:VALIDATION ### Update List `` Submits an asynchronous batch update request for up to 100 records. Each item must include `id` or `externalId` to identify the record. Only fields included in each item are updated (merge-patch semantics). This operation sends an HTTP `PATCH` to `/record/v1/{recordType}` with the `Prefer: respond-async` header. #### Parameters
NameTypeDescriptionDefault ValueRequired

Configuration

String

Name of the configuration to use.

x

Record Type

String

The NetSuite record type for every item in the batch (single record type per batch).

x

Body

Any

Request body in NetSuite format: {"items": [..]}. Each item must have ID or externalId. Max 100 items per request.

#[payload]

Idempotency Key

String

Optional UUID (RFC 4122) for idempotent submission. Sent as the X-NetSuite-Idempotency-Key header. A duplicate UUID returns HTTP 409.

Output Mime Type

String

The MIME type of the payload that this operation outputs.

Output Encoding

String

The encoding of the payload that this operation outputs.

Config Ref

ConfigurationProvider

Name of the configuration to use to execute this component.

x

Streaming Strategy

Configures how Mule processes streams. Repeatable streams are the default behavior.

Read Timeout

Number

Maximum time to wait for a response from NetSuite. Interpreted with Read Timeout Unit. Overrides the config default when set.

Read Timeout Unit

Enumeration, one of:

  • NANOSECONDS

  • MICROSECONDS

  • MILLISECONDS

  • SECONDS

  • MINUTES

  • HOURS

  • DAYS

Time unit for the Read Timeout field.

Target Variable

String

Name of the variable that stores the operation’s output.

Target Value

String

An expression to evaluate against the operation’s output and store the expression outcome in the target variable.

#[payload]

Error Mappings

Array of Error Mapping

Set of error mappings.

Reconnection Strategy

Retry strategy in case of connectivity errors.

#### Output

Type

Binary

Attributes Type

#### For Configurations - [Config](#Config) #### Throws - MS-NETSUITE-REST:BAD\_REQUEST - MS-NETSUITE-REST:CONFLICT - MS-NETSUITE-REST:CONNECTIVITY - MS-NETSUITE-REST:FORBIDDEN - MS-NETSUITE-REST:INTERNAL\_SERVER\_ERROR - MS-NETSUITE-REST:NETSUITE\_ERROR - MS-NETSUITE-REST:NOT\_FOUND - MS-NETSUITE-REST:RETRY\_EXHAUSTED - MS-NETSUITE-REST:SERVICE\_UNAVAILABLE - MS-NETSUITE-REST:TOO\_MANY\_REQUESTS - MS-NETSUITE-REST:UNAUTHORIZED - MS-NETSUITE-REST:VALIDATION ### Update Record `` Updates an existing record with a partial update (merge-patch semantics). Only fields in the request body are updated. Omitted fields are left unchanged. This operation sends an HTTP `PATCH` to `/record/v1/{recordType}/{id}`. #### Parameters
NameTypeDescriptionDefault ValueRequired

Configuration

String

Name of the configuration to use.

x

Record Type

String

The NetSuite record type (for example, customer, salesOrder, invoice).

x

Internal ID

String

The internal ID of the record to update.

x

Record Body

Any

JSON body of the record fields to update. Set a field to null to clear it.

#[payload]

Output Mime Type

String

The MIME type of the payload that this operation outputs.

Output Encoding

String

The encoding of the payload that this operation outputs.

Config Ref

ConfigurationProvider

Name of the configuration to use to execute this component.

x

Streaming Strategy

Configures how Mule processes streams. Repeatable streams are the default behavior.

Read Timeout

Number

Maximum time to wait for a response from NetSuite. Interpreted with Read Timeout Unit. Overrides the config default when set.

Read Timeout Unit

Enumeration, one of:

  • NANOSECONDS

  • MICROSECONDS

  • MILLISECONDS

  • SECONDS

  • MINUTES

  • HOURS

  • DAYS

Time unit for the Read Timeout field.

Target Variable

String

Name of the variable that stores the operation’s output.

Target Value

String

An expression to evaluate against the operation’s output and store the expression outcome in the target variable.

#[payload]

Error Mappings

Array of Error Mapping

Set of error mappings.

Reconnection Strategy

Retry strategy in case of connectivity errors.

#### Output

Type

Binary

Attributes Type

#### For Configurations - [Config](#Config) #### Throws - MS-NETSUITE-REST:BAD\_REQUEST - MS-NETSUITE-REST:CONFLICT - MS-NETSUITE-REST:CONNECTIVITY - MS-NETSUITE-REST:FORBIDDEN - MS-NETSUITE-REST:INTERNAL\_SERVER\_ERROR - MS-NETSUITE-REST:NETSUITE\_ERROR - MS-NETSUITE-REST:NOT\_FOUND - MS-NETSUITE-REST:RETRY\_EXHAUSTED - MS-NETSUITE-REST:SERVICE\_UNAVAILABLE - MS-NETSUITE-REST:TOO\_MANY\_REQUESTS - MS-NETSUITE-REST:UNAUTHORIZED - MS-NETSUITE-REST:VALIDATION ### Upsert List `` Submits an asynchronous batch upsert request for up to 100 records. Each item must have `externalId` or `id`. If both are provided, the internal ID takes precedence. If a matching record exists, it is updated. Otherwise a new record is created. This operation sends an HTTP `PUT` to `/record/v1/{recordType}` with the `Prefer: respond-async` header. #### Parameters
NameTypeDescriptionDefault ValueRequired

Configuration

String

Name of the configuration to use.

x

Record Type

String

The NetSuite record type for every item in the batch (single record type per batch).

x

Body

Any

Request body in NetSuite format: {"items": [..]}. Each item must have externalId or id. If both are present, the internal ID takes precedence. Max 100 items per request.

#[payload]

Idempotency Key

String

Optional UUID (RFC 4122) for idempotent submission. Sent as the X-NetSuite-Idempotency-Key header. A duplicate UUID returns HTTP 409.

Output Mime Type

String

The MIME type of the payload that this operation outputs.

Output Encoding

String

The encoding of the payload that this operation outputs.

Config Ref

ConfigurationProvider

Name of the configuration to use to execute this component.

x

Streaming Strategy

Configures how Mule processes streams. Repeatable streams are the default behavior.

Read Timeout

Number

Maximum time to wait for a response from NetSuite. Interpreted with Read Timeout Unit. Overrides the config default when set.

Read Timeout Unit

Enumeration, one of:

  • NANOSECONDS

  • MICROSECONDS

  • MILLISECONDS

  • SECONDS

  • MINUTES

  • HOURS

  • DAYS

Time unit for the Read Timeout field.

Target Variable

String

Name of the variable that stores the operation’s output.

Target Value

String

An expression to evaluate against the operation’s output and store the expression outcome in the target variable.

#[payload]

Error Mappings

Array of Error Mapping

Set of error mappings.

Reconnection Strategy

Retry strategy in case of connectivity errors.

#### Output

Type

Binary

Attributes Type

#### For Configurations - [Config](#Config) #### Throws - MS-NETSUITE-REST:BAD\_REQUEST - MS-NETSUITE-REST:CONFLICT - MS-NETSUITE-REST:CONNECTIVITY - MS-NETSUITE-REST:FORBIDDEN - MS-NETSUITE-REST:INTERNAL\_SERVER\_ERROR - MS-NETSUITE-REST:NETSUITE\_ERROR - MS-NETSUITE-REST:NOT\_FOUND - MS-NETSUITE-REST:RETRY\_EXHAUSTED - MS-NETSUITE-REST:SERVICE\_UNAVAILABLE - MS-NETSUITE-REST:TOO\_MANY\_REQUESTS - MS-NETSUITE-REST:UNAUTHORIZED - MS-NETSUITE-REST:VALIDATION ### Upsert Record `` Creates or updates a record by using its external ID. If a record with that external ID exists, it is updated. Otherwise a new record is created. This operation uses HTTP `PUT` semantics and requires all mandatory fields in the body. This operation sends an HTTP `PUT` to `/record/v1/{recordType}/eid:{externalId}`. #### Parameters
NameTypeDescriptionDefault ValueRequired

Configuration

String

Name of the configuration to use.

x

Record Type

String

The NetSuite record type (for example, customer, salesOrder, invoice).

x

External ID

String

The external ID of the record. Creates the record if it is not found and updates it if it exists. Because an external ID is required, upsert is supported only for record types that have an external ID field.

x

Record Body

Any

JSON body containing field values. Must include all mandatory fields for creation.

#[payload]

Output Mime Type

String

The MIME type of the payload that this operation outputs.

Output Encoding

String

The encoding of the payload that this operation outputs.

Config Ref

ConfigurationProvider

Name of the configuration to use to execute this component.

x

Streaming Strategy

Configures how Mule processes streams. Repeatable streams are the default behavior.

Read Timeout

Number

Maximum time to wait for a response from NetSuite. Interpreted with Read Timeout Unit. Overrides the config default when set.

Read Timeout Unit

Enumeration, one of:

  • NANOSECONDS

  • MICROSECONDS

  • MILLISECONDS

  • SECONDS

  • MINUTES

  • HOURS

  • DAYS

Time unit for the Read Timeout field.

Target Variable

String

Name of the variable that stores the operation’s output.

Target Value

String

An expression to evaluate against the operation’s output and store the expression outcome in the target variable.

#[payload]

Error Mappings

Array of Error Mapping

Set of error mappings.

Reconnection Strategy

Retry strategy in case of connectivity errors.

#### Output

Type

Binary

Attributes Type

#### For Configurations - [Config](#Config) #### Throws - MS-NETSUITE-REST:BAD\_REQUEST - MS-NETSUITE-REST:CONFLICT - MS-NETSUITE-REST:CONNECTIVITY - MS-NETSUITE-REST:FORBIDDEN - MS-NETSUITE-REST:INTERNAL\_SERVER\_ERROR - MS-NETSUITE-REST:NETSUITE\_ERROR - MS-NETSUITE-REST:NOT\_FOUND - MS-NETSUITE-REST:RETRY\_EXHAUSTED - MS-NETSUITE-REST:SERVICE\_UNAVAILABLE - MS-NETSUITE-REST:TOO\_MANY\_REQUESTS - MS-NETSUITE-REST:UNAUTHORIZED - MS-NETSUITE-REST:VALIDATION ## Sources ### On Deleted Object `` Polls NetSuite for deleted-record metadata and emits an event for each deletion found. Queries the `deletedrecord` SuiteQL table filtered on `deleteddate` and the case-sensitive uppercase `type` column. Emitted rows are deletion metadata (for example, record ID, type, and deleted date), not the deleted record’s full body. If the `deletedrecord` table is unavailable, the connector raises a typed connector error instead of a raw SuiteQL parse error. #### Parameters
NameTypeDescriptionDefault ValueRequired

Configuration

String

Name of the configuration to use.

x

Record Type

String

NetSuite record type to poll (for example, customer). For On Deleted Object, this is matched case-insensitively against the deletedrecord 'type' column.

x

Start Date

String

Calendar-day lower bound for the first poll when no watermark has been stored yet (for example, 2025-01-15). Only the date portion is used. If omitted, the source defaults to today in the configured Start Timezone (or UTC if that is also omitted).

Start Timezone

String

IANA timezone used to compute today when neither a stored watermark nor a Start Date is present (for example, America/Los_Angeles).

UTC

Page Size

Number

Rows fetched per SuiteQL page (1-1000). The source paginates until a short/last page is reached.

100

Output Mime Type

String

The MIME type of the payload that this operation outputs.

Output Encoding

String

The encoding of the payload that this operation outputs.

Primary Node Only

Boolean

Determines whether to execute this source on only the primary node when running Mule instances in a cluster.

true

Config Ref

ConfigurationProvider

Name of the configuration to use to execute this component.

x

Scheduling Strategy

SchedulingStrategy

Configures the scheduler that triggers the polling.

x

Streaming Strategy

Configures how Mule processes streams. Repeatable streams are the default behavior.

Redelivery Policy

Defines a policy for processing the redelivery of the same message.

Read Timeout

Number

Maximum time to wait for a response from NetSuite. Interpreted with Read Timeout Unit. Overrides the config default when set.

Read Timeout Unit

Enumeration, one of:

  • NANOSECONDS

  • MICROSECONDS

  • MILLISECONDS

  • SECONDS

  • MINUTES

  • HOURS

  • DAYS

Time unit for the Read Timeout field.

Reconnection Strategy

Retry strategy in case of connectivity errors.

#### Output

Type

Any

Attributes Type

#### For Configurations - [Config](#Config) ### On Modified Object `` Polls NetSuite for records of a specified type that were created or updated since the last poll and emits an event for each one found. Filters on `lastmodifieddate`, which is set on insert and on update, so this source includes both new and later-modified records. Cluster and watermark behavior matches [On New Object](#NewObjectListener). #### Parameters
NameTypeDescriptionDefault ValueRequired

Configuration

String

Name of the configuration to use.

x

Record Type

String

NetSuite record type to poll (for example, customer).

x

Start Date

String

Calendar-day lower bound for the first poll when no watermark has been stored yet (for example, 2025-01-15). Only the date portion is used. If omitted, the source defaults to today in the configured Start Timezone (or UTC if that is also omitted).

Start Timezone

String

IANA timezone used to compute today when neither a stored watermark nor a Start Date is present (for example, America/Los_Angeles).

UTC

Page Size

Number

Rows fetched per SuiteQL page (1-1000). The source paginates until a short/last page is reached.

100

Output Mime Type

String

The MIME type of the payload that this operation outputs.

Output Encoding

String

The encoding of the payload that this operation outputs.

Primary Node Only

Boolean

Determines whether to execute this source on only the primary node when running Mule instances in a cluster.

true

Config Ref

ConfigurationProvider

Name of the configuration to use to execute this component.

x

Scheduling Strategy

SchedulingStrategy

Configures the scheduler that triggers the polling.

x

Streaming Strategy

Configures how Mule processes streams. Repeatable streams are the default behavior.

Redelivery Policy

Defines a policy for processing the redelivery of the same message.

Read Timeout

Number

Maximum time to wait for a response from NetSuite. Interpreted with Read Timeout Unit. Overrides the config default when set.

Read Timeout Unit

Enumeration, one of:

  • NANOSECONDS

  • MICROSECONDS

  • MILLISECONDS

  • SECONDS

  • MINUTES

  • HOURS

  • DAYS

Time unit for the Read Timeout field.

Reconnection Strategy

Retry strategy in case of connectivity errors.

#### Output

Type

Any

Attributes Type

#### For Configurations - [Config](#Config) ### On New Object `` Polls NetSuite for records of a specified type that were created since the last poll and emits an event for each one found. Filters on `datecreated`. In a cluster, only the primary node polls by default. The watermark ObjectStore is shared so a failover can resume from the persisted boundary day with at-least-once delivery. #### Parameters
NameTypeDescriptionDefault ValueRequired

Configuration

String

Name of the configuration to use.

x

Record Type

String

NetSuite record type to poll (for example, customer).

x

Start Date

String

Calendar-day lower bound for the first poll when no watermark has been stored yet (for example, 2025-01-15). Only the date portion is used. If omitted, the source defaults to today in the configured Start Timezone (or UTC if that is also omitted).

Start Timezone

String

IANA timezone used to compute today when neither a stored watermark nor a Start Date is present (for example, America/Los_Angeles).

UTC

Page Size

Number

Rows fetched per SuiteQL page (1-1000). The source paginates until a short/last page is reached.

100

Output Mime Type

String

The MIME type of the payload that this operation outputs.

Output Encoding

String

The encoding of the payload that this operation outputs.

Primary Node Only

Boolean

Determines whether to execute this source on only the primary node when running Mule instances in a cluster.

true

Config Ref

ConfigurationProvider

Name of the configuration to use to execute this component.

x

Scheduling Strategy

SchedulingStrategy

Configures the scheduler that triggers the polling.

x

Streaming Strategy

Configures how Mule processes streams. Repeatable streams are the default behavior.

Redelivery Policy

Defines a policy for processing the redelivery of the same message.

Read Timeout

Number

Maximum time to wait for a response from NetSuite. Interpreted with Read Timeout Unit. Overrides the config default when set.

Read Timeout Unit

Enumeration, one of:

  • NANOSECONDS

  • MICROSECONDS

  • MILLISECONDS

  • SECONDS

  • MINUTES

  • HOURS

  • DAYS

Time unit for the Read Timeout field.

Reconnection Strategy

Retry strategy in case of connectivity errors.

#### Output

Type

Any

Attributes Type

#### For Configurations - [Config](#Config) ## Types ### Reconnection Configures a reconnection strategy for an operation.
FieldTypeDescriptionDefault ValueRequired

Fails Deployment

Boolean

When the application is deployed, a connectivity test is performed on all connectors. If set to true, deployment fails if the test doesn’t pass after exhausting the associated reconnection strategy.

Reconnection Strategy

Reconnection strategy to use.

### Reconnect Configures a standard reconnection strategy, which specifies how often to reconnect and how many reconnection attempts the connector source or operation can make.
FieldTypeDescriptionDefault ValueRequired

Frequency

Number

How often to attempt to reconnect, in milliseconds.

Blocking

Boolean

If false, the reconnection strategy runs in a separate, non-blocking thread.

Count

Number

How many reconnection attempts the Mule app can make.

### Reconnect Forever Configures a forever reconnection strategy by which the connector source or operation attempts to reconnect at a specified frequency for as long as the Mule app runs.
FieldTypeDescriptionDefault ValueRequired

Frequency

Number

How often to attempt to reconnect, in milliseconds.

Blocking

Boolean

If false, the reconnection strategy runs in a separate, non-blocking thread.

### TLS Configures TLS to provide secure communications for the Mule app.
FieldTypeDescriptionDefault ValueRequired

Enabled Protocols

String

Comma-separated list of protocols enabled for this context.

Enabled Cipher Suites

String

Comma-separated list of cipher suites enabled for this context.

Trust Store

Configures the TLS truststore.

Key Store

Configures the TLS keystore.

Revocation Check

Configures a revocation checking mechanism.

### Truststore Configures the truststore for TLS.
FieldTypeDescriptionDefault ValueRequired

Path

String

Path to the truststore. Mule resolves the path relative to the current classpath and file system.

Password

String

Password used to protect the truststore.

Type

String

Type of store.

Algorithm

String

Algorithm that the truststore uses.

Insecure

Boolean

If true, Mule stops performing certificate validations. Setting this to true can make connections vulnerable to attacks.

### Keystore Configures the keystore for the TLS protocol. The keystore you generate contains a private key and a public certificate.
FieldTypeDescriptionDefault ValueRequired

Path

String

Path to the keystore. Mule resolves the path relative to the current classpath and file system.

Type

String

Type of store.

Alias

String

Alias of the key to use when the keystore contains multiple private keys. By default, Mule uses the first key in the file.

Key Password

String

Password used to protect the private key.

Password

String

Password used to protect the keystore.

Algorithm

String

Algorithm that the keystore uses.

### Standard Revocation Check Configures standard revocation checks for TLS certificates.
FieldTypeDescriptionDefault ValueRequired

Only End Entities

Boolean

Which elements to verify in the certificate chain:

  • true

Verify only the last element in the certificate chain.

  • false

Verify all elements in the certificate chain.

Prefer Crls

Boolean

How to check certificate validity:

  • true

Check the Certification Revocation List (CRL) for certificate validity.

  • false

Use the Online Certificate Status Protocol (OCSP) to check certificate validity.

No Fallback

Boolean

Whether to use the secondary method to check certificate validity:

  • true

Use the method that wasn’t specified in the Prefer Crls field (the secondary method) to check certificate validity.

  • false

Do not use the secondary method to check certificate validity.

Soft Fail

Boolean

What to do if the revocation server can’t be reached or is busy:

  • true

Avoid verification failure.

  • false

Allow the verification to fail.

### Custom OCSP Responder Configures a custom OCSP responder for certification revocation checks.
FieldTypeDescriptionDefault ValueRequired

Url

String

URL of the OCSP responder.

Cert Alias

String

Alias of the signing certificate for the OCSP response. If specified, the alias must be in the truststore.

### CRL File Specifies the location of the certification revocation list (CRL) file.
FieldTypeDescriptionDefault ValueRequired

Path

String

Path to the CRL file.

### Expiration Policy Configures an expiration policy strategy.
FieldTypeDescriptionDefault ValueRequired

Max Idle Time

Number

Configures the maximum amount of time that a dynamic configuration instance can remain idle before Mule considers it eligible for expiration.

Time Unit

Enumeration, one of:

  • NANOSECONDS

  • MICROSECONDS

  • MILLISECONDS

  • SECONDS

  • MINUTES

  • HOURS

  • DAYS

Time unit for the Max Idle Time field.

### NetSuite REST Attributes Provides metadata about a NetSuite REST API response, such as pagination details, HATEOAS links, and the ID of the record that the operation acted on. For Create Record (`POST`), the `Location` header contains the new record’s URL (for example, `/record/v1/customer/123`). The connector parses that value into **Record Id** when present. For collection, SuiteQL, and select-value operations, the pagination fields from the JSON envelope (`hasMore`, `offset`, `totalResults`, and the HATEOAS links map) are copied onto each exploded item so DataWeave can read `attributes.hasMore` and `attributes.links['next']` without re-parsing the payload. On singular-record, empty (`204`), non-paged, or non-JSON responses, **Has More** defaults to `false`, numeric fields are null, and **Links** is an empty map.
FieldTypeDescriptionDefault ValueRequired

Has More

Boolean

Whether more results are available beyond the current page.

Headers

Object

Map of HTTP headers in the message.

Links

Object

Map of HATEOAS links related to the record.

Offset

Number

Offset of the current page of results.

Record Id

String

Internal ID of the record that the operation acted on.

Status Code

Number

HTTP status code of the response.

Total Results

Number

Total number of results available across all pages.

### Repeatable In Memory Stream Configures the in-memory streaming strategy by which the request fails if the data exceeds the MAX buffer size. Always run performance tests to find the optimal buffer size for your specific use case.
FieldTypeDescriptionDefault ValueRequired

Initial Buffer Size

Number

Initial amount of memory to allocate to the data stream. If the streamed data exceeds this value, the buffer expands by Buffer Size Increment, with an upper limit of Max Buffer Size value.

Buffer Size Increment

Number

This is by how much the buffer size expands if it exceeds its initial size. Setting a value of zero or lower means that the buffer should not expand, meaning that a STREAM_MAXIMUM_SIZE_EXCEEDED error is raised when the buffer gets full.

Max Buffer Size

Number

Maximum size of the buffer. If the buffer size exceeds this value, Mule raises a STREAM_MAXIMUM_SIZE_EXCEEDED error. A value of less than or equal to 0 means no limit.

Buffer Unit

Enumeration, one of:

  • BYTE

  • KB

  • MB

  • GB

Unit for the Initial Buffer Size, Buffer Size Increment, and Max Buffer Size fields.

### Repeatable File Store Stream Configures the repeatable file-store streaming strategy by which Mule keeps a portion of the stream content in memory. If the stream content is larger than the configured buffer size, Mule backs up the buffer’s content to disk and then clears the memory.
FieldTypeDescriptionDefault ValueRequired

In Memory Size

Number

Maximum amount of memory that the stream can use for data. If the amount of memory exceeds this value, Mule buffers the content to disk. To optimize performance:

  • Configure a larger buffer size to avoid the number of times Mule needs to write the buffer on disk. This increases performance, but it also limits the number of concurrent requests your application can process, because it requires additional memory.

  • Configure a smaller buffer size to decrease memory load at the expense of response time.

Buffer Unit

Enumeration, one of:

  • BYTE

  • KB

  • MB

  • GB

Unit for the In Memory Size field.

### Redelivery Policy Configures the redelivery policy for executing requests that generate errors. You can add a redelivery policy to any source in a flow.
FieldTypeDescriptionDefault ValueRequired

Max Redelivery Count

Number

Maximum number of times that a redelivered request can be processed unsuccessfully before returning a REDELIVERY_EXHAUSTED error.

Message Digest Algorithm

String

Secure hashing algorithm to use if the Use Secure Hash field is true. If the payload of the message is a Java object, Mule ignores this value and returns the value that the payload’s hashCode() returned. If not set, the default is SHA-256.

Message Identifier

One or more expressions that determine if a message was redelivered. This property can be set only if the Use Secure Hash field is false.

Object Store

ObjectStore

Configures the object store that stores the redelivery counter for each message.

### Redelivery Policy Message Identifier Configures how to identify a redelivered message and how to find out when the message was redelivered.
FieldTypeDescriptionDefault ValueRequired

Use Secure Hash

Boolean

If true, Mule uses a secure hash algorithm to identify a redelivered message.

Id Expression

String

One or more expressions that determine when a message was redelivered. You can set this property only if the Use Secure Hash field is false.

### Error Mapping Maps an error type thrown by the operation to a different Mule error type that your app can catch.
FieldTypeDescriptionDefault ValueRequired

Source

Enumeration, one of:

  • ANY

  • REDELIVERY_EXHAUSTED

  • TRANSFORMATION

  • EXPRESSION

  • SECURITY

  • CLIENT_SECURITY

  • SERVER_SECURITY

  • ROUTING

  • CONNECTIVITY

  • RETRY_EXHAUSTED

  • TIMEOUT

Source of the error.

Target

String

The Mule error type to map to.

x

### Repeatable In Memory Iterable Configures the in-memory iterable strategy by which Mule keeps a configured number of instances in memory to provide random access to the stream. Always run performance tests to find the optimal buffer size for your specific use case.
FieldTypeDescriptionDefault ValueRequired

Initial Buffer Size

Number

The amount of instances that is initially allowed to be kept in memory to consume the stream and provide random access to it. If the stream contains more data than can fit into this buffer, then the buffer expands according to the Buffer Size Increment attribute, with an upper limit of Max Buffer Size. Default value is 100 instances.

Buffer Size Increment

Number

This is by how much the buffer size expands if it exceeds its initial size. Setting a value of zero or lower means that the buffer should not expand, meaning that a STREAM_MAXIMUM_SIZE_EXCEEDED error is raised when the buffer gets full. Default value is 100 instances.

Max Buffer Size

Number

Maximum size of the buffer. If the buffer size exceeds this value, Mule raises a STREAM_MAXIMUM_SIZE_EXCEEDED error. A value of less than or equal to 0 means no limit.

### Repeatable File Store Iterable Configures the repeatable file-store iterable strategy by which Mule keeps a configured number of instances in memory. If the number of instances exceeds the configured limit, Mule buffers the remaining instances to disk.
FieldTypeDescriptionDefault ValueRequired

In Memory Objects

Number

The maximum amount of instances to keep in memory. If more than that is required, content on the disk is buffered.

Buffer Unit

Enumeration, one of:

  • BYTE

  • KB

  • MB

  • GB

Unit for the In Memory Objects field.

### Randomized Exponential Backoff Configures a retry strategy that uses randomized exponential backoff (full jitter) for HTTP 429 (Too Many Requests) and 503 (Service Unavailable) responses. Only Max Retries and Max Retry Delay Timeout (with its unit) are user-configurable. Retry-After handling and related defaults are applied automatically.
FieldTypeDescriptionDefault ValueRequired

Max Retries

Number

Maximum number of retry attempts for HTTP 429 and 503 responses. Values above 200 are clamped to 200; negative values are treated as 0.

15

Max Retry Delay Timeout

Number

Maximum delay between retries. Interpreted with Max Retry Delay Timeout Unit.

64

Max Retry Delay Timeout Unit

Enumeration, one of:

  • NANOSECONDS

  • MICROSECONDS

  • MILLISECONDS

  • SECONDS

  • MINUTES

  • HOURS

  • DAYS

Time unit for the Max Retry Delay Timeout field.

SECONDS

--- product: NetSuite REST Connector version: 1.0 is-latest-version: true --- # NetSuite REST Connector 1.0 XML and Maven Support > For the full documentation index, see: https://docs.mulesoft.com/llms.txt Although you can manually code a Mule app in XML, it is more efficient to use Anypoint Code Builder or Studio: - If you manually code a Mule runtime engine (Mule) app in XML, either from the Anypoint Code Builder or Studio XML editor, or from a text editor, you can access the connector from your app by adding reference statements to both your XML Mule flow and the Apache Maven `pom.xml` file. - If you add the connector in Anypoint Code Builder or Studio, the XML is automatically populated the code with the connector’s namespace and schema location and it also adds a dependency to the `pom.xml` file. ## Add a Namespace for the Connector Paste the following code inside the `mule` tag of the header of your configuration XML: ```xml http://www.mulesoft.org/schema/mule/netsuite-rest http://www.mulesoft.org/schema/mule/netsuite-rest/current/mule-netsuite-rest.xsd ``` This example shows how the namespace statements are placed in the `` XML block: ```xml ``` ## Add a POM File Dependency The Apache Maven `pom.xml` file generated by Anypoint Studio contains dependencies for a Mule app. If you code a Mule app manually, include this XML snippet in your `pom.xml` file to enable access to this connector: ```xml com.mulesoft.connectors mule4-netsuite-rest-connector x.x.x mule-plugin ``` Replace `x.x.x` with the version that corresponds to the connector you are using. To obtain the most up-to-date `pom.xml` file information: 1. Go to [Anypoint Exchange](https://www.mulesoft.com/exchange/). 2. In Exchange, click **Login** and supply your Anypoint Platform username and password. 3. In Exchange, search for `netsuite rest`. 4. Select the connector. 5. Click **Dependency Snippets** near the upper right of the screen. ## See Also - [Introduction to Anypoint Connectors](https://docs.mulesoft.com/connectors/introduction/introduction-to-anypoint-connectors) - [Salesforce Help](https://help.salesforce.com) --- product: NetSuite REST Connector version: 1.0 is-latest-version: true --- # Using Anypoint Code Builder to Configure NetSuite REST Connector 1.0 > For the full documentation index, see: https://docs.mulesoft.com/llms.txt Cloud IDE (Beta) is scheduled for retirement on August 31, 2026. August 30, 2026 is the last day you can access Cloud IDE (Beta). Download your projects to work from Desktop IDE. Learn more in [Migrate a Project from Cloud IDE to Desktop IDE](https://docs.mulesoft.com/anypoint-code-builder/int-import-mule-project#migrate-cloud-to-desktop). To use Anypoint Code Builder to configure a connector or module, create a basic integration project in Anypoint Code Builder, add connectors and other components to your Mule application to process your business logic, and configure the attributes. ## Before You Begin Before creating an integration project, you must: - [Set up and access the Anypoint Code Builder web or desktop IDE](https://docs.mulesoft.com/anypoint-code-builder/start-acb) - Have credentials to access the connector’s API - Ensure that the Visual Studio Code Extension Pack for Java is installed. To use this connector, you must be familiar with: - The connector’s API - Anypoint Connectors - Mule runtime engine (Mule) ## Create a New Integration Project To create a new integration project: 1. In the activity bar of the IDE, click the ![Anypoint Code Builder icon](/mulesoft/current/en-us/connectors/_images/acb-icon-ms-logo.png) (**Anypoint Code Builder**) icon. 2. From **Quick Actions**, click **Develop an Integration**: ![Develop an Integration link highlighted in the Getting started section](/mulesoft/current/en-us/anypoint-code-builder/_images/develop-integration-option-mat.png) 3. Complete the following in the **Develop an Integration** form:
AttributeValue

Project Name

Unique name for your project.

This name is used as the title and name of the integration project file. For example, if the project name is "Salesforce Integration," the project file name is salesforce-integration.

Project Location

Your home directory or another directory you create. Click Browse to select a different directory for the integration project.

Don’t create the project within another project directory.

4. Select the type of project to create by selecting either the **Empty Project** or **Template or Example** card. 5. Select the **Mule runtime** and **Java Version** for your app. 6. Click **Create Project**. ## Add the Connector to Your Integration Project Anypoint Connectors provide operations for retrieving, modifying, and sending data to and from systems. In addition to the [built-in connectors](https://docs.mulesoft.com/anypoint-code-builder/acb-reference#builtin-connectors) that Anypoint Code Builder provides, you can download many other connectors from Anypoint Exchange. To import a connector from Exchange and add it to your configuration: 1. In the Explorer view, open the configuration XML file for your project, such as `my-project-name.xml`. 2. Click the ![Show Mule graphical mode icon](/mulesoft/current/en-us/anypoint-code-builder/_images/icon-tree-view.png) (**Show Mule graphical mode**) icon in the activity bar to open the canvas UI if it doesn’t open automatically. 3. Add the connector the same way you added other components from the canvas UI: 1. In the canvas UI, click the ![Add component icon](/mulesoft/current/en-us/anypoint-code-builder/_images/icon-plus.png) (**Add component**) icon. 2. In the **Add Component** panel, click **Connectors**. 3. Click the connector name and then click the operation to add, such as **Publish**: ![Add Publish operation from Anypoint MQ Connector](/mulesoft/current/en-us/anypoint-code-builder/_images/int-add-connector-operation.png) If the connector is not available locally, click the ![Search in Exchange icon](/mulesoft/current/en-us/anypoint-code-builder/_images/icon-search-exchange.png) (**Search in Exchange**) toggle: ![Search in Exchange toggle](/mulesoft/current/en-us/anypoint-code-builder/_images/int-connector-search-exchange.png)
1Search locally
2Search in Exchange
4. Select the connector to add to your project. 5. Select the operation from the **Add Component** panel. Adding a connector to an integration project does not make that connector available to other projects in your Anypoint Code Builder workspace. ## Configure the Source For the Flow A trigger (source) starts the flow when specified conditions are met. If a connector has its own associated sources, you can use a connector-specific trigger to initiate the flow. Each connector trigger has a unique configuration. You can configure the following sources for this connector: - **HTTP > Listener** Initiates a flow each time it receives a request on the configured host and port - **Scheduler** Initiates a flow when a time-based condition is met For example, to configure an HTTP Listener trigger, follow these steps: 1. Click the **Listener** component on the canvas UI. 2. (Optional) Click the edit icon to change the name of the **Listener** component. 3. (Optional) If you created a configuration file for the connector, select it. 4. In the **General** tab, in the **Path** field, enter the relative path for the path set in the HTTP configuration element. See [Configure Paths](https://docs.mulesoft.com/http-connector/latest/http-listener-ref#configure-paths). 5. Select the **Advanced** tab to configure the following attributes:
AttributeDescriptionRequired

Allowed methods

To allow all HTTP methods (default), do not define this attribute. To restrict certain methods, specify all allowed HTTP methods, for example, GET, POST, as a comma-separated list.

No

Response streaming mode

Whether to use streaming when the response is sent.

No

Output MIME type

MIME type of the payload that this component outputs.

No

Parameters

Appends a key-value pair for a reader property to the value of the Output MIME attribute. Multiple key-value pairs are allowed.

No

Output encoding

Encoding of the payload that this component outputs.

No

Streaming Strategy

Configures the way data streams are consumed in Mule apps.

No

Primary node only

Select this option to execute the Listener trigger on the primary node only when running in a cluster.

No

Redelivery policy

Configures the redelivery policy for executing requests that generate errors. You can add a redelivery policy to any source in a flow.

No

Reconnection strategy

When an operation in a Mule application fails to connect to an external server, the default behavior is for the operation to fail immediately and return a connectivity error. You can modify the default behavior by configuring the reconnection strategy for the operation.

No

Response

See HTTP Response Attributes.

No

Error Response

HTTP error response returns a status code for the error.

No

Body

Body of the error message.

No

Headers

Headers to include in the error message.

No

Status code

Status code of the error response, for example, 500.

No

Reason phrase

Reason for the error, for example, Gateway Timeout or Internal Server Error.

No

## Add Components to Your Project Add components to your integration project to build a flow: 1. In the **Explorer** view, open the XML file for your project, such as `my-project-name.xml`. 2. Select **Build a Flow** from the start card to create an empty flow: ![Anypoint Code Builder canvas with starting cards with the options to start from scratch, build a flow, or build a subflow](/mulesoft/current/en-us/connectors/_images/acb-build-flow.png) 3. Change the name of the flow: 1. Click **Flow**. 2. Click the edit icon. ![Arrow pointing to the flow name edit pencil icon](/mulesoft/current/en-us/connectors/_images/acb-change-flow-name.png) 3. Enter the flow name, and click the checkmark. 4. In the canvas UI, click the ![Add component icon](/mulesoft/current/en-us/anypoint-code-builder/_images/icon-plus.png) (**Add component**) icon. 5. In the **Add Component** panel, search for and select your component from the results. The following example shows the **Listener** component from the **HTTP** search results: ![Listener component highlighted in the Add Component section](/mulesoft/current/en-us/anypoint-code-builder/_images/main-tutorial-add-first-listener.png) The configuration XML file now includes the XML for the HTTP Listener into the `` element, for example: ```XML ``` ## Configure the Component Attributes After you add components to your integration project, configure the attributes in the component UI, or configure the attributes directly in the XML code editor. Connector XML tags start with a namespace followed by an operation, following the syntax `namespace:operation`, such as `` for a **Select** operation in Anypoint Connector for Database (Database Connector). You can use autocomplete from an expression (**fx**) field for a component to select DataWeave functions from the Core module and other values accepted in this field. ## Create a New Configuration XML File Anypoint Code Builder creates the initial Mule configuration XML file in `src/main/mule` within the Mule project. This file contains global configurations and flow structures. You can create additional configuration files, for example, to store global configurations. To create a new XML configuration file: 1. In the Explorer view, right-click the **mule** folder (`src/main/mule`) and select **New File**. Alternatively, use the menu. Show me how Select the `mule` folder, and then: - In the desktop IDE, select **File** > **New Mule Configuration File**. - In the cloud IDE, click the ![](/mulesoft/current/en-us/anypoint-code-builder/_images/icon-menu.png) (menu) icon, and select **File** > **New File**. 2. Enter a name for the new file with the `.xml` extension. 3. In the Editor view for the new file, press Ctrl+Space to display available options. 4. Select **Empty mule configuration**: ![New Mule configuration option in auto-correct](/mulesoft/current/en-us/anypoint-code-builder/_images/int-new-mule-config.png) This command adds the following code to the file: ```xml ``` ## See Also - [Anypoint Code Builder Overview](https://docs.mulesoft.com/anypoint-code-builder/) - [Creating Integrations](https://docs.mulesoft.com/anypoint-code-builder/int-create-integrations) - [Using Anypoint Code Builder to Configure a Connector](https://docs.mulesoft.com/connectors/introduction/intro-config-use-acb) - [Anypoint Code Builder Components and Commands Reference](https://docs.mulesoft.com/anypoint-code-builder/acb-reference) - [Defining and Securing Properties for a Mule Application](https://docs.mulesoft.com/anypoint-code-builder/int-create-secure-configs) - [Triggering Flows in Your Development Environment](https://docs.mulesoft.com/anypoint-code-builder/int-trigger-flows) - [Configuring Components](https://docs.mulesoft.com/anypoint-code-builder/int-configure-components) - [Debugging Mule Applications](https://docs.mulesoft.com/anypoint-code-builder/int-debug-mule-apps) - [Salesforce Help](https://help.salesforce.com) --- product: NetSuite REST Connector version: 1.0 is-latest-version: true --- # Using Anypoint Studio to Configure NetSuite REST Connector 1.0 > For the full documentation index, see: https://docs.mulesoft.com/llms.txt Anypoint Studio (Studio) editors help you design and update your Mule applications, properties, and configuration files. To add and configure a connector in Studio: 1. [Create a Mule project](#create-mule-project). 2. [Add the connector to your Mule project](#add-connector-to-project). 3. [Configure a source for the connector’s flow](#configure-source). 4. [Add a connector operation to the flow](#add-connector-operation). 5. [Configure a global element for the connector](#configure-global-element). 6. [Configure the other connector fields](#configure-other-fields). When you run the connector, you can view the app log to check for problems in real time, as described in [View the App Log](#view-app-log). If you are new to configuring connectors in Studio, see [Using Anypoint Studio to Configure a Connector](https://docs.mulesoft.com/connectors/introduction/intro-config-use-studio). If, after reading this topic, you need additional information about the connector fields, see the [NetSuite REST Connector Reference](https://docs.mulesoft.com/netsuite-rest-connector/latest/netsuite-rest-connector-reference). ## Create a Mule Project In Studio, create a new Mule project in which to add and configure Anypoint Connector for NetSuite REST (NetSuite REST Connector): 1. In Studio, select **File > New > Mule Project**. 2. Enter a name for your Mule project and click **Finish**. ## Add the Connector to Your Mule Project Add NetSuite REST Connector to your Mule project to automatically populate the XML code with the connector’s namespace and schema location and add the required dependencies to the project’s `pom.xml` file: 1. In **Mule Palette**, click **(X) Search in Exchange**. 2. In **Add Dependencies to Project**, type `netsuite rest` in the search field. 3. Click **NetSuite REST Connector** in **Available modules**. 4. Click **Add**. 5. Click **Finish**. Adding a connector to a Mule project in Studio doesn’t make that connector available to other projects in your Studio workspace. ## Configure a Source A source initiates a flow when a specified condition is met. You can configure one of these sources to use with NetSuite REST Connector: - **On New Object** Polls NetSuite for records of a specified type that were created since the last poll and emits an event for each one found. - **On Modified Object** Polls NetSuite for records of a specified type that were created or updated since the last poll and emits an event for each one found. - **On Deleted Object** Polls NetSuite for deleted-record metadata and emits an event for each deletion found. - **HTTP Listener** Initiates a flow each time it receives a request on the configured host and port. - **Scheduler** Initiates a flow when a time-based condition is met. For example, to configure an **HTTP > Listener** source, follow these steps: 1. In **Mule Palette**, select **HTTP > Listener**. 2. Drag **Listener** to the Studio canvas. 3. On the **Listener** configuration screen, optionally change the value of the **Display Name** field. 4. Specify a value for the **Path** field. 5. Click the plus sign (**+**) next to the **Connector configuration** field to configure a global element that can be used by all instances of the **HTTP > Listener** source in the app. 6. On the **General** tab, specify the connection information for the connector. 7. On the **TLS** tab, optionally specify the TLS information for the connector. 8. On the **Advanced** tab, optionally specify reconnection information, including a reconnection strategy. 9. Click **Test Connection** to confirm that Mule can connect with the specified server. 10. Click **OK**. ## Add a Connector Operation to the Flow When you add a connector operation to your flow, you are specifying an action for that connector to perform. To add an operation for NetSuite REST Connector: 1. In **Mule Palette**, select **NetSuite REST Connector** and then select the operation to add. 2. Drag the operation onto the Studio canvas, next to the source. ## Configure a Global Element for the Connector When you configure a connector, configure a global element that all instances of that connector in the app can use. Configuring a global element requires you to provide the connection settings that the connector requires to access NetSuite. To configure the global element for NetSuite REST Connector: 1. Select the operation in the Studio canvas. 2. In the **General** configuration screen for the operation, click the **Add** icon to access the global element configuration fields. 3. In the **General** tab, in **Connection**, configure the [OAuth 2.0 Client Credentials (JWT Bearer)](#oauth-client-credentials) connection. You can reference a configuration file that contains ANT-style property placeholders (recommended), or you can enter your connection settings in the global configuration properties. For information about the benefits of using property placeholders and how to configure them, refer to [Anypoint Connector Configuration](https://docs.mulesoft.com/connectors/introduction/intro-connector-configuration-overview). 4. In the **Advanced** tab, optionally specify reconnection information, including a reconnection strategy. 5. Click **Test Connection** to confirm that Mule can connect with NetSuite. 6. Click **OK**. ### OAuth 2.0 Client Credentials (JWT Bearer) Use the OAuth 2.0 client credentials connection to authenticate with a JWT bearer assertion signed by a private key that is registered against a certificate in NetSuite. Enter this information in the **General** tab of the **Global Element Properties** screen to configure the connection:
FieldUser Action

Name

Enter the configuration name.

Account ID

Enter the NetSuite account ID (for example, TSTDRV1234567 or 1234567_SB1).

Client ID

Enter the OAuth 2.0 client ID from the integration record in NetSuite.

Certificate ID

Enter the certificate ID (kid) registered in NetSuite for JWT signing.

Private Key (PEM)

Enter the PEM-encoded private key that matches the registered certificate. Supply this value through a secure property.

Signature Algorithm

Select the JWT signing algorithm: ES512 (recommended), ES256, ES384, PS256, PS384, or PS512. The algorithm must match the key type of the registered certificate.

Token Object Store

Optionally specify an object store for OAuth token persistence across cluster nodes. When unset, a persistent, config-name-keyed store is created automatically.

In the **Advanced** tab, you can optionally configure timeouts, maximum connections, a proxy, a concurrency management strategy for HTTP 429 and 503 responses, and reconnection behavior. ## Configure Additional Connector Fields After you configure a global element for the connector, configure the other required fields. The required fields vary depending on which connector operation you use. For detailed configuration information for each operation type, see [NetSuite REST Connector - Additional Configuration Information](https://docs.mulesoft.com/netsuite-rest-connector/latest/netsuite-rest-connector-additional-config). ## View the App Log To check for problems, you can view the app log as follows: - If you’re running the app from Anypoint Platform, the app log output is visible on the Anypoint Studio console window. - If you’re running the app using Mule from the command line, the app log output is visible in your operating system console. Unless the log file path is customized in the app’s log file (`log4j2.xml`), you can also view the app log in the default location `MULE_HOME/logs/.log`. You can configure the location of the log path in the app log file `log4j2.xml`. ## See Also - [Introduction to Anypoint Connectors](https://docs.mulesoft.com/connectors/introduction/introduction-to-anypoint-connectors) - [Using Studio to Configure a Connector](https://docs.mulesoft.com/connectors/introduction/intro-config-use-studio) - [NetSuite REST Connector Reference](https://docs.mulesoft.com/netsuite-rest-connector/latest/netsuite-rest-connector-reference) - [Salesforce Help](https://help.salesforce.com)