Configure Upwork Microapps for Citrix Workspace

The Upwork Microapps for Citrix Workspace help users save time with direct access to many of Upwork's features and tools. 

What is Citrix Workspace?

By adding Upwork to your Citrix Workspace, you can reduce context switching  for users and eliminate the need to visit the Upwork platform for many routine tasks.

Citrix Workspace and their integrated microapps provide users with a streamlined work experience and user interface.

  • Deliver relevant, actionable notifications
  • Work with intuitive microapp workflows
  • Make essential systems and applications directly accessible from a user’s own workspace

Learn more about Citrix here

Prerequisites

These prerequisites assume that the administrator will be a part of the Upwork integration set up of the organization. This Upwork admin account must have full read privileges for user information.

After you set up this integration with Upwork, you will need these artifacts to add the integration in Citrix Workspace Microapps, specifically the following list of parameters for setting up OAuth integration:

Note that the fields listed will be pre-populated when the template is imported.

 

 

NOTES

 

We recommend 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 Upwork 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, see Citrix Gateway Service.

 

The integration requires regular access to your Upwork instance, so we require creating a dedicated service account. This account must have the following permissions:

  • Request setup: As an Administrator for your company’s Upwork account, please reach out to your Upwork Solutions Architect for support in setting up your Citrix integration. 
  • Permissions Required: Full hiring privileges on all teams

The number of API requests that can be made to specific resources is limited. We recommend the Upwork Business or Enterprise plans for use with the Upwork Microapps.

 

Enable APIs and create a service account

Upwork APIs are enabled by default through web services for paid accounts.

Upwork API Provisioning

 

1. Request Setup

As an administrator for your company’s Upwork account, please reach out to your Upwork Solutions Architect for support in setting up your Citrix integration.

2. Service Account Provisioning

To get a Service Account set up (for back-end polling APIs), you’ll need:

  • Client ID
  • Token

The Upwork team will need:

  • Company name
  • User email
  • User ID

 

3. Service Action Provisioning

To ensure your Upwork Microapps are fully functional, you’ll need to request a client ID & token for end user write actions.

Apply for your OAuth2 keys here.

 

NOTE

You’ll need to enter the necessary usage and permissions. 

  • Project title: Citrix microapp setup
  • Project type: Web project
  • Project description: Citrix microapp service actionsetup
  • API usage: 11-100
  • Auth Type: OAuth 2.0
  • Permissions required: Permissions required: Create, modify and remove job posts

 

Add Upwork microapps to Citrix Workspace

To add the Upwork Microapps for Citrix Workspace, the authentication options have been preselected. Ensure that these options are selected as you complete the process.

By applying preselected authentication options, you can use the Upwork Microapps out-of-the-box with pre-
configured notifications and actions all ready to use within your Workspace.

1. Choose the “Manage” button.

Under My Services, you’ll find the manage button on the Microapps tile.

2. Choose “Get Started.”

You’re now in the Microapps Admin. You’ll see the Get Started button in the middle of the page. You can also choose the Manage tab at the top of the page.

3. Choose “Add Integration.”

You’ll see this button once you’re working under the Microapps Admin Manage tab.

4. Choose “Add a new integration from Citrix-provided templates.”

You’ll see a popup asking what kind of integration you’d like to add. The first option will be Add a new integration from Citrix-provided templates. Choose this option and select Continue.

5. Choose Upwork.

The Upwork Microapp tile is white and green, and displays the Upwork logo.

6. Choose “Add.”

Once you choose the Upwork Microapp, a drawer will open showing the integration details. Choose Add to add your configuration details.

7. Add authorization details.

Input the authorization details to connect your Citrix and Upwork company accounts. Once complete, click Save.


Note: There are two sets of tokens - Service Authentication AND Service Action - each has a unique ClientID and Secret requested and received from Upwork.

8. Enter service authentication details.

Within Configuration, look for the Service authentication section. You’ll need to enter your client ID and client secret in the appropriate fields.
Also, look for the Service Action Authentication section. You’ll need to enter your client ID and the second client secret in the appropriate fields. Then, choose Save.

Note: If a user ever wants/needs to change their configuration, from the Microapp Integrations page, you should now see the Upwork Microapp listed. Click on the three dots (...) in the top right corner, and select Edit. Next, select Configuration from the left sidebar to see the full configuration details.

9. Choose “Data loading.”

You’ll find the Data loading option in the left sidebar.

10. Edit GQL_JOB.

You’ll see GQL_JOB listed. Click the (...) icon and select Edit.

11. Set your organization ID.

Find the Header tab. Set your Organization ID against the parameter X-Upwork-API-TenantId. Once entered, scroll down and choose Apply.


12. Edit Organization Teams.

Return to the Data Loading section. This time, go to organization_teams and select Edit.

13. Return to your Organization ID.

Return to the Header tab.
Set your Organization ID against the parameter X-Upwork-API-TenantId.

Next, find the Body tab and set your Organization ID against the parameter X-Upwork-API-TenantId.

Once entered, scroll down and choose Apply. Your service account is set up and ready to go!


 

Endpoints

 

List of jobs Displays the latest active 20 jobs that belong to the organization
List of proposals Displays the latest 10 proposals for each job
List of providers Displays first 100 records with Job Success Score >= 90% and English Skill level >= 4
Ontology Categories Displays all active categories
Organization Team Displays list of root organization and children which are not hidden
Companies Displays all the companies the currently authorized user has access to
Teams Displays list of teams that belongs to each company

 

Notes on General Behavior

  • Each cache table associated with the endpoints above gets synchronized once in each 15 minutes.
  • Synchronization happens in full mode. 

Example: After adding a new job post or cancelling a job, the notification should be received in 15 minutes or less.

Log in to get personalized help.