﻿{"properties":{"connectionReferences":{"shared_commondataserviceforapps":{"runtimeSource":"embedded","connection":{"connectionReferenceLogicalName":"sb_sharedcommondataserviceforapps_ocr"},"api":{"name":"shared_commondataserviceforapps"}},"shared_approvals":{"runtimeSource":"embedded","connection":{"connectionReferenceLogicalName":"sb_sharedapprovals_ocr"},"api":{"name":"shared_approvals"}}},"definition":{"$schema":"https://schema.management.azure.com/providers/Microsoft.Logic/schemas/2016-06-01/workflowdefinition.json#","contentVersion":"1.0.0.0","parameters":{"$connections":{"defaultValue":{},"type":"Object"},"$authentication":{"defaultValue":{},"type":"SecureObject"}},"triggers":{"When_an_ownership_change_request_is_created":{"type":"OpenApiConnectionWebhook","inputs":{"host":{"connectionName":"shared_commondataserviceforapps","operationId":"SubscribeWebhookTrigger","apiId":"/providers/Microsoft.PowerApps/apis/shared_commondataserviceforapps"},"parameters":{"subscriptionRequest/message":1,"subscriptionRequest/entityname":"sb_ownershipchangerequest","subscriptionRequest/scope":4},"authentication":"@parameters(\u0027$authentication\u0027)"}}},"actions":{"Get_the_activity_window_setting":{"runAfter":{},"type":"OpenApiConnection","inputs":{"host":{"connectionName":"shared_commondataserviceforapps","operationId":"ListRecords","apiId":"/providers/Microsoft.PowerApps/apis/shared_commondataserviceforapps"},"parameters":{"entityName":"environmentvariabledefinitions","$filter":"schemaname eq \u0027sb_SalesCreditActivityWindowDays\u0027","$select":"defaultvalue,schemaname","$expand":"environmentvariabledefinition_environmentvariablevalue($select=value)"},"authentication":"@parameters(\u0027$authentication\u0027)"},"description":"Reads the configurable activity window. This is what makes the attribution rule configuration rather than code."},"Set_window_days":{"runAfter":{"Set_approval_recipient":["Succeeded"]},"type":"Compose","inputs":"@int(coalesce(first(coalesce(first(body(\u0027Get_the_activity_window_setting\u0027)?[\u0027value\u0027])?[\u0027environmentvariabledefinition_environmentvariablevalue\u0027], json(\u0027[]\u0027)))?[\u0027value\u0027], first(body(\u0027Get_the_activity_window_setting\u0027)?[\u0027value\u0027])?[\u0027defaultvalue\u0027], \u002790\u0027))"},"Set_window_start":{"runAfter":{"Set_window_days":["Succeeded"]},"type":"Compose","inputs":"@formatDateTime(addDays(utcNow(), mul(-1, outputs(\u0027Set_window_days\u0027))), \u0027yyyy-MM-ddTHH:mm:ssZ\u0027)"},"Count_claimant_activities_in_window":{"runAfter":{"Set_window_start":["Succeeded"]},"type":"OpenApiConnection","inputs":{"host":{"connectionName":"shared_commondataserviceforapps","operationId":"ListRecords","apiId":"/providers/Microsoft.PowerApps/apis/shared_commondataserviceforapps"},"parameters":{"entityName":"activitypointers","$select":"activityid","$filter":"@concat(\u0027_regardingobjectid_value eq \u0027, triggerOutputs()?[\u0027body/_sb_account_value\u0027], \u0027 and _ownerid_value eq \u0027, triggerOutputs()?[\u0027body/_sb_requestedby_value\u0027], \u0027 and actualend ge \u0027, outputs(\u0027Set_window_start\u0027))"},"authentication":"@parameters(\u0027$authentication\u0027)"}},"Count_current_owner_activities_in_window":{"runAfter":{"Count_claimant_activities_in_window":["Succeeded"]},"type":"OpenApiConnection","inputs":{"host":{"connectionName":"shared_commondataserviceforapps","operationId":"ListRecords","apiId":"/providers/Microsoft.PowerApps/apis/shared_commondataserviceforapps"},"parameters":{"entityName":"activitypointers","$select":"activityid","$filter":"@concat(\u0027_regardingobjectid_value eq \u0027, triggerOutputs()?[\u0027body/_sb_account_value\u0027], \u0027 and _ownerid_value eq \u0027, triggerOutputs()?[\u0027body/_sb_currentowner_value\u0027], \u0027 and actualend ge \u0027, outputs(\u0027Set_window_start\u0027))"},"authentication":"@parameters(\u0027$authentication\u0027)"}},"Find_orders_in_the_dispute_window":{"runAfter":{"Count_current_owner_activities_in_window":["Succeeded"]},"type":"OpenApiConnection","inputs":{"host":{"connectionName":"shared_commondataserviceforapps","operationId":"ListRecords","apiId":"/providers/Microsoft.PowerApps/apis/shared_commondataserviceforapps"},"parameters":{"entityName":"opportunities","$select":"opportunityid,name,actualvalue","$filter":"@concat(\u0027_parentaccountid_value eq \u0027, triggerOutputs()?[\u0027body/_sb_account_value\u0027], \u0027 and statecode eq 1 and actualclosedate ge \u0027, outputs(\u0027Set_window_start\u0027))"},"authentication":"@parameters(\u0027$authentication\u0027)"},"description":"Won opportunities that closed inside the window. These closed while the current owner still held the account, so credit does not transfer automatically."},"Set_counts":{"runAfter":{"Sum_disputed_revenue":["Succeeded"]},"type":"Compose","inputs":{"claimant":"@length(body(\u0027Count_claimant_activities_in_window\u0027)?[\u0027value\u0027])","currentOwner":"@length(body(\u0027Count_current_owner_activities_in_window\u0027)?[\u0027value\u0027])","total":"@add(length(body(\u0027Count_claimant_activities_in_window\u0027)?[\u0027value\u0027]), length(body(\u0027Count_current_owner_activities_in_window\u0027)?[\u0027value\u0027]))","ordersInDispute":"@length(body(\u0027Find_orders_in_the_dispute_window\u0027)?[\u0027value\u0027])","disputedRevenue":"@variables(\u0027disputedRevenue\u0027)"}},"Set_split":{"runAfter":{"Set_counts":["Succeeded"]},"type":"Compose","inputs":{"claimantPct":"@if(equals(outputs(\u0027Set_counts\u0027)[\u0027total\u0027], 0), 0, div(mul(1.0, mul(outputs(\u0027Set_counts\u0027)[\u0027claimant\u0027], 10000)), outputs(\u0027Set_counts\u0027)[\u0027total\u0027]))","currentOwnerPct":"@if(equals(outputs(\u0027Set_counts\u0027)[\u0027total\u0027], 0), 10000, div(mul(1.0, mul(outputs(\u0027Set_counts\u0027)[\u0027currentOwner\u0027], 10000)), outputs(\u0027Set_counts\u0027)[\u0027total\u0027]))"},"description":"Proportional to qualifying activity in the window. Scaled by 10000 then divided by 100 on write to give two decimal places."},"Write_the_suggested_split":{"runAfter":{"Set_split":["Succeeded"]},"type":"OpenApiConnection","inputs":{"host":{"connectionName":"shared_commondataserviceforapps","operationId":"UpdateRecord","apiId":"/providers/Microsoft.PowerApps/apis/shared_commondataserviceforapps"},"parameters":{"entityName":"sb_ownershipchangerequests","recordId":"@triggerOutputs()?[\u0027body/sb_ownershipchangerequestid\u0027]","item/sb_activitywindowdays":"@outputs(\u0027Set_window_days\u0027)","item/sb_claimantactivitycount":"@outputs(\u0027Set_counts\u0027)[\u0027claimant\u0027]","item/sb_currentowneractivitycount":"@outputs(\u0027Set_counts\u0027)[\u0027currentOwner\u0027]","item/sb_creditclaimant":"@div(outputs(\u0027Set_split\u0027)[\u0027claimantPct\u0027], 100)","item/sb_creditcurrentowner":"@div(outputs(\u0027Set_split\u0027)[\u0027currentOwnerPct\u0027], 100)","item/sb_ordersindispute":"@outputs(\u0027Set_counts\u0027)[\u0027ordersInDispute\u0027]","item/sb_disputedrevenue":"@outputs(\u0027Set_counts\u0027)[\u0027disputedRevenue\u0027]","item/sb_status":100000001,"item/sb_splitbasis":"@concat(\u0027Calculated on a \u0027, outputs(\u0027Set_window_days\u0027), \u0027 day activity window (environment variable sb_SalesCreditActivityWindowDays). Qualifying activities in window: claimant \u0027, outputs(\u0027Set_counts\u0027)[\u0027claimant\u0027], \u0027, current owner \u0027, outputs(\u0027Set_counts\u0027)[\u0027currentOwner\u0027], \u0027, total \u0027, outputs(\u0027Set_counts\u0027)[\u0027total\u0027], \u0027. Split is proportional to qualifying activity. Won opportunities closing inside the dispute window: \u0027, outputs(\u0027Set_counts\u0027)[\u0027ordersInDispute\u0027], \u0027. Approver may override.\u0027)"},"authentication":"@parameters(\u0027$authentication\u0027)"}},"Get_L1_approver":{"runAfter":{"Write_the_suggested_split":["Succeeded"]},"type":"OpenApiConnection","inputs":{"host":{"connectionName":"shared_commondataserviceforapps","operationId":"GetItem","apiId":"/providers/Microsoft.PowerApps/apis/shared_commondataserviceforapps"},"parameters":{"entityName":"systemusers","recordId":"@triggerOutputs()?[\u0027body/_sb_l1approver_value\u0027]","$select":"internalemailaddress,fullname"},"authentication":"@parameters(\u0027$authentication\u0027)"}},"Level_1_approval":{"runAfter":{"Get_L1_approver":["Succeeded"]},"type":"OpenApiConnectionWebhook","inputs":{"host":{"connectionName":"shared_approvals","operationId":"StartAndWaitForAnApproval","apiId":"/providers/Microsoft.PowerApps/apis/shared_approvals"},"parameters":{"approvalType":"Basic","WebhookApprovalCreationInput/title":"@concat(\u0027Ownership change request \u0027, triggerOutputs()?[\u0027body/sb_name\u0027], \u0027 - level 1 approval for \u0027, body(\u0027Get_L1_approver\u0027)?[\u0027fullname\u0027])","WebhookApprovalCreationInput/assignedTo":"@if(empty(outputs(\u0027Set_approval_recipient\u0027)), body(\u0027Get_L1_approver\u0027)?[\u0027internalemailaddress\u0027], outputs(\u0027Set_approval_recipient\u0027))","WebhookApprovalCreationInput/details":"@concat(\u0027An ownership change has been requested.\u0027, decodeUriComponent(\u0027%0A\u0027), decodeUriComponent(\u0027%0A\u0027), \u0027Qualifying activity in the last \u0027, outputs(\u0027Set_window_days\u0027), \u0027 days:\u0027, decodeUriComponent(\u0027%0A\u0027), \u0027  Claimant: \u0027, outputs(\u0027Set_counts\u0027)[\u0027claimant\u0027], decodeUriComponent(\u0027%0A\u0027), \u0027  Current owner: \u0027, outputs(\u0027Set_counts\u0027)[\u0027currentOwner\u0027], decodeUriComponent(\u0027%0A\u0027), decodeUriComponent(\u0027%0A\u0027), \u0027Suggested sales credit split:\u0027, decodeUriComponent(\u0027%0A\u0027), \u0027  Claimant: \u0027, formatNumber(div(outputs(\u0027Set_split\u0027)[\u0027claimantPct\u0027], 100), \u0027F2\u0027), \u0027 percent\u0027, decodeUriComponent(\u0027%0A\u0027), \u0027  Current owner: \u0027, formatNumber(div(outputs(\u0027Set_split\u0027)[\u0027currentOwnerPct\u0027], 100), \u0027F2\u0027), \u0027 percent\u0027, decodeUriComponent(\u0027%0A\u0027), decodeUriComponent(\u0027%0A\u0027), \u0027Won orders closing inside the dispute window: \u0027, outputs(\u0027Set_counts\u0027)[\u0027ordersInDispute\u0027], decodeUriComponent(\u0027%0A\u0027), decodeUriComponent(\u0027%0A\u0027), \u0027Justification from the claimant:\u0027, decodeUriComponent(\u0027%0A\u0027), coalesce(triggerOutputs()?[\u0027body/sb_justification\u0027], \u0027None supplied\u0027))","WebhookApprovalCreationInput/itemLink":"@concat(\u0027https://<your-org>.crm.dynamics.com/main.aspx?pagetype=entityrecord\u0026etn=sb_ownershipchangerequest\u0026id=\u0027, triggerOutputs()?[\u0027body/sb_ownershipchangerequestid\u0027])","WebhookApprovalCreationInput/itemLinkDescription":"Open the ownership change request"},"authentication":"@parameters(\u0027$authentication\u0027)"}},"Was_level_1_approved":{"runAfter":{"Level_1_approval":["Succeeded"]},"type":"If","expression":{"equals":["@outputs(\u0027Level_1_approval\u0027)?[\u0027body/outcome\u0027]","Approve"]},"actions":{"Record_L1_approval":{"runAfter":{},"type":"OpenApiConnection","inputs":{"host":{"connectionName":"shared_commondataserviceforapps","operationId":"UpdateRecord","apiId":"/providers/Microsoft.PowerApps/apis/shared_commondataserviceforapps"},"parameters":{"entityName":"sb_ownershipchangerequests","recordId":"@triggerOutputs()?[\u0027body/sb_ownershipchangerequestid\u0027]","item/sb_l1decision":100000000,"item/sb_l1comments":"@coalesce(first(outputs(\u0027Level_1_approval\u0027)?[\u0027body/responses\u0027])?[\u0027comments\u0027], \u0027Approved with no comment.\u0027)","item/sb_l1decidedon":"@utcNow()","item/sb_status":100000002},"authentication":"@parameters(\u0027$authentication\u0027)"}},"Get_L2_approver":{"runAfter":{"Record_L1_approval":["Succeeded"]},"type":"OpenApiConnection","inputs":{"host":{"connectionName":"shared_commondataserviceforapps","operationId":"GetItem","apiId":"/providers/Microsoft.PowerApps/apis/shared_commondataserviceforapps"},"parameters":{"entityName":"systemusers","recordId":"@triggerOutputs()?[\u0027body/_sb_l2approver_value\u0027]","$select":"internalemailaddress,fullname"},"authentication":"@parameters(\u0027$authentication\u0027)"}},"Level_2_approval":{"runAfter":{"Get_L2_approver":["Succeeded"]},"type":"OpenApiConnectionWebhook","inputs":{"host":{"connectionName":"shared_approvals","operationId":"StartAndWaitForAnApproval","apiId":"/providers/Microsoft.PowerApps/apis/shared_approvals"},"parameters":{"approvalType":"Basic","WebhookApprovalCreationInput/title":"@concat(\u0027Ownership change request \u0027, triggerOutputs()?[\u0027body/sb_name\u0027], \u0027 - level 2 approval for \u0027, body(\u0027Get_L2_approver\u0027)?[\u0027fullname\u0027])","WebhookApprovalCreationInput/assignedTo":"@if(empty(outputs(\u0027Set_approval_recipient\u0027)), body(\u0027Get_L2_approver\u0027)?[\u0027internalemailaddress\u0027], outputs(\u0027Set_approval_recipient\u0027))","WebhookApprovalCreationInput/details":"@concat(\u0027Level 1 approved this ownership change.\u0027, decodeUriComponent(\u0027%0A\u0027), decodeUriComponent(\u0027%0A\u0027), \u0027Level 1 comment: \u0027, coalesce(first(outputs(\u0027Level_1_approval\u0027)?[\u0027body/responses\u0027])?[\u0027comments\u0027], \u0027None\u0027), decodeUriComponent(\u0027%0A\u0027), decodeUriComponent(\u0027%0A\u0027), \u0027Suggested sales credit split - claimant \u0027, formatNumber(div(outputs(\u0027Set_split\u0027)[\u0027claimantPct\u0027], 100), \u0027F2\u0027), \u0027 percent, current owner \u0027, formatNumber(div(outputs(\u0027Set_split\u0027)[\u0027currentOwnerPct\u0027], 100), \u0027F2\u0027), \u0027 percent, calculated on a \u0027, outputs(\u0027Set_window_days\u0027), \u0027 day activity window.\u0027, decodeUriComponent(\u0027%0A\u0027), decodeUriComponent(\u0027%0A\u0027), \u0027Won orders closing inside the dispute window: \u0027, outputs(\u0027Set_counts\u0027)[\u0027ordersInDispute\u0027], \u0027. Credit for those orders does not transfer automatically.\u0027)","WebhookApprovalCreationInput/itemLink":"@concat(\u0027https://<your-org>.crm.dynamics.com/main.aspx?pagetype=entityrecord\u0026etn=sb_ownershipchangerequest\u0026id=\u0027, triggerOutputs()?[\u0027body/sb_ownershipchangerequestid\u0027])","WebhookApprovalCreationInput/itemLinkDescription":"Open the ownership change request"},"authentication":"@parameters(\u0027$authentication\u0027)"}},"Was_level_2_approved":{"runAfter":{"Level_2_approval":["Succeeded"]},"type":"If","expression":{"equals":["@outputs(\u0027Level_2_approval\u0027)?[\u0027body/outcome\u0027]","Approve"]},"actions":{"Reassign_the_account":{"runAfter":{},"type":"OpenApiConnection","inputs":{"host":{"connectionName":"shared_commondataserviceforapps","operationId":"UpdateRecord","apiId":"/providers/Microsoft.PowerApps/apis/shared_commondataserviceforapps"},"parameters":{"entityName":"accounts","recordId":"@triggerOutputs()?[\u0027body/_sb_account_value\u0027]","item/ownerid@odata.bind":"@concat(\u0027/systemusers(\u0027, triggerOutputs()?[\u0027body/_sb_requestedby_value\u0027], \u0027)\u0027)"},"authentication":"@parameters(\u0027$authentication\u0027)"},"description":"The only place the account owner changes. A CSM cannot do this directly."},"Record_final_approval":{"runAfter":{"Reassign_the_account":["Succeeded"]},"type":"OpenApiConnection","inputs":{"host":{"connectionName":"shared_commondataserviceforapps","operationId":"UpdateRecord","apiId":"/providers/Microsoft.PowerApps/apis/shared_commondataserviceforapps"},"parameters":{"entityName":"sb_ownershipchangerequests","recordId":"@triggerOutputs()?[\u0027body/sb_ownershipchangerequestid\u0027]","item/sb_l2decision":100000000,"item/sb_l2comments":"@coalesce(first(outputs(\u0027Level_2_approval\u0027)?[\u0027body/responses\u0027])?[\u0027comments\u0027], \u0027Approved with no comment.\u0027)","item/sb_l2decidedon":"@utcNow()","item/sb_status":100000003},"authentication":"@parameters(\u0027$authentication\u0027)"}},"Post_the_decision_to_the_account_timeline":{"runAfter":{"Record_final_approval":["Succeeded"]},"type":"OpenApiConnection","inputs":{"host":{"connectionName":"shared_commondataserviceforapps","operationId":"CreateRecord","apiId":"/providers/Microsoft.PowerApps/apis/shared_commondataserviceforapps"},"parameters":{"entityName":"annotations","item/subject":"@concat(\u0027Ownership transferred - request \u0027, triggerOutputs()?[\u0027body/sb_name\u0027])","item/notetext":"@concat(\u0027Ownership change request \u0027, triggerOutputs()?[\u0027body/sb_name\u0027], \u0027 was approved.\u0027, decodeUriComponent(\u0027%0A\u0027), decodeUriComponent(\u0027%0A\u0027), \u0027Level 1 (\u0027, body(\u0027Get_L1_approver\u0027)?[\u0027fullname\u0027], \u0027): \u0027, coalesce(first(outputs(\u0027Level_1_approval\u0027)?[\u0027body/responses\u0027])?[\u0027comments\u0027], \u0027No comment\u0027), decodeUriComponent(\u0027%0A\u0027), \u0027Level 2 (\u0027, body(\u0027Get_L2_approver\u0027)?[\u0027fullname\u0027], \u0027): \u0027, coalesce(first(outputs(\u0027Level_2_approval\u0027)?[\u0027body/responses\u0027])?[\u0027comments\u0027], \u0027No comment\u0027), decodeUriComponent(\u0027%0A\u0027), decodeUriComponent(\u0027%0A\u0027), \u0027Sales credit split applied - claimant \u0027, formatNumber(div(outputs(\u0027Set_split\u0027)[\u0027claimantPct\u0027], 100), \u0027F2\u0027), \u0027 percent, previous owner \u0027, formatNumber(div(outputs(\u0027Set_split\u0027)[\u0027currentOwnerPct\u0027], 100), \u0027F2\u0027), \u0027 percent, on a \u0027, outputs(\u0027Set_window_days\u0027), \u0027 day activity window.\u0027, decodeUriComponent(\u0027%0A\u0027), \u0027Won orders closing inside the dispute window: \u0027, outputs(\u0027Set_counts\u0027)[\u0027ordersInDispute\u0027], \u0027. Credit for those orders remains with the owner at time of close.\u0027)","item/objectid_account@odata.bind":"@concat(\u0027/accounts(\u0027, triggerOutputs()?[\u0027body/_sb_account_value\u0027], \u0027)\u0027)"},"authentication":"@parameters(\u0027$authentication\u0027)"}}},"else":{"actions":{"Record_L2_rejection":{"runAfter":{},"type":"OpenApiConnection","inputs":{"host":{"connectionName":"shared_commondataserviceforapps","operationId":"UpdateRecord","apiId":"/providers/Microsoft.PowerApps/apis/shared_commondataserviceforapps"},"parameters":{"entityName":"sb_ownershipchangerequests","recordId":"@triggerOutputs()?[\u0027body/sb_ownershipchangerequestid\u0027]","item/sb_l2decision":100000001,"item/sb_l2comments":"@coalesce(first(outputs(\u0027Level_2_approval\u0027)?[\u0027body/responses\u0027])?[\u0027comments\u0027], \u0027Rejected with no comment.\u0027)","item/sb_l2decidedon":"@utcNow()","item/sb_status":100000004},"authentication":"@parameters(\u0027$authentication\u0027)"}}}}}},"else":{"actions":{"Record_L1_rejection":{"runAfter":{},"type":"OpenApiConnection","inputs":{"host":{"connectionName":"shared_commondataserviceforapps","operationId":"UpdateRecord","apiId":"/providers/Microsoft.PowerApps/apis/shared_commondataserviceforapps"},"parameters":{"entityName":"sb_ownershipchangerequests","recordId":"@triggerOutputs()?[\u0027body/sb_ownershipchangerequestid\u0027]","item/sb_l1decision":100000001,"item/sb_l1comments":"@coalesce(first(outputs(\u0027Level_1_approval\u0027)?[\u0027body/responses\u0027])?[\u0027comments\u0027], \u0027Rejected with no comment.\u0027)","item/sb_l1decidedon":"@utcNow()","item/sb_status":100000004},"authentication":"@parameters(\u0027$authentication\u0027)"}}}}},"Initialize_disputed_revenue":{"runAfter":{"Find_orders_in_the_dispute_window":["Succeeded"]},"type":"InitializeVariable","inputs":{"variables":[{"name":"disputedRevenue","type":"float","value":0}]}},"Sum_disputed_revenue":{"runAfter":{"Initialize_disputed_revenue":["Succeeded"]},"type":"Foreach","foreach":"@body(\u0027Find_orders_in_the_dispute_window\u0027)?[\u0027value\u0027]","actions":{"Add_order_value":{"runAfter":{},"type":"IncrementVariable","inputs":{"name":"disputedRevenue","value":"@coalesce(item()?[\u0027actualvalue\u0027], 0)"}}},"description":"Power Automate has no sum() expression function, so the revenue in the dispute window is accumulated in a variable."},"Get_the_approval_routing_override":{"runAfter":{"Get_the_activity_window_setting":["Succeeded"]},"type":"OpenApiConnection","inputs":{"host":{"connectionName":"shared_commondataserviceforapps","operationId":"ListRecords","apiId":"/providers/Microsoft.PowerApps/apis/shared_commondataserviceforapps"},"parameters":{"entityName":"environmentvariabledefinitions","$filter":"schemaname eq \u0027sb_ApprovalRoutingOverride\u0027","$select":"defaultvalue,schemaname","$expand":"environmentvariabledefinition_environmentvariablevalue($select=value)"},"authentication":"@parameters(\u0027$authentication\u0027)"},"description":"Demo routing. When this environment variable holds an address, approvals are delivered there instead of to the named approver. The record and timeline still show the real approver."},"Set_approval_recipient":{"runAfter":{"Get_the_approval_routing_override":["Succeeded"]},"type":"Compose","inputs":"@trim(coalesce(first(coalesce(first(body(\u0027Get_the_approval_routing_override\u0027)?[\u0027value\u0027])?[\u0027environmentvariabledefinition_environmentvariablevalue\u0027], json(\u0027[]\u0027)))?[\u0027value\u0027], first(body(\u0027Get_the_approval_routing_override\u0027)?[\u0027value\u0027])?[\u0027defaultvalue\u0027], \u0027\u0027))"}}}},"schemaVersion":"1.0.0.0"}