Update Task

Lenders can trigger service orders to partners using workflow rules. When a rule is triggered by a newly created task in Encompass, the partner receives the ID of the new task in the webhook notification. The partner can then use the UPDATE_TASK result action to update or close the task.

Prerequisites

To use the action in a transaction PATCH, the product must be entitled to the UPDATE_TASK action. To entitle a product, add the action to the response.results array of the relevant request type within $.entitlements.data.transaction:

{
  "action": "UPDATE_TASK",
  "formats": [
    "application/vnd.task.update-1.0.0.json"
  ]
}

The fields included in the response loan data follow the standard data entitlement model and process.

{
   "status": "processing",
   "loanFormat": "application/vnd.plm-2.0.0+json",
   "loan": {
      ... // Additional loan data, sent as part of standard transaction loan update
   },
   "result": {
      "format": "application/vnd.task.update-1.0.0.json",
      "action": "UPDATE_TASK",
      "details": {
         ... // Update task action details
      }
   },
   "partnerStatus": "partner status"
}

format and action

The Encompass Partner Connect (EPC) Platform uses $.result.format and $.result.action to determine how to process the action details in the transaction PATCH payload. Make sure you specify the following values:

{
  "format": "application/vnd.task.update-1.0.0.json",
  "action": "UPDATE_TASK"
}

Fields in the UPDATE_TASK result action

FieldAdditional Information
$.result.details.idRequired. The unique identifier of the task, communicated in the transaction creation webhook.
$.result.details.statusRequired. The status to set on the task. Allowed values: IN_PROGRESS, COMPLETED.
$.result.details.commentOptional. A comment associated with the task update.

The complete list of supported fields in the UPDATE_TASK action details object is defined in the JSON schema below. You can use online tools such as JSON Schema Validator to manually validate the contents of a details object.

{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "properties": {
    "id": {
      "type": "string",
      "description": "The unique identifier for the task."
    },
    "status": {
      "type": "string",
      "enum": [
        "IN_PROGRESS",
        "COMPLETED"
      ],
      "description": "The current status of the task."
    },
    "comment": {
      "type": "string",
      "description": "An optional comment associated with the task."
    }
  },
  "required": [
    "id",
    "status"
  ],
  "additionalProperties": false
}

Below is a sample update task request payload with all of the supported fields:

{
    "status": "processing",
    "loanFormat": "application/vnd.plm-2.0.0+json",
    "result": {
        "format": "application/vnd.task.update-1.0.0.json",
        "action": "UPDATE_TASK",
        "details": {
            "id": "cbb20fc3-ddd6-4d71-8776-599636194822",
            "status": "IN_PROGRESS",
            "comment": "Team still working on it"
        }
    },
    "partnerStatus": "partner status"
}