Upgrading and Migrating to NetSuite Connector 11.x | MuleSoft Documentation
# Upgrading and Migrating to NetSuite Connector 11.x
Upgrade NetSuite Connector to version 11.x to use the new features.
## Supported Upgrade Paths
From Version | To Version  
---|---  
## Changes in This Release
In NetSuite Connector 10.x, the connector resolved metadata by receiving Java objects as input, and converting those objects internally to XML, so that NetSuite could understand it. In NetSuite Connector 11.x, XML metadata is resolved directly without the need for conversion.
Because of this modification, the input and output metadata for connector operations has changed and is now equivalent to the request and response bodies of the corresponding SOAP API operations. You can use DataSense explorer in Studio to drag and drop the metadata fields, which generates their corresponding namespaces and tags automatically.
Version 11.x also eliminates the REST-based operations.
## Changes to Sources
Removed the **Page Size** field for the sources **On Deleted Object** , **On Modified Object** , and **On New Object**. Each source now returns one record in the output metadata.
In NetSuite Connector 11.10, the **On Deleted Object** source supports page size.   
---  
## Changes to Operations
### Advanced Operations
Changes to advanced operations include the following:
Operation | Changes  
---|---  
Change Email | Returns a NetsuiteSoapAttributes object in the output metadata  
Change Password | Returns a NetsuiteSoapAttributes object in the output metadata  
Get Account Governance Info | Returns a GetAccountGovernanceInfoResult object in the output metadata  
Get Data Center URLs | Returns a NetsuiteSoapAttributes object in the output metadata.  
Get Integration Governance Info | Returns a GetIntegrationGovernanceInfoResult object in the output metadata  
Get Server Time | Returns a NetsuiteSoapAttributes object in the output metadata  
### Async Operations
Each operation now returns a NetsuiteSoapAttributes object in the output metadata. Other changes to the async operations include the following:
Operation | Changes  
---|---  
Async Add List | Removed the Record Type and Records fields. You now specify the associated values in the Message field of the input metadata.  
Async Delete List | Removed the Deleted Base Ref Types field. You now specify the associated values in the Message field of the input metadata.  
Async Delete List Records | Removed this operation. For equivalent functionality, use the Async Delete List operation and specify the recordRef or baseRefType in the Message field of the input metadata.  
Async Get List | Removed the Retrieved Base Ref Types field. You now specify the associated values in the Message field of the input metadata.  
Async Get List Records | Removed this operation. For equivalent functionality, use the Get List operation and specify `FILE` as the record type in the Message field of the input metadata.  
Async Initialize List | Removed the Initialize Records field. You now specify the associated values in the Message field of the input metadata.  
Async Search | Removed the Search Record and Criteria fields. You now specify the associated values in the Message field of the input metadata.  
Async Update List | Renamed Record Type to Type. Removed Records attributes. You now specify the associated values in the Message field of the input metadata.  
Async Upsert List | Renamed Record Type to Type. Removed Records attributes. You now specify the associated values in the Message field of the input metadata.  
Check Async Status | No changes.  
Get Async Result | No changes.  
### Invitee Operations
Each invitee operation now returns a NetsuiteSoapAttributes object in the output metadata. Other changes to the invitee operations include the following:
Operation | Changes  
---|---  
Update Invitee Status | Removed the Event ID and Status fields. You now specify these values in the Message field of the input metadata.  
Update Invitee Status List | Removed the Record Type and Invitee Statuses fields. You now specify these values in the Message field of the input metadata.  
### Item Operations
Each item operation now returns a NetSuiteSoapAttributes object in the XML metadata. Other changes to the invitee operations include the following:
Operation | Changes  
---|---  
Get Budget Exchange Rates | New operation that returns a list of budget exchange rates for a specified period.  
Get Customization Id | New operation that returns the IDs of available customizations for a given customization type.  
Get Currency Rate | Removed the Rate Filter field. You now specify this value in the Message field of the input metadata.  
Get Item Availability | Removed the Record and If Modified Since fields. You now specify these values in the Message field of the input metadata.  
Get Posting Transaction Summary | 
  * Removed the Fields, Filters, and Page Index fields. You now specify these values in the Message field of the input metadata.
  * Returns a postingTransactionSummaryList object in the payload of the output metadata.

  
### Record Operations
Changes to record operations include the following:
Operation | Changes  
---|---  
Add File | Removed this operation. For equivalent functionality, use the Add operation and specify `FILE` as the record type in the Message field of the input metadata.  
Add List | 
  * Removed the Record Maps field. You now specify this value in the Message field of the input metadata.
  * Returns an addListResponse object in the palyload of the output metadata.

  
Add Record | 
  * Renamed to Add.
  * Removed the Attributes field. You now specify the associated values in the Message field of the input metadata.
  * Returns a NetsuiteSoapAttributes object in the output metadata.

  
Add Record Objects |  Removed this operation. For equivalent functionality, use the Add List operation.  
Attach Record | 
  * Renamed to Attach.
  * Removed the Source, Destination, and Contact fields. You now specify the associated values in the Message field of the input metatada.
  * Returns a NetsuiteSoapAttributes object in the output metadata with an attached object as the payload..

  
  * Removed the Base Ref field. You now specify the associated values in the Message field of the input metatada.
  * Returns a deleteResponse object in the payload of the output metadata.

  
Delete List | 
  * Removed the Deleted Base Ref Types field. You now specify the associated values in the Message field of the input metatada.
  * Returns a NetsuiteSoapAttributes object in the output metadata.

  
