Skip to main content

Extension Automations

As a part of Pia AI Desk, Pia provides you with a set of 50-60 automation automations. These automations let you perform various tasks with Pia such as Staff Onboarding and Offboarding.

Pia's automations support a range of scenarios. Right now, with advanced automations (such as Staff Onboarding and Offboarding) you can use manual tasks to achieve the gap between what Pia does and the processes for your clients.

Using Extension Automations in Pia you can create your own extensions for your favorite Pia automations.

Examples:

  • At the start of Staff Onboarding automation for client "ABC Company", prompt a message to the Service Desk engineer to remind them to do something
  • At the end of the Staff Onboarding automation, send an email to HR to let them know that a new user has been created
  • At the end of the terminate user automation, revoke a license in backup radar via a third party API
  • After submitting the Staff Onboarding Form, send an email to HR with the New User Request details

First, see it in action​

Demo of running an extension after Staff Onboarding creation​

YouTube Video Thumbnail

How we built it​

YouTube Video Thumbnail

Quick Start​

πŸ“š LEARN BY DOING! 🎬

The best way to become an Extension Automation guru is OUR TUTORIAL SERIES. πŸŽ‰πŸ“Ί.

Once you have decided what you want your extension automation to do, follow the steps below:

  1. Create a new automation
  2. Add the extension_automation condition to let Pia know that your automation is an extension automation
  3. Use data from the parent automation in your extension
  4. Promote your automation to 'live'
  5. Link your extension automation to a Pia automation

Here is an example of a automation running in Pia chatbot with an extension automation linked to it: extension_example.png

Deciding on Extension Automation Properties​

The first step is to find the gap between a Pia automation and the business process you want to automate. This will help you understand what you want your extension automation to do.

Once you have decided on your required extension automation and the automation you wish to extend, the next step is to define at what point of the automation your extension automation will run. Pia currently provides extension points for the Staff Onboarding and Staff Offboarding automation in the following areas:

Automation TypeAutomation NameExtension Points
Tech Assist and SmartFormsPia: Staff OnboardingStart of the automation, Middle of the automation (Prior to Staff Onboarding), Prior to Scheduling, End of the automation
Tech Assist and SmartFormsPia: Staff OffboardingStart of the automation, Middle of the automation (Prior to Staff Offboarding), Prior to Scheduling, End of the automation
Tech Assist and SmartFormsPia: Reset Network PasswordStart of the automation, Middle of the automation, and End of the automation (After the user is selected)
Tech Assist and SmartFormsPia: Account Locked OutStart of the automation, Middle of the automation (Prior to unlocking user account), End of the automation
Tech AssistPia: Re-enable Offboarded AccountStart of the automation, Middle of the automation (Prior to re-enabling user account), End of the automation
Tech AssistPia: Re-allocate User LicenseStart of the automation, Middle of the automation (Prior to re-allocating user license) , End of the automation
Tech AssistPia: Manage User LicensesStart of the automation, Middle of the automation (Prior to adding or removing license for a user) , End of the automation
Tech Assist and SmartFormsPia: Create or Remove Mail Forwarding RuleStart of the automation, Middle of the automation (Prior to creating/removing the mail forwarding rule), Prior to Scheduling and End of the automation
Tech AssistPia: Add or Remove User From GroupsStart of the automation, Middle of the automation (Prior to updating group access), Prior to Scheduling and End of the automation
Tech Assist and SmartFormsPia: Update User DetailsStart of the automation, Middle of the automation (Prior to updating user details), Prior to Scheduling (Tech Assist Only) and End of the automation
Tech Assist and SmartFormsPia: Add or Remove Users from Allow ListStart of the automation, Middle of the automation (Prior to adding or removing users from Allow List) and End of the automation
Tech Assist and SmartFormsPia: Add or Remove Users from Block ListStart of the automation, Middle of the automation (Prior to adding or removing users from Block List), End of the automation
Tech Assist and SmartFormsPia: Change Calendar PermissionsStart of the automation, Middle of the automation (Prior to updating user calendar permissions), End of the automation
Tech Assist and SmartFormsPia: Setup or Remove Out of OfficeStart of the automation, Middle of the automation (Prior to updating out of office), End of the automation
Tech Assist and SmartFormsPia: Grant or Revoke Mailbox AccessStart of the automation, Middle of the automation (Prior to making mailbox changes), End of the automation

Use data from the parent automation in your extension​

Pia gives you the ability to use the data from the parent automation in your extension automation. The data will be available as a json object in the format as required by the automation.

You can use the data from the parent automation using an inline PowerShell activity in your extension automation where you can set the input property as:

- task: inline_powershell
inputs:
data: =extension_automation.parent_data
script: |
$obj = $(ConvertFrom-Json $data)
write-host $data

Data available from Staff Onboarding automation​

Extension Point 1 (Start of the automation) There is no data available for this extension point.

Extension Point 2 (Middle of the automation)

{
"additionalAttributes": "",
"additionalProxyAddresses": "",
"alAdditionalAttributes": "",
"changeAtLogon": true,
"city": "",
"company": "",
"countryCode": "",
"department": "",
"description": "",
"displayName": "",
"email": "",
"employeeId": "",
"expiration": "",
"firstName": "",
"groups": "",
"jobTitle": "",
"lastName": "",
"managerUpn": "",
"middleName": "",
"mobilePhone": "",
"office": "",
"officePhone": "",
"ou": "",
"password": "",
"postalCode": "",
"skipMailNickname": true,
"state": "",
"street": "",
"userName": "",
"userPrincipalName": ""
}

Extension Point 3 (End of the automation)

{
"adGroupsAssigned": [],
"additionalAttributes": "",
"additionalProxyAddresses": "",
"alAdditionalAttributes": "",
"azureGroupsAssigned": [],
"changeAtLogon": true,
"city": "",
"company": "",
"country": "",
"department": "",
"description": ""
"displayName": "",
"emailAddress": "",
"employeeId": "",
"expiration": "",
"firstName": "",
"groups": "",
"jobTitle": "",
"lastName": "",
"licenses": [],
"manager": "",
"middleName": "",
"mobilePhone": "",
"office": "",
"officePhone": "",
"orgUnit": "",
"ou": "",
"password": "",
"postcode": "",
"samAccountName": "",
"skipMailNickname": true,
"state": "",
"street": "",
"userPrincipalName": ""

}

Data available from Staff Offboarding automation​

Extension Point 1 (Start of the automation) There is no data available for this extension point.

Extension Point 2 (Middle of the automation)

{
"additionalAttributes": "",
"clientId": 123,
"immutableId": "",
"samAccountName": "",
"scheduleDate": "",
"scheduleForLater": true,
"userPrincipalName": ""
}

Extension Point 3 (End of the automation)

{
"adGroupsRemoved": [],
"additionalAttributes": "",
"azureGroupsRemoved": [],
"clientId": 123,
"displayName": "",
"emailAddress": "",
"emailAddresses": [],
"firstName": "",
"licenses": [],
"orgUnit": "",
"samAccountName": "",
"scheduleDate": "",
"scheduleForLater": true,
"surname": "",
"userPrincipalName": ""
}

Data available from Reset Network Password automation​

Extension Point 1 (Middle of the automation)


{
"userPrincipalName": "",
"password": "!",
"changeAtNextLogon": true,
"clientId": 123
}

Linking Extensions to a Client​

See the instructions for adding an Extension to a Client