Update Workflow
Base URL:
AU 🇦🇺 : https://api.syd.e1.enboarder.com
EU 🇪🇺 : https://api.fra.e1.enboarder.com
US 🇺🇸 : https://api.ore.e1.enboarder.com
CA 🇨🇦 : https://api.can.e1.enboarder.com
API Endpoint
Using API Key - {{baseURL}}/restapi/v1/updatewf
Using OAuth - {{baseURL}}/restapi/v2/updatewf
Request Method: PUT
This API modifies the different Enboarder workflow attributes e.g. employee details, manager details, hire start date, custom fields etc. If Workflow is not available or is already Complete or Cancelled API return error response.
NOTE: Partial updates can also happen using this API by just providing the information that needs to be updated. For example, if new hire start date needs to be updated then invoke this API with externalid and nhstdt (and custom fields if multiple workflows exists with same external id) only.
Sample Request:
{
"customfields": [
{
"name": "brand",
"value": "enboarder"
},
{
"name": "location",
"value": "Sydney"
},
{
"name": "Employee Number",
"value": "98786"
}
],
"externalid": “687368798490”,
"nhstdt": "2020-06-12"
}
Response
On Success, the below response will be returned:
Resposne Body:
{ "message": "Workflow updated successfully for externalid [ENT-68736879-0001]", }
Where the referenceid is the externalid passed in the request body or uniqueid generated by system launched from.
On Error, the below response will be returned:
Resposne Body:
{ "message": "Atleast one of the fields is required [\"nheml\",\"nhmob\",\"nhmobeml\"]" }
Message will contain error message.
Attribute Names & Descriptions:
externalid
Reference of external System to match with Enboarder Workflow. This should be unique for all workflows started in Enboarder. If external is not specified then Enboarder generates a unique ID for workflow, which can be used to perform update operations on Enboarder workflow programatically.
Required
nhnm
Updated full name of Employee
Optional
nhfnm
First name of Employee
Optional
nhlnm
Last name of Employee
Optional
nhmob
Updated Employee Mobile
Optional
nheml
Updated Employee Email
Optional
chnl
Updated preferred channel for employee
Optional
managers
Updated manager details
Optional
manager.nm
Updated name of the manager
Optional
manager.fnm
First name of the manager
Optional
manager.lnm
Last name of the manager
Optional
manager.mob
Updated mobile of the manager
Optional
manager.eml
Updated email of manager
Optional
manager.chnl
Updated preferred channel for manager
Optional
manager.mgrlbl
Label of manager, whose details need to be uodate. This is required in case of workflow has multiple variable managers
Optional
nhstdt
Updated Start Date of Employee
Optional
customfields
List of all custom fields for the workflow. They are name , value pairs. name should match the name of custom field defined in Enboarder. Brand, location and optional categories can also be provided in custom fields with name as ‘brand’, ‘location’ and category name in Enboarder respectively.
Optional
Parent Child Mapping
We've made it easy for you to integrate with one account in Enboarder (the parent account), and then be able to pass data into other child accounts. In order to enable data to flow from a parent account to a child account, you will need to configure child account IDs.
What you will need to change in the payload
The source system should send this child account ID in the payload in attribute
childAccountID
.The possible values of this field should be provided to Enboarder support so that they can configure these IDs to each child account
When the payload is received, Enboarder will check the value of the
childAccountID
field. If an ID matches with any of the child account IDs, the workflow will be updated in that child account. If an ID does not match a child account, then the workflow will look to be updated in the parent account.
Example: If you have 3 child accounts in Enboarder and you are using the office location city as child ID, you will need to send us the below data in a CSV file:
Child Account Name | External id |
Account 1 | Sydney |
Account 2 | Brisbane |
Account 3 | London |
Here is a sample payload for updating a workflow. Enboarder will update the workflow in Account 2 in this case.
{
"nhnm": "Jane Doe",
"nheml": "john@enboarder.com",
"childAccountID":"Brisbane",
"nhstdt": "2021-08-12",
"managers": [
{ "nm": "Jane Van",
"eml": "johndoe@enboarder.com",
"mgrlbl": "Direct Manager"
}
],
"customfields": [
{ "name": "brand",
"value": "enboarder"
}
],
"externalid": "687368798490",
"mode": 0
}
Set up in Enboarder
We need a mapping of your child account names and the unique ID of each child account. The child account ID can be any ID that is unique per child account and available in the source system. This ID will be used to find the child's account in Enboarder. The ID can be alphanumeric or string. It should be passed to our system as a string.