Integrate Smartsheet
Deploy the Smartsheet integration to manage sheets, discussions, update requests, and attachments.
For comprehensive details of the out-of-the-box microapps for Smartsheet, seeUse Smartsheet microapps.
Note:
This Smartsheet integration template is released inCitrix Labscategory. This allows the functionality to mature as a result of initial customer feedback. For Citrix Labs templates, there is no commitment to support and support is provided by the developer on a best-effort basis. Citrix Labs integration templates are shared for the purpose of testing/validation. We do not advise deploying them in production environments. Citrix Labs templates are listed in a separate section. We want your feedback! Please providefeedback for this integration templateas you use it. For any issues, our team will also monitor ourdedicated forumon a daily basis.
Review prerequisites
These prerequisites assume that the administrator will be a part of the SmartSheet integration set up of the organization. This Smartsheet admin account must have full read privileges for all users and sheets informations.
After you set up this integration with Smartsheet, you will need these artifacts to add the integration in Citrix Workspace Microapps:
- Base URL:
https://api.smartsheet.com/
- Authorization URL:
https://app.smartsheet.com/b/authorize
- Token URL:
https://api.smartsheet.com/2.0/token
- Client ID: The client ID is the string representing client registration information unique to the authorization server. You collect this asApplication Keywhen you configure the OAuth server.
- Secret: The client secret is a unique string issued when setting up the target application integration. You collect this asApplication Keywhen you configure the OAuth server.
Note:
It is recommended that you always use OAuth 2.0 as your service authentication method where available. OAuth 2.0 ensures that your integration meets the maximum security compliance with your configured microapp.
Configure Citrix Gateway to support single sign-on for Blackboard so that once users log in they are automatically logged in again without having to enter their credentials a second time. For more information about configuring SSO, seeCitrix Gateway Service.
Create a service account
The integration requires regular access to your Smartsheet instance, so we recommend creating a dedicated user account. This account must have the following permissions for your Service Account: Full administrator privileges. You can view the permission/privileges usinghttps://admin.smartsheet.com.
To create a service account, sign up here:https://app.smartsheet.com/b/signup. Ensure that the paid account is available to create a new service account.
In case of issues setting up the new service account, please connect to the respective sales support team or customer support team:https://www.smartsheet.com/contact/sales?fts=contact.
API access
The number of API requests that can be made to specific resources is limited, we therefore recommend the following:
- Recommended plan: Business
- Smartsheet API limitation form link:https://smartsheet-platform.github.io/api-docs/#rate-limiting
Smartsheet APIs are available in open source by default.
Configure OAuth server
Configure the OAuth server to read data through the Smartsheet integration.
- Navigate tohttps://developers.smartsheet.com/register/and enter your service account admin email.
- SelectRegister Developer Account.
- Check for an email from Smartsheet in the Service account admin inbox.
- Select the link. You are navigated tohttps://app.smartsheet.com.
- A dialog box will prompt you to create a new app. SelectCreate New Appunder the developer profile section.
- Complete the required fields, including App name, Description, URL, and Contact/Support email.
- Enter the following authorized redirect URLs for this app in the Redirect URL field:
https://{yourmicroappserverurl}/admin/api/gwsc/auth/serverContext
- Select the Publish app check box and selectSave.
- Copy and save theClientIdandSecretshown on the screen. You use this forService Authenticationwhile configuring the integration.
Configure OAuth client
Configure the OAuth client to write data back through the Smartsheet integration.
- As in step 5 above, selectCreate New Appunder the developer profile section.
- Complete the required fields, including App name, Description, URL, and Contact/Support email.
- Enter the following authorized redirect URLs for this app in the Redirect URL field:
https://{yourmicroappserverurl}/admin/api/gwsc/auth/serviceAction/callback
- Select the Publish app check box and selectSave.
- Copy and save theClientIdandSecretshown on the screen. You use this forService Action Authenticationwhile configuring the integration.
- SelectClose.
Add the integration to Citrix Workspace Microapps
Add the Smartsheet integration to Citrix Workspace Microapps to connect to your application. The authentication options are preselected. Ensure that these options are selected as you complete the process. This delivers out-of-the-box microapps with pre-configured notifications and actions that are ready to use within your Workspace.
Follow these steps:
- From theMicroapp Integrationspage, selectAdd New IntegrationandAdd a new integration from Citrix-provided templates.
- Choose the SmartSheet tile.
- Enter anIntegration namefor the integration.
- EnterConnector parameters.
- Enter the instanceBase URL:
- Select anIconfor the integration from the Icon Library, or leave this as the default icon.
- UnderService authentication, selectOAuth 2.0from theAuthentication methodmenu and complete the authentication details. The authentication options are preselected. Ensure that these options are selected as you complete the process. Use the OAuth 2.0 security protocol to generate request/authorization tokens for delegated access. It is recommended that you always use OAuth 2.0 as your service authentication method where available. OAuth 2.0 ensures that your integration meets the maximum security compliance with your configured microapp.
- SelectOAuth 2.0from theAuthentication methodmenu and complete the authentication details.
- SelectAuthorization Headerfrom theToken authorizationmenu.
- TheAuthorization URLis prefilled:
https://app.smartsheet.com/b/authorize
- TheToken URLis prefilled:
https://api.smartsheet.com/2.0/token
- Ensure the following is entered for Scope:ADMIN_SHEETS ADMIN_USERS READ_SHEETS READ_USERS
- Enter yourClient ID. The client ID is the string representing client registration information unique to the authorization server. You collect this asClientIdwhen you configure the OAuth server.
- Enter yourClient secret. The client secret is a unique string issued when setting up the target application integration. You collect this asSecretwhen you configure the OAuth server.
- UnderService Action Authentication, enable theUse Separate User Authenticationin Actions toggle. Service action authentication authenticates at the service action level. The authentication options are preselected. Ensure that these options are selected as you complete the process.
- SelectOAuth 2.0from theAuthentication methodmenu and complete the authentication details.
- SelectAuthorization Headerfrom theToken authorizationmenu.
- TheAuthorization URLis prefilled:
https://app.smartsheet.com/b/authorize
- TheToken URLis prefilled:
https://api.smartsheet.com/2.0/token
- Ensure the following is entered for Scope:ADMIN_SHEETS ADMIN_USERS SHARE_SHEETS WRITE_SHEETS CREATE_SHEETS ADMIN_WORKSPACES
- Enter yourClient ID. The client ID is the string representing client registration information unique to the authorization server. You collect this asClientIDwhen you configure the OAuth client.
- Enter yourClient secret. The client secret is a unique string issued when setting up the target application integration. You collect this asSecretwhen you configure the OAuth client.
- Enable theEnable request rate limitingtoggle button. Enter300forNumber of requestsand1 minuteforTime interval.
- Request timeoutis set to120by default.
- (Optional) EnableLoggingtoggle to keep 24 hours of logging for support purposes.
- SelectSaveto proceed.
You are now ready to set and run your first data synchronization.
Synchronization
Due to the API call limit, incremental synchronization is setup to retain only List org sheets, List org discussions, and Get all org sentupdaterequests. The remaining endpoints will be triggered as part of full synchronization.
We recommend setting theFull Synchronizationinterval asDailyandIncremental Synchronizationinterval asEvery 5 minsto regularly refresh data from Smartsheet to the Microapps platform and receive timely notifications. For complete information about synchronization rules, synchronization that does not meet its schedule and veto rules, seeSynchronize data.
Note:
The pagination limit is set to 100. Administrators can extend this limit based on APIs.
The default value forMax pages to load variableis set as shown below:
Endpoint Name | Value |
---|---|
List Org Sheets | 50 |
List Groups | 10 |
List Org Discussions | 10 |
Get all org sentupdaterequests | 10 |
List Sheets | 50 |
Get Sheets | 10 |
List Sheet Shares | 10 |
List Groups | 50 |
For more details of API endpoints and table entities, seeSmartsheet connector specifications.
Use Smartsheet microapps
Existing application integrations come with out-of-the-box microapps. Start with these microapps and customize them for your needs.
Access Sheets:View sheets, share a sheet to a licensed or non-licensed user or group, add a sheet as favorite, and allow users to view their individual sheet.
Notification or Page | Use-case workflows |
---|---|
View All Sheets page | Allows users to search for shareable and non-shareable sheets. |
Shareable Sheet Detail page | Provides an actionable view of adding the sheet as a favorite, viewing the sheet, sharing the sheet with licensed/non-licensed users or groups. |
Non-Shareable Sheet Detail page | Provides an actionable view of adding sheet as a favorite and viewing the sheet. |
Shareable Group Sheet Detail page | Provides an actionable view of adding the sheet as a favorite, viewing the sheet, sharing the sheet with licensed/non-licensed users or groups. |
Non-Shareable Group Sheet Detail page | Provides an actionable view of adding group sheet as a favorite and viewing the group sheet. |
Create a Sheet:Create a new sheet with fields and options such as sheet name, enter column title, select column type, and select primary column.
Notification or Page | Use-case workflows |
---|---|
Create Sheet page | Provides a form to create a new sheet. |
Discussion:生成通知到the discussion creator whenever there is a reply to theirs discussion thread.
Notification or Page | Use-case workflows |
---|---|
New comment added to your discussion notification | When a reply or comment is added to an existing discussion, the discussion creator receives a notification. |
Discussion Detail page | Provides a form to reply to the discussion thread and view previous comments. |
My Update Requests:View sent and received update requests with details such as sent to, sent by, subject and status. Additionally, when a user sends an update request to recipients, the recipients receive a notification. Once the update request is complete,d the sender receive a completed notification.
Notification or Page | Use-case workflows |
---|---|
Smartsheet Update Request Received notification | When a requester requests an update request, the recipient receives a notification. |
Smartsheet Update Request Completed notification | When a recipient completes an update request, the requester receives a notification. |
All Update Requests page | Allows users to search for sent and received update requests. |
Sent Update Request Detail page | Provides an actionable view of sent update request with Delete update request and view sheet functionality. |
Received Update Request Detail page | Provides a read only view of a received update request with view sheet functionality. |
Completed Update Request Detail page | Provides a read only view of a completed update request with view sheet functionality. |
Send Smartsheet as Attachment:Send Smartsheets as an attachment (PDF or Excel), with details such as To email, subject, and message.
Notification or Page | Use-case workflows |
---|---|
View All Sheets page | Allows users to search sheet they own. |
Send as Email Detail page | 提供了一个可操作的视图发送内容s an attachment (PDF or Excel) with subject and/or message. |
Share with Admin:使用的非管理用户分享他们的床单dmins with view only access, and to unlock other features such as Access sheets, My Update request, Discussions, and receive the respective notification. Share the sheet with Admin to unlock additional Smartsheet actions and notifications in Workspace for you, including: update request actions/notifications, discussion notifications, and viewing your sheets.
Note:
In this microapp there is a page namedShare Sheet To Adminwhich contains a Select component calledAdmin Email(this is not visible to the end user). This component is used to share user sheets with your organization’s Admin account. This Admin account is the same Service Account that you have setup in the previous step. In case your organization has multiple Service/Admin accounts, please make sure to point thisAdmin EmailSelect component to the right account to ensure this microapp works correctly.
Notification or Page | Use-case workflows |
---|---|
View All Sheets page | Allows users to search through their sheets and share them with admin as needed. |
Share Sheet to Admin Detail page | Provides an actionable view to share a sheet with admin with view-only access, and add a note to a sheet which is already shared. |
Sheet Shared with Admin page | Provides user confirmation message when the sheet is shared with admin. |
Start a Discussion:Start a discussion on sheet level.
Notification or Page | Use-case workflows |
---|---|
Start Discussion page | Provides an actionable view to initiate a discussion at a sheet level. |