Suitelet Script Deployment Page
Before a Suitelet script can be executed, you must create at least one deployment record for the script.
The deployment record for a Suitelet script is similar to that of other script types. However, a Suitelet script deployment contains some additional fields. This topic describes all of the available fields.
You can access a Suitelet script deployment record in the following ways:
-
To open an existing deployment record for editing, go to Customization > Scripting > Script Deployments. Locate the appropriate record, and click the corresponding Edit link.
-
To start creating a new deployment record, open the appropriate script record in view mode, and click the Deploy Script button. For help creating a script record, see Script Record Creation.
Suitelet Script Deployment Page Body Fields
The following table summarizes the body fields available on the Suitelet script deployment record. Note that some fields are available only when you edit or view an existing deployment record.
Field |
Description |
Script |
A link to the script record associated with the deployment. This value cannot be changed, even on a new deployment record. If you begin the process of creating a deployment and realize that you selected the wrong script record, you must start the process over. |
Title |
The user-defined name for the deployment. |
ID |
A unique identifier for the deployment. On a new record, you can customize this identifier by entering a value in the ID field. You should customize the ID if you plan to bundle the deployment for installation into another account, because using custom IDs helps avoid naming conflicts. IDs must be lowercase and cannot use spaces. You can use an underscore as a delineator. If you do not enter a value, the system automatically generates one. In both cases, the system automatically adds the prefix Although not preferred, you can change the ID on an existing deployment by clicking the Change ID button. |
Deployed |
A configuration option that indicates whether the deployment is active. This box must be checked if you want the script to execute. |
Status |
The status can be set to Testing or Released.
See Errors Related to the Available Without Login URL to learn more about the relevance of the Released status when deploying internally and externally available Suitelets. |
Event Type |
Use the Event Type list to specify a script execution context at the time of script deployment. After an event type is specified, the deployed script executes only on that event, regardless of the event types specified in the script file.
Important:
Event types specified in the UI take precedence over the types specified in the script file. For example, if the create event type is specified in the script, selecting delete from the Event Type list restricts the script from running on any event other than delete. If the Event Type field is left blank, your script will execute only on the event type(s) specified in the script file. |
Log Level |
A value that determines what type of log messages are displayed on the Execution Log of both the deployment record and associated script record. The available levels are:
|
Execute As Role |
Indicates the role used to run the script. |
Available Without Login |
Indicates if users without an active NetSuite session can access the Suitelet. See Setting Available Without Login. |
Setting Available Without Login
When you check the Available Without Login box and save the script deployment record, an External URL appears on the Script Deployment page. Use this URL for Suitelets you want to make available to users who do not have an active NetSuite session.
Only a subset of the SuiteScript API is supported in externally available Suitelets . Note that if you want to use all available SuiteScript APIs in a Suitelet, your Suitelet will require a valid NetSuite session. A valid session means that users have authenticated to NetSuite by providing their email address and password.
The following are a few uses cases that address when you might want to make a Suitelet externally available:
-
Hosting one-off online forms, such as capturing partner conference registrations.
-
Inbound partner communication, such as listening for payment notification responses from PayPal or Google checkout; or for generating the unsubscribe from email campaigns page, which requires access to account information but should not require a login or hosted website.
-
For third party integrations in which the Suitelet lives in the third-party Web site but needs to communicate to NetSuite using POST requests.
Suitelets are not intended for use in systems integration use cases.
Because there are no login requirements for Suitelet that are available without login, be aware that the data contained within the Suitelet will be less secure.
Errors Related to the Available Without Login URL
You will use either the internal URL or the external URL as the launching point for a Suitelet.
Some factors that determine whether a Suitelet will successfully deploy are:
-
Dependencies between the type of URL you are referencing (internal or external)
-
The Suitelet deployment status (Testing or Released)
-
Whether the Select All box has been selected on the Audience subtab of the Script Deployment Page.
The following table summarizes these dependencies:
Suitelet URL Type |
Deployment Status |
Select All check boxes |
Result |
---|---|---|---|
internal |
Testing |
not checked |
Suitelet deploys successfully |
internal |
Testing |
checked |
Suitelet deploys successfully |
internal |
Released |
not checked |
Error message: You do not have privileges to view this page. |
internal |
Released |
checked |
Suitelet deploys successfully |
external |
Testing |
not checked |
Error message: You are not allowed to navigate directly to this page. |
external |
Testing |
checked |
Error message: You are not allowed to navigate directly to this page. |
external |
Released |
checked |
Suitelet deploys successfully |
external |
Released |
not checked |
Error message: You do not have privileges to view this page. |
Suitelet Script Deployment Page Audience Subtab
Use the Suitelet Script Deployment page's Audience subtab to specify the roles that can access your Suitelet.
The following table summarizes the Audience subtab fields.
Field |
Description |
Roles |
Select the Roles that can access your Suitelet. To give access to all Roles, check the All Roles box. If you do not select any Roles, the script will not run. |
Groups |
Select the Groups that can access your Suitelet. If you do not select any Groups, all Groups have access. |
Partners |
Select the Partners that can access your Suitelet. To give access to all Partners, check the All Partners box. |
Departments |
Select the Departments that can access your Suitelet. If you do not select any Departments, all Departments have access. |
Employees |
Select the Employees that can access your Suitelet. To give access to all Employees, check the All Employees box. |
Suitelet Script Deployment Page Links Subtab
Use the Suitelet Script Deployment page's Links subtab to create links in NetSuite Centers to your Suitelet. For example, create a link to a Suitelet from the Support Section in the Classic Center.
For scripts to run in the Customer, Vendor, Partner, or Employee Center, ensure that the associated role is selected on the Audience subtab of the script deployment record. Additionally, script files and any files referenced by the script must have either the Company-Wide Usage or Available Without Login preference enabled on the file record in the File Cabinet. For more information, see Permissions and File Cabinet Files.
The following table summarizes the Links subtab fields.
Field |
Description |
Center |
The NetSuite Center's from which users can access your Suitelet. |
Section |
The NetSuite section of your Suitelet. Users access your Suitelet from this section. |
Category |
The category of the Suitelet. |
Label |
The name of the Suitelet. Users see this label in the section menu, after the category name. |
Translation |
If you have the multi-language feature enabled for your NetSuite account, you can add translations for your Suitelet label in the Translation column. |
Insert Before |
Specify the section category you would like to insert your Suitelet before. |