Delete Record | Removed this operation. For equivalent functionality, use the Delete operation.  
Delete Records List | Removed this operation. For equivalent functionality, use the Delete List operation.  
Detach Record | 
  * Renamed to Detach.
  * Removed the Source and Destination fields. You now specify the associated values in the Message field of the input metatada.
  * Returns a NetsuiteSoapAttributes object in the output metdata.

  
  * Removed the Base Ref field. You now specify the associated values in the Message field of the input metadata.
  * Returns the requested record in the payload of the output metadata. The playload fields differ based on the specified record type.

  
Get Custom Record | Removed this operation. For equivalent functionality, use the Get operation.  
Get Deleted Records | 
  * Removed the Record Type, Page Index, and Deleted Date fields. You now specify the associated values in the Message field of the input metatada.
  * Returns a NetsuiteSoapAttributes object in the output metadata.

  
Get List | 
  * Removed the References field. You now specify the associated values in the Message field of the input metatada.
  * Returns a getListResponse object in the payload of the output metadata.

  
Get Record | Removed this operation. For equivalent functionality, use the Get operation.  
Get Records | Returns a NetsuiteSoapAttributes object in the output metadata  
Get Select Value | Returns a getSelectValueResponse object in the payload of the output metadata.  
Get Saved Search | 
  * Renamed the Record Type field to `Search Type`.
  * Returns a NetsuiteSoapAttributes object in the output metadata.

  
Initialize | 
  * Removed the Record to Initialize field. You now specify the associated values in the Message field of the input metatada.
  * Returns a NetsuiteSoapAttributes object in the output metadata.

  
Initialize List | 
  * Removed the Initialize Records field. You now specify the associated values in the Message field of the input metatada.
  * Returns a NetsuiteSoapAttributes object in the output metadata.

  
  * Removed the Key and Search Record fields. You now specify the associated values in the Message field of the input metatada.
  * Returns a recordList or searchRowList object in the payload of the output metadata, depending on whether records or rows are searched.

  
Update List | 
  * Removed the Record Maps field. You now specify the associated values in the Message field of the input metatada.
  * Returns a NetsuiteSoapAttributes object in the output metadata.

  
Update Record | 
  * Removed the Attributes field. You now specify the associated values in the Message field of the input metatada.
  * Returns a NetsuiteSoapAttributes object in the output metadata.

  
Update Records List | Removed this operation. For equivalent functionality, use the Update List operation.  
Upsert List | 
  * Removed the Record Maps field. You now specify the associated values in the Message field of the input metatada.
  * Returns a NetsuiteSoapAttributes object in the output metadata.

  
Upsert Record a | 
  * Renamed the operation to Upsert and removed the Attributes field. You now specify the associated values in the Message field of the input metatada.
  * Returns a NetsuiteSoapAttributes object in the output metadata.
* Removed the Key and Search Record fields. You now specify the associated values in the Message field of the input metatada.
  * Returns a recordList or searchRowList object in the payload of the output metadata, depending on whether records or rows are searched.

  
Update List | 
  * Removed the Record Maps field. You now specify the associated values in the Message field of the input metatada.
  * Returns a NetsuiteSoapAttributes object in the output metadata.

  
Update Record | 
  * Removed the Attributes field. You now specify the associated values in the Message field of the input metatada.
  * Returns a NetsuiteSoapAttributes object in the output metadata.

  
Update Records List | Removed this operation. For equivalent functionality, use the Update List operation.  
Upsert List | 
  * Removed the Record Maps field. You now specify the associated values in the Message field of the input metatada.
  * Returns a NetsuiteSoapAttributes object in the output metadata.

  
Upsert Record a | 
  * Renamed the operation to Upsert and removed the Attributes field. You now specify the associated values in the Message field of the input metatada.
  * Returns a NetsuiteSoapAttributes object in the output metadata.

  
## Upgrade Steps
If you are upgrading from an earlier version of the connector, you can click the `Updates Available` pop-up Message in the bottom right corner of Anypoint Studio and follow the prompts.
You can also follow these steps to perform the upgrade:
  1. In Anypoint Studio, create a Mule project.
  2. In **Mule Palette** , click **Search in Exchange**.
  3. In **Add Dependencies to Project** , enter `netsuite` in the search field.
  4. In **Available modules** , select **NetSuite** and click **Add**. Studio upgrades the connector automatically.
  5. Click **Finish**.
  6. In the `pom.xml` file for the Mule project, verify that the NetSuite Connector dependency version is `11.0.0`.


## Post Upgrade Tasks
  * Ensure that your configurations use either **Request Based** or **Token** authentication.
  * Verify that your error handling is updated to work with the minor changes in error codes in this version of the connector.
  * Refer to Changed Operations and Changed Sources for updated operations and sources. If your integration uses any of the affected operations and sources, make the necessary changes to comply with the new interfaces.
  * Because the package of the exposed classes was changed to `com.mulesoft.connector.netsuite.extension.api`, you must update all DataWeave mappings that create objects for operation inputs. You must also update mappings that transform object outputs.


## Verify the Upgrade
After you install the latest version of the connector, verify the upgrade:
  1. In Studio, verify that there are no errors in the **Problems** or **Console** views.
  2. Verify that there are no problems in the project `pom.xml` file.
  3. Test the connection to verify that the operations work.


## Revert the Upgrade
If you must revert to your previous version of NetSuite Connector, change the `mule-netsuite-connector` dependency version `10.0.0` in the project’s `pom.xml` to the previous version. Additionally, revert any changes made in the operations to their previous state.
## See Also
MuleSoft Help Center