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.
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:
- BASE URL: https://www.upwork.com/api/
- AUTHORIZATION URL: https://www.upwork.com/ab/account-security/oauth2/authorize
- TOKEN URL: https://www.upwork.com/api/v3/oauth2/token
- CLIENT ID: The client ID is the string representing client registration information unique to the authorization server.
- SECRET: The client secret is a unique string issued when setting up the target application integration.
Note that the fields listed will be pre-populated when the template is imported.
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
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.
To get a Service Account set up (for back-end polling APIs), you’ll need:
- Client ID
The Upwork team will need:
- Company name
- User email
- User ID
To ensure your Upwork Microapps are fully functional, you’ll need to request a client ID & token for end user write actions.
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.
Under My Services, you’ll find the manage button on the Microapps tile.
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.
You’ll see this button once you’re working under the Microapps Admin Manage tab.
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.
The Upwork Microapp tile is white and green, and displays the Upwork logo.
Once you choose the Upwork Microapp, a drawer will open showing the integration details. Choose Add to add your configuration 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.
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.
You’ll find the Data loading option in the left sidebar.
You’ll see GQL_JOB listed. Click the (...) icon and select Edit.
Find the Header tab. Set your Organization ID against the parameter X-Upwork-API-TenantId. Once entered, scroll down and choose Apply.
Return to the Data Loading section. This time, go to organization_teams and select Edit.
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!
|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.