Examples and usecases GitHub

App catalog / AWSStarterKit

AWS Starter Kit with Amazon Web Services and Amazon Translate

Workday

Jumpstart your AWS app with the AWS starter kit examples.

Extend App Presentation Orchestration AWS Integration 3rd-Party Technology Workday Extend Workday Orchestrate

Version 2024.1

For details and updates associated with this version of the app, see the App Catalog Changelog.

Introduction

View See the app forum post for more information on setting this app up. for more details.

To use the Extend-AWS native integration, an Innovation Service Agreement opt-in is required.

To deploy an app to your Workday-managed AWS account, a Company Administrator must provide you AWS account access.

Overview

This app showcases using the AWS Lambda connectors to utilitize all of the advanced capabilities supported by Workday

Deploy Instructions

  1. Click the “Create Copy” button above.
  2. To modify app source code:
  3. Open the app in the Console.
  4. Click Open in App Builder.
  5. After making any changes, Save and Deploy.

Configuration Instructions

To fully deploy and configure this app, you will need access to the AWS account for your organization to create and deploy the AWS Lambda function, and you must install the AWS SAM CLI.

For this application, ensure that your AWS configuration is set to the US West Oregon us-west-2 region.

This app does not require any additional Workday configuration.

Create an AWS SAM Application

To host the AWS Lambda code that the Extend app leverages, you will need to use the AWS SAM CLI to:

  1. Authenticate to AWS using your short-term credential
  2. Create and deploy an AWS Lambda application

AWS Lambda Instructions

See the How to use AWS Lambda capabilities documentation page for instructions on creating a new Lambda function.

You can also review the Back to Basics video on how to get started with the Extend-AWS integration using the AWS Toolkit for VS Code and the AWS SAM CLI.

See the app forum page for the Lambda code with .yaml file to get the lambda code zip and a sample template.yaml for the app.

  1. Unzip the lambda code into your local workspace for your AWS SAM Application.

  2. In the AWS SAM CLI, either from the command line or from a tool such as VS Code’s AWS Toolkit, edit the template.yaml file for the project:

    1. Make sure the CodeUri points to the location in the project directory where the lambda_function.py code is located
    2. Make sure the Handler points to lambda_function.lambda_handler
    3. Make sure the Runtime is set to python3.9
  3. Sync the SAM Application to upload and deploy your changes.

  4. Once complete, the new code should now be deployed to your Lambda Function and ready to use.

Note: You may need to add an entry to the requirements.txt file in the folder containing your lambda python code with:

urllib3<2

If you run the app and receive an error regarding urllib, you can fix it by adding the above line to that file.

Orchestration Code Changes

When making a copy of this app, the Amazon S3 bucket name is specified in the detectDocumentText orchestration on the CreateValues component. Before deploying to your tenant, you will need to update the bucket value to use your Workday-provided S3 bucket name.

You can find this bucket name using the AWS SAM CLI.

Example: workday-wcp-wcpexttest-us-west-2

See How to use Amazon S3 capabilities for more info.

Once updated, save and deploy the application to your tenant.

Usage Instructions

  1. Login as Logan McNeil or another user, then open the app home page (i.e. from App Manager)
  2. Drag and drop (or select) a photo of any text to upload
  1. Submit the page
  2. The following page should show the text extracted from the photo.

Note that uploaded photos are stored in Amazon S3 in a private bucket specific to your AWS account and encrypted using an account-specific AWS KMS encryption key. This app does not automatically delete the uploaded photos, but the Workday-provided S3 bucket has a lifecycle policy to delete files once they reach 30 days of age.