NOTE: Packages APIs currently **require** enablement from Blend Support. Package APIs are applicable to API versions 3.3.0 and above. Please email [[email protected]](🔗) for assistance.
Blend provides lenders the ability to post Disclosure packages for consumer(s) to view and sign. The package types can include any loan estimates, initial or closing Disclosures, and other Disclosure document packages that the consumer will need to view and/or sign in Blend’s disclosures experience.
This guide is meant for gathering all the proper information to post a proper disclosures package. However, in order to post a disclosures package into Blend, there are a few steps to take prior to ensure the packages are assigned to the correct recipients. Please refer to the [Blend API Reference Guide](🔗) for more in-depth documentation on individual API endpoints to get started with building against Blend’s APIs.
## Authorization
For your app or your requests to be approved for access, you will need to authorize your application. Your app can be authorized for Blend’s API through issued credentials. Please contact [[email protected]](🔗) in order to obtain the necessary credentials.
## Inputs required for posting a new disclosures package
Disclosures packages have a few inputs that are required in order to allow for Blend to know how to issue properly. These inputs, as well as how to retrieve them, are as follows.
## Recipients
Disclosures packages need to be assigned to individual recipients. You will need to find the individual recipients that exist on the application in order to issue. The application ID is just the ID of individual application for which you are trying to issue the disclosures package. The party IDs can be found on the id fields under the party objects.
## Recipient E-Consent
If consumer eConsent status needs to be ensured before issuing disclosures packages, it is recommended to check that status immediately before sending documents or document packages to Blend in order to retrieve the most updated status.
This call will respond with a JSON representation of the application object. The eConsent status of the consumers can be obtained at the following path.
## Tabs
The following DocuSign tab types are supported for all package recipients and expose a subset of the fields for configuration via the API. The exposed fields and sample inputs are documented below.
Additional reference materials and the full list of valid input values per field can be found in Docusign’s API guides below.
[Tab Types](🔗)
[Envelope Creation](🔗)
## Tab Extraction from Embedded Fields
Blend can extract DocuSign tabs from documents that have certain types of embedded fields. This means that, if you have the right kind of documents, you can have Blend extract the tabs from the documents themselves instead of specifying the tabs yourself in the disclosures package POST request. If you are not sure if your documents have embedded fields or what type of embedded fields they have, contact [[email protected]](🔗) to find out if your Blend supports tab extraction for your document type(s). Currently, Blend supports tab extraction for documents from Wolters Kluwer's Expere and Ellie Mae's Encompass. In order to leverage Blend's tab extraction, include the following in your POST Package request, in the corresponding document object:
## Posting documents relevant to the package
Disclosures packages in Blend are a collection of documents meant for further action to be taken by various recipients. Therefore, in order for the package to be issued to the recipients defined above, the set of required documents meant for further action will need to be posted. Documents are posted as follows:
More information and an example can be found in the documents API documentation: https://developers.blend.com/blend/reference#post-document
For the purposes of this guide, the piece of the response that is needed for disclosures package creation is the id field. These are each of the document ID that will need to be associated with the disclosures packages, each of which refer to the corresponding documents that have been posted into Blend.
## Posting a new disclosures package
Now that all of the necessary information has been obtained, the request can be easily constructed. The response is going to a JSON object containing a ID with a GUID value, which is the ID of the new package that has just been created.
A sample request has been constructed below, as an example, along with a sample response. Full API documentation for this endpoint can be found here: https://developers.blend.com/blend/v3.3.0/reference#post-a-disclosures-packages
Request fields descriptions:
`
type
` is the type of disclosures package. The options here are: `OTHER_DISCLOSURE
`, `INITIAL_LOAN_ESTIMATE
`, `REVISED_LOAN_ESTIMATE
`, `CLOSING_DISCLOSURE
`, `REVISED_CLOSING_DISCLOSURE
``
name
` is the name of the disclosures package. It is usually there for a package of type `OTHER_DISCLOSURE
``
description
` is a string that describes what the package does`
foreignPackageId
` is a ID that is used by foreign systems to refer to the disclosures package.`
applicationId
` is the ID of the Blend loan application that this disclosures package belongs to`
envelopes
` are a representation of documents within Blend, split up by the necessary actions that need to be taken on them by the recipients. For example, there are e-sign envelopes and wetsign envelopes. E-sign envelopes contain documents that need to be electronically viewed and signed, while wetsign envelopes are documents that need to be physically signed and re-uploaded.`
providerType
` is the classification of the envelope based on the kind of documents it holds. The options here are `ESIGN
` and `WETSIGN
`, the differences of which are addressed above.`
recipients
` are the individuals who need to receive the documents in this specific envelope, NOT all of the recipients on the package.`
partyId
` is the ID of the recipient party. A list of recipients, as mentioned earlier in the guide, can be found through the `GET /home-lending/applications/:applicationID
` endpoint.`
metadata
` is the metadata for each of the documents`
documentIds
` is a metadata field specific to the `WETSIGN
` envelope. These are the document IDs for the documents that need to be associated with this disclosures package. The IDs are obtained by posting the documents into Blend and then receiving the autogenerated Blend IDs from the response of the `POST /documents
` call.`
documents
` is a metadata field specific to the `ESIGN
` envelope. This holds a list of documents, each with a document ID and a list of tabs for possible actions by the signees.`
documentId
` is the document ID for documents that need to be associated with this disclosures package. The IDs are obtained by posting the documents into Blend and then receiving the autogenerated Blend IDs from the response of the `POST /documents
` call.`
tabs
` are a set of coordinates, as described earlier, meant to dictate locations on each document where certain actions are to be taken by recipients.
Request fields descriptions:
`
_id
` is the Blend autogenerated GUID that points to the package that was just posted with the corresponding request.
## Getting event updates
After successfully posting a disclosures package, you should be able to register your application to get events for these disclosures packages.
More about our event notification system and requesting access for receiving events from it can be found here: https://developers.blend.com/blend/docs/getting-started
Example events for disclosures packages updates can be found here: https://developers.blend.com/blend/v3.3.0/docs/package-events
## Checking package status
The status and other metadata of a particular disclosures package can be retrieved through APIs.
If you know the disclosures package ID:
However, if you do not have the disclosures package ID, you will be able to pull multiple disclosures packages based on a specific application (along with other params).
Application Query:
## Marking packages as papered out
When disclosures packages are papered out rather than electronically delivered, marking them as such is supported.
## Cancelling packages
Cancelling existing disclosures packages through the API is supported.