How to authenticate with Workday for a REST API Integration

If you want to authenticate with Workday then you need to get the following pieces of data from workday console. You might have to contact Workday support to find these keys.

client_id - credential from workday console
client_secret - credential from workday console
refresh_token - credential from workday console
token_url - This is the url endpoint from which to get the token.

This will allow us to get a temporary token to access Workday data.

You can get the token by doing an AJAX request to the token_url as shown in the example below.

$.ajax({
      type: 'POST',
      url: token_url,
      data: {
        grant_type: 'refresh_token',
        refresh_token: refresh_token
      },
      headers: {
        Authorization: 'Basic ' + Fliplet.Encode.base64(client_id + ':' + client_secret)
      }
    })

Once you have the token you can then request the data from Workday as shown below.

$.ajax({
      type: 'GET',
      url: report_Url, //this is the url from workday which contains the data. 
      headers: {
        Authorization: type + ' ' + token //type is the type property that comes back as part of the refresh token and token is the refresh token from above. 
      }
    })

If you chain these calls together you using Promises you can setup an app action to run on a schedule to import the data into a data source and use it within any Fliplet app.

An example on how to set up app actions: Create an App Action to send a scheduled email

An example on how to do a generic REST API integration with Fliplet: Integrate a REST API with a Fliplet data source

1 Like