<!-- https://staircase.co/products/verification/asset -->
# Asset

# Asset

Borrower bank and asset verification over several account-data vendors, returning canonical account and balance records.

A caller sends a borrower and receives account records: institution, account type, balances, and the transaction history a verification report covers. The ordering below is the committed sequence.

## How it works

One vendor had no webhook. Its verification is long-running, and the vendor's own guidance was to poll — which would have put a polling loop inside every caller.

The integration was split into three declarative flows instead: a main flow, a status-checking flow that polls on an interval, and an on-demand status call. When the status flow sees completion it emits the webhook message the main flow was waiting for. The main flow is written as though the webhook exists.

The reason that matters is what happens next: when the vendor ships the real webhook, the two supporting flows are deleted and the main flow is unchanged. The emulation was built to be removable, and the design note on disk says so.

## Operations

<!--source:api-specifications-->

### Platform
<!--/source-->

`PUT` `/blobs/{blob_id}/presigned-urls/{action}`

<!--source:api-specifications-->

#### Create Report Download URL
<!--/source-->

`createPresignedUrl`

<!--source:api-specifications-->
Create Report Download URL creates a presigned URL in Staircase. It expires one hour after creation.

If partner provides a report in the documents, you can generate a download url with using staircase blob ID.

<!--/source-->

##### Response

<!--source:api-specifications-->
200 ExampleUpload200 ExampleDownload403
<!--/source-->

<!--source:api-specifications-->
application/json Copy Presigned URL created successfully.

```
{
 "upload": {
 "url": "https://dev-data-manager-blobs-bucket.s3.amazonaws.com/01EZY9J8SEFM2JKDJ1Q3YX65HS"
 }
}
```

<!--/source-->

<!--source:api-specifications-->
application/json Copy Presigned URL created successfully.

```
{
 "download": {
 "url": "https://dev-data-manager-blobs-bucket.s3.amazonaws.com/01EZY9J8SEFM2JKDJ1Q3YX65HS"
 }
}
```

<!--/source-->

<!--source:api-specifications-->
application/json Copy 403 invalid error

```
{
 "message": "Please check the key you used to call this service",
 "url": "https://api.staircase.co/docs/api-reference/customer-account-manager-service.yml/paths/~1products~1refresh/post"
}
```

<!--/source-->

##### Parameters

<!--source:api-specifications-->
3
<!--/source-->

| Parameter | Type | Example | Description |
| --- | --- | --- | --- |
| `x-api-key` required | `string` header | `xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx` | <!--source:api-specifications-->Environment API Key.<!--/source--> |
| `blob_id` required | `string` path | `01EZY9J8SEFM2JKDJ1Q3YX65HS` | <!--source:api-specifications-->Blob identifier<!--/source--> |
| `action` required | `string` path | `upload` | <!--source:api-specifications-->Action, one of one of ['upload', 'download']<!--/source--> |

##### Response `200``application/json`

<!--source:api-specifications-->
2 fields
<!--/source-->
<!--source:api-specifications-->
Presigned URL created successfully.
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `upload` | `object` | <!--source:api-specifications-->Action<!--/source--> |
| `url` | `string` | <!--source:api-specifications-->Presigned_url<!--/source--> |
| `download` | `object` | <!--source:api-specifications-->Action<!--/source--> |
| `url` | `string` | <!--source:api-specifications-->Presigned_url<!--/source--> |

##### Response `403``application/json`

<!--source:api-specifications-->
2 fields
<!--/source-->
<!--source:api-specifications-->
403 invalid error
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `message` | `string` | <!--source:api-specifications-->Error message.<!--/source--> |
| `url` | `string` | <!--source:api-specifications-->Error additional URL.<!--/source--> |

##### Other responses

`400``404`

`GET` `/response-elements`

<!--source:api-specifications-->

#### Retrieve Response Elements
<!--/source-->

`responseElements`

<!--source:api-specifications-->
Retrieve Response Elements provides a list of elements that will be returned by a partner performing verification of assets.

<!--/source-->

##### Response

<!--source:api-specifications-->
403404500502
<!--/source-->

<!--source:api-specifications-->
application/json Copy Invalid key for service

```
{
 "message": "Please check the key you used to call this service",
 "url": "https://api.staircase.co/docs/DevOps/Distribute/Account/get-retrieve-credentials"
}
```

<!--/source-->

<!--source:api-specifications-->
application/json Copy Resource not found

```
{
 "message": "Unable to get collections of given transaction. Please check the transaction id"
}
```

<!--/source-->

<!--source:api-specifications-->
application/json Copy The product has encountered an internal server error. If possible, please contact Staircase support with the transaction_id you used.

```
{
 "message": "The product has encountered an internal server error. If you have used a transaction_id to call our services, please submit it to Staircase support"
}
```

<!--/source-->

<!--source:api-specifications-->
application/json Copy Bad gateway.

```
{
 "message": "Internal server error."
}
```

<!--/source-->

##### Response `200``application/json`

<!--source:api-specifications-->
2 fields
<!--/source-->
<!--source:api-specifications-->
Elements retrieved successfully
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `path` | `string` | <!--source:api-specifications-->Contains the path in Staircase language<!--/source--> |
| `value` | `string` | <!--source:api-specifications-->Enter your own values here<!--/source--> |

##### Response `403``application/json`

<!--source:api-specifications-->
2 fields
<!--/source-->
<!--source:api-specifications-->
Invalid key for service
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `message` | `string` | — |
| `url` | `string` | — |

##### Response `404``application/json`

<!--source:api-specifications-->
1 fields
<!--/source-->
<!--source:api-specifications-->
Resource not found
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `message` | `string` | <!--source:api-specifications-->Message<!--/source--> |

##### Response `500``application/json`

<!--source:api-specifications-->
1 fields
<!--/source-->
<!--source:api-specifications-->
The product has encountered an internal server error. If possible, please contact Staircase support with the transaction_id you used.
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `message` | `string` | — |

##### Response `502``application/json`

<!--source:api-specifications-->
1 fields
<!--/source-->
<!--source:api-specifications-->
Bad gateway.
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `message` | `string` | <!--source:api-specifications-->Error Message.<!--/source--> |

`GET` `/products/asset/schema/{data_object}`

<!--source:api-specifications-->

#### Retrieve Product Schema
<!--/source-->

`retrieveProductSchema`

<!--source:api-specifications-->
Retrieve Product Schema retrieves a JSON schema for the request and response collection that you can provide to the invocation. If you'd like to retrieve some examples for the request or response collection, use `return_examples=True` query parameter.

#### Product Schema Collection Description

##### Borrower

| Lexicon Path | Description |
| --- | --- |
| $.people[0].@type | Type of person (borrower) |
| $.people[0].has_first_name |  |
| .has_value | The first name of the individual represented by the parent object. |
| $.people[0].has_last_name |  |
| .has_value | The last naShow the restme of the individual represented by the parent object. |
| $.people[0].has_birth_date |  |
| .has_value | Borrower's date of birth. Collected in lieu of AGE in URLA, Section III, second line, third field. |
| $.people[0].has_taxpayer_identifier_value |  |
| .has_value | The specific value of the taxpayer identifier as assigned by the Internal Revenue Service (IRS) to the individual or legal entity. |
| $.people[0].with_address | Address Information |
| $.people[0].contact_at | Contact Information |

##### Address

| Lexicon Path | Description |
| --- | --- |
| $.addresses[0].@type | Type of address (residential_address) |
| $.people[0].has_address_line_1_text |  |
| .has_value | Address Line 1 |
| $.people[0].has_address_line_2_text |  |
| .has_value | Address Line 2 |
| $.people[0].has_city_name |  |
| .has_value | The name of the city or Military APO FPO designation. |
| $.people[0].has_state_code |  |
| .has_value | The two-character representation of the US state, US Territory, Canadian Province/Territory, or Military Address abbreviation (for example: AE, AP, AA). |
| $.people[0].has_postal_code |  |
| .has_value | The postal code (ZIP Code in the US) for the address. ZIP Code may be either 5 or 9 digits. |
| $.people[0].has_country_name |  |
| .has_value | The name of the country. |

##### Contact

| Lexicon Path | Description |
| --- | --- |
| $.contact_information[0].@type | organization |
| $.contact_information[0].has_phone_number |  |
| .has_value | Borrowers Phone Number |
| $.contact_information[0].has_email_address |  |
| .has_value | Borrowers Email |

<!--/source-->

##### Response

<!--source:api-specifications-->
200400 InvalidReturnExamplesValue400 text/html403404 GetProduct404 text/html500
<!--/source-->

<!--source:api-specifications-->
application/json Copy Successfully returned the list of elements needed for product waterfall.

```
{
 "data": {
 "example": {
 "people": [
 {
 "@id": "01FD6ZKZD7WGZXYFGJBVPVP2Q5",
 "has_first_name": {
 "has_value": "John"
 },
 "has_last_name": {
 "has_value": "Jackson"
 },
 "has_birth_date": {
 "has_value": "12/28/1958"
 },
 "has_taxpayer_identifier_value": {
 "has_value": "666234390"
 },
 "with_address": [
 "01FD6ZNGJADZ0RB1H96FSE8BAB"
 ],
 "contact_at": [
 "01FD6ZNGJW9X96WGWX2BD37CFY"
 ]
 }
 ],
 "addresses": [
 {
 "@id": "01FD6ZNGJADZ0RB1H96FSE8BAB",
 "@type": "address",
 "has_address_line_1_text": {
 "has_value": "33 IRVING PLACE"
 },
 "has_address_line_2_text": {
 "has_value": "a"
 },
 "has_city_name": {
 "has_value": "NEW YORK"
 },
 "has_state_code": {
 "has_value": "NY"
 },
 "has_postal_code": {
 "has_value": "10003"
 },
 "has_country_name": {
 "has_value": "US"
 }
 }
 ],
 "contact_information": [
 {
 "@id": "01FD6ZNGJW9X96WGWX2BD37CFY",
 "@type": "contact_information",
 "has_email_address": {
 "has_value": "test@test.com"
 }
 }
 ],
 "employment": [
 {
 "provided_by": [
 "01FD6ZNGME8E1JFD342F7WDK8V"
 ]
 }
 ],
 "loans": [
 {
 "with_borrower": [
 "01FD6ZKZD7WGZXYFGJBVPVP2Q5"
 ]
 }
 ],
 "organizations": [
 {
 "@id": "01FD6ZNGNFKY3B7CX0YN6NH56E",
 "@type": "customer"
 }
 ]
 }
 },
 "metadata": {}
}
```

<!--/source-->

<!--source:api-specifications-->
application/json Copy Error

```
{
 "message": "Please provide one of valid return examples values: true, false"
}
```

<!--/source-->

<!--source:api-specifications-->
text/html Copy Error

```
<html>\r\n<head><title>400 Bad Request</title></head>\r\n<body>\r\n<center><h1>400 Bad Request</h1></center>\r\n</body>\r\n</html>\r\n
```

<!--/source-->

<!--source:api-specifications-->
application/json Copy 403 invalid error

```
{
 "message": "Please check the key you used to call this service",
 "url": "https://api.staircase.co/docs/api-reference/customer-account-manager-service.yml/paths/~1products~1refresh/post"
}
```

<!--/source-->

<!--source:api-specifications-->
application/json Copy Resource not found

```
{
 "type": "string",
 "description": "Error Message."
}
```

<!--/source-->

<!--source:api-specifications-->
text/html Copy Resource not found

```
<html>\r\n<head><title>400 Bad Request</title></head>\r\n<body>\r\n<center><h1>400 Bad Request</h1></center>\r\n</body>\r\n</html>\r\n
```

<!--/source-->

<!--source:api-specifications-->
application/json Copy Internal server error

```
{
 "message": "The product has encountered an internal server error. If you have used a transaction_id to call our services, please submit it to Staircase support"
}
```

<!--/source-->

##### Parameters

<!--source:api-specifications-->
3
<!--/source-->

| Parameter | Type | Example | Description |
| --- | --- | --- | --- |
| `x-api-key` required | `string` header | `xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx` | <!--source:api-specifications-->Environment API Key.<!--/source--> |
| `data_object` required | `string` path | `request` | <!--source:api-specifications-->Data Object<!--/source--> |
| `return_examples` | `boolean` query | `false` | <!--source:api-specifications-->If included and set to `true`, returns one or more pre-filled examples that conform to the schema. Default to `false`<!--/source--> |

##### Response `200``application/json`

<!--source:api-specifications-->
1 fields
<!--/source-->
<!--source:api-specifications-->
Successfully returned the list of elements needed for product waterfall.
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `schema` | `object` | <!--source:api-specifications-->Element key / value<!--/source--> |

##### Response `400``application/json`

<!--source:api-specifications-->
1 fields
<!--/source-->
<!--source:api-specifications-->
Error
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `message` | `string` | <!--source:api-specifications-->Message<!--/source--> |

##### Response `403``application/json`

<!--source:api-specifications-->
2 fields
<!--/source-->
<!--source:api-specifications-->
403 invalid error
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `message` | `string` | <!--source:api-specifications-->Error message.<!--/source--> |
| `url` | `string` | <!--source:api-specifications-->Error additional URL.<!--/source--> |

##### Response `404``application/json`

<!--source:api-specifications-->
1 fields
<!--/source-->
<!--source:api-specifications-->
Resource not found
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `message` | `string` | <!--source:api-specifications-->Error Message.<!--/source--> |

##### Response `500``application/json`

<!--source:api-specifications-->
1 fields
<!--/source-->
<!--source:api-specifications-->
Internal server error
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `message` | `string` | <!--source:api-specifications-->Error message.<!--/source--> |

`GET` `/schema/{data_object}`

<!--source:api-specifications-->

#### Retrieve Schema
<!--/source-->

`retrieveSchema`

<!--source:api-specifications-->
Retrieve Schema retrieves a JSON schema for the request and the response returned by the product.

<!--/source-->

##### Response

<!--source:api-specifications-->
400 InvalidDataObject400 InvalidVersionValue400 MissingVersionParameter400 InvalidReturnExamplesValue403404502
<!--/source-->

<!--source:api-specifications-->
application/json Copy Error

```
{
 "message": "Please provide one of valid data object values: request, response"
}
```

<!--/source-->

<!--source:api-specifications-->
application/json Copy Error

```
{
 "message": "Please provide one of valid version values: v0"
}
```

<!--/source-->

<!--source:api-specifications-->
application/json Copy Error

```
{
 "message": "Please make sure your query parameters contains version parameter."
}
```

<!--/source-->

<!--source:api-specifications-->
application/json Copy Error

```
{
 "message": "Please provide one of valid return examples values: true, false"
}
```

<!--/source-->

<!--source:api-specifications-->
application/json Copy Invalid key for service

```
{
 "message": "Please check the key you used to call this service",
 "url": "https://api.staircase.co/docs/DevOps/Distribute/Account/get-retrieve-credentials"
}
```

<!--/source-->

<!--source:api-specifications-->
application/json Copy Resource not found

```
{
 "message": "Unable to get collections of given transaction. Please check the transaction id"
}
```

<!--/source-->

<!--source:api-specifications-->
application/json Copy Bad gateway.

```
{
 "message": "Internal server error."
}
```

<!--/source-->

##### Parameters

<!--source:api-specifications-->
3
<!--/source-->

| Parameter | Type | Example | Description |
| --- | --- | --- | --- |
| `data_object` required | `string` path | `request` | <!--source:api-specifications-->Describes the particular data object you are getting a schema for.<!--/source--> |
| `return_examples` | `boolean` query | `false` | <!--source:api-specifications-->If included and set to `true`, returns one or more pre-filled examples that conform to the schema. Default to `false`<!--/source--> |
| `version` required | `string` query | `v0` | <!--source:api-specifications-->Defines the version of the Staircase language you want the JSON to return in.<!--/source--> |

##### Response `200``application/json`

<!--source:api-specifications-->
1 fields
<!--/source-->
<!--source:api-specifications-->
Successfully returned the list of elements needed for AUS.
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `schema` | `object` | — |

##### Response `400``application/json`

<!--source:api-specifications-->
1 fields
<!--/source-->
<!--source:api-specifications-->
Error
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `message` | `string` | <!--source:api-specifications-->Message<!--/source--> |

##### Response `403``application/json`

<!--source:api-specifications-->
2 fields
<!--/source-->
<!--source:api-specifications-->
Invalid key for service
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `message` | `string` | — |
| `url` | `string` | — |

##### Response `404``application/json`

<!--source:api-specifications-->
1 fields
<!--/source-->
<!--source:api-specifications-->
Resource not found
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `message` | `string` | <!--source:api-specifications-->Message<!--/source--> |

##### Response `502``application/json`

<!--source:api-specifications-->
1 fields
<!--/source-->
<!--source:api-specifications-->
Bad gateway.
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `message` | `string` | <!--source:api-specifications-->Error Message.<!--/source--> |

`PUT` `/transactions/{transaction_id}/collections/{collection_id}`

<!--source:api-specifications-->

#### Update Collection
<!--/source-->

`updateCollection`

<!--source:api-specifications-->
Update Collection allows you to update the content of a given collection_id associated with a transaction_id.

<!--/source-->

##### Response

<!--source:api-specifications-->
400403404500502
<!--/source-->

<!--source:api-specifications-->
application/json Copy Error

```
{
 "description": "",
 "message": "Unable to update collection. Please check the collection data"
}
```

<!--/source-->

<!--source:api-specifications-->
application/json Copy Invalid key for service

```
{
 "message": "Please check the key you used to call this service",
 "url": "https://api.staircase.co/docs/DevOps/Distribute/Account/get-retrieve-credentials"
}
```

<!--/source-->

<!--source:api-specifications-->
application/json Copy Resource not found

```
{
 "message": "Unable to update collection. Please check the given ids"
}
```

<!--/source-->

<!--source:api-specifications-->
application/json Copy The product has encountered an internal server error. If possible, please contact Staircase support with the transaction_id you used.

```
{
 "message": "The product has encountered an internal server error. If you have used a transaction_id to call our services, please submit it to Staircase support"
}
```

<!--/source-->

<!--source:api-specifications-->
application/json Copy Bad gateway.

```
{
 "message": "Internal server error."
}
```

<!--/source-->

##### Parameters

<!--source:api-specifications-->
2
<!--/source-->

| Parameter | Type | Example | Description |
| --- | --- | --- | --- |
| `transaction_id` required | `string (ulid)` path | `01F5X9B9JBE958CWAXPB8MNFW1` | <!--source:api-specifications-->Staircase Transaction Identifier<!--/source--> |
| `collection_id` required | `string (ulid)` path | `01F5X9BCPQFR3HS2MQ1EW9X2NZ` | <!--source:api-specifications-->Staircase collection_id<!--/source--> |

##### Request body`application/json`

<!--source:api-specifications-->
2 fields
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `data` | `object` | <!--source:api-specifications-->Staircase collections can hold any type of valid JSON data<!--/source--> |
| `metadata` | `object` | <!--source:api-specifications-->The metadata object describes properties that a Staircase collection has<!--/source--> |
| `created_at` | `string` | Example `03/03/2021, 8:24:04 AM EST` |
| `updated_at` | `string` | Example `03/03/2021, 8:24:04 AM EST` |
| `validation` | `boolean` | <!--source:api-specifications-->Describes whether the collection has been validated against Staircase language schema<!--/source-->Example `false` |
| `partner_name` | `string` | <!--source:api-specifications-->Staircase partner name that was used to generate the collection<!--/source--> |
| `results` | `object` | <!--source:api-specifications-->Contains the results of an operation that generated the collection<!--/source--> |
| `status` | `string` | <!--source:api-specifications-->Describes the state of the operation that generated the collection<!--/source-->`COMPLETED``ERROR``IN_PROGRESS``TIMED_OUT`Example `COMPLETED` |
| `product` | `string` | <!--source:api-specifications-->Name of the Staircase product that generated the collection<!--/source-->Example `Assets` |

##### Response `200``application/json`

<!--source:api-specifications-->
4 fields
<!--/source-->
<!--source:api-specifications-->
Collection updated successfully
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `data` | `object` | — |
| `deal_sets` | `object` | — |
| `deal_set` | `object[]` | — |
| `deals` | `object` | — |
| `metadata` | `object` | <!--source:api-specifications-->The metadata object describes properties that a Staircase collection has<!--/source--> |
| `created_at` | `string` | Example `03/03/2021, 8:24:04 AM EST` |
| `updated_at` | `string` | Example `03/03/2021, 8:24:04 AM EST` |
| `validation` | `boolean` | <!--source:api-specifications-->Describes whether the collection has been validated against Staircase language schema<!--/source-->Example `false` |
| `partner_name` | `string` | <!--source:api-specifications-->Staircase partner name that was used to generate the collection<!--/source--> |
| `results` | `object` | <!--source:api-specifications-->Contains the results of an operation that generated the collection<!--/source--> |
| `status` | `string` | <!--source:api-specifications-->Describes the state of the operation that generated the collection<!--/source-->`COMPLETED``ERROR``IN_PROGRESS``TIMED_OUT`Example `COMPLETED` |
| `product` | `string` | <!--source:api-specifications-->Name of the Staircase product that generated the collection<!--/source-->Example `Assets` |
| `transaction_id` | `string (ulid)` | <!--source:api-specifications-->Staircase Transaction Identifier<!--/source-->Example `01F5X9B9JBE958CWAXPB8MNFW1` |
| `collection_id` | `string (ulid)` | <!--source:api-specifications-->Staircase Collection Identifier<!--/source-->Example `01F5X9BCPQFR3HS2MQ1EW9X2NZ` |

##### Response `400``application/json`

<!--source:api-specifications-->
1 fields
<!--/source-->
<!--source:api-specifications-->
Error
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `message` | `one of` | — |

##### Response `403``application/json`

<!--source:api-specifications-->
2 fields
<!--/source-->
<!--source:api-specifications-->
Invalid key for service
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `message` | `string` | — |
| `url` | `string` | — |

##### Response `404``application/json`

<!--source:api-specifications-->
1 fields
<!--/source-->
<!--source:api-specifications-->
Resource not found
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `message` | `string` | <!--source:api-specifications-->Message<!--/source--> |

##### Response `500``application/json`

<!--source:api-specifications-->
1 fields
<!--/source-->
<!--source:api-specifications-->
The product has encountered an internal server error. If possible, please contact Staircase support with the transaction_id you used.
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `message` | `string` | — |

##### Response `502``application/json`

<!--source:api-specifications-->
1 fields
<!--/source-->
<!--source:api-specifications-->
Bad gateway.
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `message` | `string` | <!--source:api-specifications-->Error Message.<!--/source--> |

<!--source:api-specifications-->

### Blobs
<!--/source-->

`POST` `/blobs/upload`

<!--source:api-specifications-->

#### Update Blob
<!--/source-->

`uploadBlob`

<!--source:api-specifications-->
Upload Blob
<!--/source-->

<!--source:api-specifications-->
Upload Blob allows a customer to upload a document in .pdf form. Upload Blob uploads a .pdf document (blob) to Persistence product.

You can upload PDF using HTML Request Maker Try It Out. Place your api_key in the request header, set the request body to binary and browse to your document. Click Send to upload your document. To upload a document programmatically, use the programmatic upload example below. After the approval document is successfully uploaded, a blob_id value is provided. Example: 'blob_id': '01EZYHKY4EXFW4Z8RKWHDP1KHB' After you got successful response, you need to use the blob_id in collection with the following path.

Show the rest
```
$.document_sets.document_set[0].documents.document[0].foreign_objects.foreign_object[0].staircase_blob_id
```

To upload a document within code, you can to use a below example.

```
import requests

with open("document.pdf", "rb") as document:
 payload = document.read

url = ""
headers = {
 "x-api-key": ...,
 "Content-Type": "application/pdf"
}
response = requests.post(url, headers=headers, data=payload)
if response.ok:
 blob_id = response.json["blob_id"]
```

<!--/source-->

##### Request

<!--source:api-specifications-->
application/octet-stream Copy
```
Select option 'binary' in order to upload file
```

<!--/source-->

##### Response

<!--source:api-specifications-->
201403500
<!--/source-->

<!--source:api-specifications-->
application/json Copy Blob uploaded

```
{
 "blob_id": "01EZY9J8SEFM2JKDJ1Q3YX65HS"
}
```

<!--/source-->

<!--source:api-specifications-->
application/json Copy 403 invalid error

```
{
 "message": "Please check the key you used to call this service",
 "url": "https://staircase.stoplight.io/docs/api-reference/customer-account-manager-service.yml/paths/~1products~1refresh/post"
}
```

<!--/source-->

<!--source:api-specifications-->
application/json Copy Internal server error

```
{
 "message": "The product has encountered an internal server error. If you have used a transaction_id to call our services, please submit it to Staircase support"
}
```

<!--/source-->

##### Parameters

<!--source:api-specifications-->
1
<!--/source-->

| Parameter | Type | Example | Description |
| --- | --- | --- | --- |
| `x-api-key` required | `string` header | `xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx` | <!--source:api-specifications-->Environment API Key.<!--/source--> |

##### Response `201``application/json`

<!--source:api-specifications-->
1 fields
<!--/source-->
<!--source:api-specifications-->
Blob uploaded
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `blob_id` | `string` | <!--source:api-specifications-->Created blob ID<!--/source--> |

##### Response `403``application/json`

<!--source:api-specifications-->
2 fields
<!--/source-->
<!--source:api-specifications-->
403 invalid error
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `message` | `string` | <!--source:api-specifications-->Error message.<!--/source--> |
| `url` | `string` | <!--source:api-specifications-->Error additional URL.<!--/source--> |

##### Response `500``application/json`

<!--source:api-specifications-->
1 fields
<!--/source-->
<!--source:api-specifications-->
Internal server error
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `message` | `string` | <!--source:api-specifications-->Error message.<!--/source--> |

##### Other responses

`400``405``422`

`GET` `/blobs/{blob_id}`

<!--source:api-specifications-->

#### Retrieve Blob
<!--/source-->

`retrieveBlob`

<!--source:api-specifications-->
Retrieve Blob retrieves, for a given blob_id, extension and presigned URLs for uploading and downloading the blob to and from Staircase.

<!--/source-->

##### Response

<!--source:api-specifications-->
200403500
<!--/source-->

<!--source:api-specifications-->
application/json Copy Blob retrieved successfully.

```
{
 "blob_id": "01EZY9ENJGRMTW4S9CS4V1Y6XH",
 "extension": ".pdf",
 "message": "Blob retrieved successfully.",
 "presigned_urls": {
 "upload": {
 "url": "https://dev-data-manager-blobs-bucket-us-east-1-867210375911.s3.amazonaws.com/01EZY9ENJGRMTW4S9CS4V1Y6XH"
 }
 }
}
```

<!--/source-->

<!--source:api-specifications-->
application/json Copy 403 invalid error

```
{
 "message": "Please check the key you used to call this service",
 "url": "https://staircase.stoplight.io/docs/api-reference/customer-account-manager-service.yml/paths/~1products~1refresh/post"
}
```

<!--/source-->

<!--source:api-specifications-->
application/json Copy Internal server error

```
{
 "message": "The product has encountered an internal server error. If you have used a transaction_id to call our services, please submit it to Staircase support"
}
```

<!--/source-->

##### Parameters

<!--source:api-specifications-->
2
<!--/source-->

| Parameter | Type | Example | Description |
| --- | --- | --- | --- |
| `x-api-key` required | `string` header | `xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx` | <!--source:api-specifications-->Environment API Key.<!--/source--> |
| `blob_id` required | `string` path | `01EZY9J8SEFM2JKDJ1Q3YX65HS` | <!--source:api-specifications-->Blob identifier<!--/source--> |

##### Response `200``application/json`

<!--source:api-specifications-->
4 fields
<!--/source-->
<!--source:api-specifications-->
Blob retrieved successfully.
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `blob_id` | `string` | <!--source:api-specifications-->Blob ID<!--/source--> |
| `extension` | `string` | <!--source:api-specifications-->File extension<!--/source--> |
| `message` | `string` | <!--source:api-specifications-->Blob retrieved successfully.<!--/source--> |
| `presigned_urls` | `object` | <!--source:api-specifications-->Presigned URL<!--/source--> |

##### Response `403``application/json`

<!--source:api-specifications-->
2 fields
<!--/source-->
<!--source:api-specifications-->
403 invalid error
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `message` | `string` | <!--source:api-specifications-->Error message.<!--/source--> |
| `url` | `string` | <!--source:api-specifications-->Error additional URL.<!--/source--> |

##### Response `500``application/json`

<!--source:api-specifications-->
1 fields
<!--/source-->
<!--source:api-specifications-->
Internal server error
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `message` | `string` | <!--source:api-specifications-->Error message.<!--/source--> |

##### Other responses

`400``404``405`

`GET` `/blobs/{blob_id}/presigned-urls/{action}`

<!--source:api-specifications-->

#### Retrieve Presigned URL for Action
<!--/source-->

`retrievePresignedUrl`

<!--source:api-specifications-->
Retrieve Presigned URL for Action retrieves a presigned URL for a specific action. An action can be download or upload.

<!--/source-->

##### Response

<!--source:api-specifications-->
200403500
<!--/source-->

<!--source:api-specifications-->
application/json Copy Presigned URL retrieved successfully.

```
{
 "url": "https://dev-data-manager-blobs-bucket.s3.amazonaws.com/01EZY9J8SEFM2JKDJ1Q3YX65HS"
}
```

<!--/source-->

<!--source:api-specifications-->
application/json Copy 403 invalid error

```
{
 "message": "Please check the key you used to call this service",
 "url": "https://staircase.stoplight.io/docs/api-reference/customer-account-manager-service.yml/paths/~1products~1refresh/post"
}
```

<!--/source-->

<!--source:api-specifications-->
application/json Copy Internal server error

```
{
 "message": "The product has encountered an internal server error. If you have used a transaction_id to call our services, please submit it to Staircase support"
}
```

<!--/source-->

##### Parameters

<!--source:api-specifications-->
3
<!--/source-->

| Parameter | Type | Example | Description |
| --- | --- | --- | --- |
| `x-api-key` required | `string` header | `xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx` | <!--source:api-specifications-->Environment API Key.<!--/source--> |
| `blob_id` required | `string` path | `01EZY9J8SEFM2JKDJ1Q3YX65HS` | <!--source:api-specifications-->Blob identifier<!--/source--> |
| `action` required | `string` path | `upload` | <!--source:api-specifications-->Possible actions: - upload - download<!--/source--> |

##### Response `200``application/json`

<!--source:api-specifications-->
1 fields
<!--/source-->
<!--source:api-specifications-->
Presigned URL retrieved successfully.
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `url` | `string` | <!--source:api-specifications-->Presigned url<!--/source--> |

##### Response `403``application/json`

<!--source:api-specifications-->
2 fields
<!--/source-->
<!--source:api-specifications-->
403 invalid error
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `message` | `string` | <!--source:api-specifications-->Error message.<!--/source--> |
| `url` | `string` | <!--source:api-specifications-->Error additional URL.<!--/source--> |

##### Response `500``application/json`

<!--source:api-specifications-->
1 fields
<!--/source-->
<!--source:api-specifications-->
Internal server error
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `message` | `string` | <!--source:api-specifications-->Error message.<!--/source--> |

##### Other responses

`400``404`

`GET` `/blobs/{blob_id}/presigned-urls`

<!--source:api-specifications-->

#### Retrieve Presigned URLs
<!--/source-->

`retrievePresignedUrls`

<!--source:api-specifications-->
Retrieve Presigned URLs retrieves, for a given blob_id, presigned URLs for uploading and downloading the blob to and from Staircase.

<!--/source-->

##### Response

<!--source:api-specifications-->
200403
<!--/source-->

<!--source:api-specifications-->
application/json Copy Presigned URLs retrieved successfully.

```
{
 "upload": {
 "url": "https://dev-data-manager-blobs-bucket.s3.amazonaws.com/01EZY9J8SEFM2JKDJ1Q3YX65HS"
 }
}
```

<!--/source-->

<!--source:api-specifications-->
application/json Copy 403 invalid error

```
{
 "message": "Please check the key you used to call this service",
 "url": "https://staircase.stoplight.io/docs/api-reference/customer-account-manager-service.yml/paths/~1products~1refresh/post"
}
```

<!--/source-->

##### Parameters

<!--source:api-specifications-->
2
<!--/source-->

| Parameter | Type | Example | Description |
| --- | --- | --- | --- |
| `x-api-key` required | `string` header | `xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx` | <!--source:api-specifications-->Environment API Key.<!--/source--> |
| `blob_id` required | `string` path | `01EZY9J8SEFM2JKDJ1Q3YX65HS` | <!--source:api-specifications-->Blob identifier<!--/source--> |

##### Response `200``application/json`

<!--source:api-specifications-->
1 fields
<!--/source-->
<!--source:api-specifications-->
Presigned URLs retrieved successfully.
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `presigned_urls` | `object` | <!--source:api-specifications-->Presigned URLs<!--/source--> |

##### Response `403``application/json`

<!--source:api-specifications-->
2 fields
<!--/source-->
<!--source:api-specifications-->
403 invalid error
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `message` | `string` | <!--source:api-specifications-->Error message.<!--/source--> |
| `url` | `string` | <!--source:api-specifications-->Error additional URL.<!--/source--> |

##### Other responses

`400``404`

`POST` `/create_blob_from_content`

<!--source:api-specifications-->

#### Create Blob from Partner content
<!--/source-->

`createBlobFromContent`

<!--source:api-specifications-->
Create Blob from Partner content will create a blob from the content that a partner has returned. The payload will be the extension path of the blob to be created in the vendor response object, content_path is the path of the content element in the vendor response object.

<!--/source-->

##### Request

<!--source:api-specifications-->
application/json Copy
```
Blob content from partner
```

<!--/source-->

##### Response

<!--source:api-specifications-->
201400 UnableToRetrieveURL400 UnableToExtractValues403422500
<!--/source-->

<!--source:api-specifications-->
application/json Copy Presigned URLs retrieved successfully.

```
{
 "blob_id": "01F739J4XDSNCZMMJSJCB83PCQ"
}
```

<!--/source-->

<!--source:api-specifications-->
application/json Copy Invalid body request.

```
{
 "message": "Unable to retrieve url"
}
```

<!--/source-->

<!--source:api-specifications-->
application/json Copy Invalid body request.

```
{
 "message": "Unable to extract data from URL"
}
```

<!--/source-->

<!--source:api-specifications-->
application/json Copy 403 invalid error

```
{
 "message": "Please check the key you used to call this service",
 "url": "https://staircase.stoplight.io/docs/api-reference/customer-account-manager-service.yml/paths/~1products~1refresh/post"
}
```

<!--/source-->

<!--source:api-specifications-->
application/json Copy Unprocessable entity error

```
{
 "message": "The product has encountered an internal server error. If you have used a transaction_id to call our services, please submit it to Staircase support"
}
```

<!--/source-->

<!--source:api-specifications-->
application/json Copy Internal server error

```
{
 "message": "The product has encountered an internal server error. If you have used a transaction_id to call our services, please submit it to Staircase support"
}
```

<!--/source-->

##### Parameters

<!--source:api-specifications-->
1
<!--/source-->

| Parameter | Type | Example | Description |
| --- | --- | --- | --- |
| `x-api-key` required | `string` header | `xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx` | <!--source:api-specifications-->Environment API Key.<!--/source--> |

##### Request body`application/json`

<!--source:api-specifications-->
5 fields
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `extension_path` | `string` | <!--source:api-specifications-->JSON path where the extension is in the response object. If it is not specified, extension will be "pdf".<!--/source-->Example `$.DocumentExension` |
| `content_path`required | `string` | <!--source:api-specifications-->JSON path where the actual content is in the response object.<!--/source-->Example `$.DocumentData` |
| `decode_from_base64` | `boolean` | <!--source:api-specifications-->Need to decode a content from base64.<!--/source--> |
| `encode_to_base64` | `boolean` | <!--source:api-specifications-->Need to encode a content to base64.<!--/source--> |
| `url`required | `string` | <!--source:api-specifications-->URL with the partner response.<!--/source-->Example `https://google.com` |

##### Response `201``application/json`

<!--source:api-specifications-->
1 fields
<!--/source-->
<!--source:api-specifications-->
Presigned URLs retrieved successfully.
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `blob_id` | `string` | <!--source:api-specifications-->ID of the returned blob.<!--/source--> |

##### Response `400``application/json`

<!--source:api-specifications-->
1 fields
<!--/source-->
<!--source:api-specifications-->
Invalid body request.
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `message` | `string` | <!--source:api-specifications-->Error message<!--/source--> |

##### Response `403``application/json`

<!--source:api-specifications-->
2 fields
<!--/source-->
<!--source:api-specifications-->
403 invalid error
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `message` | `string` | <!--source:api-specifications-->Error message.<!--/source--> |
| `url` | `string` | <!--source:api-specifications-->Error additional URL.<!--/source--> |

##### Response `422``application/json`

<!--source:api-specifications-->
1 fields
<!--/source-->
<!--source:api-specifications-->
Unprocessable entity error
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `message` | `string` | <!--source:api-specifications-->Error Message.<!--/source--> |

##### Response `500``application/json`

<!--source:api-specifications-->
1 fields
<!--/source-->
<!--source:api-specifications-->
Internal server error
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `message` | `string` | <!--source:api-specifications-->Error message.<!--/source--> |

<!--source:api-specifications-->

### Partners
<!--/source-->

`GET` `/partners`

<!--source:api-specifications-->

#### Retrieve Partners
<!--/source-->

`retrievePartners`

<!--source:api-specifications-->
Retrieve Partners retrieves an object containing all partners active for the product and information about them. You can use the `partner_name` to invoke the partner directly in the product invocation.

<!--/source-->

##### Response

<!--source:api-specifications-->
200403404500502
<!--/source-->

<!--source:api-specifications-->
application/json Copy Successfully returned the partner object

```
[
 {
 "partner": "partner_name_1",
 "active": true,
 "byoc": true,
 "order": 1,
 "status": "active",
 "verification_type": "borrower"
 },
 {
 "partner": "partner_name_2",
 "active": true,
 "byoc": false,
 "order": 2,
 "status": "active",
 "verification_type": "instant"
 },
 {
 "partner": "partner_name_3",
 "active": false,
 "byoc": true,
 "order": 3,
 "status": "upcoming",
 "verification_type": "manual"
 }
]
```

<!--/source-->

<!--source:api-specifications-->
application/json Copy Invalid key for service

```
{
 "message": "Please check the key you used to call this service",
 "url": "https://api.staircase.co/docs/DevOps/Distribute/Account/get-retrieve-credentials"
}
```

<!--/source-->

<!--source:api-specifications-->
application/json Copy Resource not found

```
{
 "message": "Unable to get collections of given transaction. Please check the transaction id"
}
```

<!--/source-->

<!--source:api-specifications-->
application/json Copy The product has encountered an internal server error. If possible, please contact Staircase support with the transaction_id you used.

```
{
 "message": "The product has encountered an internal server error. If you have used a transaction_id to call our services, please submit it to Staircase support"
}
```

<!--/source-->

<!--source:api-specifications-->
application/json Copy Bad gateway.

```
{
 "message": "Internal server error."
}
```

<!--/source-->

##### Response `200``application/json`

<!--source:api-specifications-->
6 fields
<!--/source-->
<!--source:api-specifications-->
Successfully returned the partner object
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `byoc` | `boolean` | <!--source:api-specifications-->If value is set to "True", customer must add its own partner credentials to be able to use this partner for verification.<!--/source--> |
| `active` | `boolean` | <!--source:api-specifications-->If set to "True" partner can be used for verification. If set to "False" partner will be disabled for verification and excluded from the waterfall.<!--/source--> |
| `status` | `string` | <!--source:api-specifications-->Parameter for documentation. Can be set to "active" and "upcoming".<!--/source--> |
| `verification_type` | `string` | <!--source:api-specifications-->If value is set to "borrower", borrower needs to authorize verification process via provided URL. Whether value is set to "instant", verification process is done without any third party interventions. If value is set to "manual", verification process needs to be approved manually by selected data partner.<!--/source-->`borrower``instant``manual` |
| `partner` | `string` | <!--source:api-specifications-->Partner name.<!--/source--> |
| `order` | `integer` | <!--source:api-specifications-->Order value provides priority on waterfall execution, where number 1 represents the highest priority and such will be executed first in the waterfall feature.<!--/source--> |

##### Response `403``application/json`

<!--source:api-specifications-->
2 fields
<!--/source-->
<!--source:api-specifications-->
Invalid key for service
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `message` | `string` | — |
| `url` | `string` | — |

##### Response `404``application/json`

<!--source:api-specifications-->
1 fields
<!--/source-->
<!--source:api-specifications-->
Resource not found
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `message` | `string` | <!--source:api-specifications-->Message<!--/source--> |

##### Response `500``application/json`

<!--source:api-specifications-->
1 fields
<!--/source-->
<!--source:api-specifications-->
The product has encountered an internal server error. If possible, please contact Staircase support with the transaction_id you used.
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `message` | `string` | — |

##### Response `502``application/json`

<!--source:api-specifications-->
1 fields
<!--/source-->
<!--source:api-specifications-->
Bad gateway.
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `message` | `string` | <!--source:api-specifications-->Error Message.<!--/source--> |

`GET` `/products/asset/partners`

<!--source:api-specifications-->

#### Retrieve Product Partners
<!--/source-->

`getVendors`

<!--source:api-specifications-->
Retrieve Partners retrieves:

-All the Partners (vendors) configured in the Product Flows configurations.

-The Order of the partner in the Product Waterfall Settings or default order in Product Flows if Product Waterfall was not configured.

-The status of the partners as active/upcoming according to the configurations of the product flows of these partners (partner will be active if at least one flow is active).'

<!--/source-->

##### Response

<!--source:api-specifications-->
200 Example1200 Example2400403404 GetProduct404 text/html500
<!--/source-->

<!--source:api-specifications-->
application/json Copy Successfully retrieved product partners.

```
[
 {
 "Partner": "partner_name",
 "order": 1,
 "active": true,
 "status": "active",
 "verification_type": "borrower",
 "byoc": true
 }
]
```

<!--/source-->

<!--source:api-specifications-->
application/json Copy Successfully retrieved product partners.

```
[
 {
 "Partner": "partner_name",
 "order": 1,
 "active": false,
 "status": "upcoming",
 "verification_type": "borrower",
 "byoc": true
 }
]
```

<!--/source-->

<!--source:api-specifications-->
application/json Copy Validation Error

```
{
 "message": "3 is not of type 'string'. Failed validating 'type' in schema['properties']['deal_sets']['items'][0]['properties']['parties']['items'][0]['properties']['customer_transaction_ID']:"
}
```

<!--/source-->

<!--source:api-specifications-->
application/json Copy 403 invalid error

```
{
 "message": "Please check the key you used to call this service",
 "url": "https://api.staircase.co/docs/api-reference/customer-account-manager-service.yml/paths/~1products~1refresh/post"
}
```

<!--/source-->

<!--source:api-specifications-->
application/json Copy Resource not found

```
{
 "type": "string",
 "description": "Error Message."
}
```

<!--/source-->

<!--source:api-specifications-->
text/html Copy Resource not found

```
<html>\r\n<head><title>400 Bad Request</title></head>\r\n<body>\r\n<center><h1>400 Bad Request</h1></center>\r\n</body>\r\n</html>\r\n
```

<!--/source-->

<!--source:api-specifications-->
application/json Copy Internal server error

```
{
 "message": "The product has encountered an internal server error. If you have used a transaction_id to call our services, please submit it to Staircase support"
}
```

<!--/source-->

##### Parameters

<!--source:api-specifications-->
2
<!--/source-->

| Parameter | Type | Example | Description |
| --- | --- | --- | --- |
| `x-api-key` required | `string` header | `xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx` | <!--source:api-specifications-->Environment API Key.<!--/source--> |
| `active` | `boolean` query | `false` | <!--source:api-specifications-->Include vendors with active product flows<!--/source--> |

##### Response `200``application/json`

<!--source:api-specifications-->
6 fields
<!--/source-->
<!--source:api-specifications-->
Successfully retrieved product partners.
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `partner` | `string` | <!--source:api-specifications-->Partner name<!--/source--> |
| `order` | `number` | <!--source:api-specifications-->Order of the product flows associated with this partner<!--/source--> |
| `active` | `boolean` | <!--source:api-specifications-->Partner has active flows<!--/source--> |
| `status` | `string` | <!--source:api-specifications-->Status of the partner<!--/source--> |
| `verification_type` | `string` | <!--source:api-specifications-->Type of verification<!--/source--> |
| `byoc` | `boolean` | <!--source:api-specifications-->Specify whether customer should add its own partner credentials or not<!--/source--> |

##### Response `400``application/json`

<!--source:api-specifications-->
1 fields
<!--/source-->
<!--source:api-specifications-->
Validation Error
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `message` | `one of` | <!--source:api-specifications-->Message<!--/source--> |

##### Response `403``application/json`

<!--source:api-specifications-->
2 fields
<!--/source-->
<!--source:api-specifications-->
403 invalid error
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `message` | `string` | <!--source:api-specifications-->Error message.<!--/source--> |
| `url` | `string` | <!--source:api-specifications-->Error additional URL.<!--/source--> |

##### Response `404``application/json`

<!--source:api-specifications-->
1 fields
<!--/source-->
<!--source:api-specifications-->
Resource not found
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `message` | `string` | <!--source:api-specifications-->Error Message.<!--/source--> |

##### Response `500``application/json`

<!--source:api-specifications-->
1 fields
<!--/source-->
<!--source:api-specifications-->
Internal server error
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `message` | `string` | <!--source:api-specifications-->Error message.<!--/source--> |

`GET` `/products/asset/partners/ordering`

<!--source:api-specifications-->

#### Retrieve Partners Ordering
<!--/source-->

`getPartnersOrdering`

<!--source:api-specifications-->
Retrieve Partners Ordering retrieves the partners'' order for the product waterfall invocation according to the configured Product Waterfall Settings. If there is no waterfall for the product configured, partners will be retrieved with the default of the order inside Product Flows.

<!--/source-->

##### Response

<!--source:api-specifications-->
200400403404 GetProduct404 text/html500
<!--/source-->

<!--source:api-specifications-->
application/json Copy Successfully retrieved partners ordering.

```
[
 {
 "partner": "partner1",
 "order": 1
 },
 {
 "partner": "partner2",
 "order": 2
 }
]
```

<!--/source-->

<!--source:api-specifications-->
application/json Copy Validation Error

```
{
 "message": "3 is not of type 'string'. Failed validating 'type' in schema['properties']['deal_sets']['items'][0]['properties']['parties']['items'][0]['properties']['customer_transaction_ID']:"
}
```

<!--/source-->

<!--source:api-specifications-->
application/json Copy 403 invalid error

```
{
 "message": "Please check the key you used to call this service",
 "url": "https://api.staircase.co/docs/api-reference/customer-account-manager-service.yml/paths/~1products~1refresh/post"
}
```

<!--/source-->

<!--source:api-specifications-->
application/json Copy Resource not found

```
{
 "type": "string",
 "description": "Error Message."
}
```

<!--/source-->

<!--source:api-specifications-->
text/html Copy Resource not found

```
<html>\r\n<head><title>400 Bad Request</title></head>\r\n<body>\r\n<center><h1>400 Bad Request</h1></center>\r\n</body>\r\n</html>\r\n
```

<!--/source-->

<!--source:api-specifications-->
application/json Copy Internal server error

```
{
 "message": "The product has encountered an internal server error. If you have used a transaction_id to call our services, please submit it to Staircase support"
}
```

<!--/source-->

##### Parameters

<!--source:api-specifications-->
1
<!--/source-->

| Parameter | Type | Example | Description |
| --- | --- | --- | --- |
| `x-api-key` required | `string` header | `xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx` | <!--source:api-specifications-->Environment API Key.<!--/source--> |

##### Response `200``application/json`

<!--source:api-specifications-->
1 fields
<!--/source-->
<!--source:api-specifications-->
Successfully retrieved partners ordering.
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `partner_order` | `object` | <!--source:api-specifications-->Partner and order<!--/source--> |
| `partner` | `string` | Example `partner1` |
| `order` | `number` | Example `1` |

##### Response `400``application/json`

<!--source:api-specifications-->
1 fields
<!--/source-->
<!--source:api-specifications-->
Validation Error
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `message` | `one of` | <!--source:api-specifications-->Message<!--/source--> |

##### Response `403``application/json`

<!--source:api-specifications-->
2 fields
<!--/source-->
<!--source:api-specifications-->
403 invalid error
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `message` | `string` | <!--source:api-specifications-->Error message.<!--/source--> |
| `url` | `string` | <!--source:api-specifications-->Error additional URL.<!--/source--> |

##### Response `404``application/json`

<!--source:api-specifications-->
1 fields
<!--/source-->
<!--source:api-specifications-->
Resource not found
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `message` | `string` | <!--source:api-specifications-->Error Message.<!--/source--> |

##### Response `500``application/json`

<!--source:api-specifications-->
1 fields
<!--/source-->
<!--source:api-specifications-->
Internal server error
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `message` | `string` | <!--source:api-specifications-->Error message.<!--/source--> |

`PUT` `/partners/{partner}/status`

<!--source:api-specifications-->

#### Update Partner Status
<!--/source-->

`updatePartnerStatus`

<!--source:api-specifications-->
Update partner status
<!--/source-->

<!--source:api-specifications-->
Update Partner Status updates the active parameter of a partner to either true or false. Set partner name that you want to enable/disable.

<!--/source-->

##### Request

<!--source:api-specifications-->
application/json Copy
```
{
 "active": true
}
```

<!--/source-->

##### Response

<!--source:api-specifications-->
200400403404500
<!--/source-->

<!--source:api-specifications-->
application/json Copy Successfully updated active parameter for the partner

```
{
 "message": "Partner status updated!"
}
```

<!--/source-->

<!--source:api-specifications-->
application/json Copy Failed to update the partner from one of the reasons

```
{
 "message": "Partner doesn't exist in database"
}
```

<!--/source-->

<!--source:api-specifications-->
application/json Copy Invalid key for service

```
{
 "message": "Please check the key you used to call this service",
 "url": "https://api.staircase.co/docs/DevOps/Distribute/Account/get-retrieve-credentials"
}
```

<!--/source-->

<!--source:api-specifications-->
application/json Copy Resource not found

```
{
 "message": "Unable to get status. Please check the given ids"
}
```

<!--/source-->

<!--source:api-specifications-->
application/json Copy The product has encountered an internal server error. If possible, please contact Staircase support with the transaction_id you used.

```
{
 "message": "The product has encountered an internal server error. If you have used a transaction_id to call our services, please submit it to Staircase support"
}
```

<!--/source-->

##### Parameters

<!--source:api-specifications-->
2
<!--/source-->

| Parameter | Type | Example | Description |
| --- | --- | --- | --- |
| `x-api-key` required | `string` header | `xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx` | <!--source:api-specifications-->Staircase Documentation Environment API Key<!--/source--> |
| `partner` required | `string` path | `partner_name` | <!--source:api-specifications-->Name of the partner for which we wan't to update status<!--/source--> |

##### Request body`application/json`

<!--source:api-specifications-->
1 fields
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `active`required | `boolean` | Example `true` |

##### Response `200``application/json`

<!--source:api-specifications-->
1 fields
<!--/source-->
<!--source:api-specifications-->
Successfully updated active parameter for the partner
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `message` | `string` | <!--source:api-specifications-->Partner status updated!<!--/source--> |

##### Response `400``application/json`

<!--source:api-specifications-->
1 fields
<!--/source-->
<!--source:api-specifications-->
Failed to update the partner from one of the reasons
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `message` | `string` | <!--source:api-specifications-->Partner doesn't exist in database<!--/source--> |

##### Response `403``application/json`

<!--source:api-specifications-->
2 fields
<!--/source-->
<!--source:api-specifications-->
Invalid key for service
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `message` | `string` | — |
| `url` | `string` | — |

##### Response `404``application/json`

<!--source:api-specifications-->
1 fields
<!--/source-->
<!--source:api-specifications-->
Resource not found
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `message` | `string` | <!--source:api-specifications-->Message<!--/source--> |

##### Response `500``application/json`

<!--source:api-specifications-->
1 fields
<!--/source-->
<!--source:api-specifications-->
The product has encountered an internal server error. If possible, please contact Staircase support with the transaction_id you used.
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `message` | `string` | — |

`PUT` `/products/asset/partners/ordering`

<!--source:api-specifications-->

#### Update Partners Ordering
<!--/source-->

`UpdatePartnersOrdering`

<!--source:api-specifications-->
Update Partners Order updates the order of execution of the product flows associated with the partner by updating their order in the product waterfall settings.

<!--/source-->

##### Request

<!--source:api-specifications-->
application/json Copy
```
{
 "ordering": [
 {
 "partner": "partner1",
 "order": 1
 },
 {
 "partner": "partner2",
 "order": 10
 }
 ]
}
```

<!--/source-->

##### Response

<!--source:api-specifications-->
200400 application/json400 text/html403404 GetProduct404 text/html500
<!--/source-->

<!--source:api-specifications-->
application/json Copy Successfully updated partners ordering.

```
[
 {
 "partner": "partner1",
 "order": 1
 },
 {
 "partner": "partner2",
 "order": 10
 }
]
```

<!--/source-->

<!--source:api-specifications-->
application/json Copy Failed to update the partner from one of the reasons

```
{
 "message": "Partner doesn't exist in database"
}
```

<!--/source-->

<!--source:api-specifications-->
text/html Copy Failed to update the partner from one of the reasons

```
<html>\r\n<head><title>400 Bad Request</title></head>\r\n<body>\r\n<center><h1>400 Bad Request</h1></center>\r\n</body>\r\n</html>\r\n
```

<!--/source-->

<!--source:api-specifications-->
application/json Copy 403 invalid error

```
{
 "message": "Please check the key you used to call this service",
 "url": "https://api.staircase.co/docs/api-reference/customer-account-manager-service.yml/paths/~1products~1refresh/post"
}
```

<!--/source-->

<!--source:api-specifications-->
application/json Copy Resource not found

```
{
 "type": "string",
 "description": "Error Message."
}
```

<!--/source-->

<!--source:api-specifications-->
text/html Copy Resource not found

```
<html>\r\n<head><title>400 Bad Request</title></head>\r\n<body>\r\n<center><h1>400 Bad Request</h1></center>\r\n</body>\r\n</html>\r\n
```

<!--/source-->

<!--source:api-specifications-->
application/json Copy Internal server error

```
{
 "message": "The product has encountered an internal server error. If you have used a transaction_id to call our services, please submit it to Staircase support"
}
```

<!--/source-->

##### Parameters

<!--source:api-specifications-->
1
<!--/source-->

| Parameter | Type | Example | Description |
| --- | --- | --- | --- |
| `x-api-key` required | `string` header | `xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx` | <!--source:api-specifications-->Environment API Key.<!--/source--> |

##### Request body`application/json`

<!--source:api-specifications-->
1 fields
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `ordering` | `object[]` | — |
| `partner` | `string` | <!--source:api-specifications-->Partner name<!--/source-->Example `wage` |
| `order` | `number` | <!--source:api-specifications-->Partner order<!--/source-->Example `1` |

##### Response `200``application/json`

<!--source:api-specifications-->
2 fields
<!--/source-->
<!--source:api-specifications-->
Successfully updated partners ordering.
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `partner` | `string` | <!--source:api-specifications-->Partner name<!--/source-->Example `wage` |
| `order` | `number` | <!--source:api-specifications-->Partner order<!--/source-->Example `1` |

##### Response `400``application/json`

<!--source:api-specifications-->
1 fields
<!--/source-->
<!--source:api-specifications-->
Failed to update the partner from one of the reasons
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `message` | `string` | <!--source:api-specifications-->Partner doesn't exist in database<!--/source--> |

##### Response `403``application/json`

<!--source:api-specifications-->
2 fields
<!--/source-->
<!--source:api-specifications-->
403 invalid error
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `message` | `string` | <!--source:api-specifications-->Error message.<!--/source--> |
| `url` | `string` | <!--source:api-specifications-->Error additional URL.<!--/source--> |

##### Response `404``application/json`

<!--source:api-specifications-->
1 fields
<!--/source-->
<!--source:api-specifications-->
Resource not found
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `message` | `string` | <!--source:api-specifications-->Error Message.<!--/source--> |

##### Response `500``application/json`

<!--source:api-specifications-->
1 fields
<!--/source-->
<!--source:api-specifications-->
Internal server error
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `message` | `string` | <!--source:api-specifications-->Error message.<!--/source--> |

`PATCH` `/products/asset/partners/{partner}/status`

<!--source:api-specifications-->

#### Update Partner Status
<!--/source-->

`updatePartnerStatus`

<!--source:api-specifications-->
Update Partner Status updates the active value of a specific partner to value true or false. This shall activate or deactivate the flows configured for this partner in Product Flows.

<!--/source-->

##### Request

<!--source:api-specifications-->
application/json Copy
```
{
 "active": true,
 "verification_type": "borrower",
 "byoc": true,
 "status": "active"
}
```

<!--/source-->

##### Response

<!--source:api-specifications-->
200400 application/json400 text/html403404 GetProduct404 text/html500
<!--/source-->

<!--source:api-specifications-->
application/json Copy Successfully updated active parameter for the partner.

```
{
 "message": "Partner status updated."
}
```

<!--/source-->

<!--source:api-specifications-->
application/json Copy Failed to update the partner from one of the reasons.

```
{
 "message": "Partner doesn't exist in database."
}
```

<!--/source-->

<!--source:api-specifications-->
text/html Copy Failed to update the partner from one of the reasons.

```
<html>\r\n<head><title>400 Bad Request</title></head>\r\n<body>\r\n<center><h1>400 Bad Request</h1></center>\r\n</body>\r\n</html>\r\n
```

<!--/source-->

<!--source:api-specifications-->
application/json Copy 403 invalid error

```
{
 "message": "Please check the key you used to call this service",
 "url": "https://api.staircase.co/docs/api-reference/customer-account-manager-service.yml/paths/~1products~1refresh/post"
}
```

<!--/source-->

<!--source:api-specifications-->
application/json Copy Resource not found

```
{
 "type": "string",
 "description": "Error Message."
}
```

<!--/source-->

<!--source:api-specifications-->
text/html Copy Resource not found

```
<html>\r\n<head><title>400 Bad Request</title></head>\r\n<body>\r\n<center><h1>400 Bad Request</h1></center>\r\n</body>\r\n</html>\r\n
```

<!--/source-->

<!--source:api-specifications-->
application/json Copy Internal server error

```
{
 "message": "The product has encountered an internal server error. If you have used a transaction_id to call our services, please submit it to Staircase support"
}
```

<!--/source-->

##### Parameters

<!--source:api-specifications-->
2
<!--/source-->

| Parameter | Type | Example | Description |
| --- | --- | --- | --- |
| `x-api-key` required | `string` header | `xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx` | <!--source:api-specifications-->Environment API Key.<!--/source--> |
| `partner` required | `string` path | `partner_name` | <!--source:api-specifications-->Name of the partner for which we wan't to update status.<!--/source--> |

##### Request body`application/json`

<!--source:api-specifications-->
4 fields
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `active`required | `boolean` | Example `true` |
| `byoc` | `boolean` | <!--source:api-specifications-->Specify whether customer should add its own partner credentials or not<!--/source--> |
| `status` | `string` | <!--source:api-specifications-->Status of the vendor<!--/source--> |
| `verification_type` | `string` | <!--source:api-specifications-->Type of verification<!--/source--> |

##### Response `200``application/json`

<!--source:api-specifications-->
1 fields
<!--/source-->
<!--source:api-specifications-->
Successfully updated active parameter for the partner.
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `message` | `string` | <!--source:api-specifications-->Partner status updated.<!--/source--> |

##### Response `400``application/json`

<!--source:api-specifications-->
1 fields
<!--/source-->
<!--source:api-specifications-->
Failed to update the partner from one of the reasons.
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `message` | `string` | <!--source:api-specifications-->Partner doesn't exist in database.<!--/source--> |

##### Response `403``application/json`

<!--source:api-specifications-->
2 fields
<!--/source-->
<!--source:api-specifications-->
403 invalid error
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `message` | `string` | <!--source:api-specifications-->Error message.<!--/source--> |
| `url` | `string` | <!--source:api-specifications-->Error additional URL.<!--/source--> |

##### Response `404``application/json`

<!--source:api-specifications-->
1 fields
<!--/source-->
<!--source:api-specifications-->
Resource not found
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `message` | `string` | <!--source:api-specifications-->Error Message.<!--/source--> |

##### Response `500``application/json`

<!--source:api-specifications-->
1 fields
<!--/source-->
<!--source:api-specifications-->
Internal server error
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `message` | `string` | <!--source:api-specifications-->Error message.<!--/source--> |

`GET` `/partners/{partner}/schema`

<!--source:api-specifications-->

#### Retrieve Partner Schema
<!--/source-->

`getPartnerSchema`

<!--source:api-specifications-->
Retrieve Partner Schema retrieves the required partner schema for credentials.

<!--/source-->

##### Response

<!--source:api-specifications-->
200400403404500502
<!--/source-->

<!--source:api-specifications-->
application/json Copy Successfully returned the partner schema object

```
{
 "$schema": "http://json-schema.org/draft-07/schema",
 "$id": "http://example.com/example.json",
 "type": "object",
 "title": "Partner root schema",
 "description": "Partner credentials schema for connector flows.",
 "webhook": false,
 "default": {},
 "examples": [
 {
 "key1": "value1",
 "key2": "value2"
 }
 ]
}
```

<!--/source-->

<!--source:api-specifications-->
application/json Copy Bad Request

```
{
 "message": "Partner not found"
}
```

<!--/source-->

<!--source:api-specifications-->
application/json Copy Invalid key for service

```
{
 "message": "Please check the key you used to call this service",
 "url": "https://api.staircase.co/docs/DevOps/Distribute/Account/get-retrieve-credentials"
}
```

<!--/source-->

<!--source:api-specifications-->
application/json Copy Resource not found

```
{
 "message": "Unable to get collections of given transaction. Please check the transaction id"
}
```

<!--/source-->

<!--source:api-specifications-->
application/json Copy The product has encountered an internal server error. If possible, please contact Staircase support with the transaction_id you used.

```
{
 "message": "The product has encountered an internal server error. If you have used a transaction_id to call our services, please submit it to Staircase support"
}
```

<!--/source-->

<!--source:api-specifications-->
application/json Copy Bad gateway.

```
{
 "message": "Internal server error."
}
```

<!--/source-->

##### Parameters

<!--source:api-specifications-->
2
<!--/source-->

| Parameter | Type | Example | Description |
| --- | --- | --- | --- |
| `x-api-key` required | `string` header | `xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx` | <!--source:api-specifications-->Staircase Documentation Environment API Key<!--/source--> |
| `partner` required | `string` path | `partner_name` | <!--source:api-specifications-->Name of the partner for which we wan't to retrieve schema<!--/source--> |

##### Response `200``application/json`

<!--source:api-specifications-->
10 fields
<!--/source-->
<!--source:api-specifications-->
Successfully returned the partner schema object
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `schema` | `string` | <!--source:api-specifications-->Schema URL<!--/source--> |
| `id` | `string` | <!--source:api-specifications-->Schema ID<!--/source--> |
| `type` | `string` | <!--source:api-specifications-->JSON type<!--/source--> |
| `title` | `string` | <!--source:api-specifications-->Schema title<!--/source--> |
| `description` | `string` | <!--source:api-specifications-->Schema description<!--/source--> |
| `webhook` | `boolean` | <!--source:api-specifications-->Value that indicates if partner requires webhook setup<!--/source--> |
| `default` | `object` | <!--source:api-specifications-->Default value for schema<!--/source--> |
| `examples` | `object[]` | <!--source:api-specifications-->List of examples<!--/source--> |
| `key1` | `string` | <!--source:api-specifications-->Example 1<!--/source--> |
| `key2` | `string` | <!--source:api-specifications-->Example 2<!--/source--> |
| `required` | `string[]` | <!--source:api-specifications-->Required fields<!--/source--> |
| `properties` | `object` | <!--source:api-specifications-->Properties of Schema<!--/source--> |
| `key1` | `object` | <!--source:api-specifications-->Key 1 Schema<!--/source--> |
| `id` | `string` | <!--source:api-specifications-->Property ID<!--/source--> |
| `type` | `string` | <!--source:api-specifications-->Property value type<!--/source--> |
| `title` | `string` | <!--source:api-specifications-->Title for property<!--/source--> |
| `description` | `string` | <!--source:api-specifications-->Description for property<!--/source--> |
| `default` | `string` | <!--source:api-specifications-->Default value if exists<!--/source--> |
| `examples` | `string[]` | <!--source:api-specifications-->List of examples for given property<!--/source--> |
| `key2` | `object` | <!--source:api-specifications-->Key 2 Schema<!--/source--> |
| `id` | `string` | <!--source:api-specifications-->Property ID<!--/source--> |
| `type` | `string` | <!--source:api-specifications-->Property value type<!--/source--> |
| `title` | `string` | <!--source:api-specifications-->Title for property<!--/source--> |
| `description` | `string` | <!--source:api-specifications-->Description for property<!--/source--> |
| `default` | `string` | <!--source:api-specifications-->Default value if exists<!--/source--> |
| `examples` | `string[]` | <!--source:api-specifications-->List of examples for given property<!--/source--> |

##### Response `400``application/json`

<!--source:api-specifications-->
1 fields
<!--/source-->
<!--source:api-specifications-->
Bad Request
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `message` | `string` | <!--source:api-specifications-->Partner not found<!--/source--> |

##### Response `403``application/json`

<!--source:api-specifications-->
2 fields
<!--/source-->
<!--source:api-specifications-->
Invalid key for service
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `message` | `string` | — |
| `url` | `string` | — |

##### Response `404``application/json`

<!--source:api-specifications-->
1 fields
<!--/source-->
<!--source:api-specifications-->
Resource not found
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `message` | `string` | <!--source:api-specifications-->Message<!--/source--> |

##### Response `500``application/json`

<!--source:api-specifications-->
1 fields
<!--/source-->
<!--source:api-specifications-->
The product has encountered an internal server error. If possible, please contact Staircase support with the transaction_id you used.
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `message` | `string` | — |

##### Response `502``application/json`

<!--source:api-specifications-->
1 fields
<!--/source-->
<!--source:api-specifications-->
Bad gateway.
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `message` | `string` | <!--source:api-specifications-->Error Message.<!--/source--> |

<!--source:api-specifications-->

### Workflow
<!--/source-->

`POST` `/products/asset/invocations`

<!--source:api-specifications-->

#### Verify Asset
<!--/source-->

`invokeProductFlow`

<!--source:api-specifications-->
This endpoint creates an asset verification request for the provided transaction, collection and selected partner

#### Usage

You can send a request in two different ways:

- Using `transaction_id` and `collection_id`: If you already have a request collection, you can provide its details using these two parameters. Note that in this case Response Collection would be created in the provided Transaction.
- Using `request_data`: If you provide this parameter, flow invocation would use the data here as input. If you also provide a `transaction_id` in the request body, Response Collection would be created in the related Transaction object. If you don't provide a `transaction_id` we will automatically create a Transaction for you and Response Collection would be created in this new Transaction as well.

##### Retrieving the Invocation Result

After invocation, endpoint returns an `invocation_id` which you can poll for its status using /products/asset/invocations/{invocation_id} endpoint. Once the invocation is completed, the Response Collection is populated with these search results.

Show the rest If you would rather receive a callback once the invocation is completed instead of polling it, you can set `callback_url` parameter in the request body.

##### Enabling Waterfall

If the waterfall feature is enabled, partner is selected based on the partner ordering.

To use the waterfall feature set the partner name to default. This way verification will be executed following the ordering for all available data partners. Use Update Partners Ordering and Retrieve Partners Ordering to set and get the orderings. If two data partners share the same legal entity full name the verification will be done based on the ordering of data partners.

#### Initiate Equifax Verification

This endpoint flow initiates Equifax asset verification.

`product_flow_name = "initiate-equifax-verification"`

You need to create `people`, `contact_information`, `addresses`, `organizations`, `loans` and `additional_information` arrays in your request collection. Each of these arrays contains corresponding `@id` and `@type` fields.

`people` array's element:

For `people` you need to provide the following borrower information:

- first name
- last name
- birthdate
- taxpayer identifier
- contact_at relation with the `contact_information` object (this value needs to be unique)
- with_address relation with the `addresses` object (this value needs to be unique)

`contact_information` array's element:

For `contact_information` you need to provide the following borrower contact information:

- email address

`addresses` array's element:

For `addresses` you need to provide the following borrower address information:

- address
- city name
- state code
- postal code

`organizations` array's element:

For `organizations` you need to provide the following organization information:

- organization name

`loans` array's element:

For `loans` you need to provide the following loan information:

- loan identifier

`additional_information` array's element:

For `additional_information` you need to provide multiple objects, each containing a pair of information:

- additional information key identifier
- additional information value

Additional information key identifiers are:

- monitoringDuration
- permissiblePurpose
- orderStartDate
- orderEndDate
- ccEmail

Please find a corresponding request example at the bottom of this page.

#### Initiate Equifax Re-Verification

This endpoint flow initiates Equifax asset re-verification.

`product_flow_name = "initiate-equifax-reverification"`

You need to create `additional_information` and `organizations` arrays in your request collection. Each of these arrays contains corresponding `@id` and `@type` fields.

`additional_information` array's element:

For `additional_information` you need to provide multiple objects, each containing a pair of information:

- additional information key identifier
- additional information value

Additional information key identifiers are:

- referenceNumber
- consumerIdentifierLast4

`organizations` array's element:

For `organizations` you need to provide the following organization information:

- organization name

Please find a corresponding request example at the bottom of this page.

#### Check Equifax Verification Status

This endpoint flow checks Equifax asset verification status.

`product_flow_name = "check-equifax-verification-status"`

You need to create `additional_information` and `organizations` arrays in your request collection. Each of these arrays contains corresponding `@id` and `@type` fields.

`additional_information` array's element:

For `additional_information` you need to provide multiple objects, each containing a pair of information:

- additional information key identifier
- additional information value

Additional information key identifiers are:

- referenceNumber
- consumerIdentifierLast4

`organizations` array's element:

For `organizations` you need to provide the following organization information:

- organization name

Please find a corresponding request example at the bottom of this page.

<!--/source-->

##### Request

<!--source:api-specifications-->
Initiate Equifax VerificationInitiate Equifax Re-VerificationCheck Equifax Verification Statusinvocation_with_request_datainvocation_with_waterfallinvocation_with_transaction
<!--/source-->

<!--source:api-specifications-->
application/json Copy
```
{
 "product_flow_name": "initiate-equifax-verification",
 "partner_name": "equifax",
 "request_data": {
 "people": [
 {
 "@type": "borrower",
 "@id": "01FD6ZNGJADZ0RB1H96FSEAA01",
 "has_first_name": {
 "has_value": "Lorraine"
 },
 "has_last_name": {
 "has_value": "Purchaser"
 },
 "has_birth_date": {
 "has_value": "1970-07-04"
 },
 "has_taxpayer_identifier_value": {
 "has_value": "999565678"
 },
 "contact_at": [
 "01FD6ZNGJADZ0RB1H96FSEAA02"
 ],
 "with_address": [
 "01FD6ZNGJADZ0RB1H96FSEAA03"
 ]
 }
 ],
 "contact_information": [
 {
 "@type": "contact_information",
 "@id": "01FD6ZNGJADZ0RB1H96FSEAA02",
 "has_email_address": {
 "has_value": "contact@contact.com"
 }
 }
 ],
 "addresses": [
 {
 "@type": "address",
 "@id": "01FD6ZNGJADZ0RB1H96FSEAA03",
 "has_address_line_1_text": {
 "has_value": "1234 Main Street"
 },
 "has_city_name": {
 "has_value": "Baltimore"
 },
 "has_state_code": {
 "has_value": "MD"
 },
 "has_postal_code": {
 "has_value": "20600"
 }
 }
 ],
 "organizations": [
 {
 "@type": "customer",
 "@id": "01FD6ZNGJADZ0RB1H96FSEAA04",
 "has_organization_name": {
 "has_value": "ACME Inc."
 }
 }
 ],
 "loans": [
 {
 "@id": "01FD6ZNGJADZ0RB1H96FSEAA05",
 "@type": "loan",
 "has_loan_identifier_value": {
 "has_value": "123456"
 }
 }
 ],
 "additional_information": [
 {
 "@type": "additional_information",
 "@id": "01FD6ZNGJADZ0RB1H96FSEAA06",
 "has_additional_information_value": {
 "has_value": "2M"
 },
 "has_additional_information_key_identifier": {
 "has_value": "monitoringDuration"
 }
 },
 {
 "@type": "additional_information",
 "@id": "01FD6ZNGJADZ0RB1H96FSEAA07",
 "has_additional_information_value": {
 "has_value": "PPCREDIT"
 },
 "has_additional_information_key_identifier": {
 "has_value": "permissiblePurpose"
 }
 },
 {
 "@type": "additional_information",
 "@id": "01FD6ZNGJADZ0RB1H96FSEAA08",
 "has_additional_information_value": {
 "has_value": "2022-11-01"
 },
 "has_additional_information_key_identifier": {
 "has_value": "orderStartDate"
 }
 },
 {
 "@type": "additional_information",
 "@id": "01FD6ZNGJADZ0RB1H96FSEAA09",
 "has_additional_information_value": {
 "has_value": "2022-12-02"
 },
 "has_additional_information_key_identifier": {
 "has_value": "orderEndDate"
 }
 },
 {
 "@type": "additional_information",
 "@id": "01FD6ZNGJADZ0RB1H96FSEAA10",
 "has_additional_information_value": {
 "has_value": "name@example.com"
 },
 "has_additional_information_key_identifier": {
 "has_value": "ccEmail"
 }
 }
 ]
 }
}
```

<!--/source-->

<!--source:api-specifications-->
application/json Copy
```
{
 "product_flow_name": "initiate-equifax-reverification",
 "partner_name": "equifax",
 "request_data": {
 "additional_information": [
 {
 "@type": "additional_information",
 "@id": "01FD6ZKZD7WGZXYFGJBVPV0001",
 "has_additional_information_key_identifier": {
 "has_value": "referenceNumber"
 },
 "has_additional_information_value": {
 "has_value": "999565541269"
 }
 },
 {
 "@type": "additional_information",
 "@id": "01FD6ZKZD7WGZXYFGJBVPV0002",
 "has_additional_information_key_identifier": {
 "has_value": "consumerIdentifierLast4"
 },
 "has_additional_information_value": {
 "has_value": "5678"
 }
 }
 ],
 "organizations": [
 {
 "@type": "customer",
 "@id": "01FD6ZNGNFKY3B7CX0YN6N0003",
 "has_organization_name": {
 "has_value": "ACME Inc."
 }
 }
 ]
 }
}
```

<!--/source-->

<!--source:api-specifications-->
application/json Copy
```
{
 "product_flow_name": "check-equifax-verification-status",
 "partner_name": "equifax",
 "request_data": {
 "additional_information": [
 {
 "@type": "additional_information",
 "@id": "01FD6ZKZD7WGZXYFGJBVPV0001",
 "has_additional_information_key_identifier": {
 "has_value": "referenceNumber"
 },
 "has_additional_information_value": {
 "has_value": "999565541269"
 }
 },
 {
 "@type": "additional_information",
 "@id": "01FD6ZKZD7WGZXYFGJBVPV0002",
 "has_additional_information_key_identifier": {
 "has_value": "consumerIdentifierLast4"
 },
 "has_additional_information_value": {
 "has_value": "5678"
 }
 }
 ],
 "organizations": [
 {
 "@type": "customer",
 "@id": "01FD6ZNGNFKY3B7CX0YN6N0003",
 "has_organization_name": {
 "has_value": "ACME Inc."
 }
 }
 ]
 }
}
```

<!--/source-->

<!--source:api-specifications-->
application/json Copy
```
{
 "partner_name": "partner_name",
 "request_data": {
 "people": [
 {
 "@type": "borrower",
 "@id": "01FD6ZKZD7WGZXYFGJBVPVP2Q5",
 "has_first_name": {
 "has_value": "John"
 },
 "has_last_name": {
 "has_value": "Jackson"
 },
 "has_birth_date": {
 "has_value": "1970-07-04"
 },
 "has_taxpayer_identifier_value": {
 "has_value": "000000001"
 },
 "with_address": [
 "01FD6ZNGJADZ0RB1H96FSE8BAB"
 ],
 "contact_at": [
 "01FD6ZNGJW9X96WGWX2BD37CFY"
 ],
 "works_for": [
 "01FD6ZNGNFKY3B7CX0YN6NH56E"
 ]
 }
 ],
 "addresses": [
 {
 "@type": "address",
 "@id": "01FD6ZNGJADZ0RB1H96FSE8BAB",
 "has_address_line_1_text": {
 "has_value": "33 IRVING PLACE"
 },
 "has_address_line_2_text": {
 "has_value": ""
 },
 "has_city_name": {
 "has_value": "NEW YORK"
 },
 "has_state_code": {
 "has_value": "NY"
 },
 "has_postal_code": {
 "has_value": "10003"
 },
 "has_country_name": {
 "has_value": "US"
 }
 }
 ],
 "contact_information": [
 {
 "@type": "contact_information",
 "@id": "01FD6ZNGJW9X96WGWX2BD37CFY",
 "has_email_address": {
 "has_value": "test.test@test.com"
 },
 "has_phone_number": {
 "has_value": "+13022312190"
 }
 }
 ],
 "organizations": [
 {
 "@type": "organization",
 "@id": "01FD6ZNGNFKY3B7CX0YN6NH56E",
 "has_organization_name": {
 "has_value": "ACME Inc."
 }
 }
 ]
 }
}
```

<!--/source-->

<!--source:api-specifications-->
application/json Copy
```
{
 "transaction_id": "01FV0H1MPRMAF6JAHJ6BAPYF9X",
 "collection_id": "01GFNP3NGDEWYY3J1QY151W2M9",
 "partner_name": "default"
}
```

<!--/source-->

<!--source:api-specifications-->
application/json Copy
```
{
 "transaction_id": "01FV0H1MPRMAF6JAHJ6BAPYF9X",
 "collection_id": "01GFNP3NGDEWYY3J1QY151W2M9",
 "partner_name": "partner_name"
}
```

<!--/source-->

##### Response

<!--source:api-specifications-->
201 Example Response201 Equifax Verification201 Equifax Re-Verification201 Equifax Check Status400403404500
<!--/source-->

<!--source:api-specifications-->
application/json Copy Successfully started flow invocation.

```
{
 "invocation_id": "9aefb465-90fb-4d50-8ae6-2df2b58373f4",
 "invocation_status": "STARTED",
 "product_flow_name": "VOE",
 "transaction_id": "01F6NAMXWN2XVBD1YJ92A6S6R4",
 "request_collection_id": "01F6NAQ4894HPMCBGB4P0G95XK",
 "response_collection_id": "01F6NAQ4894HPMCBGB4P0G78HG",
 "options": {
 "dry_run": false
 },
 "tags": [
 "manual verification"
 ],
 "widget_url": "https://product-dev-productsbucket-1j472c4onqkxw.s3.amazonaws.com/widgets/063f5f"
}
```

<!--/source-->

<!--source:api-specifications-->
application/json Copy Successfully started flow invocation.

```
{
 "product_flow_name": "initiate-equifax-verification",
 "metadata": {},
 "request_collection_id": "01F6NAQ4894HPMCBGB4P0G95XK",
 "response_collection_id": "01F6NAQ4894HPMCBGB4P0G78HG",
 "invocation_mode": "single_flow",
 "widget_url": "",
 "invocation_id": "498c30fe-ab19-47f5-92eb-f9adac2801fe",
 "invocation_status": "STARTED",
 "transaction_id": "01F6NAMXWN2XVBD1YJ92A6S6R4",
 "collection_id": "01GK9CXQ9JJNDHY0XQX62DA2AD",
 "request_data": {},
 "api_id": "",
 "_links": {
 "health_metrics": "https://YOUR_ENVIRONMENT_DOMAIN.staircaseapi.com/code-health-checker/metric/01F6NAMXWN2XVBD1YJ92A6S6R4?product_name=asset"
 }
}
```

<!--/source-->

<!--source:api-specifications-->
application/json Copy Successfully started flow invocation.

```
{
 "product_flow_name": "initiate-equifax-reverification",
 "metadata": {},
 "request_collection_id": "01F6NAQ4894HPMCBGB4P0G95XK",
 "response_collection_id": "01F6NAQ4894HPMCBGB4P0G78HG",
 "invocation_mode": "single_flow",
 "widget_url": "",
 "invocation_id": "498c30fe-ab19-47f5-92eb-f9adac2801fe",
 "invocation_status": "STARTED",
 "transaction_id": "01F6NAMXWN2XVBD1YJ92A6S6R4",
 "collection_id": "01GK9CXQ9JJNDHY0XQX62DA2AD",
 "request_data": {},
 "api_id": "",
 "_links": {
 "health_metrics": "https://YOUR_ENVIRONMENT_DOMAIN.staircaseapi.com/code-health-checker/metric/01F6NAMXWN2XVBD1YJ92A6S6R4?product_name=asset"
 }
}
```

<!--/source-->

<!--source:api-specifications-->
application/json Copy Successfully started flow invocation.

```
{
 "product_flow_name": "check-equifax-verification-status",
 "metadata": {},
 "request_collection_id": "01F6NAQ4894HPMCBGB4P0G95XK",
 "response_collection_id": "01F6NAQ4894HPMCBGB4P0G78HG",
 "invocation_mode": "single_flow",
 "widget_url": "",
 "invocation_id": "498c30fe-ab19-47f5-92eb-f9adac2801fe",
 "invocation_status": "STARTED",
 "transaction_id": "01F6NAMXWN2XVBD1YJ92A6S6R4",
 "collection_id": "01GK9CXQ9JJNDHY0XQX62DA2AD",
 "request_data": {},
 "api_id": "",
 "_links": {
 "health_metrics": "https://YOUR_ENVIRONMENT_DOMAIN.staircaseapi.com/code-health-checker/metric/01F6NAMXWN2XVBD1YJ92A6S6R4?product_name=asset"
 }
}
```

<!--/source-->

<!--source:api-specifications-->
application/json Copy Request data failed validation

```
{
 "message": "{'data': ['Missing data for required field.']}"
}
```

<!--/source-->

<!--source:api-specifications-->
application/json Copy 403 invalid error

```
{
 "message": "Please check the key you used to call this service",
 "url": "https://api.staircase.co/docs/api-reference/customer-account-manager-service.yml/paths/~1products~1refresh/post"
}
```

<!--/source-->

<!--source:api-specifications-->
text/html Copy Resource not found

```
<html>\r\n<head><title>400 Bad Request</title></head>\r\n<body>\r\n<center><h1>400 Bad Request</h1></center>\r\n</body>\r\n</html>\r\n
```

<!--/source-->

<!--source:api-specifications-->
application/json Copy Internal server error

```
{
 "message": "The product has encountered an internal server error. If you have used a transaction_id to call our services, please submit it to Staircase support"
}
```

<!--/source-->

##### Parameters

<!--source:api-specifications-->
1
<!--/source-->

| Parameter | Type | Example | Description |
| --- | --- | --- | --- |
| `x-api-key` required | `string` header | `xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx` | <!--source:api-specifications-->Environment API Key.<!--/source--> |

##### Request body`application/json`

<!--source:api-specifications-->
10 fields
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `product_flow_name` | `string` | <!--source:api-specifications-->Product flow name. If it is not specified, the default product flow will be invoked. If the product has no default product flow, the first created flow will be invoked. Cannot be specified together with vendor_name.<!--/source--> |
| `vendor_name` | `string` | <!--source:api-specifications-->Vendor name. Cannot be specified together with product_flow_name.<!--/source--> |
| `transaction_id` | `string` | <!--source:api-specifications-->Transaction ID used for invocation.<!--/source--> |
| `request_collection_id` | `string` | <!--source:api-specifications-->Request Collection ID.<!--/source--> |
| `response_collection_id` | `string` | <!--source:api-specifications-->Response Collection ID.<!--/source--> |
| `callback_url` | `string (uri)` | <!--source:api-specifications-->Callback URL.<!--/source--> |
| `request_data` | `object` | <!--source:api-specifications-->Request JSON body.<!--/source--> |
| `tags` | `string[]` | <!--source:api-specifications-->List of tags.<!--/source--> |
| `options` | `object` | <!--source:api-specifications-->Additional information that should be passed to the connector but not be added to the request collection.<!--/source--> |
| `invocation_mode` | `string` | <!--source:api-specifications-->The invocation mode of a product flow single_flow or waterfall, default value single_flow<!--/source--> |

##### Response `201``application/json`

<!--source:api-specifications-->
12 fields
<!--/source-->
<!--source:api-specifications-->
Successfully started flow invocation.
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `invocation_id`required | `string` | <!--source:api-specifications-->Invocation ID.<!--/source--> |
| `invocation_status`required | `string` | <!--source:api-specifications-->The status of the invocation.<!--/source-->`STARTED` |
| `transaction_id`required | `string` | <!--source:api-specifications-->Transaction ID.<!--/source--> |
| `request_collection_id`required | `string` | <!--source:api-specifications-->Request collection ID.<!--/source--> |
| `response_collection_id`required | `string` | <!--source:api-specifications-->Response collection ID.<!--/source--> |
| `product_flow_name` | `string` | <!--source:api-specifications-->Product flow name.<!--/source--> |
| `metadata` | `object` | <!--source:api-specifications-->The metadata of the invoked product flow.<!--/source--> |
| `callback_url` | `string` | <!--source:api-specifications-->Callback URL.<!--/source--> |
| `request_data` | `object` | <!--source:api-specifications-->The data for the request collection.<!--/source--> |
| `tags` | `string[]` | <!--source:api-specifications-->List of tags.<!--/source--> |
| `options` | `object` | <!--source:api-specifications-->Additional information that should be passed to the connector but not be added to the request collection.<!--/source--> |
| `widget_url` | `string` | <!--source:api-specifications-->Product widget_url listening on the connector widget_url<!--/source--> |

##### Response `400``application/json`

<!--source:api-specifications-->
1 fields
<!--/source-->
<!--source:api-specifications-->
Request data failed validation
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `message` | `one of` | <!--source:api-specifications-->Message<!--/source--> |

##### Response `403``application/json`

<!--source:api-specifications-->
2 fields
<!--/source-->
<!--source:api-specifications-->
403 invalid error
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `message` | `string` | <!--source:api-specifications-->Error message.<!--/source--> |
| `url` | `string` | <!--source:api-specifications-->Error additional URL.<!--/source--> |

##### Response `404``application/json`

<!--source:api-specifications-->
1 fields
<!--/source-->
<!--source:api-specifications-->
Resource not found
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `message` | `string` | <!--source:api-specifications-->Message<!--/source--> |

##### Response `500``application/json`

<!--source:api-specifications-->
1 fields
<!--/source-->
<!--source:api-specifications-->
Internal server error
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `message` | `string` | <!--source:api-specifications-->Error message.<!--/source--> |

`POST` `/transactions`

<!--source:api-specifications-->

#### Create Transaction
<!--/source-->

`createTransaction`

<!--source:api-specifications-->
Create Transaction creates a transaction in Staircase. Transactions in Staircase are containers for all the data related to an instance of a transaction type. They enable you to correlate the output of various products to a single transaction type, where the transaction type depends on your line of business.

Transactions are identified by a unique key called `transaction_id`. As you use different Staircase products to gather the data needed for a specific instance of your transaction type, and receive different sets of output from each product, use the same transaction_id to correlate all the outputs to the same transaction. A `transaction_id`, when used properly, gives you a holistic view of the data related to the transaction you’ve assembled.

To access all collections associated with a given transaction_id, try out /transactions/{transaction_id}/collections

<!--/source-->

##### Request

<!--source:api-specifications-->
application/json Copy
```
{
 "label": "first_transaction",
 "callback_url": "https://webhook.site/0c1c4e00-79d9-490b-a0f3-bab8b12a61d5"
}
```

<!--/source-->

##### Response

<!--source:api-specifications-->
201403500
<!--/source-->

<!--source:api-specifications-->
application/json Copy Transaction created successfully

```
{
 "transaction_id": "01F0KHK7DN3H5JZ4QJKMYAM6GB",
 "created_at": "03/04/2021, 1:04:05 PM EST"
}
```

<!--/source-->

<!--source:api-specifications-->
application/json Copy 403 invalid error

```
{
 "message": "Please check the key you used to call this service",
 "url": "https://api.staircase.co/docs/api-reference/customer-account-manager-service.yml/paths/~1products~1refresh/post"
}
```

<!--/source-->

<!--source:api-specifications-->
application/json Copy Internal server error

```
{
 "message": "The product has encountered an internal server error. If you have used a transaction_id to call our services, please submit it to Staircase support"
}
```

<!--/source-->

##### Parameters

<!--source:api-specifications-->
1
<!--/source-->

| Parameter | Type | Example | Description |
| --- | --- | --- | --- |
| `x-api-key` required | `string` header | `xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx` | <!--source:api-specifications-->Environment API Key.<!--/source--> |

##### Request body`application/json`

<!--source:api-specifications-->
2 fields
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `callback_url` | `string (url)` | <!--source:api-specifications-->URL for receiving events about changes inside transaction<!--/source--> |
| `label` | `string` | <!--source:api-specifications-->Transaction label<!--/source--> |

##### Response `201``application/json`

<!--source:api-specifications-->
2 fields
<!--/source-->
<!--source:api-specifications-->
Transaction created successfully
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `transaction_id` | `string (ulid)` | <!--source:api-specifications-->Staircase Transaction Identifier<!--/source-->Example `01F0KHK7DN3H5JZ4QJKMYAM6GB` |
| `created_at` | `string` | <!--source:api-specifications-->Staircase time string.<!--/source-->Example `03/03/2021, 8:24:04 AM EST` |

##### Response `403``application/json`

<!--source:api-specifications-->
2 fields
<!--/source-->
<!--source:api-specifications-->
403 invalid error
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `message` | `string` | <!--source:api-specifications-->Error message.<!--/source--> |
| `url` | `string` | <!--source:api-specifications-->Error additional URL.<!--/source--> |

##### Response `500``application/json`

<!--source:api-specifications-->
1 fields
<!--/source-->
<!--source:api-specifications-->
Internal server error
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `message` | `string` | <!--source:api-specifications-->Error message.<!--/source--> |

##### Other responses

`400`

`GET` `/products/asset/invocations/{invocation_id}`

<!--source:api-specifications-->

#### Retrieve Asset Verification Status
<!--/source-->

`RetrieveProductFlowInvocationStatus`

<!--source:api-specifications-->
Retrieves the status of running Product flow invocation.

<!--/source-->

##### Response

<!--source:api-specifications-->
200 ProductFlowStatus200 Equifax Initiate Verification Success200 Equifax Initiate Verification Fail200 Equifax Initiate Re-Verification Success200 Equifax Initiate Re-Verification Fail200 Check Equifax Verification Status Success200 Check Equifax Verification Status Fail200 WaterfallStatusCompleted200 WaterfallStatusFailed400403404500
<!--/source-->

<!--source:api-specifications-->
application/json Copy Successfully returned status of the Product flow Invocation.

```
{
 "invocation_id": "9aefb465-90fb-4d50-8ae6-2df2b58373f4",
 "invocation_status": "COMPLETED",
 "product_flow_name": "VOE",
 "service_invocation": {
 "Connector": {
 "connector_flow_name": "demo_flow",
 "invocation_id": "e75e8566-976d-4a15-b801-1e2301646f4e",
 "status": "COMPLETED"
 },
 "Translator": {
 "output": {
 "translation_id": "ad985392-1255-4dc0-8a26-bc166744c60c",
 "language_name": "argyle",
 "status": "COMPLETED"
 },
 "convert_output": {
 "translation_id": "5382d495-9ec9-4619-8e46-299879c1e92e",
 "language_name": "argyle",
 "status": "COMPLETED"
 },
 "input": {
 "translation_id": "0742bc3d-07ca-45fb-a4b7-e9bf627108d0",
 "language_name": "test",
 "status": "COMPLETED"
 },
 "convert_input": {
 "translation_id": "57082d7c-9964-49b6-945c-7c655768e56a",
 "language_name": "test",
 "status": "COMPLETED"
 }
 }
 },
 "transaction_id": "01F6NAMXWN2XVBD1YJ92A6S6R4",
 "request_collection_id": "01F6NAQ4894HPMCBGB4P0G95XK",
 "convert_request_collection_id": "01F6NAQ4894HPMCBGB4P0G9KX5",
 "response_collection_id": "01F6QF1QJF20DMSXH4SYXKB1SN",
 "convert_response_collection_id": "01F6QF1QJF20DMSXH4SYXKBNS1",
 "connector_job_id": "3706b519-9426-4533-9868-14a7dec4fd97",
 "request_collection": {
 "collection_id": "01FCWSAQD3QDKEW91K7CPXN4Y2",
 "transaction_id": "01FCWSAH1RVMC0DH6GRQ9JSAE7",
 "data": {},
 "metadata": {
 "created_at": "2021-08-12T04:58:15.331517-04:00",
 "validation": false
 }
 },
 "response_collection": {
 "collection_id": "01FCWSAQD3QDKEW91K7CPXN4Y2",
 "transaction_id": "01FCWSAH1RVMC0DH6GRQ9JSAE7",
 "data": {},
 "metadata": {
 "created_at": "2021-08-12T04:58:15.331517-04:00",
 "validation": false,
 "report_download_urls": {
 "voe_template": {
 "download_url": "https://dev-data-manager-blobs-bucket-us-east-1-873429376159.s3.amazonaws.com/01FJYAHNJR",
 "blob_id": "01FCWSAQD3QDKEW91K7CPXN4Y2",
 "status": "Succeeded"
 }
 },
 "service_invocation": {
 "Connector": {
 "connector_flow_name": "demo_flow",
 "invocation_id": "e75e8566-976d-4a15-b801-1e2301646f4e",
 "status": "COMPLETED"
 },
 "Translator": {
 "output": {
 "translation_id": "ad985392-1255-4dc0-8a26-bc166744c60c",
 "language_name": "argyle",
 "status": "COMPLETED"
 },
 "convert_output": {
 "translation_id": "5382d495-9ec9-4619-8e46-299879c1e92e",
 "language_name": "argyle",
 "status": "COMPLETED"
 },
 "input": {
 "translation_id": "0742bc3d-07ca-45fb-a4b7-e9bf627108d0",
 "language_name": "test",
 "status": "COMPLETED"
 },
 "convert_input": {
 "translation_id": "57082d7c-9964-49b6-945c-7c655768e56a",
 "language_name": "test",
 "status": "COMPLETED"
 }
 }
 }
 }
 },
 "options": {
 "dry_run": false
 },
 "tags": [
 "manual verification"
 ]
}
```

<!--/source-->

<!--source:api-specifications-->
application/json Copy Successfully returned status of the Product flow Invocation.

```
{
 "invocation_id": "01GKKZZ0GYEA0ZCGGJX536J1DX",
 "transaction_id": "01GKKZZ0EQ150WVG4XDASJBV9S",
 "product_flow_name": "initiate-equifax-verification",
 "request_collection_id": "01GKKZZ0NSS9KX9M6S5V89Z0ES",
 "response_collection_id": "01GKKZZ0GYEA0ZCGGJX536J1DX",
 "service_invocation": {
 "Language": {
 "output": {
 "started_on": "2022-12-06T15:13:21.683000+00:00",
 "invocation_id": "01GKKZZ8W1VEYRTSS95CGB9R1N",
 "finished_on": "2022-12-06T15:13:22.352000+00:00",
 "elapsed_time": "0.669",
 "from_language": "asset-equifax-verification",
 "to_language": "staircase-graph",
 "status": "TRANSLATED"
 },
 "input": {
 "started_on": "2022-12-06T15:13:13.750000+00:00",
 "invocation_id": "01GKKZZ14RQJWVFR8RY5SF03EW",
 "finished_on": "2022-12-06T15:13:14.590000+00:00",
 "elapsed_time": "0.84",
 "from_language": "staircase-graph",
 "to_language": "asset-equifax-verification",
 "status": "TRANSLATED"
 }
 },
 "operation_name": "language_input",
 "Connector": {
 "finished_on": "2022-12-06T15:13:20.994000+00:00",
 "elapsed_time": "5.785",
 "connector_flow_name": "asset-initiate-equifax-verification",
 "started_on": "2022-12-06T15:13:15.209000+00:00",
 "status": "COMPLETED",
 "invocation_id": "a8367c5b-03c0-450a-8f68-76350b2a7548"
 }
 },
 "invocation_status": "COMPLETED",
 "widget_url": "",
 "metadata": {},
 "options": {},
 "total_integrated_elapsed_time": 7.2940000000000005,
 "connector_job_id": "a8367c5b-03c0-450a-8f68-76350b2a7548",
 "request_collection": {
 "metadata": {
 "validation": false,
 "linked_collections": [
 {
 "collection_id": "01GKKZZ0GYEA0ZCGGJX536J1DX",
 "label": "Response Collection"
 }
 ],
 "created_at": "2022-12-06T10:13:12.889517-05:00"
 },
 "data": {
 "people": [
 {
 "@type": "borrower",
 "@id": "01FD6ZNGJADZ0RB1H96FSEAA01",
 "has_first_name": {
 "has_value": "Lorraine"
 },
 "has_last_name": {
 "has_value": "Purchaser"
 },
 "has_birth_date": {
 "has_value": "1970-07-04"
 },
 "has_taxpayer_identifier_value": {
 "has_value": "999565678"
 },
 "contact_at": [
 "01FD6ZNGJADZ0RB1H96FSEAA02"
 ],
 "with_address": [
 "01FD6ZNGJADZ0RB1H96FSEAA03"
 ]
 }
 ],
 "contact_information": [
 {
 "@type": "contact_information",
 "@id": "01FD6ZNGJADZ0RB1H96FSEAA02",
 "has_email_address": {
 "has_value": "contact@contact.com"
 }
 }
 ],
 "addresses": [
 {
 "@type": "address",
 "@id": "01FD6ZNGJADZ0RB1H96FSEAA03",
 "has_address_line_1_text": {
 "has_value": "1234 Main Street"
 },
 "has_city_name": {
 "has_value": "Baltimore"
 },
 "has_state_code": {
 "has_value": "MD"
 },
 "has_postal_code": {
 "has_value": "20600"
 }
 }
 ],
 "organizations": [
 {
 "@type": "customer",
 "@id": "01FD6ZNGJADZ0RB1H96FSEAA04",
 "has_organization_name": {
 "has_value": "ACME Inc."
 }
 }
 ],
 "loans": [
 {
 "@id": "01FD6ZNGJADZ0RB1H96FSEAA05",
 "@type": "loan",
 "has_loan_identifier_value": {
 "has_value": "123456"
 }
 }
 ],
 "additional_information": [
 {
 "@type": "additional_information",
 "@id": "01FD6ZNGJADZ0RB1H96FSEAA06",
 "has_additional_information_value": {
 "has_value": "2M"
 },
 "has_additional_information_key_identifier": {
 "has_value": "monitoringDuration"
 }
 },
 {
 "@type": "additional_information",
 "@id": "01FD6ZNGJADZ0RB1H96FSEAA07",
 "has_additional_information_value": {
 "has_value": "PPCREDIT"
 },
 "has_additional_information_key_identifier": {
 "has_value": "permissiblePurpose"
 }
 },
 {
 "@type": "additional_information",
 "@id": "01FD6ZNGJADZ0RB1H96FSEAA08",
 "has_additional_information_value": {
 "has_value": "2022-11-01"
 },
 "has_additional_information_key_identifier": {
 "has_value": "orderStartDate"
 }
 },
 {
 "@type": "additional_information",
 "@id": "01FD6ZNGJADZ0RB1H96FSEAA09",
 "has_additional_information_value": {
 "has_value": "2022-12-02"
 },
 "has_additional_information_key_identifier": {
 "has_value": "orderEndDate"
 }
 },
 {
 "@type": "additional_information",
 "@id": "01FD6ZNGJADZ0RB1H96FSEAA10",
 "has_additional_information_value": {
 "has_value": "name@example.com"
 },
 "has_additional_information_key_identifier": {
 "has_value": "ccEmail"
 }
 }
 ]
 },
 "collection_id": "01GKKZZ0NSS9KX9M6S5V89Z0ES",
 "transaction_id": "01GKKZZ0EQ150WVG4XDASJBV9S"
 },
 "response_collection": {
 "metadata": {
 "linked_collections": [
 {
 "collection_id": "01GKKZZ0NSS9KX9M6S5V89Z0ES",
 "label": "Request Collection"
 }
 ],
 "validation": false,
 "version": 2,
 "created_at": "2022-12-06T10:13:12.734470-05:00",
 "invocation_status": "COMPLETED",
 "last_updated_at": "2022-12-06T10:13:23.417285-05:00",
 "partner_language": "asset-equifax-verification",
 "partner_name": "equifax",
 "product_name": "asset",
 "service_invocation": {
 "Language": {
 "output": {
 "from_language": "asset-equifax-verification",
 "to_language": "staircase-graph",
 "status": "TRANSLATED",
 "invocation_id": "01GKKZZ8W1VEYRTSS95CGB9R1N"
 },
 "input": {
 "from_language": "staircase-graph",
 "to_language": "asset-equifax-verification",
 "status": "TRANSLATED",
 "invocation_id": "01GKKZZ14RQJWVFR8RY5SF03EW"
 }
 },
 "operation_name": "language_input",
 "Connector": {
 "status": "COMPLETED",
 "invocation_id": "a8367c5b-03c0-450a-8f68-76350b2a7548",
 "connector_flow_name": "asset-initiate-equifax-verification"
 }
 },
 "staircase_language_version": 2
 },
 "data": {
 "error_message_information": [
 {
 "@type": "error_message_information",
 "@id": "01GKKZZ9MTCCDBJ7976SXFCPRK"
 },
 {
 "@type": "error_message_information",
 "with_error_message": [
 "01GKKZZ9MT67F19EAMYJV0V42K"
 ],
 "@id": "01GKKZZ9MTSEZC6DVWETYK09CV"
 }
 ],
 "error_messages": [
 {
 "@id": "01GKKZZ9MT67F19EAMYJV0V42K",
 "@type": "error_message"
 }
 ],
 "mortgage_products": [
 {
 "@type": "asset",
 "has_partner_process_identifier": {
 "has_value": "4fdbaae0-2134-43b4-a86b-6728170c0857"
 },
 "has_partner_name": {
 "has_value": "Equifax"
 },
 "has_partner_product_name": {
 "has_value": "Asset"
 },
 "has_partner_transaction_identifier": {
 "has_value": 999563744693
 },
 "@id": "01GKKZZ9MT0Z4N39D5CD8T4W0X"
 }
 ],
 "statuses": [
 {
 "@type": "status",
 "has_status_description": {
 "has_value": "Request Initiated Successfully"
 },
 "has_status_name": {
 "has_value": "Success"
 },
 "@id": "01GKKZZ9MTM9VS63QVF6HYPMS0"
 }
 ]
 },
 "transaction_id": "01GKKZZ0EQ150WVG4XDASJBV9S",
 "collection_id": "01GKKZZ0GYEA0ZCGGJX536J1DX"
 },
 "flows_responses": {},
 "total_elapsed_time": 11.062,
 "product_overhead": 3.767999999999999,
 "_links": {
 "finance_metrics": "https://YOUR_ENVIRONMENT_DOMAIN.staircaseapi.com/finance/metrics/query/",
 "health_metrics": "https://YOUR_ENVIRONMENT_DOMAIN.staircaseapi.com/code-health-checker/metric/01GKKZZ0EQ150WVG4XDASJBV9S?product_name=asset"
 }
}
```

<!--/source-->

<!--source:api-specifications-->
application/json Copy Successfully returned status of the Product flow Invocation.

```
{
 "invocation_id": "01GKM01FKJK7ZAMRXAE2M0C2FA",
 "transaction_id": "01GKM01FH28HNXR309AVPE1MJ4",
 "product_flow_name": "initiate-equifax-verification",
 "request_collection_id": "01GKM01FRS48T3XEPVSHC6ZGQ0",
 "response_collection_id": "01GKM01FKJK7ZAMRXAE2M0C2FA",
 "service_invocation": {
 "Language": {
 "output": {
 "started_on": "2022-12-06T15:14:40.604000+00:00",
 "invocation_id": "01GKM01P0NCVFWNAAZR0FG5K2T",
 "finished_on": "2022-12-06T15:14:41.295000+00:00",
 "elapsed_time": "0.691",
 "from_language": "asset-equifax-verification",
 "to_language": "staircase-graph",
 "status": "TRANSLATED"
 },
 "input": {
 "started_on": "2022-12-06T15:14:34.847000+00:00",
 "invocation_id": "01GKM01G6P5TTC15N7RKWDN7MB",
 "finished_on": "2022-12-06T15:14:35.810000+00:00",
 "elapsed_time": "0.963",
 "from_language": "staircase-graph",
 "to_language": "asset-equifax-verification",
 "status": "TRANSLATED"
 }
 },
 "operation_name": "language_input",
 "Connector": {
 "finished_on": "2022-12-06T15:14:39.987000+00:00",
 "elapsed_time": "3.256",
 "connector_flow_name": "asset-initiate-equifax-verification",
 "started_on": "2022-12-06T15:14:36.731000+00:00",
 "status": "COMPLETED",
 "invocation_id": "5fb633f5-f831-4fc3-a10a-ad4c8b6dd1a4"
 }
 },
 "invocation_status": "COMPLETED",
 "widget_url": "",
 "metadata": {},
 "options": {},
 "total_integrated_elapsed_time": 4.909999999999999,
 "connector_job_id": "5fb633f5-f831-4fc3-a10a-ad4c8b6dd1a4",
 "request_collection": {
 "metadata": {
 "validation": false,
 "linked_collections": [
 {
 "collection_id": "01GKM01FKJK7ZAMRXAE2M0C2FA",
 "label": "Response Collection"
 }
 ],
 "created_at": "2022-12-06T10:14:33.881206-05:00"
 },
 "data": {
 "people": [
 {
 "@type": "borrower",
 "@id": "01FD6ZNGJADZ0RB1H96FSEAA01",
 "has_first_name": {
 "has_value": "Lorraine"
 },
 "has_last_name": {
 "has_value": "Purchaser"
 },
 "has_birth_date": {
 "has_value": "1970-07-04"
 },
 "has_taxpayer_identifier_value": {
 "has_value": "111111111"
 },
 "contact_at": [
 "01FD6ZNGJADZ0RB1H96FSEAA02"
 ],
 "with_address": [
 "01FD6ZNGJADZ0RB1H96FSEAA03"
 ]
 }
 ],
 "contact_information": [
 {
 "@type": "contact_information",
 "@id": "01FD6ZNGJADZ0RB1H96FSEAA02",
 "has_email_address": {
 "has_value": "contact@contact.com"
 }
 }
 ],
 "addresses": [
 {
 "@type": "address",
 "@id": "01FD6ZNGJADZ0RB1H96FSEAA03",
 "has_address_line_1_text": {
 "has_value": "1234 Main Street"
 },
 "has_city_name": {
 "has_value": "Baltimore"
 },
 "has_state_code": {
 "has_value": "MD"
 },
 "has_postal_code": {
 "has_value": "20600"
 }
 }
 ],
 "organizations": [
 {
 "@type": "customer",
 "@id": "01FD6ZNGJADZ0RB1H96FSEAA04",
 "has_organization_name": {
 "has_value": "ACME Inc."
 }
 }
 ],
 "loans": [
 {
 "@id": "01FD6ZNGJADZ0RB1H96FSEAA05",
 "@type": "loan",
 "has_loan_identifier_value": {
 "has_value": "123456"
 }
 }
 ],
 "additional_information": [
 {
 "@type": "additional_information",
 "@id": "01FD6ZNGJADZ0RB1H96FSEAA06",
 "has_additional_information_value": {
 "has_value": "2M"
 },
 "has_additional_information_key_identifier": {
 "has_value": "monitoringDuration"
 }
 },
 {
 "@type": "additional_information",
 "@id": "01FD6ZNGJADZ0RB1H96FSEAA07",
 "has_additional_information_value": {
 "has_value": "PPCREDIT"
 },
 "has_additional_information_key_identifier": {
 "has_value": "permissiblePurpose"
 }
 },
 {
 "@type": "additional_information",
 "@id": "01FD6ZNGJADZ0RB1H96FSEAA08",
 "has_additional_information_value": {
 "has_value": "2022-11-01"
 },
 "has_additional_information_key_identifier": {
 "has_value": "orderStartDate"
 }
 },
 {
 "@type": "additional_information",
 "@id": "01FD6ZNGJADZ0RB1H96FSEAA09",
 "has_additional_information_value": {
 "has_value": "2022-12-02"
 },
 "has_additional_information_key_identifier": {
 "has_value": "orderEndDate"
 }
 },
 {
 "@type": "additional_information",
 "@id": "01FD6ZNGJADZ0RB1H96FSEAA10",
 "has_additional_information_value": {
 "has_value": "name@example.com"
 },
 "has_additional_information_key_identifier": {
 "has_value": "ccEmail"
 }
 }
 ]
 },
 "collection_id": "01GKM01FRS48T3XEPVSHC6ZGQ0",
 "transaction_id": "01GKM01FH28HNXR309AVPE1MJ4"
 },
 "response_collection": {
 "metadata": {
 "linked_collections": [
 {
 "collection_id": "01GKM01FRS48T3XEPVSHC6ZGQ0",
 "label": "Request Collection"
 }
 ],
 "validation": false,
 "version": 2,
 "created_at": "2022-12-06T10:14:33.714060-05:00",
 "invocation_status": "COMPLETED",
 "last_updated_at": "2022-12-06T10:14:42.468502-05:00",
 "partner_language": "asset-equifax-verification",
 "partner_name": "equifax",
 "product_name": "asset",
 "service_invocation": {
 "Language": {
 "output": {
 "from_language": "asset-equifax-verification",
 "to_language": "staircase-graph",
 "status": "TRANSLATED",
 "invocation_id": "01GKM01P0NCVFWNAAZR0FG5K2T"
 },
 "input": {
 "from_language": "staircase-graph",
 "to_language": "asset-equifax-verification",
 "status": "TRANSLATED",
 "invocation_id": "01GKM01G6P5TTC15N7RKWDN7MB"
 }
 },
 "operation_name": "language_input",
 "Connector": {
 "status": "COMPLETED",
 "invocation_id": "5fb633f5-f831-4fc3-a10a-ad4c8b6dd1a4",
 "connector_flow_name": "asset-initiate-equifax-verification"
 }
 },
 "staircase_language_version": 2
 },
 "data": {
 "error_message_information": [
 {
 "@type": "error_message_information",
 "with_error_message": [
 "01GKM01PNJDJZ5543PE7G6V0X9"
 ],
 "@id": "01GKM01PNJJFHAS7PMPN7NYPEJ"
 },
 {
 "@type": "error_message_information",
 "with_error_message": [
 "01GKM01PNJCD2HPDE2Q3ZGGW5M"
 ],
 "@id": "01GKM01PNJ6WVP8ZHG08XHCDQM"
 }
 ],
 "error_messages": [
 {
 "@id": "01GKM01PNJDJZ5543PE7G6V0X9",
 "@type": "error_message",
 "has_error_message_code": "AV-1028",
 "has_error_message_text": "Email associated with another SSN"
 },
 {
 "@id": "01GKM01PNJCD2HPDE2Q3ZGGW5M",
 "@type": "error_message"
 }
 ],
 "mortgage_products": [
 {
 "@type": "asset",
 "has_partner_process_identifier": {
 "has_value": "1100b034-0708-4bf3-b813-a800d6f7a686"
 },
 "has_partner_name": {
 "has_value": "Equifax"
 },
 "has_partner_product_name": {
 "has_value": "Asset"
 },
 "@id": "01GKM01PNJ6CJ3X5JFGS8DK0HG"
 }
 ],
 "statuses": [
 {
 "@type": "status",
 "has_status_name": {
 "has_value": "Failure"
 },
 "@id": "01GKM01PNJMGEMS32QZHYXB8XP"
 }
 ]
 },
 "transaction_id": "01GKM01FH28HNXR309AVPE1MJ4",
 "collection_id": "01GKM01FKJK7ZAMRXAE2M0C2FA"
 },
 "flows_responses": {},
 "total_elapsed_time": 9.171,
 "product_overhead": 4.261,
 "_links": {
 "finance_metrics": "https://YOUR_ENVIRONMENT_DOMAIN.staircaseapi.com/finance/metrics/query/",
 "health_metrics": "https://YOUR_ENVIRONMENT_DOMAIN.staircaseapi.com/code-health-checker/metric/01GKM01FH28HNXR309AVPE1MJ4?product_name=asset"
 }
}
```

<!--/source-->

<!--source:api-specifications-->
application/json Copy Successfully returned status of the Product flow Invocation.

```
{
 "invocation_id": "01GKM04VNCKN05Z5XK023RB294",
 "transaction_id": "01GKM04VEK9QHTBZG3XKJ13WQB",
 "product_flow_name": "initiate-equifax-reverification",
 "request_collection_id": "01GKM04VTWHA8GDPV3Z1ZW3V26",
 "response_collection_id": "01GKM04VNCKN05Z5XK023RB294",
 "service_invocation": {
 "Language": {
 "output": {
 "from_language": "asset-equifax-verification-refresh",
 "to_language": "staircase-graph",
 "status": "TRANSLATED",
 "invocation_id": "01GKM0528FKK60JCHDCTBHQRF9"
 },
 "input": {
 "from_language": "staircase-graph",
 "to_language": "asset-equifax-verification-refresh",
 "status": "TRANSLATED",
 "invocation_id": "01GKM04WM34WG9EWH8D2STM83S"
 }
 },
 "operation_name": "language_input",
 "Connector": {
 "status": "COMPLETED",
 "invocation_id": "a37fe580-5aa1-4f03-a59e-10d3af8aad8e",
 "connector_flow_name": "asset-initiate-equifax-reverification"
 }
 },
 "invocation_status": "COMPLETED",
 "widget_url": "",
 "metadata": {},
 "options": {},
 "connector_job_id": "a37fe580-5aa1-4f03-a59e-10d3af8aad8e",
 "request_collection": {
 "metadata": {
 "validation": false,
 "linked_collections": [
 {
 "collection_id": "01GKM04VNCKN05Z5XK023RB294",
 "label": "Response Collection"
 }
 ],
 "created_at": "2022-12-06T10:16:24.540919-05:00"
 },
 "data": {
 "additional_information": [
 {
 "@type": "additional_information",
 "@id": "01FD6ZKZD7WGZXYFGJBVPV0001",
 "has_additional_information_key_identifier": {
 "has_value": "referenceNumber"
 },
 "has_additional_information_value": {
 "has_value": "999565541269"
 }
 },
 {
 "@type": "additional_information",
 "@id": "01FD6ZKZD7WGZXYFGJBVPV0002",
 "has_additional_information_key_identifier": {
 "has_value": "consumerIdentifierLast4"
 },
 "has_additional_information_value": {
 "has_value": "5678"
 }
 }
 ],
 "organizations": [
 {
 "@type": "customer",
 "@id": "01FD6ZNGNFKY3B7CX0YN6N0003",
 "has_organization_name": {
 "has_value": "Finbank"
 }
 }
 ]
 },
 "collection_id": "01GKM04VTWHA8GDPV3Z1ZW3V26",
 "transaction_id": "01GKM04VEK9QHTBZG3XKJ13WQB"
 },
 "response_collection": {
 "metadata": {
 "version": 2,
 "validation": false,
 "linked_collections": [
 {
 "collection_id": "01GKM04VTWHA8GDPV3Z1ZW3V26",
 "label": "Request Collection"
 }
 ],
 "created_at": "2022-12-06T10:16:24.364929-05:00",
 "invocation_status": "COMPLETED",
 "last_updated_at": "2022-12-06T10:16:33.762337-05:00",
 "partner_language": "asset-equifax-verification-refresh",
 "partner_name": "equifax",
 "product_name": "asset",
 "service_invocation": {
 "Language": {
 "output": {
 "from_language": "asset-equifax-verification-refresh",
 "to_language": "staircase-graph",
 "status": "TRANSLATED",
 "invocation_id": "01GKM0528FKK60JCHDCTBHQRF9"
 },
 "input": {
 "from_language": "staircase-graph",
 "to_language": "asset-equifax-verification-refresh",
 "status": "TRANSLATED",
 "invocation_id": "01GKM04WM34WG9EWH8D2STM83S"
 }
 },
 "operation_name": "language_input",
 "Connector": {
 "status": "COMPLETED",
 "invocation_id": "a37fe580-5aa1-4f03-a59e-10d3af8aad8e",
 "connector_flow_name": "asset-initiate-equifax-reverification"
 }
 },
 "staircase_language_version": 2
 },
 "data": {
 "error_message_information": [
 {
 "@type": "error_message_information",
 "with_error_message": [
 "01GKM053A3QB70E556MC60C82W"
 ],
 "@id": "01GKM053A3G46Q3WQ8HSH6S6B3"
 },
 {
 "@type": "error_message_information",
 "@id": "01GKM053A36CTJ0WJKA4PSJA79"
 }
 ],
 "error_messages": [
 {
 "@id": "01GKM053A3QB70E556MC60C82W",
 "@type": "error_message"
 }
 ],
 "mortgage_products": [
 {
 "@type": "asset",
 "has_partner_process_identifier": {
 "has_value": "6a9c16d4-2948-42a4-a85b-1d6b132293e4"
 },
 "has_partner_name": {
 "has_value": "Equifax"
 },
 "has_partner_product_name": {
 "has_value": "Asset"
 },
 "has_partner_transaction_identifier": {
 "has_value": 999563744695
 },
 "@id": "01GKM053A3BP8NEASRDFQ99G6W"
 }
 ],
 "statuses": [
 {
 "@type": "status",
 "has_status_description": {
 "has_value": "Refresh Successful"
 },
 "has_status_name": {
 "has_value": "Success"
 },
 "@id": "01GKM053A3Q0BNBMHDXZTKQ0AC"
 }
 ]
 },
 "collection_id": "01GKM04VNCKN05Z5XK023RB294",
 "transaction_id": "01GKM04VEK9QHTBZG3XKJ13WQB"
 },
 "flows_responses": {},
 "_links": {
 "finance_metrics": "https://YOUR_ENVIRONMENT_DOMAIN.staircaseapi.com/finance/metrics/query/",
 "health_metrics": "https://YOUR_ENVIRONMENT_DOMAIN.staircaseapi.com/code-health-checker/metric/01GKM04VEK9QHTBZG3XKJ13WQB?product_name=asset"
 }
}
```

<!--/source-->

<!--source:api-specifications-->
application/json Copy Successfully returned status of the Product flow Invocation.

```
{
 "invocation_id": "01GKM06XF54PM19Q03D8V755GF",
 "transaction_id": "01GKM06XAAAR8GXBH45SZ7T2BT",
 "product_flow_name": "initiate-equifax-reverification",
 "request_collection_id": "01GKM06XM9Y91C1MVFWVJ5817Z",
 "response_collection_id": "01GKM06XF54PM19Q03D8V755GF",
 "service_invocation": {
 "Language": {
 "output": {
 "from_language": "asset-equifax-verification-refresh",
 "to_language": "staircase-graph",
 "status": "TRANSLATED",
 "invocation_id": "01GKM073N4TQVY515806BCW6T7"
 },
 "input": {
 "from_language": "staircase-graph",
 "to_language": "asset-equifax-verification-refresh",
 "status": "TRANSLATED",
 "invocation_id": "01GKM06Y43WQ08KQJPE6VSSA66"
 }
 },
 "operation_name": "language_input",
 "Connector": {
 "status": "COMPLETED",
 "invocation_id": "5a84bdd4-917e-4908-8571-7a15bfb60227",
 "connector_flow_name": "asset-initiate-equifax-reverification"
 }
 },
 "invocation_status": "COMPLETED",
 "widget_url": "",
 "metadata": {},
 "options": {},
 "connector_job_id": "5a84bdd4-917e-4908-8571-7a15bfb60227",
 "request_collection": {
 "transaction_id": "01GKM06XAAAR8GXBH45SZ7T2BT",
 "data": {
 "additional_information": [
 {
 "@type": "additional_information",
 "@id": "01FD6ZKZD7WGZXYFGJBVPV0001",
 "has_additional_information_key_identifier": {
 "has_value": "referenceNumber"
 },
 "has_additional_information_value": {
 "has_value": "999565541269"
 }
 },
 {
 "@type": "additional_information",
 "@id": "01FD6ZKZD7WGZXYFGJBVPV0002",
 "has_additional_information_key_identifier": {
 "has_value": "consumerIdentifierLast4"
 },
 "has_additional_information_value": {
 "has_value": "5679"
 }
 }
 ],
 "organizations": [
 {
 "@type": "customer",
 "@id": "01FD6ZNGNFKY3B7CX0YN6N0003",
 "has_organization_name": {
 "has_value": "Finbank"
 }
 }
 ]
 },
 "metadata": {
 "validation": false,
 "linked_collections": [
 {
 "collection_id": "01GKM06XF54PM19Q03D8V755GF",
 "label": "Response Collection"
 }
 ],
 "created_at": "2022-12-06T10:17:31.913634-05:00"
 },
 "collection_id": "01GKM06XM9Y91C1MVFWVJ5817Z"
 },
 "response_collection": {
 "transaction_id": "01GKM06XAAAR8GXBH45SZ7T2BT",
 "data": {
 "error_message_information": [
 {
 "@type": "error_message_information",
 "with_error_message": [
 "01GKM07463X0P28XF6AT5FJ9Q9"
 ],
 "@id": "01GKM074631BWTQE7Y916NCCWC"
 },
 {
 "@type": "error_message_information",
 "with_error_message": [
 "01GKM07463J64PPSH4N5WZZHNR"
 ],
 "@id": "01GKM0746356NV76078BXTGQEG"
 }
 ],
 "error_messages": [
 {
 "@id": "01GKM07463X0P28XF6AT5FJ9Q9",
 "@type": "error_message"
 },
 {
 "@id": "01GKM07463J64PPSH4N5WZZHNR",
 "@type": "error_message",
 "has_error_message_code": "AV-1002",
 "has_error_message_text": "The reference number does not belong to the last 4 digits of SSN provided."
 }
 ],
 "mortgage_products": [
 {
 "@type": "asset",
 "has_partner_process_identifier": {
 "has_value": "e4b92431-9eee-42ee-9857-2efba7c1b107"
 },
 "has_partner_name": {
 "has_value": "Equifax"
 },
 "has_partner_product_name": {
 "has_value": "Asset"
 },
 "@id": "01GKM0746324QS61WM948Y8N9E"
 }
 ],
 "statuses": [
 {
 "@type": "status",
 "has_status_name": {
 "has_value": "Failure"
 },
 "@id": "01GKM07463PXSQTTEXWY75WD5A"
 }
 ]
 },
 "metadata": {
 "version": 2,
 "validation": false,
 "linked_collections": [
 {
 "collection_id": "01GKM06XM9Y91C1MVFWVJ5817Z",
 "label": "Request Collection"
 }
 ],
 "created_at": "2022-12-06T10:17:31.749600-05:00",
 "invocation_status": "COMPLETED",
 "last_updated_at": "2022-12-06T10:17:40.041318-05:00",
 "partner_language": "asset-equifax-verification-refresh",
 "partner_name": "equifax",
 "product_name": "asset",
 "service_invocation": {
 "Language": {
 "output": {
 "from_language": "asset-equifax-verification-refresh",
 "to_language": "staircase-graph",
 "status": "TRANSLATED",
 "invocation_id": "01GKM073N4TQVY515806BCW6T7"
 },
 "input": {
 "from_language": "staircase-graph",
 "to_language": "asset-equifax-verification-refresh",
 "status": "TRANSLATED",
 "invocation_id": "01GKM06Y43WQ08KQJPE6VSSA66"
 }
 },
 "operation_name": "language_input",
 "Connector": {
 "status": "COMPLETED",
 "invocation_id": "5a84bdd4-917e-4908-8571-7a15bfb60227",
 "connector_flow_name": "asset-initiate-equifax-reverification"
 }
 },
 "staircase_language_version": 2
 },
 "collection_id": "01GKM06XF54PM19Q03D8V755GF"
 },
 "flows_responses": {},
 "_links": {
 "finance_metrics": "https://YOUR_ENVIRONMENT_DOMAIN.staircaseapi.com/finance/metrics/query/",
 "health_metrics": "https://YOUR_ENVIRONMENT_DOMAIN.staircaseapi.com/code-health-checker/metric/01GKM06XAAAR8GXBH45SZ7T2BT?product_name=asset"
 }
}
```

<!--/source-->

<!--source:api-specifications-->
application/json Copy Successfully returned status of the Product flow Invocation.

```
{
 "invocation_id": "01GKM1D01G0PN3136VWQBDNQZ8",
 "transaction_id": "01GKM1CZSVZ2PG4Y05DGMWPVV1",
 "product_flow_name": "check-equifax-verification-status",
 "request_collection_id": "01GKM1D0846R6QZZBQFFXWACPB",
 "response_collection_id": "01GKM1D01G0PN3136VWQBDNQZ8",
 "service_invocation": {
 "Language": {
 "output": {
 "from_language": "asset-equifax-status-checker",
 "to_language": "staircase-graph",
 "status": "TRANSLATED",
 "invocation_id": "01GKM1DWNB5M1WTYB4K9CHNAK6"
 },
 "input": {
 "from_language": "staircase-graph",
 "to_language": "asset-equifax-status-checker",
 "status": "TRANSLATED",
 "invocation_id": "01GKM1D22EBW1HDD7J7J4ZAMKZ"
 }
 },
 "operation_name": "language_input",
 "Connector": {
 "status": "COMPLETED",
 "invocation_id": "9d16bdec-47ec-4b99-b138-0189e601e18d",
 "connector_flow_name": "asset-check-equifax-verification-status"
 }
 },
 "invocation_status": "COMPLETED",
 "widget_url": "",
 "metadata": {},
 "options": {},
 "connector_job_id": "9d16bdec-47ec-4b99-b138-0189e601e18d",
 "request_collection": {
 "transaction_id": "01GKM1CZSVZ2PG4Y05DGMWPVV1",
 "metadata": {
 "linked_collections": [
 {
 "collection_id": "01GKM1D01G0PN3136VWQBDNQZ8",
 "label": "Response Collection"
 }
 ],
 "validation": false,
 "created_at": "2022-12-06T10:38:19.780177-05:00"
 },
 "data": {
 "additional_information": [
 {
 "@type": "additional_information",
 "@id": "01FD6ZKZD7WGZXYFGJBVPV0001",
 "has_additional_information_key_identifier": {
 "has_value": "referenceNumber"
 },
 "has_additional_information_value": {
 "has_value": "999565541269"
 }
 },
 {
 "@type": "additional_information",
 "@id": "01FD6ZKZD7WGZXYFGJBVPV0002",
 "has_additional_information_key_identifier": {
 "has_value": "consumerIdentifierLast4"
 },
 "has_additional_information_value": {
 "has_value": "5678"
 }
 }
 ],
 "organizations": [
 {
 "@type": "customer",
 "@id": "01FD6ZNGNFKY3B7CX0YN6N0003",
 "has_organization_name": {
 "has_value": "Finbank"
 }
 }
 ]
 },
 "collection_id": "01GKM1D0846R6QZZBQFFXWACPB"
 },
 "response_collection": {
 "transaction_id": "01GKM1CZSVZ2PG4Y05DGMWPVV1",
 "data": {
 "addresses": [
 {
 "@id": "01GKM1DY9FFN3FG735FW8BAMYB",
 "@type": "address",
 "has_address_line_1_text": {
 "has_value": "None"
 },
 "has_city_name": {
 "has_value": "St. Louis"
 },
 "has_country_name": {
 "has_value": "US"
 },
 "has_postal_code": {
 "has_value": "63011"
 },
 "has_state_code": {
 "has_value": "MO"
 }
 }
 ],
 "asset_holders": [
 {
 "@id": "01GKM1DY9EM6A9SFMTMW1E0X2G",
 "@type": "asset_holder",
 "with_name": [
 "01GKM1DY9HM0V81QHH2KFWW9AG"
 ]
 },
 {
 "@id": "01GKM1DY9HT3YJ4T0TBQ0S8MFK",
 "@type": "asset_holder",
 "with_name": [
 "01GKM1DY9EM6A9SFMTMW1E0X2G4"
 ]
 }
 ],
 "assets": [
 {
 "@id": "01GKM1DY9JVBM77C8WX2GQ00CQ",
 "@type": "asset",
 "has_asset_account_identifier": {
 "has_value": "xxxx5600"
 },
 "has_asset_description": {
 "has_value": "Checking"
 },
 "has_asset_type": {
 "has_value": "checking_account"
 },
 "has_asset_type_other_description": {
 "has_value": "SavingsAccount"
 },
 "has_market_value_amount": {
 "has_value": 105461
 },
 "held_by_financial_institution": [
 "01GKM1DY9HGPYGTKS6156YPY90"
 ],
 "with_asset_holder": [
 "01GKM1DY9EM6A9SFMTMW1E0X2G"
 ],
 "with_currency": [
 "01GKM1DY9F3HYP2YNH8A3K7FTH"
 ],
 "with_transaction": [
 "01GKM1DY9G87KSCT7SRE2W4V6F",
 "01GKM1DY9FSQY2BSTSB4G0A9JF",
 "01GKM1DY9GS6ZW79DSJ44B0NR9",
 "01GKM1DY9JFA1H69S5CX74V9Q4",
 "01GKM1DY9GAXHHQ3CZYTW1H6D0",
 "01GKM1DY9H2G7MJYNDV45C5S1C",
 "01GKM1DY9HQNNNBQBV5XET97BB",
 "01GKM1DY9FJMBMRMQVVRR4GDPT",
 "01GKM1DY9G29Y9QK8QTD73ACDF",
 "01GKM1DY9G5ZRCFVMJJ8PP4D1G"
 ]
 },
 {
 "@id": "01GKM1DY9J8CMPF8N7279PJ2ZY",
 "@type": "asset",
 "has_asset_account_identifier": {
 "has_value": "xxxx5500"
 },
 "has_asset_description": {
 "has_value": "Savings"
 },
 "has_asset_type": {
 "has_value": "checking_account"
 },
 "has_asset_type_other_description": {
 "has_value": "SavingsAccount"
 },
 "has_market_value_amount": {
 "has_value": 125461
 },
 "held_by_financial_institution": [
 "01GKM1DY9EM6A9SFMTMW1E0X2G6"
 ],
 "with_asset_holder": [
 "01GKM1DY9HT3YJ4T0TBQ0S8MFK"
 ],
 "with_currency": [
 "01GKM1DY9GSDQMR3XMBV8BXJES"
 ],
 "with_transaction": [
 "01GKM1DY9EM6A9SFMTMW1E0X2G9",
 "01GKM1DY9F3HYP2YNH8A3K7FTH0",
 "01GKM1DY9F3HYP2YNH8A3K7FTH1",
 "01GKM1DY9EYMA65GD44WJV7JSF",
 "01GKM1DY9F5EBC2EDHYPWGF0GW",
 "01GKM1DY9F3HYP2YNH8A3K7FTH4",
 "01GKM1DY9FVGBH7TXA44JDBTAX"
 ]
 }
 ],
 "contact_information": [
 {
 "@id": "01GKM1DY9HHXT8MC21XCZDV952",
 "@type": "contact_information",
 "has_email_address": {
 "has_value": "ibrahim.gurses+13245678@staircase.co"
 }
 }
 ],
 "currency_information": [
 {
 "@id": "01GKM1DY9F3HYP2YNH8A3K7FTH",
 "@type": "currency_information",
 "has_currency_code": {
 "has_value": "USD"
 }
 },
 {
 "@id": "01GKM1DY9GSDQMR3XMBV8BXJES",
 "@type": "currency_information",
 "has_currency_code": {
 "has_value": "USD"
 }
 }
 ],
 "error_message_information": [
 {
 "@type": "error_message_information",
 "with_error_message": [
 "01GKM1DY9EM6A9SFMTMW1E0X2G0"
 ],
 "@id": "01GKM1DY9K2YWMBETKAAZRKDT2"
 },
 {
 "@type": "error_message_information",
 "@id": "01GKM1DY9KMCP0XPSTB59MX7J1"
 },
 {
 "@type": "error_message_information",
 "with_error_message": [
 "01GKM1DY9EM6A9SFMTMW1E0X2G1"
 ],
 "@id": "01GKM1DY9KAGW6NPY0N6ZQA4XV"
 }
 ],
 "error_messages": [
 {
 "@id": "01GKM1DY9EM6A9SFMTMW1E0X2G0",
 "@type": "error_message"
 },
 {
 "@id": "01GKM1DY9EM6A9SFMTMW1E0X2G1",
 "@type": "error_message"
 }
 ],
 "foreign_object": [
 {
 "@type": "foreign_object",
 "embedded_content_base64_value": {
 "has_value": "JVBERi0xLjcKJeLjz9MKNSAwIG9iago8PC9GaWx0ZXIvRmxhdGVEZWNvZGUvTGVuZ3RoIDQwNTQ+Pn"
 },
 "@id": "01GKM1DY9KM228CPEYTFF11BH0"
 }
 ],
 "mortgage_products": [
 {
 "@type": "asset",
 "has_partner_process_identifier": {
 "has_value": "848acd6c-1fae-4264-8c51-1ceb08a39b31"
 },
 "has_partner_name": {
 "has_value": "Equifax"
 },
 "has_partner_product_name": {
 "has_value": "Asset"
 },
 "has_partner_transaction_identifier": {
 "has_value": "999565541269"
 },
 "has_service_response_date": {
 "has_value": "2022-11-29"
 },
 "@id": "01GKM1DY9KPBS108G9QPN0PDEE"
 }
 ],
 "names": [
 {
 "@id": "01GKM1DY9HM0V81QHH2KFWW9AG",
 "@type": "name",
 "has_first_name": {
 "has_value": "Home"
 },
 "has_last_name": {
 "has_value": "Loanseeker"
 }
 },
 {
 "@id": "01GKM1DY9EM6A9SFMTMW1E0X2G4",
 "@type": "name",
 "has_first_name": {
 "has_value": "Home"
 },
 "has_last_name": {
 "has_value": "Loanseeker"
 }
 }
 ],
 "organizations": [
 {
 "@type": "lender",
 "has_organization_identifier": {
 "has_value": "80110"
 },
 "has_organization_name": {
 "has_value": "TWN Select Test Org"
 },
 "@id": "01GKM1DY9KKP2YTZBQCRWVHNFS"
 },
 {
 "@id": "01GKM1DY9HGPYGTKS6156YPY90",
 "@type": "financial_institution",
 "has_organization_name": {
 "has_value": "Dag Site"
 }
 },
 {
 "@id": "01GKM1DY9EM6A9SFMTMW1E0X2G6",
 "@type": "financial_institution",
 "has_organization_name": {
 "has_value": "Dag Site"
 }
 }
 ],
 "people": [
 {
 "@type": "borrower",
 "@id": "XXX-XX-5678",
 "contact_at": [
 "01GKM1DY9HHXT8MC21XCZDV952"
 ],
 "has_birth_date": {
 "has_value": "XX-XX-XXXX"
 },
 "has_first_name": {
 "has_value": "Lorraine"
 },
 "has_last_name": {
 "has_value": "Purchaser"
 },
 "has_taxpayer_identifier_value": {
 "has_value": "XXX-XX-5678"
 },
 "with_address": [
 "01GKM1DY9FFN3FG735FW8BAMYB"
 ]
 }
 ],
 "statuses": [
 {
 "@type": "status",
 "has_status_description": {
 "has_value": "Retrieve Successful"
 },
 "has_status_name": {
 "has_value": "Success"
 },
 "@id": "01GKM1DY9KDHS8FAHVV03E7KF6"
 }
 ],
 "transactions": [
 {
 "@id": "01GKM1DY9G87KSCT7SRE2W4V6F",
 "@type": "asset_transaction",
 "has_transaction_amount": {
 "has_value": 234
 },
 "has_transaction_date": {
 "has_value": "2022-11-09"
 },
 "has_transaction_description": {
 "has_value": "Payroll Credit"
 }
 },
 {
 "@id": "01GKM1DY9FSQY2BSTSB4G0A9JF",
 "@type": "asset_transaction",
 "has_transaction_amount": {
 "has_value": 2500
 },
 "has_transaction_date": {
 "has_value": "2022-11-27"
 },
 "has_transaction_description": {
 "has_value": "Check Pymt: Check # 3263"
 }
 },
 {
 "@id": "01GKM1DY9GS6ZW79DSJ44B0NR9",
 "@type": "asset_transaction",
 "has_transaction_amount": {
 "has_value": 1500
 },
 "has_transaction_date": {
 "has_value": "2022-11-03"
 },
 "has_transaction_description": {
 "has_value": "Web Authorized Pmt Recur: PaymentRec Verizon XXXXXXXXX0001"
 }
 },
 {
 "@id": "01GKM1DY9JFA1H69S5CX74V9Q4",
 "@type": "asset_transaction",
 "has_transaction_amount": {
 "has_value": 245
 },
 "has_transaction_date": {
 "has_value": "2022-11-21"
 },
 "has_transaction_description": {
 "has_value": "ACH ELECTRONIC DEBIT PAYPAL XFER"
 }
 },
 {
 "@id": "01GKM1DY9GAXHHQ3CZYTW1H6D0",
 "@type": "asset_transaction",
 "has_transaction_amount": {
 "has_value": 876
 },
 "has_transaction_date": {
 "has_value": "2022-10-22"
 },
 "has_transaction_description": {
 "has_value": "ATM Cash Withdrawal U.S. BANK Columbia:SC"
 }
 },
 {
 "@id": "01GKM1DY9H2G7MJYNDV45C5S1C",
 "@type": "asset_transaction",
 "has_transaction_amount": {
 "has_value": 123
 },
 "has_transaction_date": {
 "has_value": "2022-11-15"
 },
 "has_transaction_description": {
 "has_value": "PURCHASE AUTHORIZED DELTA"
 }
 },
 {
 "@id": "01GKM1DY9HQNNNBQBV5XET97BB",
 "@type": "asset_transaction",
 "has_transaction_amount": {
 "has_value": 345
 },
 "has_transaction_date": {
 "has_value": "2022-10-04"
 },
 "has_transaction_description": {
 "has_value": "ACH DEBIT HARLAND CLARKE"
 }
 },
 {
 "@id": "01GKM1DY9FJMBMRMQVVRR4GDPT",
 "@type": "asset_transaction",
 "has_transaction_amount": {
 "has_value": 902
 },
 "has_transaction_date": {
 "has_value": "2022-10-28"
 },
 "has_transaction_description": {
 "has_value": "ONLINE PAYMENT : REF No: 8793 Phil Eelectric Co"
 }
 },
 {
 "@id": "01GKM1DY9G29Y9QK8QTD73ACDF",
 "@type": "asset_transaction",
 "has_transaction_amount": {
 "has_value": 40
 },
 "has_transaction_date": {
 "has_value": "2022-10-10"
 },
 "has_transaction_description": {
 "has_value": "Debit Card Purchase MCDONALDS Honolulu:HI"
 }
 },
 {
 "@id": "01GKM1DY9G5ZRCFVMJJ8PP4D1G",
 "@type": "asset_transaction",
 "has_transaction_amount": {
 "has_value": 345
 },
 "has_transaction_date": {
 "has_value": "2022-10-16"
 },
 "has_transaction_description": {
 "has_value": "SPROUTS Austin:TX"
 }
 },
 {
 "@id": "01GKM1DY9EM6A9SFMTMW1E0X2G9",
 "@type": "asset_transaction",
 "has_transaction_amount": {
 "has_value": 450
 },
 "has_transaction_date": {
 "has_value": "2022-10-31"
 },
 "has_transaction_description": {
 "has_value": "Cash Withdrawal XX/XX XX:XXp #XXXXTeller"
 }
 },
 {
 "@id": "01GKM1DY9F3HYP2YNH8A3K7FTH0",
 "@type": "asset_transaction",
 "has_transaction_amount": {
 "has_value": 300
 },
 "has_transaction_date": {
 "has_value": "2022-11-08"
 },
 "has_transaction_description": {
 "has_value": "Web Authorized Pmt Recur: PaymentRec Dean Thomas XXXXXXXXX0037"
 }
 },
 {
 "@id": "01GKM1DY9F3HYP2YNH8A3K7FTH1",
 "@type": "asset_transaction",
 "has_transaction_amount": {
 "has_value": 400
 },
 "has_transaction_date": {
 "has_value": "2022-11-24"
 },
 "has_transaction_description": {
 "has_value": "Web Authorized Pmt Recur: PaymentRec Car loan XXXXXXXXX4358"
 }
 },
 {
 "@id": "01GKM1DY9EYMA65GD44WJV7JSF",
 "@type": "asset_transaction",
 "has_transaction_amount": {
 "has_value": 210
 },
 "has_transaction_date": {
 "has_value": "2022-11-16"
 },
 "has_transaction_description": {
 "has_value": "Web Authorized Pmt Recur: PaymentRec Netflix XXXXXXXXXX5456"
 }
 },
 {
 "@id": "01GKM1DY9F5EBC2EDHYPWGF0GW",
 "@type": "asset_transaction",
 "has_transaction_amount": {
 "has_value": 4000
 },
 "has_transaction_date": {
 "has_value": "2022-10-23"
 },
 "has_transaction_description": {
 "has_value": "Direct deposit - Ministry Of Magic XXXXXXXXXX9944LWV"
 }
 },
 {
 "@id": "01GKM1DY9F3HYP2YNH8A3K7FTH4",
 "@type": "asset_transaction",
 "has_transaction_amount": {
 "has_value": 600
 },
 "has_transaction_date": {
 "has_value": "2022-10-07"
 },
 "has_transaction_description": {
 "has_value": "Web Authorized Pmt Recur: PaymentRec Car loan XXXXXXXXX4373"
 }
 },
 {
 "@id": "01GKM1DY9FVGBH7TXA44JDBTAX",
 "@type": "asset_transaction",
 "has_transaction_amount": {
 "has_value": 400
 },
 "has_transaction_date": {
 "has_value": "2022-10-15"
 },
 "has_transaction_description": {
 "has_value": "Cash Withdrawal XX/XX XX:XXp #XXXXTeller"
 }
 }
 ]
 },
 "metadata": {
 "version": 2,
 "validation": false,
 "linked_collections": [
 {
 "collection_id": "01GKM1D0846R6QZZBQFFXWACPB",
 "label": "Request Collection"
 }
 ],
 "created_at": "2022-12-06T10:38:19.568825-05:00",
 "invocation_status": "COMPLETED",
 "last_updated_at": "2022-12-06T10:38:57.317854-05:00",
 "partner_language": "asset-equifax-status-checker",
 "partner_name": "equifax",
 "product_name": "asset",
 "service_invocation": {
 "Language": {
 "output": {
 "from_language": "asset-equifax-status-checker",
 "to_language": "staircase-graph",
 "status": "TRANSLATED",
 "invocation_id": "01GKM1DWNB5M1WTYB4K9CHNAK6"
 },
 "input": {
 "from_language": "staircase-graph",
 "to_language": "asset-equifax-status-checker",
 "status": "TRANSLATED",
 "invocation_id": "01GKM1D22EBW1HDD7J7J4ZAMKZ"
 }
 },
 "operation_name": "language_input",
 "Connector": {
 "status": "COMPLETED",
 "invocation_id": "9d16bdec-47ec-4b99-b138-0189e601e18d",
 "connector_flow_name": "asset-check-equifax-verification-status"
 }
 },
 "staircase_language_version": 2
 },
 "collection_id": "01GKM1D01G0PN3136VWQBDNQZ8"
 },
 "flows_responses": {},
 "_links": {
 "finance_metrics": "https://YOUR_ENVIRONMENT_DOMAIN.staircaseapi.com/finance/metrics/query/",
 "health_metrics": "https://YOUR_ENVIRONMENT_DOMAIN.staircaseapi.com/code-health-checker/metric/01GKM1CZSVZ2PG4Y05DGMWPVV1?product_name=asset"
 }
}
```

<!--/source-->

<!--source:api-specifications-->
application/json Copy Successfully returned status of the Product flow Invocation.

```
{
 "invocation_id": "01GKM1WYXW7YQ7S44D93N3MJGD",
 "transaction_id": "01GKM1WYVEX59GYCE147YJ1XDD",
 "product_flow_name": "check-equifax-verification-status",
 "request_collection_id": "01GKM1WZ3SSPFEX4PW022KK6J8",
 "response_collection_id": "01GKM1WYXW7YQ7S44D93N3MJGD",
 "service_invocation": {
 "Language": {
 "output": {
 "from_language": "asset-equifax-status-checker",
 "to_language": "staircase-graph",
 "status": "TRANSLATED",
 "invocation_id": "01GKM1XEF9YYFGSC3J584QYXPJ"
 },
 "input": {
 "from_language": "staircase-graph",
 "to_language": "asset-equifax-status-checker",
 "status": "TRANSLATED",
 "invocation_id": "01GKM1WZMJQVDFD7NXP7Y8H8SX"
 }
 },
 "operation_name": "language_input",
 "Connector": {
 "status": "COMPLETED",
 "invocation_id": "90299a11-d328-4e8b-8fcd-a8318340babe",
 "connector_flow_name": "asset-check-equifax-verification-status"
 }
 },
 "invocation_status": "COMPLETED",
 "widget_url": "",
 "metadata": {},
 "options": {},
 "connector_job_id": "90299a11-d328-4e8b-8fcd-a8318340babe",
 "request_collection": {
 "transaction_id": "01GKM1WYVEX59GYCE147YJ1XDD",
 "data": {
 "additional_information": [
 {
 "@type": "additional_information",
 "@id": "01FD6ZKZD7WGZXYFGJBVPV0001",
 "has_additional_information_key_identifier": {
 "has_value": "referenceNumber"
 },
 "has_additional_information_value": {
 "has_value": "999565541269"
 }
 },
 {
 "@type": "additional_information",
 "@id": "01FD6ZKZD7WGZXYFGJBVPV0002",
 "has_additional_information_key_identifier": {
 "has_value": "consumerIdentifierLast4"
 },
 "has_additional_information_value": {
 "has_value": "5679"
 }
 }
 ],
 "organizations": [
 {
 "@type": "customer",
 "@id": "01FD6ZNGNFKY3B7CX0YN6N0003",
 "has_organization_name": {
 "has_value": "Finbank"
 }
 }
 ]
 },
 "metadata": {
 "validation": false,
 "linked_collections": [
 {
 "collection_id": "01GKM1WYXW7YQ7S44D93N3MJGD",
 "label": "Response Collection"
 }
 ],
 "created_at": "2022-12-06T10:47:02.905285-05:00"
 },
 "collection_id": "01GKM1WZ3SSPFEX4PW022KK6J8"
 },
 "response_collection": {
 "transaction_id": "01GKM1WYVEX59GYCE147YJ1XDD",
 "data": {
 "error_message_information": [
 {
 "@type": "error_message_information",
 "with_error_message": [
 "01GKM1XFPXBT1QT65XNT24PFHE"
 ],
 "@id": "01GKM1XFPX7R7AX4QT509DFSMA"
 },
 {
 "@type": "error_message_information",
 "with_error_message": [
 "01GKM1XFPXQ6DRVQFMB1H2EAR8"
 ],
 "@id": "01GKM1XFPXX4442C2C3M38VZSQ"
 },
 {
 "@type": "error_message_information",
 "with_error_message": [
 "01GKM1XFPXSH207AAMDK3NNFZH"
 ],
 "@id": "01GKM1XFPX0K71871RH7351C7N"
 }
 ],
 "error_messages": [
 {
 "@id": "01GKM1XFPXBT1QT65XNT24PFHE",
 "@type": "error_message"
 },
 {
 "@id": "01GKM1XFPXQ6DRVQFMB1H2EAR8",
 "@type": "error_message"
 },
 {
 "@id": "01GKM1XFPXSH207AAMDK3NNFZH",
 "@type": "error_message",
 "has_error_message_code": "AV-1002",
 "has_error_message_text": "The reference number does not belong to the last 4 digits of SSN provided."
 }
 ],
 "mortgage_products": [
 {
 "@type": "asset",
 "has_partner_process_identifier": {
 "has_value": "66e2a40a-7bf2-4e75-b324-5a9385e34769"
 },
 "has_partner_name": {
 "has_value": "Equifax"
 },
 "has_partner_product_name": {
 "has_value": "Asset"
 },
 "@id": "01GKM1XFPXECKEH3JQFDF7Q0RN"
 }
 ],
 "statuses": [
 {
 "@type": "status",
 "has_status_name": {
 "has_value": "Failure"
 },
 "@id": "01GKM1XFPX5719QA9MN4E49BHG"
 }
 ]
 },
 "metadata": {
 "version": 2,
 "validation": false,
 "linked_collections": [
 {
 "collection_id": "01GKM1WZ3SSPFEX4PW022KK6J8",
 "label": "Request Collection"
 }
 ],
 "created_at": "2022-12-06T10:47:02.716777-05:00",
 "invocation_status": "COMPLETED",
 "last_updated_at": "2022-12-06T10:47:24.502266-05:00",
 "partner_language": "asset-equifax-status-checker",
 "partner_name": "equifax",
 "product_name": "asset",
 "service_invocation": {
 "Language": {
 "output": {
 "from_language": "asset-equifax-status-checker",
 "to_language": "staircase-graph",
 "status": "TRANSLATED",
 "invocation_id": "01GKM1XEF9YYFGSC3J584QYXPJ"
 },
 "input": {
 "from_language": "staircase-graph",
 "to_language": "asset-equifax-status-checker",
 "status": "TRANSLATED",
 "invocation_id": "01GKM1WZMJQVDFD7NXP7Y8H8SX"
 }
 },
 "operation_name": "language_input",
 "Connector": {
 "status": "COMPLETED",
 "invocation_id": "90299a11-d328-4e8b-8fcd-a8318340babe",
 "connector_flow_name": "asset-check-equifax-verification-status"
 }
 },
 "staircase_language_version": 2
 },
 "collection_id": "01GKM1WYXW7YQ7S44D93N3MJGD"
 },
 "flows_responses": {},
 "_links": {
 "finance_metrics": "https://YOUR_ENVIRONMENT_DOMAIN.staircaseapi.com/finance/metrics/query/",
 "health_metrics": "https://YOUR_ENVIRONMENT_DOMAIN.staircaseapi.com/code-health-checker/metric/01GKM1WYVEX59GYCE147YJ1XDD?product_name=asset"
 }
}
```

<!--/source-->

<!--source:api-specifications-->
application/json Copy Successfully returned status of the Product flow Invocation.

```
{
 "invocation_id": "fbc19f9b-1d37-4ced-9f1d-d2769b018b0a",
 "invocation_status": "COMPLETED",
 "request_collection_id": "01FCWK741N7GWYBVG4Z3N74V16",
 "callback_url": "https://webhook.site/68a4aa6a-bf18-4f7d-be7d-bc26503adeb2",
 "transaction_id": "01FCWK72GC1MFM5003SXJHMWNG",
 "request_collection": {
 "data": {
 "foo": "bar",
 "biz": "baz"
 },
 "metadata": {
 "created_at": "2021-08-12T03:11:25.749933-04:00",
 "validation": false
 },
 "transaction_id": "01FCWK72GC1MFM5003SXJHMWNG",
 "collection_id": "01FCWK741N7GWYBVG4Z3N74V16"
 },
 "response_collection": {
 "data": {},
 "collection_id": "01FCWSMVWW7192SZXR9MP52B4A",
 "transaction_id": "01FCWSMNZM271WVQY6FDS2CB6M",
 "metadata": {
 "created_at": "2021-08-12T05:03:47.612771-04:00",
 "validation": false,
 "report_download_urls": {
 "voe_template": {
 "download_url": "https://dev-data-manager-blobs-bucket-us-east-1-873429376159.s3.amazonaws.com/01FJYAHNJR",
 "blob_id": "01FCWSAQD3QDKEW91K7CPXN4Y2",
 "status": "Succeeded"
 }
 }
 }
 },
 "flows_responses": {
 "flow1": {
 "response_collection_id": "01FCWSAQD3QDKEW91K7CPXN4Y2",
 "invocation_id": "7a8980a1-73ac-4313-ada5-e0e976c38ebb",
 "invocation_status": "FAILED",
 "transaction_id": "01FCWSAH1RVMC0DH6GRQ9JSAE7",
 "product_flow_name": "demo_product_flow_422",
 "failure_reason": "Service Connector failed. Connector flow failed. Response payload: {'Error': 'CallVendorError', 'Cause': {'errorMessage': '', 'errorType': 'CallVendorError'}}",
 "response_collection": {
 "collection_id": "01FCWSAQD3QDKEW91K7CPXN4Y2",
 "data": {},
 "transaction_id": "01FCWSAH1RVMC0DH6GRQ9JSAE7",
 "metadata": {
 "created_at": "2021-08-12T04:58:15.331517-04:00",
 "validation": false
 }
 }
 },
 "flow2": {
 "response_collection_id": "01FCWSMVWW7192SZXR9MP52B4A",
 "invocation_id": "c861def5-5e5d-4690-9313-2f25427029a8",
 "invocation_status": "COMPLETED",
 "transaction_id": "01FCWSMNZM271WVQY6FDS2CB6M",
 "product_flow_name": "demo_product_flow"
 },
 "metadata": {
 "actual_flow_name": "flow2",
 "response_collection_id": "01FCWSMVWW7192SZXR9MP52B4A"
 }
 }
}
```

<!--/source-->

<!--source:api-specifications-->
application/json Copy Successfully returned status of the Product flow Invocation.

```
{
 "invocation_id": "fbc19f9b-1d37-4ced-9f1d-d2769b018b0a",
 "invocation_status": "FAILED",
 "request_collection_id": "01FCWK741N7GWYBVG4Z3N74V16",
 "callback_url": "https://webhook.site/68a4aa6a-bf18-4f7d-be7d-bc26503adeb2",
 "transaction_id": "01FCWK72GC1MFM5003SXJHMWNG",
 "failure_reason": "All product flows were failed.",
 "request_collection": {
 "data": {
 "foo": "bar",
 "biz": "baz"
 },
 "metadata": {
 "created_at": "2021-08-12T03:11:25.749933-04:00",
 "validation": false
 },
 "transaction_id": "01FCWK72GC1MFM5003SXJHMWNG",
 "collection_id": "01FCWK741N7GWYBVG4Z3N74V16"
 },
 "response_collection": {
 "collection_id": "01FCWSAQD3QDKEW91K7CPXN4Y2",
 "data": {},
 "transaction_id": "01FCWSAH1RVMC0DH6GRQ9JSAE7",
 "metadata": {
 "created_at": "2021-08-12T04:58:15.331517-04:00",
 "validation": false
 }
 },
 "flows_responses": {
 "flow1": {
 "response_collection_id": "01FCWSAQD3QDKEW91K7CPXN4Y2",
 "invocation_id": "7a8980a1-73ac-4313-ada5-e0e976c38ebb",
 "invocation_status": "FAILED",
 "transaction_id": "01FCWSAH1RVMC0DH6GRQ9JSAE7",
 "product_flow_name": "demo_product_flow_422",
 "failure_reason": "Service Connector failed. Connector flow failed. Response payload: {'Error': 'CallVendorError', 'Cause': {'errorMessage': '', 'errorType': 'CallVendorError'}}"
 }
 },
 "metadata": {
 "actual_flow_name": "flow1"
 }
}
```

<!--/source-->

<!--source:api-specifications-->
application/json Copy Request data failed validation

```
{
 "message": "{'data': ['Missing data for required field.']}"
}
```

<!--/source-->

<!--source:api-specifications-->
application/json Copy 403 invalid error

```
{
 "message": "Please check the key you used to call this service",
 "url": "https://api.staircase.co/docs/api-reference/customer-account-manager-service.yml/paths/~1products~1refresh/post"
}
```

<!--/source-->

<!--source:api-specifications-->
text/html Copy Resource not found

```
<html>\r\n<head><title>400 Bad Request</title></head>\r\n<body>\r\n<center><h1>400 Bad Request</h1></center>\r\n</body>\r\n</html>\r\n
```

<!--/source-->

<!--source:api-specifications-->
application/json Copy Internal server error

```
{
 "message": "The product has encountered an internal server error. If you have used a transaction_id to call our services, please submit it to Staircase support"
}
```

<!--/source-->

##### Parameters

<!--source:api-specifications-->
2
<!--/source-->

| Parameter | Type | Example | Description |
| --- | --- | --- | --- |
| `x-api-key` required | `string` header | `xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx` | <!--source:api-specifications-->Environment API Key.<!--/source--> |
| `invocation_id` required | `string (ulid)` path | `d7ccedb8-8889-4657-add4-bc1s4xs97637` | <!--source:api-specifications-->Product flow invocation identifier<!--/source--> |

##### Response `200``application/json`

<!--source:api-specifications-->
13 fields
<!--/source-->
<!--source:api-specifications-->
Successfully returned status of the Product flow Invocation.
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `invocation_id`required | `string` | <!--source:api-specifications-->Invocation ID.<!--/source--> |
| `invocation_status`required | `string` | <!--source:api-specifications-->Invocation Status.<!--/source-->`ACTION_REQUIRED``COMPLETED``FAILED``RUNNING``STARTED` |
| `transaction_id`required | `string` | <!--source:api-specifications-->Transaction ID used for invocation.<!--/source--> |
| `request_collection_id` | `string` | <!--source:api-specifications-->Request Collection ID.<!--/source--> |
| `request_collection` | `object` | <!--source:api-specifications-->Collection.<!--/source--> |
| `transaction_id` | `string (ulid)` | <!--source:api-specifications-->Transaction ID.<!--/source-->Example `01EZQ32PJQGKRA6HR8D72Q9FFF` |
| `collection_id` | `string (ulid)` | <!--source:api-specifications-->Collection ID.<!--/source-->Example `01EZQ32PJQGKRA6HR8D72Q9FFF` |
| `data` | `object` | <!--source:api-specifications-->Data in Staircase language schema.<!--/source--> |
| `metadata` | `object` | <!--source:api-specifications-->Metadata about collection, f.e version of used Staircase schema.<!--/source--> |
| `response_collection_id` | `string` | <!--source:api-specifications-->Response Collection ID.<!--/source--> |
| `response_collection` | `object` | <!--source:api-specifications-->Collection.<!--/source--> |
| `transaction_id` | `string (ulid)` | <!--source:api-specifications-->Transaction ID.<!--/source-->Example `01EZQ32PJQGKRA6HR8D72Q9FFF` |
| `collection_id` | `string (ulid)` | <!--source:api-specifications-->Collection ID.<!--/source-->Example `01EZQ32PJQGKRA6HR8D72Q9FFF` |
| `data` | `object` | <!--source:api-specifications-->Data in Staircase language schema.<!--/source--> |
| `metadata` | `object` | <!--source:api-specifications-->Metadata about collection, f.e version of used Staircase schema.<!--/source--> |
| `report_download_urls`required | `object` | <!--source:api-specifications-->Information about each generated report identified by template name.<!--/source--> |
| `callback_url` | `string` | <!--source:api-specifications-->URL that was specified in flow invocation and will be used to send the callback when flow invocation will be finished.<!--/source--> |
| `widget_url` | `string (uri)` | <!--source:api-specifications-->URL of the widget.<!--/source--> |
| `metadata` | `object` | <!--source:api-specifications-->Response Collection ID.<!--/source--> |
| `options` | `—` | <!--source:api-specifications-->Options that were passed to the flow invocation.<!--/source--> |
| `connector_job_id` | `string` | <!--source:api-specifications-->Connector job ID.<!--/source--> |
| `service_invocation`required | `one of` | <!--source:api-specifications-->Includes underlying services invocation.<!--/source--> |

##### Response `400``application/json`

<!--source:api-specifications-->
1 fields
<!--/source-->
<!--source:api-specifications-->
Request data failed validation
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `message` | `one of` | <!--source:api-specifications-->Message<!--/source--> |

##### Response `403``application/json`

<!--source:api-specifications-->
2 fields
<!--/source-->
<!--source:api-specifications-->
403 invalid error
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `message` | `string` | <!--source:api-specifications-->Error message.<!--/source--> |
| `url` | `string` | <!--source:api-specifications-->Error additional URL.<!--/source--> |

##### Response `404``application/json`

<!--source:api-specifications-->
1 fields
<!--/source-->
<!--source:api-specifications-->
Resource not found
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `message` | `string` | <!--source:api-specifications-->Message<!--/source--> |

##### Response `500``application/json`

<!--source:api-specifications-->
1 fields
<!--/source-->
<!--source:api-specifications-->
Internal server error
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `message` | `string` | <!--source:api-specifications-->Error message.<!--/source--> |

`GET` `/request-elements`

<!--source:api-specifications-->

#### Retrieve Request Elements
<!--/source-->

`requestElements`

<!--source:api-specifications-->
Retrieve Request Elements retrieves a list of elements needed to invoke a partner for asset verification.

<!--/source-->

##### Response

<!--source:api-specifications-->
403404500502
<!--/source-->

<!--source:api-specifications-->
application/json Copy Invalid key for service

```
{
 "message": "Please check the key you used to call this service",
 "url": "https://api.staircase.co/docs/DevOps/Distribute/Account/get-retrieve-credentials"
}
```

<!--/source-->

<!--source:api-specifications-->
application/json Copy Resource not found

```
{
 "message": "Unable to get collections of given transaction. Please check the transaction id"
}
```

<!--/source-->

<!--source:api-specifications-->
application/json Copy The product has encountered an internal server error. If possible, please contact Staircase support with the transaction_id you used.

```
{
 "message": "The product has encountered an internal server error. If you have used a transaction_id to call our services, please submit it to Staircase support"
}
```

<!--/source-->

<!--source:api-specifications-->
application/json Copy Bad gateway.

```
{
 "message": "Internal server error."
}
```

<!--/source-->

##### Response `200``application/json`

<!--source:api-specifications-->
2 fields
<!--/source-->
<!--source:api-specifications-->
Elements retrieved successfully
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `path` | `string` | <!--source:api-specifications-->Contains the path in Staircase language<!--/source--> |
| `value` | `string` | <!--source:api-specifications-->Enter your own values here<!--/source--> |

##### Response `403``application/json`

<!--source:api-specifications-->
2 fields
<!--/source-->
<!--source:api-specifications-->
Invalid key for service
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `message` | `string` | — |
| `url` | `string` | — |

##### Response `404``application/json`

<!--source:api-specifications-->
1 fields
<!--/source-->
<!--source:api-specifications-->
Resource not found
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `message` | `string` | <!--source:api-specifications-->Message<!--/source--> |

##### Response `500``application/json`

<!--source:api-specifications-->
1 fields
<!--/source-->
<!--source:api-specifications-->
The product has encountered an internal server error. If possible, please contact Staircase support with the transaction_id you used.
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `message` | `string` | — |

##### Response `502``application/json`

<!--source:api-specifications-->
1 fields
<!--/source-->
<!--source:api-specifications-->
Bad gateway.
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `message` | `string` | <!--source:api-specifications-->Error Message.<!--/source--> |

`POST` `/build-payload`

<!--source:api-specifications-->

#### Build JSON Payload
<!--/source-->

`retrieveExampleJSON`

<!--source:api-specifications-->
Build JSON Payload helps you build a JSON payload using the JSON paths from Request Elements or Response Elements. You can use this payload to either:

- submit a request for asset verification
- simulate a response containing asset verification details.

Simply add key/value pairs of path/desired output and POST to /build-payload. It will then build a nested JSON. You can find examples below.

<!--/source-->

##### Response

<!--source:api-specifications-->
400403404500502
<!--/source-->

<!--source:api-specifications-->
application/json Copy Request data failed validation

```
{
 "message": "{'data': ['Missing data for required field.']}"
}
```

<!--/source-->

<!--source:api-specifications-->
application/json Copy Invalid key for service

```
{
 "message": "Please check the key you used to call this service",
 "url": "https://api.staircase.co/docs/DevOps/Distribute/Account/get-retrieve-credentials"
}
```

<!--/source-->

<!--source:api-specifications-->
application/json Copy Resource not found

```
{
 "message": "Unable to get collections of given transaction. Please check the transaction id"
}
```

<!--/source-->

<!--source:api-specifications-->
application/json Copy The product has encountered an internal server error. If possible, please contact Staircase support with the transaction_id you used.

```
{
 "message": "The product has encountered an internal server error. If you have used a transaction_id to call our services, please submit it to Staircase support"
}
```

<!--/source-->

<!--source:api-specifications-->
application/json Copy Bad gateway.

```
{
 "message": "Internal server error."
}
```

<!--/source-->

##### Request body`application/json`

<!--source:api-specifications-->
2 fields
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `path` | `string` | <!--source:api-specifications-->Contains the path in Staircase language<!--/source--> |
| `value` | `string` | <!--source:api-specifications-->Enter your own values here<!--/source--> |

##### Response `200``application/json`

<!--source:api-specifications-->
1 fields
<!--/source-->
<!--source:api-specifications-->
Asset Verification Payload.
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `deal_sets` | `object` | — |
| `deal_set` | `object[]` | — |
| `deals` | `object` | — |
| `deal` | `object[]` | — |

##### Response `400``application/json`

<!--source:api-specifications-->
1 fields
<!--/source-->
<!--source:api-specifications-->
Request data failed validation
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `message` | `string` | <!--source:api-specifications-->Message<!--/source--> |

##### Response `403``application/json`

<!--source:api-specifications-->
2 fields
<!--/source-->
<!--source:api-specifications-->
Invalid key for service
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `message` | `string` | — |
| `url` | `string` | — |

##### Response `404``application/json`

<!--source:api-specifications-->
1 fields
<!--/source-->
<!--source:api-specifications-->
Resource not found
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `message` | `string` | <!--source:api-specifications-->Message<!--/source--> |

##### Response `500``application/json`

<!--source:api-specifications-->
1 fields
<!--/source-->
<!--source:api-specifications-->
The product has encountered an internal server error. If possible, please contact Staircase support with the transaction_id you used.
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `message` | `string` | — |

##### Response `502``application/json`

<!--source:api-specifications-->
1 fields
<!--/source-->
<!--source:api-specifications-->
Bad gateway.
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `message` | `string` | <!--source:api-specifications-->Error Message.<!--/source--> |

`POST` `/transactions/{transaction_id}/collections`

<!--source:api-specifications-->

#### Create Collection
<!--/source-->

`createCollection`

<!--source:api-specifications-->
Create Collection creates a collection of data points required for asset verification. A collection contains a digital representation of the borrower and is identified by collection_id. A collection_id is passed to the partner when requesting asset verification.

The Example below contains a sample collection that you can use to make the product invocation in /verify-assets

<!--/source-->

##### Response

<!--source:api-specifications-->
400403404500502
<!--/source-->

<!--source:api-specifications-->
application/json Copy Error

```
{
 "message": "Unable to create collection. Please check the collection data"
}
```

<!--/source-->

<!--source:api-specifications-->
application/json Copy Invalid key for service

```
{
 "message": "Please check the key you used to call this service",
 "url": "https://api.staircase.co/docs/DevOps/Distribute/Account/get-retrieve-credentials"
}
```

<!--/source-->

<!--source:api-specifications-->
application/json Copy Resource not found

```
{
 "message": "Unable to create collection. Please check the transaction Id"
}
```

<!--/source-->

<!--source:api-specifications-->
application/json Copy The product has encountered an internal server error. If possible, please contact Staircase support with the transaction_id you used.

```
{
 "message": "The product has encountered an internal server error. If you have used a transaction_id to call our services, please submit it to Staircase support"
}
```

<!--/source-->

<!--source:api-specifications-->
application/json Copy Bad gateway.

```
{
 "message": "Internal server error."
}
```

<!--/source-->

##### Parameters

<!--source:api-specifications-->
1
<!--/source-->

| Parameter | Type | Example | Description |
| --- | --- | --- | --- |
| `transaction_id` required | `string (ulid)` path | `01F5X9B9JBE958CWAXPB8MNFW1` | <!--source:api-specifications-->Staircase Transaction Identifier<!--/source--> |

##### Response `201``application/json`

<!--source:api-specifications-->
4 fields
<!--/source-->
<!--source:api-specifications-->
Collection created successfully
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `data` | `object` | — |
| `deal_sets` | `object` | — |
| `deal_set` | `object[]` | — |
| `deals` | `object` | — |
| `metadata` | `object` | <!--source:api-specifications-->The metadata object describes properties that a Staircase collection has<!--/source--> |
| `created_at` | `string` | Example `03/03/2021, 8:24:04 AM EST` |
| `updated_at` | `string` | Example `03/03/2021, 8:24:04 AM EST` |
| `validation` | `boolean` | <!--source:api-specifications-->Describes whether the collection has been validated against Staircase language schema<!--/source-->Example `false` |
| `partner_name` | `string` | <!--source:api-specifications-->Staircase partner name that was used to generate the collection<!--/source--> |
| `results` | `object` | <!--source:api-specifications-->Contains the results of an operation that generated the collection<!--/source--> |
| `status` | `string` | <!--source:api-specifications-->Describes the state of the operation that generated the collection<!--/source-->`COMPLETED``ERROR``IN_PROGRESS``TIMED_OUT`Example `COMPLETED` |
| `product` | `string` | <!--source:api-specifications-->Name of the Staircase product that generated the collection<!--/source-->Example `Assets` |
| `transaction_id` | `string (ulid)` | <!--source:api-specifications-->Staircase Transaction Identifier<!--/source-->Example `01F5X9B9JBE958CWAXPB8MNFW1` |
| `collection_id` | `string (ulid)` | <!--source:api-specifications-->Staircase Collection Identifier<!--/source-->Example `01F5X9BCPQFR3HS2MQ1EW9X2NZ` |

##### Response `400``application/json`

<!--source:api-specifications-->
1 fields
<!--/source-->
<!--source:api-specifications-->
Error
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `message` | `one of` | — |

##### Response `403``application/json`

<!--source:api-specifications-->
2 fields
<!--/source-->
<!--source:api-specifications-->
Invalid key for service
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `message` | `string` | — |
| `url` | `string` | — |

##### Response `404``application/json`

<!--source:api-specifications-->
1 fields
<!--/source-->
<!--source:api-specifications-->
Resource not found
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `message` | `string` | <!--source:api-specifications-->Message<!--/source--> |

##### Response `500``application/json`

<!--source:api-specifications-->
1 fields
<!--/source-->
<!--source:api-specifications-->
The product has encountered an internal server error. If possible, please contact Staircase support with the transaction_id you used.
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `message` | `string` | — |

##### Response `502``application/json`

<!--source:api-specifications-->
1 fields
<!--/source-->
<!--source:api-specifications-->
Bad gateway.
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `message` | `string` | <!--source:api-specifications-->Error Message.<!--/source--> |

`POST` `/verify-assets`

<!--source:api-specifications-->

#### Verify Assets
<!--/source-->

`verifyAsset`

<!--source:api-specifications-->
Verify Asset
<!--/source-->

<!--source:api-specifications-->
Verify Assets verifies account balances, historical transactions, and account holder identity information for various asset types. In order to receive a successful response, you need to provide a valid transaction_id, a valid collection_id and a valid partner_name. The partner_name parameter is optional. You can retrieve partner_name information by querying the /partners endpoint.

Show the rest To see how the entire flow works, please navigate to the Product Overview page. The overview page also contains the credentials needed for testing.

The `widget_url` returned is only valid for a certain timeframe. You can extract the timeframe by using the `expiration_time` denoted in the response. Once the timeframe has lapsed, the borrower will not be able to submit their information and the link will have expired.

#### Verification options

Redirect URL parameter

Providing the redirect_url is optional and allows you to redirect the borrower to a URL of your choosing after linking the borrower's assets. If left empty or no options parameter is passed, this URL defaults to the Staircase homepage.

Send SMS parameter

The send_sms option enables you to send an SMS when an authorization for the verification is needed. The default SMS text is "Lender has provided verification link to your E-mail address, please open link in browser, and finish verification process", if you wish to change the default SMS text you can send an optional sms_text parameter with your custom text message.

Send Email parameter

The send_email option enables you to email the borrower when an authorization for the verification is needed. The Email will be sent to the email address specified in the input collection. The Email uses the standard email template voa_email_template, if you wish to update the template please refer to the Update Email Template documentation. Please note that the template takes in one passed variable, which is the applet URL, and that is a required variable and should not be altered, for more info check the Email Product section.

Dry Run parameter

The dry_run option enables you to test the flow without actually connecting to the partners.

<!--/source-->

##### Response

<!--source:api-specifications-->
400 MissingTransactionID400 MissingCollectionID400 MissingPartnerName400 InvalidPartnerName400 InvalidJSONBody403404422 InvalidTransactionIDFormat422 InvalidCollectionIDFormat422 InvalidRedirectURLFormat500502
<!--/source-->

<!--source:api-specifications-->
application/json Copy General error

```
{
 "message": "Please make sure your body contains transaction_id."
}
```

<!--/source-->

<!--source:api-specifications-->
application/json Copy General error

```
{
 "message": "Please make sure your body contains collection_id"
}
```

<!--/source-->

<!--source:api-specifications-->
application/json Copy General error

```
{
 "message": "Please make sure your body contains partner_name"
}
```

<!--/source-->

<!--source:api-specifications-->
application/json Copy General error

```
{
 "message": "Please provide a valid partner name. To get available partners, you can use /partners endpoint."
}
```

<!--/source-->

<!--source:api-specifications-->
application/json Copy General error

```
{
 "message": "Request body had invalid format. Please provide a valid JSON"
}
```

<!--/source-->

<!--source:api-specifications-->
application/json Copy Invalid key for service

```
{
 "message": "Please check the key you used to call this service",
 "url": "https://api.staircase.co/docs/DevOps/Distribute/Account/get-retrieve-credentials"
}
```

<!--/source-->

<!--source:api-specifications-->
application/json Copy Resource not found

```
{
 "message": "Unable to get collection. Please check input collection id"
}
```

<!--/source-->

<!--source:api-specifications-->
application/json Copy Unprocessable Entity

```
{
 "message": "transaction_id value had non-alphanumeric characters. Please check transaction id"
}
```

<!--/source-->

<!--source:api-specifications-->
application/json Copy Unprocessable Entity

```
{
 "message": "collection_id value had non-alphanumeric characters. Please check collection id"
}
```

<!--/source-->

<!--source:api-specifications-->
application/json Copy Unprocessable Entity

```
{
 "message": "redirect_url had invalid URL format. Please check redirect url"
}
```

<!--/source-->

<!--source:api-specifications-->
application/json Copy The product has encountered an internal server error. If possible, please contact Staircase support with the transaction_id you used.

```
{
 "message": "The product has encountered an internal server error. If you have used a transaction_id to call our services, please submit it to Staircase support"
}
```

<!--/source-->

<!--source:api-specifications-->
application/json Copy Bad gateway.

```
{
 "message": "Internal server error."
}
```

<!--/source-->

##### Request body`application/json`

<!--source:api-specifications-->
4 fields
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `transaction_id`required | `string (ulid)` | <!--source:api-specifications-->Staircase Transaction Identifier<!--/source-->Example `01F5X9B9JBE958CWAXPB8MNFW1` |
| `collection_id`required | `string (ulid)` | <!--source:api-specifications-->Staircase Collection Identifier<!--/source-->Example `01F5X9BCPQFR3HS2MQ1EW9X2NZ` |
| `partner_name` | `string` | <!--source:api-specifications-->To get available partners, you can use /partners endpoint<!--/source--> |
| `options` | `object` | — |
| `redirect_url` | `string` | <!--source:api-specifications-->URL that the borrower will get redirected to after linking their assets through the partner form<!--/source-->Example `http://www.staircase.co` |
| `send_sms` | `boolean` | <!--source:api-specifications-->This option allows us to send SMS to the number in the collection. The SMS text is "Lender has provided verification link to your E-mail address, please open link in browser, and finish verify process"<!--/source--> |
| `dry_run` | `boolean` | <!--source:api-specifications-->If set to true, product will mock successful asset report<!--/source--> |

##### Response `201``application/json`

<!--source:api-specifications-->
3 fields
<!--/source-->
<!--source:api-specifications-->
Request for Asset Report created successfully. Please take the contained widget_url and forward it to the borrower. The URL is valid until the `expiration_time`. The `expiration_time` is denoted in EST.
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `collection_id` | `string (ulid)` | <!--source:api-specifications-->Staircase Collection Identifier<!--/source-->Example `01F5X9BCPQFR3HS2MQ1EW9X2NZ` |
| `widget_url` | `string` | <!--source:api-specifications-->URL that needs to be sent to the borrower<!--/source--> |
| `expiration_time` | `string (date-time)` | <!--source:api-specifications-->Expiration time in EST. The operation will result in failure after this date has passed.<!--/source--> |

##### Response `403``application/json`

<!--source:api-specifications-->
2 fields
<!--/source-->
<!--source:api-specifications-->
Invalid key for service
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `message` | `string` | — |
| `url` | `string` | — |

##### Response `404``application/json`

<!--source:api-specifications-->
1 fields
<!--/source-->
<!--source:api-specifications-->
Resource not found
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `message` | `string` | <!--source:api-specifications-->Message<!--/source--> |

##### Response `422``application/json`

<!--source:api-specifications-->
1 fields
<!--/source-->
<!--source:api-specifications-->
Unprocessable Entity
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `message` | `string` | <!--source:api-specifications-->Message<!--/source--> |

##### Response `500``application/json`

<!--source:api-specifications-->
1 fields
<!--/source-->
<!--source:api-specifications-->
The product has encountered an internal server error. If possible, please contact Staircase support with the transaction_id you used.
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `message` | `string` | — |

##### Response `502``application/json`

<!--source:api-specifications-->
1 fields
<!--/source-->
<!--source:api-specifications-->
Bad gateway.
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `message` | `string` | <!--source:api-specifications-->Error Message.<!--/source--> |

##### Other responses

`400`

`POST` `/request-elements/complete`

<!--source:api-specifications-->

#### Validate Collection
<!--/source-->

`validateCollection`

<!--source:api-specifications-->
Validate Collection allows you to validate an input collection prior to submitting to our partners. This endpoint will give messages with all the corrections you need to make to your collection in order for it to be accepted by our partner call.

<!--/source-->

##### Response

<!--source:api-specifications-->
403404500502
<!--/source-->

<!--source:api-specifications-->
application/json Copy Invalid key for service

```
{
 "message": "Please check the key you used to call this service",
 "url": "https://api.staircase.co/docs/DevOps/Distribute/Account/get-retrieve-credentials"
}
```

<!--/source-->

<!--source:api-specifications-->
application/json Copy Resource not found

```
{
 "message": "Unable to get collections of given transaction. Please check the transaction id"
}
```

<!--/source-->

<!--source:api-specifications-->
application/json Copy The product has encountered an internal server error. If possible, please contact Staircase support with the transaction_id you used.

```
{
 "message": "The product has encountered an internal server error. If you have used a transaction_id to call our services, please submit it to Staircase support"
}
```

<!--/source-->

<!--source:api-specifications-->
application/json Copy Bad gateway.

```
{
 "message": "Internal server error."
}
```

<!--/source-->

##### Request body`application/json`

<!--source:api-specifications-->
2 fields
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `data` | `object` | <!--source:api-specifications-->Staircase collections can hold any type of valid JSON data<!--/source--> |
| `metadata` | `object` | <!--source:api-specifications-->The metadata object describes properties that a Staircase collection has<!--/source--> |
| `created_at` | `string` | Example `03/03/2021, 8:24:04 AM EST` |
| `updated_at` | `string` | Example `03/03/2021, 8:24:04 AM EST` |
| `validation` | `boolean` | <!--source:api-specifications-->Describes whether the collection has been validated against Staircase language schema<!--/source-->Example `false` |
| `partner_name` | `string` | <!--source:api-specifications-->Staircase partner name that was used to generate the collection<!--/source--> |
| `results` | `object` | <!--source:api-specifications-->Contains the results of an operation that generated the collection<!--/source--> |
| `status` | `string` | <!--source:api-specifications-->Describes the state of the operation that generated the collection<!--/source-->`COMPLETED``ERROR``IN_PROGRESS``TIMED_OUT`Example `COMPLETED` |
| `product` | `string` | <!--source:api-specifications-->Name of the Staircase product that generated the collection<!--/source-->Example `Assets` |

##### Response `200``application/json`

<!--source:api-specifications-->
1 fields
<!--/source-->
<!--source:api-specifications-->
Collection is valid
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `message` | `string` | <!--source:api-specifications-->Message<!--/source--> |

##### Response `403``application/json`

<!--source:api-specifications-->
2 fields
<!--/source-->
<!--source:api-specifications-->
Invalid key for service
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `message` | `string` | — |
| `url` | `string` | — |

##### Response `404``application/json`

<!--source:api-specifications-->
1 fields
<!--/source-->
<!--source:api-specifications-->
Resource not found
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `message` | `string` | <!--source:api-specifications-->Message<!--/source--> |

##### Response `500``application/json`

<!--source:api-specifications-->
1 fields
<!--/source-->
<!--source:api-specifications-->
The product has encountered an internal server error. If possible, please contact Staircase support with the transaction_id you used.
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `message` | `string` | — |

##### Response `502``application/json`

<!--source:api-specifications-->
1 fields
<!--/source-->
<!--source:api-specifications-->
Bad gateway.
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `message` | `string` | <!--source:api-specifications-->Error Message.<!--/source--> |

##### Other responses

`400`

`GET` `/status/{transaction_id}/{collection_id}`

<!--source:api-specifications-->

#### Retrieve Status
<!--/source-->

`retrieveStatus`

<!--source:api-specifications-->
Retrieve Status determines if a partner has completed asset verification.

<!--/source-->

##### Response

<!--source:api-specifications-->
403404422 InvalidTransactionIDFormat422 InvalidCollectionIDFormat500502
<!--/source-->

<!--source:api-specifications-->
application/json Copy Invalid key for service

```
{
 "message": "Please check the key you used to call this service",
 "url": "https://api.staircase.co/docs/DevOps/Distribute/Account/get-retrieve-credentials"
}
```

<!--/source-->

<!--source:api-specifications-->
application/json Copy Resource not found

```
{
 "message": "Unable to get status. Please check the given ids"
}
```

<!--/source-->

<!--source:api-specifications-->
application/json Copy Unprocessable Entity

```
{
 "message": "transaction_id value had non-alphanumeric characters. Please check transaction id"
}
```

<!--/source-->

<!--source:api-specifications-->
application/json Copy Unprocessable Entity

```
{
 "message": "collection_id value had non-alphanumeric characters. Please check collection id"
}
```

<!--/source-->

<!--source:api-specifications-->
application/json Copy The product has encountered an internal server error. If possible, please contact Staircase support with the transaction_id you used.

```
{
 "message": "The product has encountered an internal server error. If you have used a transaction_id to call our services, please submit it to Staircase support"
}
```

<!--/source-->

<!--source:api-specifications-->
application/json Copy Bad gateway.

```
{
 "message": "Internal server error."
}
```

<!--/source-->

##### Parameters

<!--source:api-specifications-->
2
<!--/source-->

| Parameter | Type | Example | Description |
| --- | --- | --- | --- |
| `transaction_id` required | `string (ulid)` path | `01F5X9B9JBE958CWAXPB8MNFW1` | <!--source:api-specifications-->Staircase Transaction Identifier<!--/source--> |
| `collection_id` required | `string (ulid)` path | `01F5X9BCPQFR3HS2MQ1EW9X2NZ` | <!--source:api-specifications-->Staircase collection_id<!--/source--> |

##### Response `200``application/json`

<!--source:api-specifications-->
3 fields
<!--/source-->
<!--source:api-specifications-->
Status retrieved successfully
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `status` | `string` | <!--source:api-specifications-->Potential status responses: 'COMPLETED', 'ERROR', 'IN_PROGRESS', 'TIMED_OUT'<!--/source-->`COMPLETED``ERROR``IN_PROGRESS``TIMED_OUT` |
| `message` | `string` | — |
| `updated_at` | `string` | Example `03/10/2021, 9:49:25 AM EST` |

##### Response `403``application/json`

<!--source:api-specifications-->
2 fields
<!--/source-->
<!--source:api-specifications-->
Invalid key for service
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `message` | `string` | — |
| `url` | `string` | — |

##### Response `404``application/json`

<!--source:api-specifications-->
1 fields
<!--/source-->
<!--source:api-specifications-->
Resource not found
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `message` | `string` | <!--source:api-specifications-->Message<!--/source--> |

##### Response `422``application/json`

<!--source:api-specifications-->
1 fields
<!--/source-->
<!--source:api-specifications-->
Unprocessable Entity
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `message` | `string` | <!--source:api-specifications-->Message<!--/source--> |

##### Response `500``application/json`

<!--source:api-specifications-->
1 fields
<!--/source-->
<!--source:api-specifications-->
The product has encountered an internal server error. If possible, please contact Staircase support with the transaction_id you used.
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `message` | `string` | — |

##### Response `502``application/json`

<!--source:api-specifications-->
1 fields
<!--/source-->
<!--source:api-specifications-->
Bad gateway.
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `message` | `string` | <!--source:api-specifications-->Error Message.<!--/source--> |

##### Other responses

`400`

`GET` `/report/{blob_id}`

<!--source:api-specifications-->

#### Retrieve Report
<!--/source-->

`retrieveReport`

<!--source:api-specifications-->
Retrieve Report retrieves a PDF report from a successful verification. This endpoint takes in one path parameter, the blob ID, which can be found in the response collection of a successful verification.

<!--/source-->

##### Response

<!--source:api-specifications-->
200400 BadRequestResp400 NoReportFound403500
<!--/source-->

<!--source:api-specifications-->
application/json Copy Report URL retrieved successfully

```
{
 "url": "www.domain.com/reportURL"
}
```

<!--/source-->

<!--source:api-specifications-->
application/json Copy Bad Request

```
{
 "message": "Blod ID is not valid or not provided"
}
```

<!--/source-->

<!--source:api-specifications-->
application/json Copy Bad Request

```
{
 "message": "No report found for this blob_id"
}
```

<!--/source-->

<!--source:api-specifications-->
application/json Copy Invalid key for service

```
{
 "message": "Please check the key you used to call this service",
 "url": "https://api.staircase.co/docs/DevOps/Distribute/Account/get-retrieve-credentials"
}
```

<!--/source-->

<!--source:api-specifications-->
application/json Copy The product has encountered an internal server error. If possible, please contact Staircase support with the transaction_id you used.

```
{
 "message": "The product has encountered an internal server error. If you have used a transaction_id to call our services, please submit it to Staircase support"
}
```

<!--/source-->

##### Parameters

<!--source:api-specifications-->
2
<!--/source-->

| Parameter | Type | Example | Description |
| --- | --- | --- | --- |
| `x-api-key` required | `string` header | `xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx` | <!--source:api-specifications-->Staircase Documentation Environment API Key<!--/source--> |
| `blob_id` required | `string` path | `01FVFBXHVD5WT2MJAGG96CPBJD` | <!--source:api-specifications-->Blob ID for report that needs to retrieved.<!--/source--> |

##### Response `200``application/json`

<!--source:api-specifications-->
1 fields
<!--/source-->
<!--source:api-specifications-->
Report URL retrieved successfully
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `url` | `string` | <!--source:api-specifications-->Report URL<!--/source--> |

##### Response `400``application/json`

<!--source:api-specifications-->
1 fields
<!--/source-->
<!--source:api-specifications-->
Bad Request
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `message` | `string` | <!--source:api-specifications-->Partner not found<!--/source--> |

##### Response `403``application/json`

<!--source:api-specifications-->
2 fields
<!--/source-->
<!--source:api-specifications-->
Invalid key for service
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `message` | `string` | — |
| `url` | `string` | — |

##### Response `500``application/json`

<!--source:api-specifications-->
1 fields
<!--/source-->
<!--source:api-specifications-->
The product has encountered an internal server error. If possible, please contact Staircase support with the transaction_id you used.
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `message` | `string` | — |

<!--source:api-specifications-->

### Product Reports
<!--/source-->

`GET` `/products/asset/report-templates`

<!--source:api-specifications-->

#### Retrieve Report Templates
<!--/source-->

`retrieveReportTemplates`

<!--source:api-specifications-->
Retrieve Report Templates retrieves product report templates.

<!--/source-->

##### Response

<!--source:api-specifications-->
200400403404 GetProduct404 text/html500
<!--/source-->

<!--source:api-specifications-->
application/json Copy Successfully returned the report templates.

```
{
 "name": "voe_template",
 "template_type": "jinja",
 "product_name": "asset",
 "body": "<!DOCTYPE html><html lang=\\\"en\\\"><head><title>Staircase</title></head><body><h3>First Name</h3>{{ collection[\\\"deal_sets\\\"][\\\"deal_set\\\"][0][\\\"deals\\\"][\\\"deal\\\"][0][\\\"parties\\\"][\\\"party\\\"][0][\\\"individual\\\"][\\\"name\\\"][\\\"first\\\"] }}</body></html>"
}
```

<!--/source-->

<!--source:api-specifications-->
application/json Copy Request data failed validation

```
{
 "message": "{'data': ['Missing data for required field.']}"
}
```

<!--/source-->

<!--source:api-specifications-->
application/json Copy 403 invalid error

```
{
 "message": "Please check the key you used to call this service",
 "url": "https://staircase.stoplight.io/docs/api-reference/customer-account-manager-service.yml/paths/~1products~1refresh/post"
}
```

<!--/source-->

<!--source:api-specifications-->
application/json Copy Resource not found

```
{
 "type": "string",
 "description": "Error Message."
}
```

<!--/source-->

<!--source:api-specifications-->
text/html Copy Resource not found

```
<html>\r\n<head><title>400 Bad Request</title></head>\r\n<body>\r\n<center><h1>400 Bad Request</h1></center>\r\n</body>\r\n</html>\r\n
```

<!--/source-->

<!--source:api-specifications-->
application/json Copy Internal server error

```
{
 "message": "The product has encountered an internal server error. If you have used a transaction_id to call our services, please submit it to Staircase support"
}
```

<!--/source-->

##### Parameters

<!--source:api-specifications-->
1
<!--/source-->

| Parameter | Type | Example | Description |
| --- | --- | --- | --- |
| `x-api-key` required | `string` header | `xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx` | <!--source:api-specifications-->Environment API Key.<!--/source--> |

##### Response `200``application/json`

<!--source:api-specifications-->
4 fields
<!--/source-->
<!--source:api-specifications-->
Successfully returned the report templates.
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `name` | `string` | <!--source:api-specifications-->Name of template<!--/source--> |
| `template_type` | `string` | <!--source:api-specifications-->Template type<!--/source-->`jinja` |
| `body` | `string` | <!--source:api-specifications-->Template HTML string body<!--/source--> |
| `product_name` | `string` | <!--source:api-specifications-->Product name<!--/source--> |

##### Response `400``application/json`

<!--source:api-specifications-->
1 fields
<!--/source-->
<!--source:api-specifications-->
Request data failed validation
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `message` | `string` | <!--source:api-specifications-->Message<!--/source--> |

##### Response `403``application/json`

<!--source:api-specifications-->
2 fields
<!--/source-->
<!--source:api-specifications-->
403 invalid error
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `message` | `string` | <!--source:api-specifications-->Error message.<!--/source--> |
| `url` | `string` | <!--source:api-specifications-->Error additional URL.<!--/source--> |

##### Response `404``application/json`

<!--source:api-specifications-->
1 fields
<!--/source-->
<!--source:api-specifications-->
Resource not found
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `message` | `string` | <!--source:api-specifications-->Error Message.<!--/source--> |

##### Response `500``application/json`

<!--source:api-specifications-->
1 fields
<!--/source-->
<!--source:api-specifications-->
Internal server error
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `message` | `string` | <!--source:api-specifications-->Error message.<!--/source--> |

`POST` `/products/asset/report-templates`

<!--source:api-specifications-->

#### Create Report Template
<!--/source-->

`createReportTemplate`

<!--source:api-specifications-->
Create Report Template helps you to create templates for report generation.

The template shall be in multiple formats, currently supported is Jinja HTML templates powered by the Jinja template engine.

Below is example markup written in Jinja logic as HTML.

```
<!DOCTYPE html>
<html lang="en">
<head>
 <title>Staircase</title>
</head>
<body>
 <h1 style="align-content: center; color: red">Staircase</h1>

 <h3>First Name</h3>
 {{ collection["deal_sets"]["deal_set"][0]["deals"]["deal"][0]["parties"]["party"][0]["individual"]["name"]["first"] }}

 <h3>Last Name</h3>
 {{ collection["deal_sets"]["deal_set"][0]["deals"]["deal"][0]["parties"]["party"][0]["individual"]["name"]["last"] }}

 <h3>List</h3>
 <ul>
 {% for item in collection.deal_sets.deal_set[0].deals.deal[0].parties.party[0].individual.contact_points.contact_point %}
 <li>Email: {{ item.email }}</li>
 <li>Phone: {{ item.contact_point_telephone.value }}</li>
 

 {% endfor %}
 </ul>

 <h3>Table</h3>
 <table style="border: 1px solid black;">
 <tr>
 {%- for header in ["Name", "Email", "Phone"] %}
 <th style="border: 1px solid black;">{{ header }} </th>
 {%- endfor %}
 </tr>
 {%- for row in collection.deal_sets.deal_set[0].deals.deal[0].parties.party[0].individual.contact_points.contact_point %}
 <tr>
 <td style="border: 1px solid black;">{{ collection["deal_sets"]["deal_set"][0]["deals"]["deal"][0]["parties"]["party"][0]["individual"]["name"]["first"] }} </td>
 <td style="border: 1px solid black;">{{row.email}}</td>
 <td style="border: 1px solid black;">{{row.contact_point_telephone.value}}</td>
 </tr>
 {%- endfor %}
 </table>
</body>
</html>
```

Refer to Jinja documentation for more information on the logic used.

Show the rest

#### Example Reports

Please refer to the example reports and style guidelines in the request examples below.

Notes:

- Report header and footer are implicit and will automatically wrap your content. You only need to create a template for your content.
- The below example reports HTML is minified for display. Please unminify to convert back to normal HTML file and update with your logic.
- You may use the style guidelines if a table, bulleted-list, etc. are needed.

<!--/source-->

##### Request

<!--source:api-specifications-->
Example Jinja LogicVOE Report 1VOE Report 2Report Styles
<!--/source-->

<!--source:api-specifications-->
application/json Copy
```
{
 "name": "voe_template",
 "template_type": "jinja",
 "body": "<!DOCTYPE html><html lang=\\\"en\\\"><head><title>Staircase</title></head><body><h3>First Name</h3>{{ collection[\\\"deal_sets\\\"][\\\"deal_set\\\"][0][\\\"deals\\\"][\\\"deal\\\"][0][\\\"parties\\\"][\\\"party\\\"][0][\\\"individual\\\"][\\\"name\\\"][\\\"first\\\"] }}</body></html>"
}
```

<!--/source-->

<!--source:api-specifications-->
application/json Copy
```
{
 "name": "report1_example",
 "template_type": "jinja",
 "body": "<!DOCTYPE html><html lang=\\\"en\\\"><head><meta charset=\\\"UTF-8\\\"><meta name=\\\"viewport\\\" content=\\\"width=device-width, initial-scale=1.0\\\"><meta http-equiv=\\\"X-UA-Compatible\\\" content=\\\"ie=edge\\\"><title>Content</title><style>@font-face{font-family:\\\"Everett Regular\\\";src:url(\\\"https://staircase.co/static/fonts/Everett-Regular-web.woff2\\\") format(\\\"woff2\\\"), url(\\\"https://staircase.co/static/fonts/Everett-Regular-web.woff\\\") format(\\\"woff\\\"), url(\\\"https://staircase.co/static/fonts/Everett-Regular.otf\\\") format(\\\"opentype\\\")}@font-face{font-family:\\\"Everett Medium\\\";src:url(\\\"https://staircase.co/static/fonts/Everett-Medium-web.woff2\\\") format(\\\"woff2\\\"), url(\\\"https://staircase.co/static/fonts/Everett-Medium-web.woff\\\") format(\\\"woff\\\"), url(\\\"https://staircase.co/static/fonts/Everett-Medium.otf\\\") format(\\\"opentype\\\")}html{background-color:#fff}body{max-width:700px;margin:0 auto;background-color:#fff;font-family:\\\"Everett Regular\\\",Arial,Helvetica,sans-serif}.wrapper{padding:32px}.verification-title{font-size:24px;line-height:34px;color:#000;font-weight:400;margin-bottom:15px;margin-top:30px}.logo-header{height:40px}.loan-wrap{display:flex;align-items:center}.loan-column{padding-right:60px;position:relative}.loan-column h5{font-size:12px;line-height:14px;color:#979797;margin:0;padding-bottom:5px;font-weight:400}.loan-column span{font-size:14px;line-height:18px;color:#2c2c2c;font-family:\\\"Everett Medium\\\",Arial,Helvetica,sans-serif}.loan-column:after{content:\\\"\\\";position:absolute;right:30px;top:0;bottom:0;width:1px;background:#ededee}.loan-column:last-child:after{display:none}.main-title{font-weight:400;color:#271a69;font-size:16px;line-height:22px;padding-bottom:5px;border-bottom:1px solid #271a69;margin-bottom:18px}.main-field{font-size:12px;line-height:14px;color:#2c2c2c;font-weight:400}.main-field p{font-size:14px;line-height:18px;font-family:\\\"Everett Medium\\\",Arial,Helvetica,sans-serif;;margin:0;padding-top:3px}.data-source-wrap{margin:30px 0}.borrower-wrap,.employer-wrap{margin-bottom:30px}.columns-2{display:grid;grid-template-columns:1fr 1fr;margin-bottom:17px}.columns-3{display:grid;grid-template-columns:1fr 1fr 1fr;margin-bottom:20px}.columns-5{display:grid;grid-template-columns: .9fr 1fr 1fr 1fr 1fr;margin-bottom:17px}.divider{width:100%;height:1px;background-color:#ededee}.last-text{font-size:12px;line-height:14px;color:#2c2c2c;margin-top:35px}.last-text span{font-family:\\\"Everett Medium\\\",Arial,Helvetica,sans-serif}footer{background-color:#f9f9f9;text-align:center;margin-top:35px;margin-bottom:-10px}footer p{font-size:12px;line-height:14px;padding:12px 0}footer span{font-family:\\\"Everett Medium\\\",Arial,Helvetica,sans-serif}.wrapper-2{padding:0}.header-2{background-color:#271a69;padding:15px 20px}.header-2 table{width:100%}.header-2 .title-header-2{text-align:right}.header-2 h3{font-size:13px;color:#fff;margin:0;font-weight:400;display:inline-block;vertical-align:middle}.logo-2{height:27px;display:inline-block;vertical-align:middle}.main-content-2{padding:0 20px}.verification-items{padding:20px 0 2px 0}.verification-items span{display:block;font-size:12px;line-height:14px;margin-bottom:2px}.section-2{margin-bottom:30px}.main-title-bg{background-color:#f3f3f3;border-top-left-radius:10px;border-top-right-radius:10px}.main-title-bg h3{font-size:15px;padding:10px 20px}.fields-wrap{padding:12px 20px 12px}.grid{display:grid;grid-template-columns:1fr 1fr}.table-grid{display:table;width:100%}.fields-wrap span{font-size:12px;line-height:14px}.section-2.borrower-2{padding-bottom:0}.section-2.employer-2{padding-bottom:30px}.up-footer{margin:0 20px;padding-bottom:20px}.sub-footer-2{background-color:#271a69;display:flex;justify-content:space-between;align-items:center;padding:5px 20px}.sub-footer-2 h5{margin:0;color:#fff;font-size:11px;line-height:14px;text-align:right}.footer-2 p{font-size:12px;line-height:14px}.footer-2 table{width:100%}</style></head><body><div class=\\\"main-content-2\\\"><div class=\\\"verification-items\\\"><span>Verification Requested:</span> <span>Verification Acquired:</span> <span>Loan Number:</span></div><div class=\\\"section-2\\\"><div class=\\\"main-title-bg\\\"><h3>Data Source</h3></div><div class=\\\"fields-wrap\\\"> <span>Provided by:</span></div></div><div class=\\\"section-2 borrower-2\\\"><div class=\\\"main-title-bg\\\"><h3>Borrower Information</h3></div><table class=\\\"table-grid\\\"><tr><td><div class=\\\"fields-wrap\\\"> <span>First Name:</span></div></td><td><div class=\\\"fields-wrap\\\"> <span>Last Name:</span></div></td></tr><tr><td><div class=\\\"fields-wrap\\\"> <span>Phone Number:</span></div></td><td><div class=\\\"fields-wrap\\\"> <span>Email:</span></div></td></tr><tr><td><div class=\\\"fields-wrap\\\"> <span>SSN:</span></div></td><td><div class=\\\"fields-wrap\\\"> <span>Street:</span></div></td></tr><tr><td><div class=\\\"fields-wrap\\\"> <span>City:</span></div></td><td><div class=\\\"fields-wrap\\\"> <span>State:</span></div></td></tr><tr><td><div class=\\\"fields-wrap\\\"> <span>Postal Code:</span></div></td><td><div class=\\\"fields-wrap\\\"> <span>Country:</span></div></td></tr></table></div><div class=\\\"section-2 employer-2\\\"><div class=\\\"main-title-bg\\\"><h3>Employer Name</h3></div><table class=\\\"table-grid\\\"><tr><td><div class=\\\"fields-wrap\\\"> <span>Company Name:</span></div></td><td><div class=\\\"fields-wrap\\\"> <span>Position Description:</span></div></td></tr><tr><td><div class=\\\"fields-wrap\\\"> <span>Start Date:</span></div></td><td><div class=\\\"fields-wrap\\\"> <span>Status:</span></div></td></tr></table></div></div><div class=\\\"footer-2\\\"><div class=\\\"up-footer\\\"><div class=\\\"divider\\\"></div><p>Information accurate as of:</p></div></div></body></html>\n"
}
```

<!--/source-->

<!--source:api-specifications-->
application/json Copy
```
{
 "name": "report2_example",
 "template_type": "jinja",
 "body": "<!DOCTYPE html><html lang=\\\"en\\\"><head><meta charset=\\\"UTF-8\\\" /><meta name=\\\"viewport\\\" content=\\\"width=device-width, initial-scale=1.0\\\" /><meta http-equiv=\\\"X-UA-Compatible\\\" content=\\\"ie=edge\\\" /><title>Content</title><style>@font-face{font-family:\\\"Everett Regular\\\";src:url(\\\"https://staircase.co/static/fonts/Everett-Regular-web.woff2\\\") format(\\\"woff2\\\"), url(\\\"https://staircase.co/static/fonts/Everett-Regular-web.woff\\\") format(\\\"woff\\\"), url(\\\"https://staircase.co/static/fonts/Everett-Regular.otf\\\") format(\\\"opentype\\\")}@font-face{font-family:\\\"Everett Medium\\\";src:url(\\\"https://staircase.co/static/fonts/Everett-Medium-web.woff2\\\") format(\\\"woff2\\\"), url(\\\"https://staircase.co/static/fonts/Everett-Medium-web.woff\\\") format(\\\"woff\\\"), url(\\\"https://staircase.co/static/fonts/Everett-Medium.otf\\\") format(\\\"opentype\\\")}html{background-color:#fff}body{max-width:700px;margin:0 auto;background-color:#fff;font-family:\\\"Everett Regular\\\",Arial,Helvetica,sans-serif}.wrapper{padding:32px}.verification-title{font-size:24px;line-height:34px;color:#000;font-weight:400;margin-bottom:15px;margin-top:30px}.logo-header{height:40px}.loan-column{padding-right:60px;position:relative}.loan-column h5{font-size:12px;line-height:14px;color:#979797;margin:0;padding-bottom:5px;font-weight:400}.loan-column span{font-size:14px;line-height:18px;color:#2c2c2c;font-family:\\\"Everett Medium\\\",Arial,Helvetica,sans-serif}.loan-column:after{content:\\\"\\\";position:absolute;right:30px;top:0;bottom:0;width:1px;background:#ededee}.loan-column:last-child:after{display:none}.main-title{font-weight:400;color:#271a69;font-size:16px;line-height:22px;padding-bottom:5px;border-bottom:1px solid #271a69;margin-bottom:18px}.main-field{font-size:12px;line-height:14px;color:#2c2c2c;font-weight:400}.main-field p{font-size:14px;line-height:18px;font-family:\\\"Everett Medium\\\",Arial,Helvetica,sans-serif;margin:0;padding-top:3px}.data-source-wrap{margin:30px 0}.employer-wrap,.borrower-wrap{margin-bottom:30px}.columns-2{margin-bottom:17px}.columns-2 table, .columns-3 table, .columns-5 table{width:100%}.columns-3 table tr td:nth-child(2){width:28%}.columns-3{margin-bottom:20px}.columns-5{margin-bottom:17px}.w-45{width:45%}.divider{width:100%;height:1px;background-color:#ededee}.last-text{font-size:12px;line-height:14px;color:#2c2c2c;margin-top:35px}.last-text span{font-family:\\\"Everett Medium\\\",Arial,Helvetica,sans-serif}footer{background-color:#f9f9f9;text-align:center;margin-top:35px;margin-bottom:-10px}footer p{font-size:12px;line-height:14px;padding:12px 0}footer span{font-family:\\\"Everett Medium\\\",Arial,Helvetica,sans-serif}.wrapper-2{padding:0}.header-2{background-color:#271a69;display:flex;align-items:center;justify-content:space-between;padding:15px 20px}.header-2 h3{font-size:13px;color:#fff;margin:0;font-weight:400}.logo-2{height:27px}.main-content-2{padding:0 20px}.verification-items{padding:20px 0 2px 0}.verification-items span{display:block;font-size:12px;line-height:14px;margin-bottom:2px}.section-2{margin-bottom:30px}.main-title-bg{background-color:#f3f3f3;border-top-left-radius:10px;border-top-right-radius:10px}.main-title-bg h3{font-size:15px;padding:10px 20px}.fields-wrap{padding:12px 20px 12px}.grid{display:grid;grid-template-columns:1fr 1fr}.fields-wrap span{font-size:12px;line-height:14px}.section-2.borrower-2{padding-bottom:0}.section-2.employer-2{padding-bottom:30px}.up-footer{margin:0 20px;padding-bottom:20px}.sub-footer-2{background-color:#271a69;display:flex;justify-content:space-between;align-items:center;padding:5px 20px}.sub-footer-2 h5{margin:0;color:#fff;font-size:11px;line-height:14px}.footer-2 p{font-size:12px;line-height:14px}</style></head><body><div class=\\\"wrapper\\\"><h3 class=\\\"verification-title\\\">Verification asset</h3><div class=\\\"loan-wrap\\\"><table><tr><td><div class=\\\"loan-column\\\"><h5>Loan Number:</h5> <span> 548712 </span></div></td><td><div class=\\\"loan-column\\\"><h5>Verification Requested:</h5> <span> 10/08/2020 </span></div></td><td><div class=\\\"loan-column\\\"><h5>Verification Acquired:</h5> <span> 10/27/2020 </span></div></td></tr></table></div><div class=\\\"data-source-wrap\\\"><h2 class=\\\"main-title\\\">Data Source</h2><div class=\\\"main-field\\\"> <span>Provided by:</span><p>Jason Barrera</p></div></div><div class=\\\"borrower-wrap\\\"><h2 class=\\\"main-title\\\">Borrower Information</h2><div class=\\\"columns-2\\\"><table><tr><td><div class=\\\"main-field\\\"> <span>First Name:</span><p>Richard</p></div></td><td><div class=\\\"main-field\\\"> <span>Last Name:</span><p>Grant</p></div></td></tr></table></div><div class=\\\"columns-3\\\"><table><tr><td><div class=\\\"main-field\\\"> <span>Phone Number:</span><p>+1 808 3722 9914</p></div></td><td><div class=\\\"main-field\\\"> <span>SSN:</span><p>34923832</p></div></td><td><div class=\\\"main-field\\\"> <span>Email:</span><p>richardgrant@gmail.com</p></div></td></tr></table></div><div class=\\\"columns-5\\\"><table><tr><td><div class=\\\"main-field\\\"> <span>State:</span><p>NY</p></div></td><td><div class=\\\"main-field\\\"> <span>City:</span><p>New York</p></div></td><td><div class=\\\"main-field\\\"> <span>Neighbourhood:</span><p>Brooklyn</p></div></td><td><div class=\\\"main-field\\\"> <span>Postal Code:</span><p>10001</p></div></td><td><div class=\\\"main-field\\\"> <span>Country:</span><p>United States</p></div></td></tr></table></div></div><div class=\\\"employer-wrap\\\"><h2 class=\\\"main-title\\\">Employer Name</h2><div class=\\\"columns-2\\\"><table><tr><td><div class=\\\"main-field\\\"> <span>Company Name:</span><p>Acme</p></div></td><td><div class=\\\"main-field\\\"> <span>Position Description:</span><p>Web Designer</p></div></td></tr></table></div><div class=\\\"columns-2\\\"><table><tr><td class=\\\"w-45\\\"><div class=\\\"main-field\\\"> <span>Start Date:</span><p>11/08/2016</p></div></td><td><div class=\\\"main-field\\\"> <span>SSN:</span><p>80018422</p></div></td></tr></table></div></div></div></body></html>\n"
}
```

<!--/source-->

<!--source:api-specifications-->
application/json Copy
```
{
 "name": "report_styles_example",
 "template_type": "jinja",
 "body": "<body><div class=\\\"wrapper\\\"><div class=\\\"titles-wrap\\\"><h3 class=\\\"styles-title\\\">Title</h3><h1 class=\\\"title\\\">h1 - Report Title</h1><h2 class=\\\"title\\\">h2 - Report Title</h2><h3 class=\\\"title\\\">h3 - Report Title</h3><h3 class=\\\"title blue\\\">h3 - Report Title</h3></div><div class=\\\"letter-styles\\\"><h3 class=\\\"styles-title\\\">BODY normal / bold / italic</h3><p class=\\\"text-styles\\\"> Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna <b>aliqua</b>. Ut enim ad minim veniam, <i>quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat.</i> Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non <b>proident</b>, sunt in culpa qui officia <i>deserunt mollit anim id est laborum.</i></p></div><div class=\\\"columns-fields\\\"><div class=\\\"column-wrap\\\"><h3 class=\\\"styles-title\\\">2 columns</h3><div class=\\\"columns-2\\\"><table class=\\\"default-table\\\"><tr><td><div class=\\\"main-field\\\"> <span>First Name:</span><p>Richard</p></div></td><td><div class=\\\"main-field\\\"> <span>Last Name:</span><p>Grant</p></div></td></tr></table></div></div><div class=\\\"column-wrap\\\"><h3 class=\\\"styles-title\\\">3 columns</h3><div class=\\\"columns-3\\\"><table class=\\\"default-table\\\"><tr><td><div class=\\\"main-field\\\"> <span>Phone Number:</span><p>+1 808 3722 9914</p></div></td><td><div class=\\\"main-field\\\"> <span>SSN:</span><p>34923832</p></div></td><td><div class=\\\"main-field\\\"> <span>Email:</span><p>richardgrant@gmail.com</p></div></td></tr></table></div></div><div class=\\\"column-wrap\\\"><h3 class=\\\"styles-title\\\">5 columns</h3><div class=\\\"columns-5\\\"><table class=\\\"default-table\\\"><tr><td><div class=\\\"main-field\\\"> <span>State:</span><p>NY</p></div></td><td><div class=\\\"main-field\\\"> <span>City:</span><p>New York</p></div></td><td><div class=\\\"main-field\\\"> <span>Neighbourhood:</span><p>Brooklyn</p></div></td><td><div class=\\\"main-field\\\"> <span>Postal Code:</span><p>10001</p></div></td><td><div class=\\\"main-field\\\"> <span>Country:</span><p>United States</p></div></td></tr></table></div></div></div><p class=\\\"info-acc\\\"> <b> Information as accurate as of: </b> Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat.</p><div class=\\\"bulleted-list\\\"><h3 class=\\\"styles-title\\\">Bulleted list</h3><ul><li> asset randomly chooses between Atomic and Argyle and checks to see if the data partner is able to provide a VOE response for the given company.</li><li> asset randomly chooses between Atomic and Argyle and checks to see if the data partner is able to provide a VOE response for the given company.</li><li> asset randomly chooses between Atomic and Argyle and checks to see if the data partner is able to provide a VOE response for the given company.</li></ul></div><div class=\\\"number-list\\\"><h3 class=\\\"styles-title\\\">Number list</h3><ul><li> <span class=\\\"list-number\\\">1.</span> asset randomly chooses between Atomic and Argyle and checks to see if the data partner is able to provide a VOE response for the given company.</li><li> <span class=\\\"list-number\\\">2.</span> asset randomly chooses between Atomic and Argyle and checks to see if the data partner is able to provide a VOE response for the given company.</li><li> <span class=\\\"list-number\\\">3.</span> asset randomly chooses between Atomic and Argyle and checks to see if the data partner is able to provide a VOE response for the given company.</li></ul></div><div class=\\\"checklist-list\\\"><h3 class=\\\"styles-title\\\">Check list</h3><ul><li> <img src=\\\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABUAAAAXCAMAAADTAfSvAAAAOVBMVEUAAAAoGGgnGWknGmknGmknGWkgEHAmGmooG2goGGgnGmknGWklG2cqG2UmGmonG2knGWYmGWknGmnimifOAAAAEnRSTlMAIN+A778Qn2BAr3AwMM+PcFDFj4syAAAAeUlEQVQY042RSQ6AIAxFpYACgkPvf1h/w0JpWUjCgpf+IWX5f1aLXCxsYA7MpGEDDE7LiZmbjhGYtP4E9Bp6wM10AiTTlXq81e9GPzUtMP3oa5RXwmh+4SV26D82laG4eLWTyoJx7yEngNh836kzRWdLEVOafcox6h8gEAZf0A2yYAAAAABJRU5ErkJggg==\\\" alt=\\\"check\\\">asset randomly chooses between Atomic and Argyle and checks to see if the data partner is able to provide a VOE response for the given company.</li><li> <img src=\\\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABUAAAAXCAMAAADTAfSvAAAAOVBMVEUAAAAoGGgnGWknGmknGmknGWkgEHAmGmooG2goGGgnGmknGWklG2cqG2UmGmonG2knGWYmGWknGmnimifOAAAAEnRSTlMAIN+A778Qn2BAr3AwMM+PcFDFj4syAAAAeUlEQVQY042RSQ6AIAxFpYACgkPvf1h/w0JpWUjCgpf+IWX5f1aLXCxsYA7MpGEDDE7LiZmbjhGYtP4E9Bp6wM10AiTTlXq81e9GPzUtMP3oa5RXwmh+4SV26D82laG4eLWTyoJx7yEngNh836kzRWdLEVOafcox6h8gEAZf0A2yYAAAAABJRU5ErkJggg==\\\" alt=\\\"check\\\">asset randomly chooses between Atomic and Argyle and checks to see if the data partner is able to provide a VOE response for the given company.</li><li> <img src=\\\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABUAAAAXCAMAAADTAfSvAAAAOVBMVEUAAAAoGGgnGWknGmknGmknGWkgEHAmGmooG2goGGgnGmknGWklG2cqG2UmGmonG2knGWYmGWknGmnimifOAAAAEnRSTlMAIN+A778Qn2BAr3AwMM+PcFDFj4syAAAAeUlEQVQY042RSQ6AIAxFpYACgkPvf1h/w0JpWUjCgpf+IWX5f1aLXCxsYA7MpGEDDE7LiZmbjhGYtP4E9Bp6wM10AiTTlXq81e9GPzUtMP3oa5RXwmh+4SV26D82laG4eLWTyoJx7yEngNh836kzRWdLEVOafcox6h8gEAZf0A2yYAAAAABJRU5ErkJggg==\\\" alt=\\\"check\\\">asset randomly chooses between Atomic and Argyle and checks to see if the data partner is able to provide a VOE response for the given company.</li></ul></div><div class=\\\"tags-wrap\\\"><h3 class=\\\"styles-title\\\">Tags</h3><div class=\\\"tags\\\"><table><tr><td><div class=\\\"tag tag-1\\\">TAG 1</div></td><td><div class=\\\"tag tag-2\\\">TAG 2</div></td></tr></table></div></div><div class=\\\"breadcrums-wrap\\\"><h3 class=\\\"styles-title\\\">Breadcrums</h3><ul><li> <a href=\\\"#\\\">Level 1</a> <img src=\\\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAoAAAAQBAMAAADdUfNzAAAAHlBMVEUAAAC+vr6+vr6/v7+8vLy+vr69vb28vLy6urq+vr4suSPSAAAACXRSTlMAz98QIO9wUDAJ8cTPAAAAMUlEQVQI12NgaDdgAAJNYRApORHEcZoJ4rBoonIYwBwICRGByEJUwhRCNEWCTXMDMgFNFAxgyg4mqQAAAABJRU5ErkJggg==\\\" alt=\\\">\\\"></li><li> <a href=\\\"#\\\">Level 2</a> <img src=\\\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAoAAAAQBAMAAADdUfNzAAAAHlBMVEUAAAC+vr6+vr6/v7+8vLy+vr69vb28vLy6urq+vr4suSPSAAAACXRSTlMAz98QIO9wUDAJ8cTPAAAAMUlEQVQI12NgaDdgAAJNYRApORHEcZoJ4rBoonIYwBwICRGByEJUwhRCNEWCTXMDMgFNFAxgyg4mqQAAAABJRU5ErkJggg==\\\" alt=\\\">\\\"></li><li> <a href=\\\"#\\\">Level 3</a> <img src=\\\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAoAAAAQBAMAAADdUfNzAAAAHlBMVEUAAAC+vr6+vr6/v7+8vLy+vr69vb28vLy6urq+vr4suSPSAAAACXRSTlMAz98QIO9wUDAJ8cTPAAAAMUlEQVQI12NgaDdgAAJNYRApORHEcZoJ4rBoonIYwBwICRGByEJUwhRCNEWCTXMDMgFNFAxgyg4mqQAAAABJRU5ErkJggg==\\\" alt=\\\">\\\"></li><li> <a href=\\\"#\\\">Level 4</a> <img src=\\\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAoAAAAQBAMAAADdUfNzAAAAHlBMVEUAAAC+vr6+vr6/v7+8vLy+vr69vb28vLy6urq+vr4suSPSAAAACXRSTlMAz98QIO9wUDAJ8cTPAAAAMUlEQVQI12NgaDdgAAJNYRApORHEcZoJ4rBoonIYwBwICRGByEJUwhRCNEWCTXMDMgFNFAxgyg4mqQAAAABJRU5ErkJggg==\\\" alt=\\\">\\\"></li></ul></div><div class=\\\"divider-wrap\\\"><h3 class=\\\"styles-title\\\">Divider</h3><div class=\\\"divider\\\"></div></div><div class=\\\"notes-wrap\\\"><h3 class=\\\"styles-title\\\">Notes</h3><div class=\\\"note\\\"><div class=\\\"inner-note\\\"><h4>NOTE</h4><p> Do not activate the API key for the documentation environment. If you have activated your API Key for the documentation environment, it cannot be used for any other environment.</p></div></div></div><div class=\\\"table-wrap\\\"><h3 class=\\\"styles-title\\\">2 columns</h3><div class=\\\"table-columns\\\"><div class=\\\"columns-table columns-2-table\\\"><table class=\\\"default-table table-grid\\\"><tr><th><div>column 1</div></th><th><div>column 2</div></th></tr><tr><td><div class=\\\"text-column\\\">Text column 1</div></td><td><div class=\\\"text-column\\\">Text column 2</div></td></tr><tr><td><div class=\\\"text-column\\\">Text column 1</div></td><td><div class=\\\"text-column\\\">Text column 2</div></td></tr><tr><td><div class=\\\"text-column\\\">Text column 1</div></td><td><div class=\\\"text-column\\\">Text column 2</div></td></tr></table></div></div></div><div class=\\\"table-wrap\\\"><h3 class=\\\"styles-title\\\">3 columns</h3><div class=\\\"table-columns\\\"><div class=\\\"columns-table columns-3-table\\\"><table class=\\\"default-table table-grid\\\"><tr><th><div>column 1</div></th><th><div>column 2</div></th><th><div>column 3</div></th></tr><tr><td><div class=\\\"text-column\\\">Text column 1</div></td><td><div class=\\\"text-column\\\">Text column 2</div></td><td><div class=\\\"text-column\\\">Text column 3</div></td></tr><tr><td><div class=\\\"text-column\\\">Text column 1</div></td><td><div class=\\\"text-column\\\">Text column 2</div></td><td><div class=\\\"text-column\\\">Text column 3</div></td></tr><tr><td><div class=\\\"text-column\\\">Text column 1</div></td><td><div class=\\\"text-column\\\">Text column 2</div></td><td><div class=\\\"text-column\\\">Text column 3</div></td></tr></table></div></div></div></div></body>\n"
}
```

<!--/source-->

##### Response

<!--source:api-specifications-->
200400403404 GetProduct404 text/html500
<!--/source-->

<!--source:api-specifications-->
application/json Copy Report template successfully added.

```
{
 "name": "voe_template",
 "template_type": "jinja",
 "product_name": "asset",
 "body": "<!DOCTYPE html><html lang=\\\"en\\\"><head><title>Staircase</title></head><body><h3>First Name</h3>{{ collection[\\\"deal_sets\\\"][\\\"deal_set\\\"][0][\\\"deals\\\"][\\\"deal\\\"][0][\\\"parties\\\"][\\\"party\\\"][0][\\\"individual\\\"][\\\"name\\\"][\\\"first\\\"] }}</body></html>"
}
```

<!--/source-->

<!--source:api-specifications-->
application/json Copy Request data failed validation

```
{
 "message": "{'data': ['Missing data for required field.']}"
}
```

<!--/source-->

<!--source:api-specifications-->
application/json Copy 403 invalid error

```
{
 "message": "Please check the key you used to call this service",
 "url": "https://staircase.stoplight.io/docs/api-reference/customer-account-manager-service.yml/paths/~1products~1refresh/post"
}
```

<!--/source-->

<!--source:api-specifications-->
application/json Copy Resource not found

```
{
 "type": "string",
 "description": "Error Message."
}
```

<!--/source-->

<!--source:api-specifications-->
text/html Copy Resource not found

```
<html>\r\n<head><title>400 Bad Request</title></head>\r\n<body>\r\n<center><h1>400 Bad Request</h1></center>\r\n</body>\r\n</html>\r\n
```

<!--/source-->

<!--source:api-specifications-->
application/json Copy Internal server error

```
{
 "message": "The product has encountered an internal server error. If you have used a transaction_id to call our services, please submit it to Staircase support"
}
```

<!--/source-->

##### Parameters

<!--source:api-specifications-->
1
<!--/source-->

| Parameter | Type | Example | Description |
| --- | --- | --- | --- |
| `x-api-key` required | `string` header | `xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx` | <!--source:api-specifications-->Environment API Key.<!--/source--> |

##### Request body`application/json`

<!--source:api-specifications-->
3 fields
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `name`required | `string` | <!--source:api-specifications-->Name of template<!--/source--> |
| `template_type`required | `string` | <!--source:api-specifications-->Template type<!--/source-->`jinja` |
| `body`required | `string` | <!--source:api-specifications-->Template HTML string body<!--/source--> |

##### Response `200``application/json`

<!--source:api-specifications-->
4 fields
<!--/source-->
<!--source:api-specifications-->
Report template successfully added.
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `name` | `string` | <!--source:api-specifications-->Name of template<!--/source--> |
| `template_type` | `string` | <!--source:api-specifications-->Template type<!--/source-->`jinja` |
| `body` | `string` | <!--source:api-specifications-->Template HTML string body<!--/source--> |
| `product_name` | `string` | <!--source:api-specifications-->Product name<!--/source--> |

##### Response `400``application/json`

<!--source:api-specifications-->
1 fields
<!--/source-->
<!--source:api-specifications-->
Request data failed validation
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `message` | `string` | <!--source:api-specifications-->Message<!--/source--> |

##### Response `403``application/json`

<!--source:api-specifications-->
2 fields
<!--/source-->
<!--source:api-specifications-->
403 invalid error
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `message` | `string` | <!--source:api-specifications-->Error message.<!--/source--> |
| `url` | `string` | <!--source:api-specifications-->Error additional URL.<!--/source--> |

##### Response `404``application/json`

<!--source:api-specifications-->
1 fields
<!--/source-->
<!--source:api-specifications-->
Resource not found
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `message` | `string` | <!--source:api-specifications-->Error Message.<!--/source--> |

##### Response `500``application/json`

<!--source:api-specifications-->
1 fields
<!--/source-->
<!--source:api-specifications-->
Internal server error
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `message` | `string` | <!--source:api-specifications-->Error message.<!--/source--> |

`GET` `/products/asset/report-templates/{template_name}`

<!--source:api-specifications-->

#### Retrieve Report Template
<!--/source-->

`retrieveReportTemplate`

<!--source:api-specifications-->
Retrieve Report Template retrieves a specific report template.

<!--/source-->

##### Response

<!--source:api-specifications-->
200400403404 GetProduct404 text/html500
<!--/source-->

<!--source:api-specifications-->
application/json Copy Successfully returned the report template.

```
{
 "name": "voe_template",
 "template_type": "jinja",
 "product_name": "asset",
 "body": "<!DOCTYPE html><html lang=\\\"en\\\"><head><title>Staircase</title></head><body><h3>First Name</h3>{{ collection[\\\"deal_sets\\\"][\\\"deal_set\\\"][0][\\\"deals\\\"][\\\"deal\\\"][0][\\\"parties\\\"][\\\"party\\\"][0][\\\"individual\\\"][\\\"name\\\"][\\\"first\\\"] }}</body></html>"
}
```

<!--/source-->

<!--source:api-specifications-->
application/json Copy Request data failed validation

```
{
 "message": "{'data': ['Missing data for required field.']}"
}
```

<!--/source-->

<!--source:api-specifications-->
application/json Copy 403 invalid error

```
{
 "message": "Please check the key you used to call this service",
 "url": "https://staircase.stoplight.io/docs/api-reference/customer-account-manager-service.yml/paths/~1products~1refresh/post"
}
```

<!--/source-->

<!--source:api-specifications-->
application/json Copy Resource not found

```
{
 "type": "string",
 "description": "Error Message."
}
```

<!--/source-->

<!--source:api-specifications-->
text/html Copy Resource not found

```
<html>\r\n<head><title>400 Bad Request</title></head>\r\n<body>\r\n<center><h1>400 Bad Request</h1></center>\r\n</body>\r\n</html>\r\n
```

<!--/source-->

<!--source:api-specifications-->
application/json Copy Internal server error

```
{
 "message": "The product has encountered an internal server error. If you have used a transaction_id to call our services, please submit it to Staircase support"
}
```

<!--/source-->

##### Parameters

<!--source:api-specifications-->
2
<!--/source-->

| Parameter | Type | Example | Description |
| --- | --- | --- | --- |
| `x-api-key` required | `string` header | `xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx` | <!--source:api-specifications-->Environment API Key.<!--/source--> |
| `template_name` required | `string` path | `demo_template` | <!--source:api-specifications-->Report Template Name<!--/source--> |

##### Response `200``application/json`

<!--source:api-specifications-->
4 fields
<!--/source-->
<!--source:api-specifications-->
Successfully returned the report template.
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `name` | `string` | <!--source:api-specifications-->Name of template<!--/source--> |
| `template_type` | `string` | <!--source:api-specifications-->Template type<!--/source-->`jinja` |
| `body` | `string` | <!--source:api-specifications-->Template HTML string body<!--/source--> |
| `product_name` | `string` | <!--source:api-specifications-->Product name<!--/source--> |

##### Response `400``application/json`

<!--source:api-specifications-->
1 fields
<!--/source-->
<!--source:api-specifications-->
Request data failed validation
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `message` | `string` | <!--source:api-specifications-->Message<!--/source--> |

##### Response `403``application/json`

<!--source:api-specifications-->
2 fields
<!--/source-->
<!--source:api-specifications-->
403 invalid error
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `message` | `string` | <!--source:api-specifications-->Error message.<!--/source--> |
| `url` | `string` | <!--source:api-specifications-->Error additional URL.<!--/source--> |

##### Response `404``application/json`

<!--source:api-specifications-->
1 fields
<!--/source-->
<!--source:api-specifications-->
Resource not found
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `message` | `string` | <!--source:api-specifications-->Error Message.<!--/source--> |

##### Response `500``application/json`

<!--source:api-specifications-->
1 fields
<!--/source-->
<!--source:api-specifications-->
Internal server error
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `message` | `string` | <!--source:api-specifications-->Error message.<!--/source--> |

`PATCH` `/products/asset/report-templates/{template_name}`

<!--source:api-specifications-->

#### Update Report Template
<!--/source-->

`updateReportTemplate`

<!--source:api-specifications-->
Update report template

<!--/source-->

##### Request

<!--source:api-specifications-->
application/json Copy
```
{
 "name": "voe_template",
 "template_type": "jinja",
 "body": "<!DOCTYPE html><html lang=\\\"en\\\"><head><title>Staircase</title></head><body><h3>First Name</h3>{{ collection[\\\"deal_sets\\\"][\\\"deal_set\\\"][0][\\\"deals\\\"][\\\"deal\\\"][0][\\\"parties\\\"][\\\"party\\\"][0][\\\"individual\\\"][\\\"name\\\"][\\\"first\\\"] }}</body></html>"
}
```

<!--/source-->

##### Response

<!--source:api-specifications-->
200400403404 GetProduct404 text/html500
<!--/source-->

<!--source:api-specifications-->
application/json Copy Report template successfully updated.

```
{
 "name": "voe_template",
 "template_type": "jinja",
 "product_name": "asset",
 "body": "<!DOCTYPE html><html lang=\\\"en\\\"><head><title>Staircase</title></head><body><h3>First Name</h3>{{ collection[\\\"deal_sets\\\"][\\\"deal_set\\\"][0][\\\"deals\\\"][\\\"deal\\\"][0][\\\"parties\\\"][\\\"party\\\"][0][\\\"individual\\\"][\\\"name\\\"][\\\"first\\\"] }}</body></html>"
}
```

<!--/source-->

<!--source:api-specifications-->
application/json Copy Request data failed validation

```
{
 "message": "{'data': ['Missing data for required field.']}"
}
```

<!--/source-->

<!--source:api-specifications-->
application/json Copy 403 invalid error

```
{
 "message": "Please check the key you used to call this service",
 "url": "https://staircase.stoplight.io/docs/api-reference/customer-account-manager-service.yml/paths/~1products~1refresh/post"
}
```

<!--/source-->

<!--source:api-specifications-->
application/json Copy Resource not found

```
{
 "type": "string",
 "description": "Error Message."
}
```

<!--/source-->

<!--source:api-specifications-->
text/html Copy Resource not found

```
<html>\r\n<head><title>400 Bad Request</title></head>\r\n<body>\r\n<center><h1>400 Bad Request</h1></center>\r\n</body>\r\n</html>\r\n
```

<!--/source-->

<!--source:api-specifications-->
application/json Copy Internal server error

```
{
 "message": "The product has encountered an internal server error. If you have used a transaction_id to call our services, please submit it to Staircase support"
}
```

<!--/source-->

##### Parameters

<!--source:api-specifications-->
2
<!--/source-->

| Parameter | Type | Example | Description |
| --- | --- | --- | --- |
| `x-api-key` required | `string` header | `xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx` | <!--source:api-specifications-->Environment API Key.<!--/source--> |
| `template_name` required | `string` path | `demo_template` | <!--source:api-specifications-->Report Template Name<!--/source--> |

##### Request body`application/json`

<!--source:api-specifications-->
3 fields
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `name`required | `string` | <!--source:api-specifications-->Name of template<!--/source--> |
| `template_type`required | `string` | <!--source:api-specifications-->Template type<!--/source-->`jinja` |
| `body`required | `string` | <!--source:api-specifications-->Template HTML string body<!--/source--> |

##### Response `200``application/json`

<!--source:api-specifications-->
4 fields
<!--/source-->
<!--source:api-specifications-->
Report template successfully updated.
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `name` | `string` | <!--source:api-specifications-->Name of template<!--/source--> |
| `template_type` | `string` | <!--source:api-specifications-->Template type<!--/source-->`jinja` |
| `body` | `string` | <!--source:api-specifications-->Template HTML string body<!--/source--> |
| `product_name` | `string` | <!--source:api-specifications-->Product name<!--/source--> |

##### Response `400``application/json`

<!--source:api-specifications-->
1 fields
<!--/source-->
<!--source:api-specifications-->
Request data failed validation
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `message` | `string` | <!--source:api-specifications-->Message<!--/source--> |

##### Response `403``application/json`

<!--source:api-specifications-->
2 fields
<!--/source-->
<!--source:api-specifications-->
403 invalid error
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `message` | `string` | <!--source:api-specifications-->Error message.<!--/source--> |
| `url` | `string` | <!--source:api-specifications-->Error additional URL.<!--/source--> |

##### Response `404``application/json`

<!--source:api-specifications-->
1 fields
<!--/source-->
<!--source:api-specifications-->
Resource not found
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `message` | `string` | <!--source:api-specifications-->Error Message.<!--/source--> |

##### Response `500``application/json`

<!--source:api-specifications-->
1 fields
<!--/source-->
<!--source:api-specifications-->
Internal server error
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `message` | `string` | <!--source:api-specifications-->Error message.<!--/source--> |

`DELETE` `/products/asset/report-templates/{template_name}`

<!--source:api-specifications-->

#### Delete Report Template
<!--/source-->

`deleteReportTemplate`

<!--source:api-specifications-->
Delete Report Template deletes a report template.

<!--/source-->

##### Response

<!--source:api-specifications-->
400 Example400 text/html403404 GetProduct404 text/html500
<!--/source-->

<!--source:api-specifications-->
application/json Copy Request data failed validation

```
{
 "message": "{'data': ['Missing data for required field.']}"
}
```

<!--/source-->

<!--source:api-specifications-->
text/html Copy Request data failed validation

```
<html>\r\n<head><title>400 Bad Request</title></head>\r\n<body>\r\n<center><h1>400 Bad Request</h1></center>\r\n</body>\r\n</html>\r\n
```

<!--/source-->

<!--source:api-specifications-->
application/json Copy 403 invalid error

```
{
 "message": "Please check the key you used to call this service",
 "url": "https://staircase.stoplight.io/docs/api-reference/customer-account-manager-service.yml/paths/~1products~1refresh/post"
}
```

<!--/source-->

<!--source:api-specifications-->
application/json Copy Resource not found

```
{
 "type": "string",
 "description": "Error Message."
}
```

<!--/source-->

<!--source:api-specifications-->
text/html Copy Resource not found

```
<html>\r\n<head><title>400 Bad Request</title></head>\r\n<body>\r\n<center><h1>400 Bad Request</h1></center>\r\n</body>\r\n</html>\r\n
```

<!--/source-->

<!--source:api-specifications-->
application/json Copy Internal server error

```
{
 "message": "The product has encountered an internal server error. If you have used a transaction_id to call our services, please submit it to Staircase support"
}
```

<!--/source-->

##### Parameters

<!--source:api-specifications-->
2
<!--/source-->

| Parameter | Type | Example | Description |
| --- | --- | --- | --- |
| `x-api-key` required | `string` header | `xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx` | <!--source:api-specifications-->Environment API Key.<!--/source--> |
| `template_name` required | `string` path | `demo_template` | <!--source:api-specifications-->Report Template Name<!--/source--> |

##### Response `400``application/json`

<!--source:api-specifications-->
1 fields
<!--/source-->
<!--source:api-specifications-->
Request data failed validation
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `message` | `string` | <!--source:api-specifications-->Message<!--/source--> |

##### Response `403``application/json`

<!--source:api-specifications-->
2 fields
<!--/source-->
<!--source:api-specifications-->
403 invalid error
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `message` | `string` | <!--source:api-specifications-->Error message.<!--/source--> |
| `url` | `string` | <!--source:api-specifications-->Error additional URL.<!--/source--> |

##### Response `404``application/json`

<!--source:api-specifications-->
1 fields
<!--/source-->
<!--source:api-specifications-->
Resource not found
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `message` | `string` | <!--source:api-specifications-->Error Message.<!--/source--> |

##### Response `500``application/json`

<!--source:api-specifications-->
1 fields
<!--/source-->
<!--source:api-specifications-->
Internal server error
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `message` | `string` | <!--source:api-specifications-->Error message.<!--/source--> |

##### Other responses

`204`

`POST` `/products/asset/reports`

<!--source:api-specifications-->

#### Generate Report
<!--/source-->

`generateTemplate`

<!--source:api-specifications-->
Generate report for a product

<!--/source-->

##### Request

<!--source:api-specifications-->
application/json Copy
```
{
 "product_name": "asset",
 "template_name": "voe_template",
 "transaction_id": "01FCWK741N7GWYBVG4Z3N74V16",
 "collection_id": "01FCWK741N7GWYBVG4Z3N74V16"
}
```

<!--/source-->

##### Response

<!--source:api-specifications-->
200400403404 GetProduct404 text/html500
<!--/source-->

<!--source:api-specifications-->
application/json Copy Report successfully generated.

```
{
 "product_name": "asset",
 "template_name": "voe_template",
 "transaction_id": "01FCWK741N7GWYBVG4Z3N74V16",
 "collection_id": "01FCWK741N7GWYBVG4Z3N74V16",
 "blob_id": "01EZYHKY4EXFW4Z8RKWHDP1KHB",
 "download_url": "https://dev-data-manager-blobs-bucket.s3.amazonaws.com/01EZY9J8SEFM2JKDJ1Q3YX65HS"
}
```

<!--/source-->

<!--source:api-specifications-->
application/json Copy Request data failed validation

```
{
 "message": "{'data': ['Missing data for required field.']}"
}
```

<!--/source-->

<!--source:api-specifications-->
application/json Copy 403 invalid error

```
{
 "message": "Please check the key you used to call this service",
 "url": "https://staircase.stoplight.io/docs/api-reference/customer-account-manager-service.yml/paths/~1products~1refresh/post"
}
```

<!--/source-->

<!--source:api-specifications-->
application/json Copy Resource not found

```
{
 "type": "string",
 "description": "Error Message."
}
```

<!--/source-->

<!--source:api-specifications-->
text/html Copy Resource not found

```
<html>\r\n<head><title>400 Bad Request</title></head>\r\n<body>\r\n<center><h1>400 Bad Request</h1></center>\r\n</body>\r\n</html>\r\n
```

<!--/source-->

<!--source:api-specifications-->
application/json Copy Internal server error

```
{
 "message": "The product has encountered an internal server error. If you have used a transaction_id to call our services, please submit it to Staircase support"
}
```

<!--/source-->

##### Parameters

<!--source:api-specifications-->
1
<!--/source-->

| Parameter | Type | Example | Description |
| --- | --- | --- | --- |
| `x-api-key` required | `string` header | `xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx` | <!--source:api-specifications-->Environment API Key.<!--/source--> |

##### Request body`application/json`

<!--source:api-specifications-->
4 fields
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `template_name`required | `string` | <!--source:api-specifications-->Name of template<!--/source--> |
| `product_name` | `string` | <!--source:api-specifications-->Product name<!--/source--> |
| `transaction_id`required | `string` | <!--source:api-specifications-->Transaction ID<!--/source--> |
| `collection_id`required | `string` | <!--source:api-specifications-->Collection ID<!--/source--> |

##### Response `200``application/json`

<!--source:api-specifications-->
6 fields
<!--/source-->
<!--source:api-specifications-->
Report successfully generated.
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `template_name` | `string` | <!--source:api-specifications-->Name of template<!--/source--> |
| `product_name` | `string` | <!--source:api-specifications-->Product name<!--/source--> |
| `transaction_id` | `string` | <!--source:api-specifications-->Transaction ID<!--/source--> |
| `collection_id` | `string` | <!--source:api-specifications-->Collection ID<!--/source--> |
| `blob_id` | `string` | <!--source:api-specifications-->Blob ID of generated report<!--/source--> |
| `download_url` | `string` | <!--source:api-specifications-->Presigned URL to view/download generated report<!--/source--> |

##### Response `400``application/json`

<!--source:api-specifications-->
1 fields
<!--/source-->
<!--source:api-specifications-->
Request data failed validation
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `message` | `string` | <!--source:api-specifications-->Message<!--/source--> |

##### Response `403``application/json`

<!--source:api-specifications-->
2 fields
<!--/source-->
<!--source:api-specifications-->
403 invalid error
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `message` | `string` | <!--source:api-specifications-->Error message.<!--/source--> |
| `url` | `string` | <!--source:api-specifications-->Error additional URL.<!--/source--> |

##### Response `404``application/json`

<!--source:api-specifications-->
1 fields
<!--/source-->
<!--source:api-specifications-->
Resource not found
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `message` | `string` | <!--source:api-specifications-->Error Message.<!--/source--> |

##### Response `500``application/json`

<!--source:api-specifications-->
1 fields
<!--/source-->
<!--source:api-specifications-->
Internal server error
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `message` | `string` | <!--source:api-specifications-->Error message.<!--/source--> |

<!--source:api-specifications-->

### Product Specifications
<!--/source-->

`GET` `/products/asset/request-schema`

<!--source:api-specifications-->

#### Retrieve Request Schema
<!--/source-->

`retrieveRequestSchema`

<!--source:api-specifications-->
Retrieve Request Schema retrieves a JSON schema for the request to the product waterfall. It also has the option of returning an example for the request object expected through the return_example attribute.

<!--/source-->

##### Response

<!--source:api-specifications-->
200400 InvalidReturnExamplesValue400 text/html403404 GetProduct404 text/html500
<!--/source-->

<!--source:api-specifications-->
application/json Copy Successfully returned the list of elements needed for product waterfall.

```
{
 "data": {
 "deal_sets": {
 "deal_set": [
 {
 "deals": {
 "deal": [
 {
 "parties": {
 "party": [
 {
 "customer_transaction_ID": "e171ec31-75b4-4fd6-ada1-a0c48373c079",
 "individual": {
 "contact_points": {
 "contact_point": [
 {
 "contact_point_telephone": {
 "value": "+1234567890"
 },
 "contact_point_email": {
 "value": "test@test.com"
 }
 }
 ]
 },
 "name": {
 "first": "John",
 "last": "Jackson"
 }
 },
 "roles": {
 "role": [
 {
 "borrower": {
 "birth_date": "1984-01-01",
 "employers": {
 "employer": [
 {
 "legal_entity": {
 "full_name": "Amazon"
 }
 }
 ]
 },
 "residences": {
 "residence": [
 {
 "address": {
 "additional_line_text": "None",
 "city": "NEW YORK",
 "country": "US",
 "line_text": "33 IRVING PLACE",
 "postal_code": "10003",
 "state_code": "NY",
 "state": "NY"
 }
 }
 ]
 }
 }
 }
 ]
 },
 "taxpayer_identifiers": {
 "taxpayer_identifier": [
 {
 "value": "317210001"
 }
 ]
 }
 }
 ]
 }
 }
 ]
 }
 }
 ]
 },
 "document_sets": {
 "document_set": [
 {
 "documents": {
 "document": [
 {
 "document_classification": {
 "document_classes": {
 "document_class": [
 {
 "staircase_type": "Staircase",
 "type": "BorrowerApproval"
 }
 ]
 }
 },
 "foreign_objects": {
 "foreign_object": [
 {
 "description": "BorrowerApproval",
 "mime_type_identifier": "application/pdf",
 "name": "01F1Z5KG9E3CPD78P7GYB3TYC1.pdf",
 "staircase_blob_id": "01F1Z5KG9E3CPD78P7GYB3TYC1"
 }
 ]
 }
 }
 ]
 }
 }
 ]
 }
 },
 "metadata": {}
}
```

<!--/source-->

<!--source:api-specifications-->
application/json Copy Error

```
{
 "message": "Please provide one of valid return examples values: true, false"
}
```

<!--/source-->

<!--source:api-specifications-->
text/html Copy Error

```
<html>\r\n<head><title>400 Bad Request</title></head>\r\n<body>\r\n<center><h1>400 Bad Request</h1></center>\r\n</body>\r\n</html>\r\n
```

<!--/source-->

<!--source:api-specifications-->
application/json Copy 403 invalid error

```
{
 "message": "Please check the key you used to call this service",
 "url": "https://staircase.stoplight.io/docs/api-reference/customer-account-manager-service.yml/paths/~1products~1refresh/post"
}
```

<!--/source-->

<!--source:api-specifications-->
application/json Copy Resource not found

```
{
 "type": "string",
 "description": "Error Message."
}
```

<!--/source-->

<!--source:api-specifications-->
text/html Copy Resource not found

```
<html>\r\n<head><title>400 Bad Request</title></head>\r\n<body>\r\n<center><h1>400 Bad Request</h1></center>\r\n</body>\r\n</html>\r\n
```

<!--/source-->

<!--source:api-specifications-->
application/json Copy Internal server error

```
{
 "message": "The product has encountered an internal server error. If you have used a transaction_id to call our services, please submit it to Staircase support"
}
```

<!--/source-->

##### Parameters

<!--source:api-specifications-->
2
<!--/source-->

| Parameter | Type | Example | Description |
| --- | --- | --- | --- |
| `x-api-key` required | `string` header | `xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx` | <!--source:api-specifications-->Environment API Key.<!--/source--> |
| `return_examples` | `boolean` query | `false` | <!--source:api-specifications-->If included and set to `true`, returns one or more pre-filled examples that conform to the schema. Default to `false`<!--/source--> |

##### Response `200``application/json`

<!--source:api-specifications-->
1 fields
<!--/source-->
<!--source:api-specifications-->
Successfully returned the list of elements needed for product waterfall.
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `schema` | `object` | <!--source:api-specifications-->Element key / value<!--/source--> |

##### Response `400``application/json`

<!--source:api-specifications-->
1 fields
<!--/source-->
<!--source:api-specifications-->
Error
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `message` | `string` | <!--source:api-specifications-->Message<!--/source--> |

##### Response `403``application/json`

<!--source:api-specifications-->
2 fields
<!--/source-->
<!--source:api-specifications-->
403 invalid error
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `message` | `string` | <!--source:api-specifications-->Error message.<!--/source--> |
| `url` | `string` | <!--source:api-specifications-->Error additional URL.<!--/source--> |

##### Response `404``application/json`

<!--source:api-specifications-->
1 fields
<!--/source-->
<!--source:api-specifications-->
Resource not found
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `message` | `string` | <!--source:api-specifications-->Error Message.<!--/source--> |

##### Response `500``application/json`

<!--source:api-specifications-->
1 fields
<!--/source-->
<!--source:api-specifications-->
Internal server error
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `message` | `string` | <!--source:api-specifications-->Error message.<!--/source--> |

`GET` `/products/asset/response-schema`

<!--source:api-specifications-->

#### Retrieve Response Schema
<!--/source-->

`retrieveResponseSchema`

<!--source:api-specifications-->
Retrieve Schema retrieves a JSON schema for the response returned by the product. It can also return an example for the response output object through return_example attribute.

<!--/source-->

##### Response

<!--source:api-specifications-->
200400 InvalidReturnExamplesValue400 text/html403404 GetProduct404 text/html500
<!--/source-->

<!--source:api-specifications-->
application/json Copy Successfully returned the list of elements of response of the product waterfall.

```
{
 "data": {
 "deal_sets": {
 "deal_set": [
 {
 "deals": {
 "deal": [
 {
 "parties": {
 "party": [
 {
 "customer_transaction_ID": "e171ec31-75b4-4fd6-ada1-a0c48373c079",
 "individual": {
 "contact_points": {
 "contact_point": [
 {
 "contact_point_telephone": {
 "value": "+1234567890"
 },
 "contact_point_email": {
 "value": "test@test.com"
 }
 }
 ]
 },
 "name": {
 "first": "John",
 "last": "Jackson"
 }
 },
 "roles": {
 "role": [
 {
 "borrower": {
 "birth_date": "1984-01-01",
 "employers": {
 "employer": [
 {
 "legal_entity": {
 "full_name": "Amazon"
 }
 }
 ]
 },
 "residences": {
 "residence": [
 {
 "address": {
 "additional_line_text": "None",
 "city": "NEW YORK",
 "country": "US",
 "line_text": "33 IRVING PLACE",
 "postal_code": "10003",
 "state_code": "NY",
 "state": "NY"
 }
 }
 ]
 }
 }
 }
 ]
 },
 "taxpayer_identifiers": {
 "taxpayer_identifier": [
 {
 "value": "317210001"
 }
 ]
 }
 }
 ]
 }
 }
 ]
 }
 }
 ]
 },
 "document_sets": {
 "document_set": [
 {
 "documents": {
 "document": [
 {
 "document_classification": {
 "document_classes": {
 "document_class": [
 {
 "staircase_type": "Staircase",
 "type": "BorrowerApproval"
 }
 ]
 }
 },
 "foreign_objects": {
 "foreign_object": [
 {
 "description": "BorrowerApproval",
 "mime_type_identifier": "application/pdf",
 "name": "01F1Z5KG9E3CPD78P7GYB3TYC1.pdf",
 "staircase_blob_id": "01F1Z5KG9E3CPD78P7GYB3TYC1"
 }
 ]
 }
 }
 ]
 }
 }
 ]
 }
 },
 "metadata": {}
}
```

<!--/source-->

<!--source:api-specifications-->
application/json Copy Error

```
{
 "message": "Please provide one of valid return examples values: true, false"
}
```

<!--/source-->

<!--source:api-specifications-->
text/html Copy Error

```
<html>\r\n<head><title>400 Bad Request</title></head>\r\n<body>\r\n<center><h1>400 Bad Request</h1></center>\r\n</body>\r\n</html>\r\n
```

<!--/source-->

<!--source:api-specifications-->
application/json Copy 403 invalid error

```
{
 "message": "Please check the key you used to call this service",
 "url": "https://staircase.stoplight.io/docs/api-reference/customer-account-manager-service.yml/paths/~1products~1refresh/post"
}
```

<!--/source-->

<!--source:api-specifications-->
application/json Copy Resource not found

```
{
 "type": "string",
 "description": "Error Message."
}
```

<!--/source-->

<!--source:api-specifications-->
text/html Copy Resource not found

```
<html>\r\n<head><title>400 Bad Request</title></head>\r\n<body>\r\n<center><h1>400 Bad Request</h1></center>\r\n</body>\r\n</html>\r\n
```

<!--/source-->

<!--source:api-specifications-->
application/json Copy Internal server error

```
{
 "message": "The product has encountered an internal server error. If you have used a transaction_id to call our services, please submit it to Staircase support"
}
```

<!--/source-->

##### Parameters

<!--source:api-specifications-->
2
<!--/source-->

| Parameter | Type | Example | Description |
| --- | --- | --- | --- |
| `x-api-key` required | `string` header | `xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx` | <!--source:api-specifications-->Environment API Key.<!--/source--> |
| `return_examples` | `boolean` query | `false` | <!--source:api-specifications-->If included and set to `true`, returns one or more pre-filled examples that conform to the schema. Default to `false`<!--/source--> |

##### Response `200``application/json`

<!--source:api-specifications-->
1 fields
<!--/source-->
<!--source:api-specifications-->
Successfully returned the list of elements of response of the product waterfall.
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `schema` | `object` | <!--source:api-specifications-->Element key / value element<!--/source--> |

##### Response `400``application/json`

<!--source:api-specifications-->
1 fields
<!--/source-->
<!--source:api-specifications-->
Error
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `message` | `string` | <!--source:api-specifications-->Message<!--/source--> |

##### Response `403``application/json`

<!--source:api-specifications-->
2 fields
<!--/source-->
<!--source:api-specifications-->
403 invalid error
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `message` | `string` | <!--source:api-specifications-->Error message.<!--/source--> |
| `url` | `string` | <!--source:api-specifications-->Error additional URL.<!--/source--> |

##### Response `404``application/json`

<!--source:api-specifications-->
1 fields
<!--/source-->
<!--source:api-specifications-->
Resource not found
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `message` | `string` | <!--source:api-specifications-->Error Message.<!--/source--> |

##### Response `500``application/json`

<!--source:api-specifications-->
1 fields
<!--/source-->
<!--source:api-specifications-->
Internal server error
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `message` | `string` | <!--source:api-specifications-->Error message.<!--/source--> |

`GET` `/products/asset/request-elements`

<!--source:api-specifications-->

#### Retrieve Request Elements
<!--/source-->

`requestElements`

<!--source:api-specifications-->
Retrieve Request Elements retrieves a list of elements needed to invoke a data partner for product function invocation.

<!--/source-->

##### Response

<!--source:api-specifications-->
200400403404 GetProduct404 text/html500
<!--/source-->

<!--source:api-specifications-->
application/json Copy Example for the Product Invocation Request Elements object

```
{
 "elements": [
 "$.deal_sets.deal_set[*].deals.deal[*].parties.party[*].customer_transaction_ID",
 "$.deal_sets.deal_set[*].deals.deal[*].parties.party[*].individual.contact_points.contact_point[*].contact_point_telephone.value",
 "$.deal_sets.deal_set[*].deals.deal[*].parties.party[*].individual.contact_points.contact_point[*].contact_point_email.value",
 "$.deal_sets.deal_set[*].deals.deal[*].parties.party[*].individual.name.first",
 "$.deal_sets.deal_set[*].deals.deal[*].parties.party[*].individual.name.last",
 "$.deal_sets.deal_set[*].deals.deal[*].parties.party[*].roles.role[*].borrower.birth_date",
 "$.deal_sets.deal_set[*].deals.deal[*].parties.party[*].roles.role[*].borrower.employers.employer[*].legal_entity.full_name",
 "$.deal_sets.deal_set[*].deals.deal[*].parties.party[*].roles.role[*].borrower.residences.residence[*].address.additional_line_text",
 "$.deal_sets.deal_set[*].deals.deal[*].parties.party[*].roles.role[*].borrower.residences.residence[*].address.city",
 "$.deal_sets.deal_set[*].deals.deal[*].parties.party[*].roles.role[*].borrower.residences.residence[*].address.country",
 "$.deal_sets.deal_set[*].deals.deal[*].parties.party[*].roles.role[*].borrower.residences.residence[*].address.line_text",
 "$.deal_sets.deal_set[*].deals.deal[*].parties.party[*].roles.role[*].borrower.residences.residence[*].address.postal_code",
 "$.deal_sets.deal_set[*].deals.deal[*].parties.party[*].roles.role[*].borrower.residences.residence[*].address.state_code",
 "$.deal_sets.deal_set[*].deals.deal[*].parties.party[*].roles.role[*].borrower.residences.residence[*].address.state",
 "$.deal_sets.deal_set[*].deals.deal[*].parties.party[*].taxpayer_identifiers.taxpayer_identifier[*].value",
 "$.document_sets.document_set[*].documents.document[*].document_classification.document_classes.document_class[*].staircase_type",
 "$.document_sets.document_set[*].documents.document[*].document_classification.document_classes.document_class[*].type",
 "$.document_sets.document_set[*].documents.document[*].foreign_objects.foreign_object[*].description",
 "$.document_sets.document_set[*].documents.document[*].foreign_objects.foreign_object[*].mime_type_identifier",
 "$.document_sets.document_set[*].documents.document[*].foreign_objects.foreign_object[*].name",
 "$.document_sets.document_set[*].documents.document[*].foreign_objects.foreign_object[*].staircase_blob_id"
 ]
}
```

<!--/source-->

<!--source:api-specifications-->
application/json Copy Validation Error

```
{
 "message": "3 is not of type 'string'. Failed validating 'type' in schema['properties']['deal_sets']['items'][0]['properties']['parties']['items'][0]['properties']['customer_transaction_ID']:"
}
```

<!--/source-->

<!--source:api-specifications-->
application/json Copy 403 invalid error

```
{
 "message": "Please check the key you used to call this service",
 "url": "https://staircase.stoplight.io/docs/api-reference/customer-account-manager-service.yml/paths/~1products~1refresh/post"
}
```

<!--/source-->

<!--source:api-specifications-->
application/json Copy Resource not found

```
{
 "type": "string",
 "description": "Error Message."
}
```

<!--/source-->

<!--source:api-specifications-->
text/html Copy Resource not found

```
<html>\r\n<head><title>400 Bad Request</title></head>\r\n<body>\r\n<center><h1>400 Bad Request</h1></center>\r\n</body>\r\n</html>\r\n
```

<!--/source-->

<!--source:api-specifications-->
application/json Copy Internal server error

```
{
 "message": "The product has encountered an internal server error. If you have used a transaction_id to call our services, please submit it to Staircase support"
}
```

<!--/source-->

##### Parameters

<!--source:api-specifications-->
1
<!--/source-->

| Parameter | Type | Example | Description |
| --- | --- | --- | --- |
| `x-api-key` required | `string` header | `xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx` | <!--source:api-specifications-->Environment API Key.<!--/source--> |

##### Response `200``application/json`

<!--source:api-specifications-->
1 fields
<!--/source-->
<!--source:api-specifications-->
Elements were retrieved successfully
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `elements`required | `string[]` | <!--source:api-specifications-->List of elements.<!--/source--> |

##### Response `400``application/json`

<!--source:api-specifications-->
1 fields
<!--/source-->
<!--source:api-specifications-->
Validation Error
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `message` | `string` | <!--source:api-specifications-->Message<!--/source--> |

##### Response `403``application/json`

<!--source:api-specifications-->
2 fields
<!--/source-->
<!--source:api-specifications-->
403 invalid error
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `message` | `string` | <!--source:api-specifications-->Error message.<!--/source--> |
| `url` | `string` | <!--source:api-specifications-->Error additional URL.<!--/source--> |

##### Response `404``application/json`

<!--source:api-specifications-->
1 fields
<!--/source-->
<!--source:api-specifications-->
Resource not found
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `message` | `string` | <!--source:api-specifications-->Error Message.<!--/source--> |

##### Response `500``application/json`

<!--source:api-specifications-->
1 fields
<!--/source-->
<!--source:api-specifications-->
Internal server error
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `message` | `string` | <!--source:api-specifications-->Error message.<!--/source--> |

`GET` `/products/asset/response-elements`

<!--source:api-specifications-->

#### Retrieve Response Elements
<!--/source-->

`responseElements`

<!--source:api-specifications-->
Retrieve Response Elements provides a list of elements that will be returned by a data partner after invoking the product.

<!--/source-->

##### Response

<!--source:api-specifications-->
200400403404 GetProduct404 text/html500
<!--/source-->

<!--source:api-specifications-->
application/json Copy Example for the Product Invocation Request Elements object

```
{
 "elements": [
 "$.deal_sets.deal_set[*].deals.deal[*].parties.party[*].individual.contact_points.contact_point[*].email",
 "$.deal_sets.deal_set[*].deals.deal[*].parties.party[*].individual.name.first",
 "$.deal_sets.deal_set[*].deals.deal[*].parties.party[*].individual.name.last",
 "$.deal_sets.deal_set[*].deals.deal[*].parties.party[*].roles.role[*].borrower.birth_date",
 "$.deal_sets.deal_set[*].deals.deal[*].parties.party[*].taxpayer_identifiers.taxpayer_identifier[*].value"
 ]
}
```

<!--/source-->

<!--source:api-specifications-->
application/json Copy Validation Error

```
{
 "message": "3 is not of type 'string'. Failed validating 'type' in schema['properties']['deal_sets']['items'][0]['properties']['parties']['items'][0]['properties']['customer_transaction_ID']:"
}
```

<!--/source-->

<!--source:api-specifications-->
application/json Copy 403 invalid error

```
{
 "message": "Please check the key you used to call this service",
 "url": "https://staircase.stoplight.io/docs/api-reference/customer-account-manager-service.yml/paths/~1products~1refresh/post"
}
```

<!--/source-->

<!--source:api-specifications-->
application/json Copy Resource not found

```
{
 "type": "string",
 "description": "Error Message."
}
```

<!--/source-->

<!--source:api-specifications-->
text/html Copy Resource not found

```
<html>\r\n<head><title>400 Bad Request</title></head>\r\n<body>\r\n<center><h1>400 Bad Request</h1></center>\r\n</body>\r\n</html>\r\n
```

<!--/source-->

<!--source:api-specifications-->
application/json Copy Internal server error

```
{
 "message": "The product has encountered an internal server error. If you have used a transaction_id to call our services, please submit it to Staircase support"
}
```

<!--/source-->

##### Parameters

<!--source:api-specifications-->
1
<!--/source-->

| Parameter | Type | Example | Description |
| --- | --- | --- | --- |
| `x-api-key` required | `string` header | `xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx` | <!--source:api-specifications-->Environment API Key.<!--/source--> |

##### Response `200``application/json`

<!--source:api-specifications-->
1 fields
<!--/source-->
<!--source:api-specifications-->
Elements were retrieved successfully
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `elements`required | `string[]` | <!--source:api-specifications-->List of elements.<!--/source--> |

##### Response `400``application/json`

<!--source:api-specifications-->
1 fields
<!--/source-->
<!--source:api-specifications-->
Validation Error
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `message` | `string` | <!--source:api-specifications-->Message<!--/source--> |

##### Response `403``application/json`

<!--source:api-specifications-->
2 fields
<!--/source-->
<!--source:api-specifications-->
403 invalid error
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `message` | `string` | <!--source:api-specifications-->Error message.<!--/source--> |
| `url` | `string` | <!--source:api-specifications-->Error additional URL.<!--/source--> |

##### Response `404``application/json`

<!--source:api-specifications-->
1 fields
<!--/source-->
<!--source:api-specifications-->
Resource not found
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `message` | `string` | <!--source:api-specifications-->Error Message.<!--/source--> |

##### Response `500``application/json`

<!--source:api-specifications-->
1 fields
<!--/source-->
<!--source:api-specifications-->
Internal server error
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `message` | `string` | <!--source:api-specifications-->Error message.<!--/source--> |

`POST` `/products/asset/request-elements/validate`

<!--source:api-specifications-->

#### Validate Collection
<!--/source-->

`validateCollection`

<!--source:api-specifications-->
Validate Collection allows you to validate an input collection prior to submitting to our partners for a specific product. This endpoint will give messages with all the corrections you need to make to your collection in order for it to be accepted by our partner call.

<!--/source-->

##### Request

<!--source:api-specifications-->
application/json Copy
```
{
 "data": {
 "deal_sets": {
 "deal_set": [
 {
 "deals": {
 "deal": [
 {
 "parties": {
 "party": [
 {
 "customer_transaction_ID": "e171ec31-75b4-4fd6-ada1-a0c48373c079",
 "individual": {
 "contact_points": {
 "contact_point": [
 {
 "contact_point_telephone": {
 "value": "+1234567890"
 },
 "contact_point_email": {
 "value": "test@test.com"
 }
 }
 ]
 },
 "name": {
 "first": "John",
 "last": "Jackson"
 }
 },
 "roles": {
 "role": [
 {
 "borrower": {
 "birth_date": "1984-01-01",
 "employers": {
 "employer": [
 {
 "legal_entity": {
 "full_name": "Amazon"
 }
 }
 ]
 },
 "residences": {
 "residence": [
 {
 "address": {
 "additional_line_text": "None",
 "city": "NEW YORK",
 "country": "US",
 "line_text": "33 IRVING PLACE",
 "postal_code": "10003",
 "state_code": "NY",
 "state": "NY"
 }
 }
 ]
 }
 }
 }
 ]
 },
 "taxpayer_identifiers": {
 "taxpayer_identifier": [
 {
 "value": "317210001"
 }
 ]
 }
 }
 ]
 }
 }
 ]
 }
 }
 ]
 },
 "document_sets": {
 "document_set": [
 {
 "documents": {
 "document": [
 {
 "document_classification": {
 "document_classes": {
 "document_class": [
 {
 "staircase_type": "Staircase",
 "type": "BorrowerApproval"
 }
 ]
 }
 },
 "foreign_objects": {
 "foreign_object": [
 {
 "description": "BorrowerApproval",
 "mime_type_identifier": "application/pdf",
 "name": "01F1Z5KG9E3CPD78P7GYB3TYC1.pdf",
 "staircase_blob_id": "01F1Z5KG9E3CPD78P7GYB3TYC1"
 }
 ]
 }
 }
 ]
 }
 }
 ]
 }
 },
 "metadata": {}
}
```

<!--/source-->

##### Response

<!--source:api-specifications-->
200400403404 GetProduct404 text/html500
<!--/source-->

<!--source:api-specifications-->
application/json Copy Collection is valid

```
{
 "message": "Collection is valid."
}
```

<!--/source-->

<!--source:api-specifications-->
application/json Copy Validation Error

```
{
 "message": "3 is not of type 'string'. Failed validating 'type' in schema['properties']['deal_sets']['items'][0]['properties']['parties']['items'][0]['properties']['customer_transaction_ID']:"
}
```

<!--/source-->

<!--source:api-specifications-->
application/json Copy 403 invalid error

```
{
 "message": "Please check the key you used to call this service",
 "url": "https://staircase.stoplight.io/docs/api-reference/customer-account-manager-service.yml/paths/~1products~1refresh/post"
}
```

<!--/source-->

<!--source:api-specifications-->
application/json Copy Resource not found

```
{
 "type": "string",
 "description": "Error Message."
}
```

<!--/source-->

<!--source:api-specifications-->
text/html Copy Resource not found

```
<html>\r\n<head><title>400 Bad Request</title></head>\r\n<body>\r\n<center><h1>400 Bad Request</h1></center>\r\n</body>\r\n</html>\r\n
```

<!--/source-->

<!--source:api-specifications-->
application/json Copy Internal server error

```
{
 "message": "The product has encountered an internal server error. If you have used a transaction_id to call our services, please submit it to Staircase support"
}
```

<!--/source-->

##### Parameters

<!--source:api-specifications-->
1
<!--/source-->

| Parameter | Type | Example | Description |
| --- | --- | --- | --- |
| `x-api-key` required | `string` header | `xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx` | <!--source:api-specifications-->Environment API Key.<!--/source--> |

##### Request body`application/json`

<!--source:api-specifications-->
1 fields
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `deal_sets` | `object` | <!--source:api-specifications-->Deal sets object.<!--/source--> |
| `deal_set` | `object[]` | <!--source:api-specifications-->Deal set object.<!--/source--> |
| `deals` | `object` | <!--source:api-specifications-->Deals object.<!--/source--> |
| `deal` | `object[]` | <!--source:api-specifications-->Deal array.<!--/source--> |

##### Response `200``application/json`

<!--source:api-specifications-->
1 fields
<!--/source-->
<!--source:api-specifications-->
Collection is valid
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `message` | `string` | <!--source:api-specifications-->Message<!--/source--> |

##### Response `400``application/json`

<!--source:api-specifications-->
1 fields
<!--/source-->
<!--source:api-specifications-->
Validation Error
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `message` | `string` | <!--source:api-specifications-->Message<!--/source--> |

##### Response `403``application/json`

<!--source:api-specifications-->
2 fields
<!--/source-->
<!--source:api-specifications-->
403 invalid error
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `message` | `string` | <!--source:api-specifications-->Error message.<!--/source--> |
| `url` | `string` | <!--source:api-specifications-->Error additional URL.<!--/source--> |

##### Response `404``application/json`

<!--source:api-specifications-->
1 fields
<!--/source-->
<!--source:api-specifications-->
Resource not found
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `message` | `string` | <!--source:api-specifications-->Error Message.<!--/source--> |

##### Response `500``application/json`

<!--source:api-specifications-->
1 fields
<!--/source-->
<!--source:api-specifications-->
Internal server error
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `message` | `string` | <!--source:api-specifications-->Error message.<!--/source--> |

<!--source:api-specifications-->

### Product Waterfalls
<!--/source-->

`GET` `/products/asset/waterfall`

<!--source:api-specifications-->

#### Retrieve Product Waterfall
<!--/source-->

`retrieveProductWaterfall`

<!--source:api-specifications-->
Retrieve Product Waterfall retrieves a specific product waterfall.

<!--/source-->

##### Response

<!--source:api-specifications-->
200400403404 GetProduct404 text/html500
<!--/source-->

<!--source:api-specifications-->
application/json Copy Successfully returned the product waterfall.

```
{
 "waterfall": [
 {
 "priority": 1,
 "flow_name": "VOE"
 }
 ]
}
```

<!--/source-->

<!--source:api-specifications-->
application/json Copy Request data failed validation

```
{
 "message": "{'data': ['Missing data for required field.']}"
}
```

<!--/source-->

<!--source:api-specifications-->
application/json Copy 403 invalid error

```
{
 "message": "Please check the key you used to call this service",
 "url": "https://staircase.stoplight.io/docs/api-reference/customer-account-manager-service.yml/paths/~1products~1refresh/post"
}
```

<!--/source-->

<!--source:api-specifications-->
application/json Copy Resource not found

```
{
 "type": "string",
 "description": "Error Message."
}
```

<!--/source-->

<!--source:api-specifications-->
text/html Copy Resource not found

```
<html>\r\n<head><title>400 Bad Request</title></head>\r\n<body>\r\n<center><h1>400 Bad Request</h1></center>\r\n</body>\r\n</html>\r\n
```

<!--/source-->

<!--source:api-specifications-->
application/json Copy Internal server error

```
{
 "message": "The product has encountered an internal server error. If you have used a transaction_id to call our services, please submit it to Staircase support"
}
```

<!--/source-->

##### Parameters

<!--source:api-specifications-->
1
<!--/source-->

| Parameter | Type | Example | Description |
| --- | --- | --- | --- |
| `x-api-key` required | `string` header | `xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx` | <!--source:api-specifications-->Environment API Key.<!--/source--> |

##### Response `200``application/json`

<!--source:api-specifications-->
1 fields
<!--/source-->
<!--source:api-specifications-->
Successfully returned the product waterfall.
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `waterfall`required | `object[]` | <!--source:api-specifications-->Product waterfall steps.<!--/source--> |
| `priority`required | `integer` | <!--source:api-specifications-->Priority of waterfall step.<!--/source--> |
| `flow_name` | `string` | <!--source:api-specifications-->Flow name<!--/source--> |
| `vendor_name` | `string` | <!--source:api-specifications-->Vendor name<!--/source--> |

##### Response `400``application/json`

<!--source:api-specifications-->
1 fields
<!--/source-->
<!--source:api-specifications-->
Request data failed validation
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `message` | `string` | <!--source:api-specifications-->Message<!--/source--> |

##### Response `403``application/json`

<!--source:api-specifications-->
2 fields
<!--/source-->
<!--source:api-specifications-->
403 invalid error
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `message` | `string` | <!--source:api-specifications-->Error message.<!--/source--> |
| `url` | `string` | <!--source:api-specifications-->Error additional URL.<!--/source--> |

##### Response `404``application/json`

<!--source:api-specifications-->
1 fields
<!--/source-->
<!--source:api-specifications-->
Resource not found
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `message` | `string` | <!--source:api-specifications-->Error Message.<!--/source--> |

##### Response `500``application/json`

<!--source:api-specifications-->
1 fields
<!--/source-->
<!--source:api-specifications-->
Internal server error
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `message` | `string` | <!--source:api-specifications-->Error message.<!--/source--> |

`PUT` `/products/asset/waterfall`

<!--source:api-specifications-->

#### Create Product Waterfall
<!--/source-->

`addProductFlow`

<!--source:api-specifications-->
Create Product waterfall
<!--/source-->

<!--source:api-specifications-->
Add custom settings for product waterfall

<!--/source-->

##### Request

<!--source:api-specifications-->
application/json Copy
```
{
 "waterfall": [
 {
 "priority": 1,
 "flow_name": "VOE"
 }
 ]
}
```

<!--/source-->

##### Response

<!--source:api-specifications-->
200400403404 GetProduct404 text/html500
<!--/source-->

<!--source:api-specifications-->
application/json Copy Product waterfall successfully added.

```
{
 "waterfall": [
 {
 "priority": 1,
 "flow_name": "VOE"
 }
 ]
}
```

<!--/source-->

<!--source:api-specifications-->
application/json Copy Request data failed validation

```
{
 "message": "{'data': ['Missing data for required field.']}"
}
```

<!--/source-->

<!--source:api-specifications-->
application/json Copy 403 invalid error

```
{
 "message": "Please check the key you used to call this service",
 "url": "https://staircase.stoplight.io/docs/api-reference/customer-account-manager-service.yml/paths/~1products~1refresh/post"
}
```

<!--/source-->

<!--source:api-specifications-->
application/json Copy Resource not found

```
{
 "type": "string",
 "description": "Error Message."
}
```

<!--/source-->

<!--source:api-specifications-->
text/html Copy Resource not found

```
<html>\r\n<head><title>400 Bad Request</title></head>\r\n<body>\r\n<center><h1>400 Bad Request</h1></center>\r\n</body>\r\n</html>\r\n
```

<!--/source-->

<!--source:api-specifications-->
application/json Copy Internal server error

```
{
 "message": "The product has encountered an internal server error. If you have used a transaction_id to call our services, please submit it to Staircase support"
}
```

<!--/source-->

##### Parameters

<!--source:api-specifications-->
1
<!--/source-->

| Parameter | Type | Example | Description |
| --- | --- | --- | --- |
| `x-api-key` required | `string` header | `xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx` | <!--source:api-specifications-->Environment API Key.<!--/source--> |

##### Request body`application/json`

<!--source:api-specifications-->
1 fields
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `waterfall`required | `object[]` | <!--source:api-specifications-->Product waterfall steps.<!--/source--> |
| `priority`required | `integer` | <!--source:api-specifications-->Priority of waterfall step.<!--/source--> |
| `flow_name` | `string` | <!--source:api-specifications-->Flow name<!--/source--> |
| `vendor_name` | `string` | <!--source:api-specifications-->Vendor name<!--/source--> |

##### Response `200``application/json`

<!--source:api-specifications-->
1 fields
<!--/source-->
<!--source:api-specifications-->
Product waterfall successfully added.
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `waterfall`required | `object[]` | <!--source:api-specifications-->Product waterfall steps.<!--/source--> |
| `priority`required | `integer` | <!--source:api-specifications-->Priority of waterfall step.<!--/source--> |
| `flow_name` | `string` | <!--source:api-specifications-->Flow name<!--/source--> |
| `vendor_name` | `string` | <!--source:api-specifications-->Vendor name<!--/source--> |

##### Response `400``application/json`

<!--source:api-specifications-->
1 fields
<!--/source-->
<!--source:api-specifications-->
Request data failed validation
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `message` | `string` | <!--source:api-specifications-->Message<!--/source--> |

##### Response `403``application/json`

<!--source:api-specifications-->
2 fields
<!--/source-->
<!--source:api-specifications-->
403 invalid error
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `message` | `string` | <!--source:api-specifications-->Error message.<!--/source--> |
| `url` | `string` | <!--source:api-specifications-->Error additional URL.<!--/source--> |

##### Response `404``application/json`

<!--source:api-specifications-->
1 fields
<!--/source-->
<!--source:api-specifications-->
Resource not found
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `message` | `string` | <!--source:api-specifications-->Error Message.<!--/source--> |

##### Response `500``application/json`

<!--source:api-specifications-->
1 fields
<!--/source-->
<!--source:api-specifications-->
Internal server error
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `message` | `string` | <!--source:api-specifications-->Error message.<!--/source--> |

`DELETE` `/products/asset/waterfall`

<!--source:api-specifications-->

#### Delete Product Waterfall
<!--/source-->

`deleteProductWaterfall`

<!--source:api-specifications-->
Delete Product Waterfall deletes a product waterfall.

<!--/source-->

##### Response

<!--source:api-specifications-->
400 Example400 text/html403404 GetProduct404 text/html500
<!--/source-->

<!--source:api-specifications-->
application/json Copy Request data failed validation

```
{
 "message": "{'data': ['Missing data for required field.']}"
}
```

<!--/source-->

<!--source:api-specifications-->
text/html Copy Request data failed validation

```
<html>\r\n<head><title>400 Bad Request</title></head>\r\n<body>\r\n<center><h1>400 Bad Request</h1></center>\r\n</body>\r\n</html>\r\n
```

<!--/source-->

<!--source:api-specifications-->
application/json Copy 403 invalid error

```
{
 "message": "Please check the key you used to call this service",
 "url": "https://staircase.stoplight.io/docs/api-reference/customer-account-manager-service.yml/paths/~1products~1refresh/post"
}
```

<!--/source-->

<!--source:api-specifications-->
application/json Copy Resource not found

```
{
 "type": "string",
 "description": "Error Message."
}
```

<!--/source-->

<!--source:api-specifications-->
text/html Copy Resource not found

```
<html>\r\n<head><title>400 Bad Request</title></head>\r\n<body>\r\n<center><h1>400 Bad Request</h1></center>\r\n</body>\r\n</html>\r\n
```

<!--/source-->

<!--source:api-specifications-->
application/json Copy Internal server error

```
{
 "message": "The product has encountered an internal server error. If you have used a transaction_id to call our services, please submit it to Staircase support"
}
```

<!--/source-->

##### Parameters

<!--source:api-specifications-->
1
<!--/source-->

| Parameter | Type | Example | Description |
| --- | --- | --- | --- |
| `x-api-key` required | `string` header | `xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx` | <!--source:api-specifications-->Environment API Key.<!--/source--> |

##### Response `400``application/json`

<!--source:api-specifications-->
1 fields
<!--/source-->
<!--source:api-specifications-->
Request data failed validation
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `message` | `string` | <!--source:api-specifications-->Message<!--/source--> |

##### Response `403``application/json`

<!--source:api-specifications-->
2 fields
<!--/source-->
<!--source:api-specifications-->
403 invalid error
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `message` | `string` | <!--source:api-specifications-->Error message.<!--/source--> |
| `url` | `string` | <!--source:api-specifications-->Error additional URL.<!--/source--> |

##### Response `404``application/json`

<!--source:api-specifications-->
1 fields
<!--/source-->
<!--source:api-specifications-->
Resource not found
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `message` | `string` | <!--source:api-specifications-->Error Message.<!--/source--> |

##### Response `500``application/json`

<!--source:api-specifications-->
1 fields
<!--/source-->
<!--source:api-specifications-->
Internal server error
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `message` | `string` | <!--source:api-specifications-->Error message.<!--/source--> |

##### Other responses

`204`

`POST` `/products/asset/waterfall/invocations`

<!--source:api-specifications-->

#### Invoke Product Waterfall
<!--/source-->

`invokeProductWaterfall`

<!--source:api-specifications-->
Invoke Product Waterfall helps you to invoke product waterfall. Product waterfall invocation shall invoke the product flows as per the order of the waterfall settings or using the default order of the flows. The invocation endpoint shall try to invoke the flows one by one till one of them succeed and return the needed outcome.

There are two options for using transactions and collections while invoking a waterfall product:

Show the rest
- Any of the `transaction_id`, `request_collection_id`, `response_collection_id` was pre-created, in this case the product shall validate them.

- Customer provide only request data, in this case product shall:

- Create transaction.

- Create input collection with the provided `request_data`.

- Create empty output collection.

Optional Parameters:

- `tags`: when tags are provided product shall filter the product flows associated with these tags before invoking the waterfall.
- `options`: key/value pairs passed to the products called by Product during invocation.
- `callback_url` : will be used by the product to send a callback, when the flow execution will be finished.

The callback request body is a JSON with the following schema:

```
{
"type": "object",
"$schema": "",
"required": [
"invocation_id",
"invocation_status"
],
"properties": {
"invocation_id": {
"type": "string",
"format": "uuid"
},
"invocation_status": {
"type": "string",
"enum": [
"COMPLETED",
"FAILED"
]
},
"response_data": {
"type": "object",
"additionalProperties": true
},
"failure_reason": {
"type": "string"
}
}
}
```

<!--/source-->

##### Request

<!--source:api-specifications-->
InvokeWithCollectionsInvokeWithTagsInvokeWithRequestDataInvokeWithOptionsCollectionsInvokeWithOptionsRequestData
<!--/source-->

<!--source:api-specifications-->
application/json Copy
```
{
 "transaction_id": "01F6NAMXWN2XVBD1YJ92A6S6R4",
 "request_collection_id": "01F6QF1QJF20DMSXH4SYXKB1SN",
 "callback_url": "https://webhook.site/3706b519-9426-4533-9868-14a7dec4fd97"
}
```

<!--/source-->

<!--source:api-specifications-->
application/json Copy
```
{
 "transaction_id": "01F6NAMXWN2XVBD1YJ92A6S6R4",
 "request_collection_id": "01F6QF1QJF20DMSXH4SYXKB1SN",
 "callback_url": "https://webhook.site/3706b519-9426-4533-9868-14a7dec4fd97",
 "tags": [
 "manual_verification"
 ]
}
```

<!--/source-->

<!--source:api-specifications-->
application/json Copy
```
{
 "transaction_id": "01F6NAMXWN2XVBD1YJ92A6S6R4",
 "callback_url": "https://webhook.site/3706b519-9426-4533-9868-14a7dec4fd97",
 "request_data": {
 "deal_sets": {
 "deal_set": [
 {
 "deals": {
 "deal": [
 {
 "parties": {
 "party": [
 {
 "individual": {
 "name": {
 "first": "Thomas",
 "last": "Alex"
 }
 },
 "taxpayer_identifiers": {
 "taxpayer_identifier": [
 {
 "value": "12345"
 }
 ]
 },
 "roles": {
 "role": [
 {
 "borrower": {
 "residences": {
 "residence": [
 {
 "address": {
 "line_text": "street 101",
 "city": "example city",
 "state": "state",
 "postal_code": "1234",
 "street_name": "street 23"
 }
 }
 ]
 }
 }
 }
 ]
 }
 }
 ]
 }
 }
 ]
 }
 }
 ]
 }
 }
}
```

<!--/source-->

<!--source:api-specifications-->
application/json Copy
```
{
 "transaction_id": "01F6NAMXWN2XVBD1YJ92A6S6R4",
 "request_collection_id": "01F6QF1QJF20DMSXH4SYXKB1SN",
 "callback_url": "https://webhook.site/3706b519-9426-4533-9868-14a7dec4fd97",
 "tags": [
 "manual_verification"
 ],
 "options": {
 "option1": "test_option"
 }
}
```

<!--/source-->

<!--source:api-specifications-->
application/json Copy
```
{
 "transaction_id": "01F6NAMXWN2XVBD1YJ92A6S6R4",
 "callback_url": "https://webhook.site/3706b519-9426-4533-9868-14a7dec4fd97",
 "request_data": {
 "deal_sets": {
 "deal_set": [
 {
 "deals": {
 "deal": [
 {
 "parties": {
 "party": [
 {
 "individual": {
 "name": {
 "first": "Thomas",
 "last": "Alex"
 }
 },
 "taxpayer_identifiers": {
 "taxpayer_identifier": [
 {
 "value": "12345"
 }
 ]
 },
 "roles": {
 "role": [
 {
 "borrower": {
 "residences": {
 "residence": [
 {
 "address": {
 "line_text": "street 101",
 "city": "example city",
 "state": "state",
 "postal_code": "1234",
 "street_name": "street 23"
 }
 }
 ]
 }
 }
 }
 ]
 }
 }
 ]
 }
 }
 ]
 }
 }
 ]
 }
 },
 "tags": [
 "manual_verification"
 ],
 "options": {
 "option1": "test_option"
 }
}
```

<!--/source-->

##### Response

<!--source:api-specifications-->
201400403404500
<!--/source-->

<!--source:api-specifications-->
application/json Copy Successfully started flow invocation.

```
{
 "invocation_id": "68a4aa6a-bf18-4f7d-be7d-bc26503adeb1",
 "invocation_status": "STARTED",
 "transaction_id": "01FCWK741N7GWYBVG4Z3N74V16",
 "request_data": {
 "foo": "bar",
 "biz": "baz"
 },
 "callback_url": "https://webhook.site/68a4aa6a-bf18-4f7d-be7d-bc26503adeb2",
 "tags": [
 "manual verification"
 ]
}
```

<!--/source-->

<!--source:api-specifications-->
application/json Copy Request data failed validation

```
{
 "message": "{'data': ['Missing data for required field.']}"
}
```

<!--/source-->

<!--source:api-specifications-->
application/json Copy 403 invalid error

```
{
 "message": "Please check the key you used to call this service",
 "url": "https://staircase.stoplight.io/docs/api-reference/customer-account-manager-service.yml/paths/~1products~1refresh/post"
}
```

<!--/source-->

<!--source:api-specifications-->
text/html Copy Resource not found

```
<html>\r\n<head><title>400 Bad Request</title></head>\r\n<body>\r\n<center><h1>400 Bad Request</h1></center>\r\n</body>\r\n</html>\r\n
```

<!--/source-->

<!--source:api-specifications-->
application/json Copy Internal server error

```
{
 "message": "The product has encountered an internal server error. If you have used a transaction_id to call our services, please submit it to Staircase support"
}
```

<!--/source-->

##### Parameters

<!--source:api-specifications-->
1
<!--/source-->

| Parameter | Type | Example | Description |
| --- | --- | --- | --- |
| `x-api-key` required | `string` header | `xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx` | <!--source:api-specifications-->Environment API Key.<!--/source--> |

##### Request body`application/json`

<!--source:api-specifications-->
6 fields
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `transaction_id` | `string` | <!--source:api-specifications-->Transaction ID used for flow_invocations.<!--/source--> |
| `request_collection_id` | `string` | <!--source:api-specifications-->Request Collection ID.<!--/source--> |
| `callback_url` | `string (uri)` | <!--source:api-specifications-->Callback URL.<!--/source--> |
| `request_data` | `object` | <!--source:api-specifications-->Request JSON body for product flows.<!--/source--> |
| `tags` | `string[]` | <!--source:api-specifications-->Flow tags.<!--/source--> |
| `options` | `object` | <!--source:api-specifications-->Additional information that should be passed to the connector but not be added to the request collection. Will be passed to every product flow invocation.<!--/source--> |

##### Response `201``application/json`

<!--source:api-specifications-->
9 fields
<!--/source-->
<!--source:api-specifications-->
Successfully started flow invocation.
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `invocation_id`required | `string` | <!--source:api-specifications-->Invocation ID.<!--/source--> |
| `invocation_status`required | `string` | <!--source:api-specifications-->The status of the invocation.<!--/source-->`STARTED` |
| `transaction_id` | `string` | <!--source:api-specifications-->Transaction ID.<!--/source--> |
| `callback_url` | `string` | <!--source:api-specifications-->Callback URL.<!--/source--> |
| `request_data` | `object` | <!--source:api-specifications-->The data for the request collection.<!--/source--> |
| `request_collection_id` | `string` | <!--source:api-specifications-->Request Collection ID.<!--/source--> |
| `tags` | `string[]` | <!--source:api-specifications-->Flow tags.<!--/source--> |
| `options` | `object` | <!--source:api-specifications-->Additional information that should be passed to the connector but not be added to the request collection. Will be passed to every product flow invocation.<!--/source--> |
| `connector_job_id` | `string` | <!--source:api-specifications-->Connector job ID.<!--/source--> |

##### Response `400``application/json`

<!--source:api-specifications-->
1 fields
<!--/source-->
<!--source:api-specifications-->
Request data failed validation
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `message` | `string` | <!--source:api-specifications-->Message<!--/source--> |

##### Response `403``application/json`

<!--source:api-specifications-->
2 fields
<!--/source-->
<!--source:api-specifications-->
403 invalid error
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `message` | `string` | <!--source:api-specifications-->Error message.<!--/source--> |
| `url` | `string` | <!--source:api-specifications-->Error additional URL.<!--/source--> |

##### Response `404``application/json`

<!--source:api-specifications-->
1 fields
<!--/source-->
<!--source:api-specifications-->
Resource not found
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `message` | `string` | <!--source:api-specifications-->Message<!--/source--> |

##### Response `500``application/json`

<!--source:api-specifications-->
1 fields
<!--/source-->
<!--source:api-specifications-->
Internal server error
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `message` | `string` | <!--source:api-specifications-->Error message.<!--/source--> |

`GET` `/products/asset/waterfall/invocations/{invocation_id}`

<!--source:api-specifications-->

#### Retrieve Product Waterfall Invocation Status
<!--/source-->

`RetrieveProductWaterfallInvocationStatus`

<!--source:api-specifications-->
Retrieves the status of running Product waterfall invocation.

<!--/source-->

##### Response

<!--source:api-specifications-->
200 Completed200 Failed400403404500
<!--/source-->

<!--source:api-specifications-->
application/json Copy Successfully returned status of the Product Waterfall Invocation.

```
{
 "invocation_id": "fbc19f9b-1d37-4ced-9f1d-d2769b018b0a",
 "invocation_status": "COMPLETED",
 "request_collection_id": "01FCWK741N7GWYBVG4Z3N74V16",
 "callback_url": "https://webhook.site/68a4aa6a-bf18-4f7d-be7d-bc26503adeb2",
 "transaction_id": "01FCWK72GC1MFM5003SXJHMWNG",
 "request_collection": {
 "data": {
 "foo": "bar",
 "biz": "baz"
 },
 "metadata": {
 "created_at": "2021-08-12T03:11:25.749933-04:00",
 "validation": false
 },
 "transaction_id": "01FCWK72GC1MFM5003SXJHMWNG",
 "collection_id": "01FCWK741N7GWYBVG4Z3N74V16"
 },
 "flows_responses": {
 "flow1": {
 "response_collection_id": "01FCWSAQD3QDKEW91K7CPXN4Y2",
 "invocation_id": "7a8980a1-73ac-4313-ada5-e0e976c38ebb",
 "invocation_status": "FAILED",
 "transaction_id": "01FCWSAH1RVMC0DH6GRQ9JSAE7",
 "product_flow_name": "demo_product_flow_422",
 "failure_reason": "Service Connector failed. Connector flow failed. Response payload: {'Error': 'CallVendorError', 'Cause': {'errorMessage': '', 'errorType': 'CallVendorError'}}",
 "response_collection": {
 "collection_id": "01FCWSAQD3QDKEW91K7CPXN4Y2",
 "data": {},
 "transaction_id": "01FCWSAH1RVMC0DH6GRQ9JSAE7",
 "metadata": {
 "created_at": "2021-08-12T04:58:15.331517-04:00",
 "validation": false
 }
 }
 },
 "flow2": {
 "response_collection_id": "01FCWSMVWW7192SZXR9MP52B4A",
 "invocation_id": "c861def5-5e5d-4690-9313-2f25427029a8",
 "invocation_status": "COMPLETED",
 "transaction_id": "01FCWSMNZM271WVQY6FDS2CB6M",
 "product_flow_name": "demo_product_flow",
 "response_collection": {
 "data": {},
 "collection_id": "01FCWSMVWW7192SZXR9MP52B4A",
 "transaction_id": "01FCWSMNZM271WVQY6FDS2CB6M",
 "metadata": {
 "created_at": "2021-08-12T05:03:47.612771-04:00",
 "validation": false
 }
 }
 }
 }
}
```

<!--/source-->

<!--source:api-specifications-->
application/json Copy Successfully returned status of the Product Waterfall Invocation.

```
{
 "invocation_id": "fbc19f9b-1d37-4ced-9f1d-d2769b018b0a",
 "invocation_status": "FAILED",
 "request_collection_id": "01FCWK741N7GWYBVG4Z3N74V16",
 "callback_url": "https://webhook.site/68a4aa6a-bf18-4f7d-be7d-bc26503adeb2",
 "transaction_id": "01FCWK72GC1MFM5003SXJHMWNG",
 "failure_reason": "All product flows were failed.",
 "request_collection": {
 "data": {
 "foo": "bar",
 "biz": "baz"
 },
 "metadata": {
 "created_at": "2021-08-12T03:11:25.749933-04:00",
 "validation": false
 },
 "transaction_id": "01FCWK72GC1MFM5003SXJHMWNG",
 "collection_id": "01FCWK741N7GWYBVG4Z3N74V16"
 },
 "flows_responses": {
 "flow1": {
 "response_collection_id": "01FCWSAQD3QDKEW91K7CPXN4Y2",
 "invocation_id": "7a8980a1-73ac-4313-ada5-e0e976c38ebb",
 "invocation_status": "FAILED",
 "transaction_id": "01FCWSAH1RVMC0DH6GRQ9JSAE7",
 "product_flow_name": "demo_product_flow_422",
 "failure_reason": "Service Connector failed. Connector flow failed. Response payload: {'Error': 'CallVendorError', 'Cause': {'errorMessage': '', 'errorType': 'CallVendorError'}}",
 "response_collection": {
 "collection_id": "01FCWSAQD3QDKEW91K7CPXN4Y2",
 "data": {},
 "transaction_id": "01FCWSAH1RVMC0DH6GRQ9JSAE7",
 "metadata": {
 "created_at": "2021-08-12T04:58:15.331517-04:00",
 "validation": false
 }
 }
 }
 },
 "metadata": {
 "actual_flow_name": "flow1"
 }
}
```

<!--/source-->

<!--source:api-specifications-->
application/json Copy Request data failed validation

```
{
 "message": "{'data': ['Missing data for required field.']}"
}
```

<!--/source-->

<!--source:api-specifications-->
application/json Copy 403 invalid error

```
{
 "message": "Please check the key you used to call this service",
 "url": "https://staircase.stoplight.io/docs/api-reference/customer-account-manager-service.yml/paths/~1products~1refresh/post"
}
```

<!--/source-->

<!--source:api-specifications-->
text/html Copy Resource not found

```
<html>\r\n<head><title>400 Bad Request</title></head>\r\n<body>\r\n<center><h1>400 Bad Request</h1></center>\r\n</body>\r\n</html>\r\n
```

<!--/source-->

<!--source:api-specifications-->
application/json Copy Internal server error

```
{
 "message": "The product has encountered an internal server error. If you have used a transaction_id to call our services, please submit it to Staircase support"
}
```

<!--/source-->

##### Parameters

<!--source:api-specifications-->
2
<!--/source-->

| Parameter | Type | Example | Description |
| --- | --- | --- | --- |
| `x-api-key` required | `string` header | `xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx` | <!--source:api-specifications-->Environment API Key.<!--/source--> |
| `invocation_id` required | `string (ulid)` path | `d7ccedb8-8889-4657-add4-bc1s4xs97637` | <!--source:api-specifications-->Product flow invocation identifier<!--/source--> |

##### Response `200``application/json`

<!--source:api-specifications-->
11 fields
<!--/source-->
<!--source:api-specifications-->
Successfully returned status of the Product Waterfall Invocation.
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `invocation_id`required | `string` | <!--source:api-specifications-->Invocation ID.<!--/source--> |
| `invocation_status`required | `string` | <!--source:api-specifications-->The status of the invocation.<!--/source-->`ACTION_REQUIRED``COMPLETED``FAILED``RUNNING``STARTED` |
| `transaction_id`required | `string` | <!--source:api-specifications-->Transaction ID.<!--/source--> |
| `callback_url` | `string` | <!--source:api-specifications-->Callback URL.<!--/source--> |
| `request_data` | `object` | <!--source:api-specifications-->The data for the request collection.<!--/source--> |
| `request_collection_id` | `string` | <!--source:api-specifications-->Request Collection ID.<!--/source--> |
| `request_collection` | `object` | <!--source:api-specifications-->Request Collection.<!--/source--> |
| `tags` | `string[]` | <!--source:api-specifications-->Flow tags.<!--/source--> |
| `options` | `object` | <!--source:api-specifications-->Options that were passed to the waterfall invocation.<!--/source--> |
| `flows_responses`required | `object` | <!--source:api-specifications-->Responses for each flow invocation.<!--/source--> |
| `metadata`required | `object` | <!--source:api-specifications-->Metadata of waterfall.<!--/source--> |
| `actual_flow_name` | `string` | <!--source:api-specifications-->Actual flow name invoked.<!--/source--> |

##### Response `400``application/json`

<!--source:api-specifications-->
1 fields
<!--/source-->
<!--source:api-specifications-->
Request data failed validation
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `message` | `string` | <!--source:api-specifications-->Message<!--/source--> |

##### Response `403``application/json`

<!--source:api-specifications-->
2 fields
<!--/source-->
<!--source:api-specifications-->
403 invalid error
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `message` | `string` | <!--source:api-specifications-->Error message.<!--/source--> |
| `url` | `string` | <!--source:api-specifications-->Error additional URL.<!--/source--> |

##### Response `404``application/json`

<!--source:api-specifications-->
1 fields
<!--/source-->
<!--source:api-specifications-->
Resource not found
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `message` | `string` | <!--source:api-specifications-->Message<!--/source--> |

##### Response `500``application/json`

<!--source:api-specifications-->
1 fields
<!--/source-->
<!--source:api-specifications-->
Internal server error
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `message` | `string` | <!--source:api-specifications-->Error message.<!--/source--> |

<!--source:api-specifications-->

### Verification
<!--/source-->

`POST` `/verification`

<!--source:api-specifications-->

#### Verify Asset
<!--/source-->

`InvokeAssetVerificationFlow`

<!--source:api-specifications-->
This endpoint does an asset verification for the selected partner and request data. Please find various request examples at Request Body section.

#### Request Payload

In order to invoke asset verification, add partner name in `partner_name` field and provide the following information in `request_data`:

You need to create `people`, `contact_information`, `addresses` arrays in your request collection. Each of these array elements should have corresponding `@id` and `@type` fields.

Show the rest For `people` array's element you need to provide the following borrower information:

- first name
- last name
- birthdate
- taxpayer identifier
- contact_at relation with the `contact_information` object (unique identifier referencing element id from contact_information array)
- with_address relation with the `addresses` object (unique identifier referencing element id from addresses array)

For `contact_information` array's element you need to provide the following borrower contact information:

- email address

For `addresses` array's element you need to provide the following borrower address information:

- address line 1
- city name
- state code
- postal code

Additionally, following fields can be specified:

`organizations` array's element with the following organization information:

- organization name

`loans` array's element with the following loan information:

- loan identifier

For `additional_information` array's element you may provide multiple objects, each containing both of the following fields:

- additional information key identifier
- additional information value

Additional information key identifiers are:

- monitoringDuration
- permissiblePurpose
- orderStartDate
- orderEndDate
- ccEmail

In case of invalid request data, you will receive 400 status code with information about missing fields.

##### Mock Request

If you want to test the system and see possible verification results without invoking real asset verification you can do mock request instead. Create payload as described in Request Payload section above but use following SSNs (taxpayer identifiers) for different scenarios.

| SSN | Mock Scenario |
| --- | --- |
| 000000001 | Generic Success Scenario |
| 990000001 | Application not available |
| 990000002 | Asset View Report not available |
| 990000003 | Missing reference number |
| 990000004 | Invalid reference number |
| 990000005 | Invalid partner |

##### Enabling Waterfall

If the waterfall feature is enabled, the endpoint invokes verification that will execute following the ordering for all available data partners. To use this feature, set the partner name in request payload to waterfall. Use Update Partners Ordering and Retrieve Partners Ordering to set and get the orderings. If two data partners share the same legal entity full name, the verification will be done based on the ordering of data partners.

##### Retrieving the Invocation Result

After request, endpoint returns an `id` which you can poll for its status using verification/asset/verification/{id} endpoint. If you would rather receive a callback once the invocation is completed instead of polling it, you can set `callback_url` parameter in the request payload.

##### Monitoring the health of the Asset product

The Asset product is integrated with the Health product, a cloud-based DevOps service that monitors the health of APIs. With the help of Health product, you can monitor the process of verification.

To check the health of the asset product, you can use the create async health query execution API. This API allows you to specify a time period, a response collection ID ("id" returned as result of asset verification), and a product or API identifier.

Here are the relevant product and API identifiers for the Asset product:

- Asset Product Identifier: 48597cc5-c7d6-4856-9243-6fb4819d96e0
- Asset Verification API ID: 07488aec-2aa7-4e8a-91b0-d111b35a6442

To check the health after submitting a new asset verification request, you can use the following request payload:

```
{
 "start_date": "2023-01-28T00:00:00",
 "end_date": "2023-12-29T23:59:59",
 "response_collection_id": "01GNPTVCE9E737Y7HFEK9QKQRV",
 "product_identifier": "48597cc5-c7d6-4856-9243-6fb4819d96e0",
 "product_api_identifier": "07488aec-2aa7-4e8a-91b0-d111b35a6442",
}
```

To check the overall health of your asset transaction, you can use the following request payload:

```
{
 "start_date": "2023-01-28T00:00:00",
 "end_date": "2023-12-29T23:59:59",
 "response_collection_id": "01GNPTVCE9E737Y7HFEK9QKQRV",
 "product_identifier": "48597cc5-c7d6-4856-9243-6fb4819d96e0"
}
```

To retrieve the results of your health query, use the get async health query result API. This API takes the query execution ID returned by the create async health query execution API as a parameter.

When you retrieve the results of your health query, you should see at least one health metric with corresponding status information (e.g. "SUCCEEDED", "FAILED").

###### Setting up alarms

You can set up alarms to be notified when the health of the asset product. To do this, use the create_health_alarm API. This API allows you to specify a threshold value and a notification method.

<!--/source-->

##### Request

<!--source:api-specifications-->
Verification requestExtended verification request with callback urlVerification request using waterfall feature
<!--/source-->

<!--source:api-specifications-->
application/json Copy
```
{
 "partner_name": "partner_name",
 "request_data": {
 "people": [
 {
 "@type": "borrower",
 "@id": "01FD6ZKZD7WGZXYFGJBVPVP2Q5",
 "has_first_name": {
 "has_value": "John"
 },
 "has_last_name": {
 "has_value": "Jackson"
 },
 "has_birth_date": {
 "has_value": "1970-07-04"
 },
 "has_taxpayer_identifier_value": {
 "has_value": "000000001"
 },
 "with_address": [
 "01FD6ZNGJADZ0RB1H96FSE8BAB"
 ],
 "contact_at": [
 "01FD6ZNGJW9X96WGWX2BD37CFY"
 ]
 }
 ],
 "addresses": [
 {
 "@type": "address",
 "@id": "01FD6ZNGJADZ0RB1H96FSE8BAB",
 "has_address_line_1_text": {
 "has_value": "33 IRVING PLACE"
 },
 "has_city_name": {
 "has_value": "NEW YORK"
 },
 "has_state_code": {
 "has_value": "NY"
 },
 "has_postal_code": {
 "has_value": "10003"
 }
 }
 ],
 "contact_information": [
 {
 "@type": "contact_information",
 "@id": "01FD6ZNGJW9X96WGWX2BD37CFY",
 "has_email_address": {
 "has_value": "test.test@test.com"
 }
 }
 ]
 }
}
```

<!--/source-->

<!--source:api-specifications-->
application/json Copy
```
{
 "partner_name": "partner_name",
 "callback_url": "url",
 "request_data": {
 "people": [
 {
 "@type": "borrower",
 "@id": "01FD6ZNGJADZ0RB1H96FSEAA01",
 "has_first_name": {
 "has_value": "Lorraine"
 },
 "has_last_name": {
 "has_value": "Purchaser"
 },
 "has_birth_date": {
 "has_value": "1970-07-04"
 },
 "has_taxpayer_identifier_value": {
 "has_value": "999565678"
 },
 "contact_at": [
 "01FD6ZNGJADZ0RB1H96FSEAA02"
 ],
 "with_address": [
 "01FD6ZNGJADZ0RB1H96FSEAA03"
 ]
 }
 ],
 "contact_information": [
 {
 "@type": "contact_information",
 "@id": "01FD6ZNGJADZ0RB1H96FSEAA02",
 "has_email_address": {
 "has_value": "contact@contact.com"
 }
 }
 ],
 "addresses": [
 {
 "@type": "address",
 "@id": "01FD6ZNGJADZ0RB1H96FSEAA03",
 "has_address_line_1_text": {
 "has_value": "1234 Main Street"
 },
 "has_city_name": {
 "has_value": "Baltimore"
 },
 "has_state_code": {
 "has_value": "MD"
 },
 "has_postal_code": {
 "has_value": "20600"
 }
 }
 ],
 "organizations": [
 {
 "@type": "customer",
 "@id": "01FD6ZNGJADZ0RB1H96FSEAA04",
 "has_organization_name": {
 "has_value": "ACME Inc."
 }
 }
 ],
 "loans": [
 {
 "@id": "01FD6ZNGJADZ0RB1H96FSEAA05",
 "@type": "loan",
 "has_loan_identifier_value": {
 "has_value": "123456"
 }
 }
 ],
 "additional_information": [
 {
 "@type": "additional_information",
 "@id": "01FD6ZNGJADZ0RB1H96FSEAA06",
 "has_additional_information_value": {
 "has_value": "2M"
 },
 "has_additional_information_key_identifier": {
 "has_value": "monitoringDuration"
 }
 },
 {
 "@type": "additional_information",
 "@id": "01FD6ZNGJADZ0RB1H96FSEAA07",
 "has_additional_information_value": {
 "has_value": "PPCREDIT"
 },
 "has_additional_information_key_identifier": {
 "has_value": "permissiblePurpose"
 }
 },
 {
 "@type": "additional_information",
 "@id": "01FD6ZNGJADZ0RB1H96FSEAA08",
 "has_additional_information_value": {
 "has_value": "2022-11-01"
 },
 "has_additional_information_key_identifier": {
 "has_value": "orderStartDate"
 }
 },
 {
 "@type": "additional_information",
 "@id": "01FD6ZNGJADZ0RB1H96FSEAA09",
 "has_additional_information_value": {
 "has_value": "2022-12-02"
 },
 "has_additional_information_key_identifier": {
 "has_value": "orderEndDate"
 }
 },
 {
 "@type": "additional_information",
 "@id": "01FD6ZNGJADZ0RB1H96FSEAA10",
 "has_additional_information_value": {
 "has_value": "name@example.com"
 },
 "has_additional_information_key_identifier": {
 "has_value": "ccEmail"
 }
 }
 ]
 }
}
```

<!--/source-->

<!--source:api-specifications-->
application/json Copy
```
{
 "partner_name": "waterfall",
 "request_data": {
 "people": [
 {
 "@type": "borrower",
 "@id": "01FD6ZKZD7WGZXYFGJBVPVP2Q5",
 "has_first_name": {
 "has_value": "John"
 },
 "has_last_name": {
 "has_value": "Jackson"
 },
 "has_birth_date": {
 "has_value": "1970-07-04"
 },
 "has_taxpayer_identifier_value": {
 "has_value": "000000001"
 },
 "with_address": [
 "01FD6ZNGJADZ0RB1H96FSE8BAB"
 ],
 "contact_at": [
 "01FD6ZNGJW9X96WGWX2BD37CFY"
 ]
 }
 ],
 "addresses": [
 {
 "@type": "address",
 "@id": "01FD6ZNGJADZ0RB1H96FSE8BAB",
 "has_address_line_1_text": {
 "has_value": "33 IRVING PLACE"
 },
 "has_city_name": {
 "has_value": "NEW YORK"
 },
 "has_state_code": {
 "has_value": "NY"
 },
 "has_postal_code": {
 "has_value": "10003"
 }
 }
 ],
 "contact_information": [
 {
 "@type": "contact_information",
 "@id": "01FD6ZNGJW9X96WGWX2BD37CFY",
 "has_email_address": {
 "has_value": "test.test@test.com"
 }
 }
 ]
 }
}
```

<!--/source-->

##### Response

<!--source:api-specifications-->
201400403404500
<!--/source-->

<!--source:api-specifications-->
application/json Copy Successfully started flow invocation.

```
{
 "id": "01F6NAQ4894HPMCBGB4P0G78HG"
}
```

<!--/source-->

<!--source:api-specifications-->
application/json Copy Request data failed validation

```
{
 "message": "{'data': ['Missing data for required field.']}"
}
```

<!--/source-->

<!--source:api-specifications-->
application/json Copy 403 invalid error

```
{
 "message": "Please check the key you used to call this service",
 "url": "https://api.staircase.co/docs/api-reference/customer-account-manager-service.yml/paths/~1products~1refresh/post"
}
```

<!--/source-->

<!--source:api-specifications-->
text/html Copy Resource not found

```
<html>\r\n<head><title>400 Bad Request</title></head>\r\n<body>\r\n<center><h1>400 Bad Request</h1></center>\r\n</body>\r\n</html>\r\n
```

<!--/source-->

<!--source:api-specifications-->
application/json Copy Internal server error

```
{
 "message": "The product has encountered an internal server error. If you have used a transaction_id to call our services, please submit it to Staircase support"
}
```

<!--/source-->

##### Parameters

<!--source:api-specifications-->
1
<!--/source-->

| Parameter | Type | Example | Description |
| --- | --- | --- | --- |
| `x-api-key` required | `string` header | `xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx` | <!--source:api-specifications-->Environment API Key.<!--/source--> |

##### Request body`application/json`

<!--source:api-specifications-->
2 fields
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `partner_name`required | `string` | <!--source:api-specifications-->Partner name.<!--/source-->Example `equifax` |
| `request_data`required | `object` | <!--source:api-specifications-->Request data for asset verification.<!--/source--> |

##### Response `201``application/json`

<!--source:api-specifications-->
1 fields
<!--/source-->
<!--source:api-specifications-->
Successfully started flow invocation.
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `id`required | `string` | <!--source:api-specifications-->Response collection ID.<!--/source--> |

##### Response `400``application/json`

<!--source:api-specifications-->
1 fields
<!--/source-->
<!--source:api-specifications-->
Request data failed validation
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `message` | `one of` | <!--source:api-specifications-->Message<!--/source--> |

##### Response `403``application/json`

<!--source:api-specifications-->
2 fields
<!--/source-->
<!--source:api-specifications-->
403 invalid error
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `message` | `string` | <!--source:api-specifications-->Error message.<!--/source--> |
| `url` | `string` | <!--source:api-specifications-->Error additional URL.<!--/source--> |

##### Response `404``application/json`

<!--source:api-specifications-->
1 fields
<!--/source-->
<!--source:api-specifications-->
Resource not found
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `message` | `string` | <!--source:api-specifications-->Message<!--/source--> |

##### Response `500``application/json`

<!--source:api-specifications-->
1 fields
<!--/source-->
<!--source:api-specifications-->
Internal server error
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `message` | `string` | <!--source:api-specifications-->Error message.<!--/source--> |

`GET` `/verification/{id}`

<!--source:api-specifications-->

#### Retrieve Asset Verification Status
<!--/source-->

`RetrieveAssetVerificationFlowInvocationStatus`

<!--source:api-specifications-->
Retrieves the result of running Asset Verification.

#### Response Body

As the result of the successful invocation you are expected to receive `addresses`, `asset_holders`, `assets`, `contact_information`, `currency_information`, `documents`, `mortgage_products`, `names`, `organizations`, `people`, `transactions` arrays.

Show the rest The element of `addresses` array will include following information:

- address line 1
- city name
- state code
- postal code
- country name

The element of `asset_holders` array will include following information:

- with_name relation with the `names` object (unique identifier referencing element id from names array)

The element of `assets` array will include following information:

- account identifier
- asset description
- asset type
- other asset type description
- market value amount
- held_by_financial_institution relations with `organizations` object (unique identifier referencing element id from organizations array)
- with_asset_holder relation with the `asset_holders` object (unique identifier referencing element id from asset_holders array)
- with_currency relation with the `currency_information` object (unique identifier referencing element id from currency_information array)
- with_transaction relation with the `transactions` object (unique identifier referencing element id from transactions array)

The element of `contact_information` array will include following information:

- email address

The element of `currency_information` array will include following information:

- currency code

The element of `documents` array will include following information:

- document description
- document mime type
- document name
- blob identifier
- document category type

The element of `mortgage_products` array will include following information:

- partner name
- partner product name
- partner transaction identifier (Reference number)
- service response data

The element of `names` array will include following information:

- first name
- last name

The element of `organizations` array will include following information:

- organization identifier
- organization name

The element of `people` array will include following information:

- first name
- last name
- birthdate
- taxpayer identifier
- contact_at relation with the `contact_information` object (unique identifier referencing element id from contact_information array)
- with_address relation with the `addresses` object (unique identifier referencing element id from addresses array)

The element of `transactions` array will include following information:

- transaction amount
- transaction date
- transaction description

<!--/source-->

##### Response

<!--source:api-specifications-->
200400403404500
<!--/source-->

<!--source:api-specifications-->
application/json Copy Successfully returned result of the Asset Verification.

```
{
 "transaction_id": "01GT91JJRFRV60T4TTEMXFZMWE",
 "collection_id": "01GT91JJZRZ5ZNP7Y6V63527T7",
 "metadata": {
 "validation": false,
 "serialise_to_graph": false,
 "created_at": "2023-02-27T03:59:36.824278-05:00",
 "invocation_status": "COMPLETED",
 "last_updated_at": "2023-02-27T03:59:48.800645-05:00",
 "partner_name": "equifax",
 "product_invocation_id": "01GT91JJZRZ5ZNP7Y6V63527T7",
 "product_name": "asset"
 },
 "data": {
 "addresses": [
 {
 "has_address_line_1_text": {
 "has_value": "33 IRVING PLACE"
 },
 "has_state_code": {
 "has_value": "NY"
 },
 "@type": "address",
 "@id": "01GSTGGYHKZHHPT1584CVA5KGC2",
 "has_country_name": {
 "has_value": "US"
 },
 "has_postal_code": {
 "has_value": "10003"
 },
 "has_city_name": {
 "has_value": "NEW YORK"
 }
 }
 ],
 "assets": [
 {
 "has_asset_description": {
 "has_value": "Savings"
 },
 "held_by_financial_institution": [
 "01GSTGGYHJKKMFF8SR5SWT2BSW"
 ],
 "has_asset_type": {
 "has_value": "checking_account"
 },
 "has_asset_account_identifier": {
 "has_value": "xxxx5179"
 },
 "@type": "asset",
 "has_asset_type_other_description": {
 "has_value": "SavingsAccount"
 },
 "has_market_value_amount": {
 "has_value": 145461
 },
 "with_currency": [
 "01GSTGGYHKJCK0894E090RRKRN"
 ],
 "with_transaction": [
 "01GSTGGYHM0TRDWTR6MRS58T0N7",
 "01GSTGGYHKX04NE6K95S2TW23G",
 "01GSTGGYHKWZ3M3KHASKVSMMF0",
 "01GSTGGYHJYFHWST887CKDN6G4",
 "01GSTGGYHKP21Q0PFQ57YYC894",
 "01GSTGGYHKF7QZMFJ33BCE503D2",
 "01GSTGGYHK9AX6AWAVV0X9RGA3",
 "01GSTGGYHKF7QZMFJ33BCE503D4",
 "01GSTGGYHK54PM5J42R5XJYQ80",
 "01GSTGGYHKF7QZMFJ33BCE503D6",
 "01GSTGGYHKF61EXQGFF1SM1G6F",
 "01GSTGGYHJ8HJEZ8NQMEVGNDF4",
 "01GSTGGYHKF7QZMFJ33BCE503D9",
 "01GSTGGYHK095M5E9QJXDFXZJH",
 "01GSTGGYHJF1RFZ6KPAQ90B518"
 ],
 "@id": "01GSTGGYHMDNZ99GFV5SEX88DZ",
 "with_asset_holder": [
 "01GSTGGYHJSMA28T4T9CBG6PXX"
 ]
 },
 {
 "has_asset_description": {
 "has_value": "Investment account"
 },
 "held_by_financial_institution": [
 "01GSTGGYHKZHHPT1584CVA5KGC8"
 ],
 "has_asset_type": {
 "has_value": "savings_account"
 },
 "has_asset_account_identifier": {
 "has_value": "xxxx5163"
 },
 "@type": "asset",
 "has_asset_type_other_description": {
 "has_value": "Other"
 },
 "has_market_value_amount": {
 "has_value": 150000
 },
 "with_currency": [
 "01GSTGGYHKCG4MDTTH6M5TWB0Q"
 ],
 "with_transaction": [
 "01GSTGGYHMS8DVJQY9PCJ9FVS27",
 "01GSTGGYHKNBRZ3AX4HWPCYRQX6",
 "01GSTGGYHKQT9N51Y1N5DX1531",
 "01GSTGGYHJZZNG0Q7VQFA45D2F",
 "01GSTGGYHJ8N0YRRASTTS7165B",
 "01GSTGGYHKPZWQY83CNH981MET",
 "01GSTGGYHKXJGVFCTKHRSY0DZA",
 "01GSTGGYHJH2XDM60F8MQPX54Y",
 "01GSTGGYHJCHEB67S947S5RNJG",
 "01GSTGGYHKGP2VT4AZ306NANZ3",
 "01GSTGGYHKGN61E56DTS8DD7V0",
 "01GSTGGYHJMB7VQQ67T90JNHYK",
 "01GSTGGYHKK796SGTB86NHFNA1",
 "01GSTGGYHKE9KZ8PG4MC9N3EXV",
 "01GSTGGYHMS8DVJQY9PCJ9FVS26",
 "01GSTGGYHKNBRZ3AX4HWPCYRQX2",
 "01GSTGGYHJW9FZ3V87N8HNAXBG",
 "01GSTGGYHK96X9AJG5KETFGHSQ",
 "01GSTGGYHJ9B8GBFYVB5JRSJSA",
 "01GSTGGYHJANVPKPX7KCBDCG9W"
 ],
 "@id": "01GSTGGYHMSWV0WJ3N2TVDMCVE"
 },
 {
 "has_asset_description": {
 "has_value": "Investment account"
 },
 "held_by_financial_institution": [
 "01GSTGGYHJDEJW0D48335SFS45"
 ],
 "has_asset_type": {
 "has_value": "savings_account"
 },
 "has_asset_account_identifier": {
 "has_value": "xxxx5164"
 },
 "@type": "asset",
 "has_asset_type_other_description": {
 "has_value": "Other"
 },
 "has_market_value_amount": {
 "has_value": 120000
 },
 "with_currency": [
 "01GSTGGYHK3GZXHB5DRM3257CW"
 ],
 "with_transaction": [
 "01GSTGGYHKVXT82TCRAVYBV36X",
 "01GSTGGYHKQP1AYFYN4VRS6T53",
 "01GSTGGYHM0TRDWTR6MRS58T0N",
 "01GSTGGYHKF7QZMFJ33BCE503D",
 "01GSTGGYHM8CM381DE2VB8SQZ9",
 "01GSTGGYHK3AECDYT1DB3HVMA3",
 "01GSTGGYHMJ47EG4WZ7M7B9PX3",
 "01GSTGGYHKPTGZJWK4MQYJWV80",
 "01GSTGGYHKX2EWTVS6AJBSNXX5",
 "01GSTGGYHKZHHPT1584CVA5KGC",
 "01GSTGGYHKNBRZ3AX4HWPCYRQX",
 "01GSTGGYHMS8DVJQY9PCJ9FVS2",
 "01GSTGGYHKJEAMB524ANCXG9QB",
 "01GSTGGYHKVP5Z7WTZZV292BR2",
 "01GSTGGYHMQVJK6K6GPW9YNH11",
 "01GSTGGYHJT2RFKC4PRYDDEYR9",
 "01GSTGGYHK3Q6JEA9C2DD3D1TN",
 "01GSTGGYHME0GWQGMFQZHQ9XHD",
 "01GSTGGYHKJ9E26DSE7EG305E5",
 "01GSTGGYHJHCRVP4XHQKP66BAR"
 ],
 "@id": "01GSTGGYHMEQ29W12478J6QQ6W"
 }
 ],
 "names": [
 {
 "has_last_name": {
 "has_value": "Loanseeker"
 },
 "@id": "01GSTGGYHKX2EWTVS6AJBSNXX59",
 "has_first_name": {
 "has_value": "Home"
 },
 "@type": "name"
 }
 ],
 "currency_information": [
 {
 "has_currency_code": {
 "has_value": "USD"
 },
 "@type": "currency_information",
 "@id": "01GSTGGYHKJCK0894E090RRKRN"
 },
 {
 "has_currency_code": {
 "has_value": "USD"
 },
 "@type": "currency_information",
 "@id": "01GSTGGYHK3GZXHB5DRM3257CW"
 },
 {
 "has_currency_code": {
 "has_value": "USD"
 },
 "@type": "currency_information",
 "@id": "01GSTGGYHKCG4MDTTH6M5TWB0Q"
 }
 ],
 "asset_holders": [
 {
 "with_name": [
 "01GSTGGYHKX2EWTVS6AJBSNXX59"
 ],
 "@type": "asset_holder",
 "@id": "01GSTGGYHJSMA28T4T9CBG6PXX"
 }
 ],
 "documents": [
 {
 "has_staircase_document_category_type": {
 "has_value": "partner"
 },
 "@id": "01GSTGGYHM4806MKKRTP8ZDF9E",
 "has_document_description": {
 "has_value": "Asset Verification Report prepared by Equifax"
 },
 "has_document_mime_type": {
 "has_value": "application/pdf"
 },
 "@type": "verification_of_assets"
 }
 ],
 "organizations": [
 {
 "@id": "01GSTGGYHMMJRH9F6SXAWWQEBE",
 "has_organization_identifier": {
 "has_value": "80418"
 },
 "has_organization_name": {
 "has_value": "Mortgage Activation - Test"
 },
 "@type": "lender"
 },
 {
 "has_organization_name": {
 "has_value": "Dag Site"
 },
 "@type": "financial_institution",
 "@id": "01GSTGGYHJKKMFF8SR5SWT2BSW"
 },
 {
 "has_organization_name": {
 "has_value": "Dag Site"
 },
 "@type": "financial_institution",
 "@id": "01GSTGGYHKZHHPT1584CVA5KGC8"
 },
 {
 "has_organization_name": {
 "has_value": "Dag Site"
 },
 "@type": "financial_institution",
 "@id": "01GSTGGYHJDEJW0D48335SFS45"
 }
 ],
 "contact_information": [
 {
 "has_email_address": {
 "has_value": "test.test@test.com"
 },
 "@type": "contact_information",
 "@id": "01GSTGGYHKPVBWE0BSW8GZ20BZ"
 }
 ],
 "mortgage_products": [
 {
 "has_partner_product_name": {
 "has_value": "Asset"
 },
 "has_partner_transaction_identifier": {
 "has_value": "999626929858"
 },
 "@id": "01GSTGGYHMKXPJ2N8R4ZHZZ6F7",
 "has_service_response_date": {
 "has_value": "2022-04-08"
 },
 "has_partner_name": {
 "has_value": "Equifax"
 },
 "@type": "asset"
 }
 ],
 "transactions": [
 {
 "has_transaction_amount": {
 "has_value": 2267
 },
 "@id": "01GSTGGYHKQP1AYFYN4VRS6T53",
 "has_transaction_description": {
 "has_value": "ACH Transfer VANGUARD"
 },
 "has_transaction_date": {
 "has_value": "2022-02-27"
 },
 "@type": "asset_transaction"
 },
 {
 "has_transaction_amount": {
 "has_value": 2000
 },
 "@id": "01GSTGGYHKF7QZMFJ33BCE503D2",
 "has_transaction_description": {
 "has_value": "Web Authorized Pmt Recur XXXXXX1301"
 },
 "has_transaction_date": {
 "has_value": "2022-02-13"
 },
 "@type": "asset_transaction"
 },
 {
 "has_transaction_amount": {
 "has_value": 3105
 },
 "@id": "01GSTGGYHKVXT82TCRAVYBV36X",
 "has_transaction_description": {
 "has_value": "ACH Transfer FIDELITY"
 },
 "has_transaction_date": {
 "has_value": "2022-04-05"
 },
 "@type": "asset_transaction"
 },
 {
 "has_transaction_amount": {
 "has_value": 3583
 },
 "@id": "01GSTGGYHJH2XDM60F8MQPX54Y",
 "has_transaction_description": {
 "has_value": "ACH Transfer VANGUARD"
 },
 "has_transaction_date": {
 "has_value": "2022-03-29"
 },
 "@type": "asset_transaction"
 },
 {
 "has_transaction_amount": {
 "has_value": 817
 },
 "@id": "01GSTGGYHK96X9AJG5KETFGHSQ",
 "has_transaction_description": {
 "has_value": "ACH Transfer FIDELITY"
 },
 "has_transaction_date": {
 "has_value": "2022-04-03"
 },
 "@type": "asset_transaction"
 },
 {
 "has_transaction_amount": {
 "has_value": 90
 },
 "@id": "01GSTGGYHK54PM5J42R5XJYQ80",
 "has_transaction_description": {
 "has_value": "Web Authorized Pmt Ref No XXXXX7229 Leaky Couldron"
 },
 "has_transaction_date": {
 "has_value": "2022-03-13"
 },
 "@type": "asset_transaction"
 },
 {
 "has_transaction_amount": {
 "has_value": 4396
 },
 "@id": "01GSTGGYHKNBRZ3AX4HWPCYRQX2",
 "has_transaction_description": {
 "has_value": "ACH Transfer FIDELITY"
 },
 "has_transaction_date": {
 "has_value": "2022-02-22"
 },
 "@type": "asset_transaction"
 },
 {
 "has_transaction_amount": {
 "has_value": 985
 },
 "@id": "01GSTGGYHKXJGVFCTKHRSY0DZA",
 "has_transaction_description": {
 "has_value": "ACH Transfer FIDELITY"
 },
 "has_transaction_date": {
 "has_value": "2022-02-19"
 },
 "@type": "asset_transaction"
 },
 {
 "has_transaction_amount": {
 "has_value": 2000
 },
 "@id": "01GSTGGYHK095M5E9QJXDFXZJH",
 "has_transaction_description": {
 "has_value": "Web Authorized Pmt Recur PaymentRec Car loan XXXXXXXXX4354"
 },
 "has_transaction_date": {
 "has_value": "2022-02-09"
 },
 "@type": "asset_transaction"
 },
 {
 "has_transaction_amount": {
 "has_value": 3105
 },
 "@id": "01GSTGGYHKGP2VT4AZ306NANZ3",
 "has_transaction_description": {
 "has_value": "ACH Transfer FIDELITY"
 },
 "has_transaction_date": {
 "has_value": "2022-04-05"
 },
 "@type": "asset_transaction"
 },
 {
 "has_transaction_amount": {
 "has_value": 4000
 },
 "@id": "01GSTGGYHKWZ3M3KHASKVSMMF0",
 "has_transaction_description": {
 "has_value": "Direct deposit - Ministry Of Magic XXXXXXXXXX9938LWV"
 },
 "has_transaction_date": {
 "has_value": "2022-03-29"
 },
 "@type": "asset_transaction"
 },
 {
 "has_transaction_amount": {
 "has_value": 3932
 },
 "@id": "01GSTGGYHKX2EWTVS6AJBSNXX5",
 "has_transaction_description": {
 "has_value": "ACH Transfer FIDELITY"
 },
 "has_transaction_date": {
 "has_value": "2022-03-02"
 },
 "@type": "asset_transaction"
 },
 {
 "has_transaction_amount": {
 "has_value": 2267
 },
 "@id": "01GSTGGYHKPZWQY83CNH981MET",
 "has_transaction_description": {
 "has_value": "ACH Transfer VANGUARD"
 },
 "has_transaction_date": {
 "has_value": "2022-02-27"
 },
 "@type": "asset_transaction"
 },
 {
 "has_transaction_amount": {
 "has_value": 424
 },
 "@id": "01GSTGGYHKNBRZ3AX4HWPCYRQX",
 "has_transaction_description": {
 "has_value": "ACH Transfer FIDELITY"
 },
 "has_transaction_date": {
 "has_value": "2022-03-11"
 },
 "@type": "asset_transaction"
 },
 {
 "has_transaction_amount": {
 "has_value": 3583
 },
 "@id": "01GSTGGYHMJ47EG4WZ7M7B9PX3",
 "has_transaction_description": {
 "has_value": "ACH Transfer VANGUARD"
 },
 "has_transaction_date": {
 "has_value": "2022-03-29"
 },
 "@type": "asset_transaction"
 },
 {
 "has_transaction_amount": {
 "has_value": 209
 },
 "@id": "01GSTGGYHMQVJK6K6GPW9YNH11",
 "has_transaction_description": {
 "has_value": "ACH Transfer FIDELITY"
 },
 "has_transaction_date": {
 "has_value": "2022-02-25"
 },
 "@type": "asset_transaction"
 },
 {
 "has_transaction_amount": {
 "has_value": 4187
 },
 "@id": "01GSTGGYHK3Q6JEA9C2DD3D1TN",
 "has_transaction_description": {
 "has_value": "ACH Transfer FIDELITY"
 },
 "has_transaction_date": {
 "has_value": "2022-04-06"
 },
 "@type": "asset_transaction"
 },
 {
 "has_transaction_amount": {
 "has_value": 2000
 },
 "@id": "01GSTGGYHKP21Q0PFQ57YYC894",
 "has_transaction_description": {
 "has_value": "Web Authorized Pmt RecurPaymentRec XXXXXX1202"
 },
 "has_transaction_date": {
 "has_value": "2022-02-12"
 },
 "@type": "asset_transaction"
 },
 {
 "has_transaction_amount": {
 "has_value": 80
 },
 "@id": "01GSTGGYHK9AX6AWAVV0X9RGA3",
 "has_transaction_description": {
 "has_value": "Web Authorized Pmt Ref No XXXXX7228 Leaky Couldron"
 },
 "has_transaction_date": {
 "has_value": "2022-03-05"
 },
 "@type": "asset_transaction"
 },
 {
 "has_transaction_amount": {
 "has_value": 4187
 },
 "@id": "01GSTGGYHKNBRZ3AX4HWPCYRQX6",
 "has_transaction_description": {
 "has_value": "ACH Transfer FIDELITY"
 },
 "has_transaction_date": {
 "has_value": "2022-04-06"
 },
 "@type": "asset_transaction"
 },
 {
 "has_transaction_amount": {
 "has_value": 43
 },
 "@id": "01GSTGGYHKF7QZMFJ33BCE503D",
 "has_transaction_description": {
 "has_value": "ACH Transfer VANGUARD"
 },
 "has_transaction_date": {
 "has_value": "2022-03-31"
 },
 "@type": "asset_transaction"
 },
 {
 "has_transaction_amount": {
 "has_value": 4186
 },
 "@id": "01GSTGGYHJ9B8GBFYVB5JRSJSA",
 "has_transaction_description": {
 "has_value": "ACH Transfer FIDELITY"
 },
 "has_transaction_date": {
 "has_value": "2022-04-08"
 },
 "@type": "asset_transaction"
 },
 {
 "has_transaction_amount": {
 "has_value": 2000
 },
 "@id": "01GSTGGYHKF7QZMFJ33BCE503D9",
 "has_transaction_description": {
 "has_value": "Web Authorized Pmt RecurPaymentRec XXXXXX1202"
 },
 "has_transaction_date": {
 "has_value": "2022-02-12"
 },
 "@type": "asset_transaction"
 },
 {
 "has_transaction_amount": {
 "has_value": 70
 },
 "@id": "01GSTGGYHJF1RFZ6KPAQ90B518",
 "has_transaction_description": {
 "has_value": "Web Authorized Pmt Ref No XXXXX7227 Leaky Couldron"
 },
 "has_transaction_date": {
 "has_value": "2022-02-25T00:00:00.000Z"
 },
 "@type": "asset_transaction"
 },
 {
 "has_transaction_amount": {
 "has_value": 817
 },
 "@id": "01GSTGGYHKVP5Z7WTZZV292BR2",
 "has_transaction_description": {
 "has_value": "ACH Transfer FIDELITY"
 },
 "has_transaction_date": {
 "has_value": "2022-04-03"
 },
 "@type": "asset_transaction"
 },
 {
 "has_transaction_amount": {
 "has_value": 2403
 },
 "@id": "01GSTGGYHKPTGZJWK4MQYJWV80",
 "has_transaction_description": {
 "has_value": "ACH Transfer FIDELITY"
 },
 "has_transaction_date": {
 "has_value": "2022-04-04"
 },
 "@type": "asset_transaction"
 },
 {
 "has_transaction_amount": {
 "has_value": 800
 },
 "@id": "01GSTGGYHJ8HJEZ8NQMEVGNDF4",
 "has_transaction_description": {
 "has_value": "Web Authorized Pmt Recur PaymentRec Disney Hotstar XXXXXXXXXX5455"
 },
 "has_transaction_date": {
 "has_value": "2022-02-07"
 },
 "@type": "asset_transaction"
 },
 {
 "has_transaction_amount": {
 "has_value": 1846
 },
 "@id": "01GSTGGYHKGN61E56DTS8DD7V0",
 "has_transaction_description": {
 "has_value": "ACH Transfer FIDELITY"
 },
 "has_transaction_date": {
 "has_value": "2022-03-25"
 },
 "@type": "asset_transaction"
 },
 {
 "has_transaction_amount": {
 "has_value": 2049
 },
 "@id": "01GSTGGYHM8CM381DE2VB8SQZ9",
 "has_transaction_description": {
 "has_value": "ACH Transfer FIDELITY"
 },
 "has_transaction_date": {
 "has_value": "2022-04-07"
 },
 "@type": "asset_transaction"
 },
 {
 "has_transaction_amount": {
 "has_value": 50
 },
 "@id": "01GSTGGYHJYFHWST887CKDN6G4",
 "has_transaction_description": {
 "has_value": "Direct deposit - Ministry Of Magic XXXXXXXXXX9938LWV"
 },
 "has_transaction_date": {
 "has_value": "2022-02-17"
 },
 "@type": "asset_transaction"
 },
 {
 "has_transaction_amount": {
 "has_value": 450
 },
 "@id": "01GSTGGYHKX04NE6K95S2TW23G",
 "has_transaction_description": {
 "has_value": "Cash Withdrawal XX/XX XX:XXp"
 },
 "has_transaction_date": {
 "has_value": "2022-04-06"
 },
 "@type": "asset_transaction"
 },
 {
 "has_transaction_amount": {
 "has_value": 210
 },
 "@id": "01GSTGGYHKF61EXQGFF1SM1G6F",
 "has_transaction_description": {
 "has_value": "Web Authorized Pmt Ref No XXXXX7230 Leaky Couldron"
 },
 "has_transaction_date": {
 "has_value": "2022-03-21"
 },
 "@type": "asset_transaction"
 },
 {
 "has_transaction_amount": {
 "has_value": 43
 },
 "@id": "01GSTGGYHJZZNG0Q7VQFA45D2F",
 "has_transaction_description": {
 "has_value": "ACH Transfer VANGUARD"
 },
 "has_transaction_date": {
 "has_value": "2022-03-31"
 },
 "@type": "asset_transaction"
 },
 {
 "has_transaction_amount": {
 "has_value": 3932
 },
 "@id": "01GSTGGYHKK796SGTB86NHFNA1",
 "has_transaction_description": {
 "has_value": "ACH Transfer FIDELITY"
 },
 "has_transaction_date": {
 "has_value": "2022-03-02"
 },
 "@type": "asset_transaction"
 },
 {
 "has_transaction_amount": {
 "has_value": 2000
 },
 "@id": "01GSTGGYHM0TRDWTR6MRS58T0N7",
 "has_transaction_description": {
 "has_value": "Web Authorized Pmt RecurPaymentRec XXXXXX1102"
 },
 "has_transaction_date": {
 "has_value": "2022-02-11"
 },
 "@type": "asset_transaction"
 },
 {
 "has_transaction_amount": {
 "has_value": 3490
 },
 "@id": "01GSTGGYHJANVPKPX7KCBDCG9W",
 "has_transaction_description": {
 "has_value": "ACH Transfer FIDELITY"
 },
 "has_transaction_date": {
 "has_value": "2022-03-22"
 },
 "@type": "asset_transaction"
 },
 {
 "has_transaction_amount": {
 "has_value": 1338
 },
 "@id": "01GSTGGYHMS8DVJQY9PCJ9FVS2",
 "has_transaction_description": {
 "has_value": "ACH Transfer FIDELITY"
 },
 "has_transaction_date": {
 "has_value": "2022-03-08"
 },
 "@type": "asset_transaction"
 },
 {
 "has_transaction_amount": {
 "has_value": 3490
 },
 "@id": "01GSTGGYHJT2RFKC4PRYDDEYR9",
 "has_transaction_description": {
 "has_value": "ACH Transfer FIDELITY"
 },
 "has_transaction_date": {
 "has_value": "2022-03-22"
 },
 "@type": "asset_transaction"
 },
 {
 "has_transaction_amount": {
 "has_value": 2000
 },
 "@id": "01GSTGGYHKF7QZMFJ33BCE503D4",
 "has_transaction_description": {
 "has_value": "Web Authorized Pmt RecurPaymentRec XXXXXX1101"
 },
 "has_transaction_date": {
 "has_value": "2022-02-11"
 },
 "@type": "asset_transaction"
 },
 {
 "has_transaction_amount": {
 "has_value": 2000
 },
 "@id": "01GSTGGYHKF7QZMFJ33BCE503D6",
 "has_transaction_description": {
 "has_value": "Web Authorized Pmt Recur XXXXXX1302"
 },
 "has_transaction_date": {
 "has_value": "2022-02-13"
 },
 "@type": "asset_transaction"
 },
 {
 "has_transaction_amount": {
 "has_value": 209
 },
 "@id": "01GSTGGYHJCHEB67S947S5RNJG",
 "has_transaction_description": {
 "has_value": "ACH Transfer FIDELITY"
 },
 "has_transaction_date": {
 "has_value": "2022-02-25"
 },
 "@type": "asset_transaction"
 },
 {
 "has_transaction_amount": {
 "has_value": 4662
 },
 "@id": "01GSTGGYHK3AECDYT1DB3HVMA3",
 "has_transaction_description": {
 "has_value": "ACH Transfer VANGUARD"
 },
 "has_transaction_date": {
 "has_value": "2022-02-28"
 },
 "@type": "asset_transaction"
 },
 {
 "has_transaction_amount": {
 "has_value": 2403
 },
 "@id": "01GSTGGYHKE9KZ8PG4MC9N3EXV",
 "has_transaction_description": {
 "has_value": "ACH Transfer FIDELITY"
 },
 "has_transaction_date": {
 "has_value": "2022-04-04"
 },
 "@type": "asset_transaction"
 },
 {
 "has_transaction_amount": {
 "has_value": 3510
 },
 "@id": "01GSTGGYHJW9FZ3V87N8HNAXBG",
 "has_transaction_description": {
 "has_value": "ACH Transfer FIDELITY"
 },
 "has_transaction_date": {
 "has_value": "2022-04-02"
 },
 "@type": "asset_transaction"
 },
 {
 "has_transaction_amount": {
 "has_value": 1846
 },
 "@id": "01GSTGGYHJHCRVP4XHQKP66BAR",
 "has_transaction_description": {
 "has_value": "ACH Transfer FIDELITY"
 },
 "has_transaction_date": {
 "has_value": "2022-03-25"
 },
 "@type": "asset_transaction"
 },
 {
 "has_transaction_amount": {
 "has_value": 4186
 },
 "@id": "01GSTGGYHKJEAMB524ANCXG9QB",
 "has_transaction_description": {
 "has_value": "ACH Transfer FIDELITY"
 },
 "has_transaction_date": {
 "has_value": "2022-04-08"
 },
 "@type": "asset_transaction"
 },
 {
 "has_transaction_amount": {
 "has_value": 1338
 },
 "@id": "01GSTGGYHJMB7VQQ67T90JNHYK",
 "has_transaction_description": {
 "has_value": "ACH Transfer FIDELITY"
 },
 "has_transaction_date": {
 "has_value": "2022-03-08"
 },
 "@type": "asset_transaction"
 },
 {
 "has_transaction_amount": {
 "has_value": 985
 },
 "@id": "01GSTGGYHME0GWQGMFQZHQ9XHD",
 "has_transaction_description": {
 "has_value": "ACH Transfer FIDELITY"
 },
 "has_transaction_date": {
 "has_value": "2022-02-19"
 },
 "@type": "asset_transaction"
 },
 {
 "has_transaction_amount": {
 "has_value": 2608
 },
 "@id": "01GSTGGYHMS8DVJQY9PCJ9FVS26",
 "has_transaction_description": {
 "has_value": "ACH Transfer VANGUARD"
 },
 "has_transaction_date": {
 "has_value": "2022-02-15"
 },
 "@type": "asset_transaction"
 },
 {
 "has_transaction_amount": {
 "has_value": 424
 },
 "@id": "01GSTGGYHMS8DVJQY9PCJ9FVS27",
 "has_transaction_description": {
 "has_value": "ACH Transfer FIDELITY"
 },
 "has_transaction_date": {
 "has_value": "2022-03-11"
 },
 "@type": "asset_transaction"
 },
 {
 "has_transaction_amount": {
 "has_value": 2049
 },
 "@id": "01GSTGGYHJ8N0YRRASTTS7165B",
 "has_transaction_description": {
 "has_value": "ACH Transfer FIDELITY"
 },
 "has_transaction_date": {
 "has_value": "2022-04-07"
 },
 "@type": "asset_transaction"
 },
 {
 "has_transaction_amount": {
 "has_value": 4662
 },
 "@id": "01GSTGGYHKQT9N51Y1N5DX1531",
 "has_transaction_description": {
 "has_value": "ACH Transfer VANGUARD"
 },
 "has_transaction_date": {
 "has_value": "2022-02-28"
 },
 "@type": "asset_transaction"
 },
 {
 "has_transaction_amount": {
 "has_value": 2608
 },
 "@id": "01GSTGGYHKZHHPT1584CVA5KGC",
 "has_transaction_description": {
 "has_value": "ACH Transfer VANGUARD"
 },
 "has_transaction_date": {
 "has_value": "2022-02-15"
 },
 "@type": "asset_transaction"
 },
 {
 "has_transaction_amount": {
 "has_value": 4396
 },
 "@id": "01GSTGGYHKJ9E26DSE7EG305E5",
 "has_transaction_description": {
 "has_value": "ACH Transfer FIDELITY"
 },
 "has_transaction_date": {
 "has_value": "2022-02-22"
 },
 "@type": "asset_transaction"
 },
 {
 "has_transaction_amount": {
 "has_value": 3510
 },
 "@id": "01GSTGGYHM0TRDWTR6MRS58T0N",
 "has_transaction_description": {
 "has_value": "ACH Transfer FIDELITY"
 },
 "has_transaction_date": {
 "has_value": "2022-04-02"
 },
 "@type": "asset_transaction"
 }
 ],
 "people": [
 {
 "contact_at": [
 "01GSTGGYHKPVBWE0BSW8GZ20BZ"
 ],
 "has_taxpayer_identifier_value": {
 "has_value": "000000001"
 },
 "@type": "borrower",
 "has_birth_date": {
 "has_value": "1970-07-04"
 },
 "with_address": [
 "01GSTGGYHKZHHPT1584CVA5KGC2"
 ],
 "has_last_name": {
 "has_value": "Jackson"
 },
 "@id": "000000001",
 "has_first_name": {
 "has_value": "John"
 }
 }
 ]
 }
}
```

<!--/source-->

<!--source:api-specifications-->
application/json Copy Request data failed validation

```
{
 "message": "{'data': ['Missing data for required field.']}"
}
```

<!--/source-->

<!--source:api-specifications-->
application/json Copy 403 invalid error

```
{
 "message": "Please check the key you used to call this service",
 "url": "https://api.staircase.co/docs/api-reference/customer-account-manager-service.yml/paths/~1products~1refresh/post"
}
```

<!--/source-->

<!--source:api-specifications-->
text/html Copy Resource not found

```
<html>\r\n<head><title>400 Bad Request</title></head>\r\n<body>\r\n<center><h1>400 Bad Request</h1></center>\r\n</body>\r\n</html>\r\n
```

<!--/source-->

<!--source:api-specifications-->
application/json Copy Internal server error

```
{
 "message": "The product has encountered an internal server error. If you have used a transaction_id to call our services, please submit it to Staircase support"
}
```

<!--/source-->

##### Parameters

<!--source:api-specifications-->
2
<!--/source-->

| Parameter | Type | Example | Description |
| --- | --- | --- | --- |
| `x-api-key` required | `string` header | `xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx` | <!--source:api-specifications-->Environment API Key.<!--/source--> |
| `id` required | `string (Staircase Response Collection Identifier)` path | `01FFMHWSS346W9V6HZVGSEZPQ` | <!--source:api-specifications-->Asset Verification ID<!--/source--> |

##### Response `200``application/json`

<!--source:api-specifications-->
4 fields
<!--/source-->
<!--source:api-specifications-->
Successfully returned result of the Asset Verification.
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `transaction_id` | `string (ulid)` | <!--source:api-specifications-->Transaction ID.<!--/source-->Example `01EZQ32PJQGKRA6HR8D72Q9FFF` |
| `collection_id` | `string (ulid)` | <!--source:api-specifications-->Collection ID.<!--/source-->Example `01EZQ32PJQGKRA6HR8D72Q9FFF` |
| `data` | `object` | <!--source:api-specifications-->Asset Data in Staircase language schema.<!--/source--> |
| `metadata` | `object` | <!--source:api-specifications-->Metadata about collection, f.e version of used Staircase schema.<!--/source--> |
| `product_name` | `string` | <!--source:api-specifications-->Product name<!--/source-->Example `asset` |
| `partner_name` | `string` | <!--source:api-specifications-->Partner name<!--/source-->Example `equifax` |
| `created_at` | `string` | <!--source:api-specifications-->Time of creation<!--/source--> |
| `last_updated_at` | `string` | <!--source:api-specifications-->Time of last update<!--/source--> |
| `invocation_status` | `string` | <!--source:api-specifications-->Status of the Asset Verification.<!--/source-->`COMPLETED``FAILED``RUNNING``STARTED` |

##### Response `400``application/json`

<!--source:api-specifications-->
1 fields
<!--/source-->
<!--source:api-specifications-->
Request data failed validation
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `message` | `one of` | <!--source:api-specifications-->Message<!--/source--> |

##### Response `403``application/json`

<!--source:api-specifications-->
2 fields
<!--/source-->
<!--source:api-specifications-->
403 invalid error
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `message` | `string` | <!--source:api-specifications-->Error message.<!--/source--> |
| `url` | `string` | <!--source:api-specifications-->Error additional URL.<!--/source--> |

##### Response `404``application/json`

<!--source:api-specifications-->
1 fields
<!--/source-->
<!--source:api-specifications-->
Resource not found
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `message` | `string` | <!--source:api-specifications-->Message<!--/source--> |

##### Response `500``application/json`

<!--source:api-specifications-->
1 fields
<!--/source-->
<!--source:api-specifications-->
Internal server error
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `message` | `string` | <!--source:api-specifications-->Error message.<!--/source--> |

<!--source:api-specifications-->

### Setup
<!--/source-->

`POST` `/equifax/credentials`

<!--source:api-specifications-->

#### Set Equifax Credentials
<!--/source-->

`setEquifaxCredentials`

##### Request

<!--source:api-specifications-->
application/json Copy
```
{
 "username": "1234bgrt",
 "password": "<redacted>"
}
```

<!--/source-->

##### Response

<!--source:api-specifications-->
200400403422500
<!--/source-->

<!--source:api-specifications-->
application/json Copy Setup API Triggered Successfully

```
{
 "message": "Credentials are saved and verified"
}
```

<!--/source-->

<!--source:api-specifications-->
application/json Copy Request data failed validation

```
{
 "message": "{'data': ['Missing data for required field.']}"
}
```

<!--/source-->

<!--source:api-specifications-->
application/json Copy Invalid key for service

```
{
 "message": "Please check the key you used to call this service",
 "url": "https://staircase.stoplight.io/docs/api-reference/customer-account-manager-service.yml/paths/~1products~1refresh/post"
}
```

<!--/source-->

<!--source:api-specifications-->
application/json Copy Request data failed validation

```
{
 "message": "Invalid request body",
 "error": "[object has missing required properties ([\"client_secret\"])]"
}
```

<!--/source-->

<!--source:api-specifications-->
application/json Copy The product has encountered an internal server error

```
{
 "message": "The product has encountered an internal server error"
}
```

<!--/source-->

##### Parameters

<!--source:api-specifications-->
1
<!--/source-->

| Parameter | Type | Example | Description |
| --- | --- | --- | --- |
| `x-api-key` required | `string` header | `xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx` | <!--source:api-specifications-->Staircase Environment API Key<!--/source--> |

##### Request body`application/json`

<!--source:api-specifications-->
2 fields
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `username`required | `string` | <!--source:api-specifications-->Equifax username<!--/source--> |
| `password`required | `string` | <!--source:api-specifications-->Equifax Password<!--/source--> |

##### Response `200``application/json`

<!--source:api-specifications-->
1 fields
<!--/source-->
<!--source:api-specifications-->
Setup API Triggered Successfully
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `message` | `string` | <!--source:api-specifications-->Message<!--/source--> |

##### Response `400``application/json`

<!--source:api-specifications-->
1 fields
<!--/source-->
<!--source:api-specifications-->
Request data failed validation
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `message` | `string` | <!--source:api-specifications-->Message<!--/source--> |

##### Response `403``application/json`

<!--source:api-specifications-->
2 fields
<!--/source-->
<!--source:api-specifications-->
Invalid key for service
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `message` | `string` | — |
| `url` | `string` | — |

##### Response `422``application/json`

<!--source:api-specifications-->
2 fields
<!--/source-->
<!--source:api-specifications-->
Request data failed validation
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `message` | `string` | <!--source:api-specifications-->Message<!--/source--> |
| `error` | `string` | <!--source:api-specifications-->Message<!--/source--> |

##### Response `500``application/json`

<!--source:api-specifications-->
1 fields
<!--/source-->
<!--source:api-specifications-->
The product has encountered an internal server error
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `message` | `string` | <!--source:api-specifications-->Error Message<!--/source--> |

##### Other responses

`404`

`POST` `/finicity/credentials`

<!--source:api-specifications-->

#### Set Finicity Credentials
<!--/source-->

`setFinicityCredentials`

##### Request

<!--source:api-specifications-->
application/json Copy
```
{
 "partnerId": "1234bgrt",
 "partnerSecret": "abcdefg123",
 "apiKey": 1234567,
 "domain": "https://www.domain.com"
}
```

<!--/source-->

##### Response

<!--source:api-specifications-->
200400403422500
<!--/source-->

<!--source:api-specifications-->
application/json Copy Setup API Triggered Successfully

```
{
 "message": "Credentials are saved and verified"
}
```

<!--/source-->

<!--source:api-specifications-->
application/json Copy Request data failed validation

```
{
 "message": "{'data': ['Missing data for required field.']}"
}
```

<!--/source-->

<!--source:api-specifications-->
application/json Copy Invalid key for service

```
{
 "message": "Please check the key you used to call this service",
 "url": "https://staircase.stoplight.io/docs/api-reference/customer-account-manager-service.yml/paths/~1products~1refresh/post"
}
```

<!--/source-->

<!--source:api-specifications-->
application/json Copy Request data failed validation

```
{
 "message": "Invalid request body",
 "error": "[object has missing required properties ([\"client_secret\"])]"
}
```

<!--/source-->

<!--source:api-specifications-->
application/json Copy The product has encountered an internal server error

```
{
 "message": "The product has encountered an internal server error"
}
```

<!--/source-->

##### Parameters

<!--source:api-specifications-->
1
<!--/source-->

| Parameter | Type | Example | Description |
| --- | --- | --- | --- |
| `x-api-key` required | `string` header | `xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx` | <!--source:api-specifications-->Staircase Environment API Key<!--/source--> |

##### Request body`application/json`

<!--source:api-specifications-->
4 fields
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `partnerId`required | `string` | <!--source:api-specifications-->Finicity partner ID<!--/source--> |
| `partnerSecret`required | `string` | <!--source:api-specifications-->Finicity partner secret<!--/source--> |
| `apiKey`required | `string` | <!--source:api-specifications-->Finicity API key<!--/source--> |
| `domain`required | `string` | <!--source:api-specifications-->Finicity domain<!--/source--> |

##### Response `200``application/json`

<!--source:api-specifications-->
1 fields
<!--/source-->
<!--source:api-specifications-->
Setup API Triggered Successfully
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `message` | `string` | <!--source:api-specifications-->Message<!--/source--> |

##### Response `400``application/json`

<!--source:api-specifications-->
1 fields
<!--/source-->
<!--source:api-specifications-->
Request data failed validation
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `message` | `string` | <!--source:api-specifications-->Message<!--/source--> |

##### Response `403``application/json`

<!--source:api-specifications-->
2 fields
<!--/source-->
<!--source:api-specifications-->
Invalid key for service
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `message` | `string` | — |
| `url` | `string` | — |

##### Response `422``application/json`

<!--source:api-specifications-->
2 fields
<!--/source-->
<!--source:api-specifications-->
Request data failed validation
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `message` | `string` | <!--source:api-specifications-->Message<!--/source--> |
| `error` | `string` | <!--source:api-specifications-->Message<!--/source--> |

##### Response `500``application/json`

<!--source:api-specifications-->
1 fields
<!--/source-->
<!--source:api-specifications-->
The product has encountered an internal server error
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `message` | `string` | <!--source:api-specifications-->Error Message<!--/source--> |

##### Other responses

`404`

`POST` `/plaid/credentials`

<!--source:api-specifications-->

#### Set Plaid Credentials
<!--/source-->

`setPlaidCredentials`

##### Request

<!--source:api-specifications-->
application/json Copy
```
{
 "client_id": 123456789,
 "secret": "<redacted>",
 "domain": "https://www.domain.com"
}
```

<!--/source-->

##### Response

<!--source:api-specifications-->
200400403422500
<!--/source-->

<!--source:api-specifications-->
application/json Copy Setup API Triggered Successfully

```
{
 "message": "Credentials are saved and verified"
}
```

<!--/source-->

<!--source:api-specifications-->
application/json Copy Request data failed validation

```
{
 "message": "{'data': ['Missing data for required field.']}"
}
```

<!--/source-->

<!--source:api-specifications-->
application/json Copy Invalid key for service

```
{
 "message": "Please check the key you used to call this service",
 "url": "https://staircase.stoplight.io/docs/api-reference/customer-account-manager-service.yml/paths/~1products~1refresh/post"
}
```

<!--/source-->

<!--source:api-specifications-->
application/json Copy Request data failed validation

```
{
 "message": "Invalid request body",
 "error": "[object has missing required properties ([\"client_secret\"])]"
}
```

<!--/source-->

<!--source:api-specifications-->
application/json Copy The product has encountered an internal server error

```
{
 "message": "The product has encountered an internal server error"
}
```

<!--/source-->

##### Parameters

<!--source:api-specifications-->
1
<!--/source-->

| Parameter | Type | Example | Description |
| --- | --- | --- | --- |
| `x-api-key` required | `string` header | `xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx` | <!--source:api-specifications-->Staircase Environment API Key<!--/source--> |

##### Request body`application/json`

<!--source:api-specifications-->
3 fields
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `client_id`required | `string` | <!--source:api-specifications-->Plaid client ID<!--/source--> |
| `secret`required | `string` | <!--source:api-specifications-->Plaid secret<!--/source--> |
| `domain`required | `string` | <!--source:api-specifications-->Plaid domain<!--/source--> |

##### Response `200``application/json`

<!--source:api-specifications-->
1 fields
<!--/source-->
<!--source:api-specifications-->
Setup API Triggered Successfully
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `message` | `string` | <!--source:api-specifications-->Message<!--/source--> |

##### Response `400``application/json`

<!--source:api-specifications-->
1 fields
<!--/source-->
<!--source:api-specifications-->
Request data failed validation
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `message` | `string` | <!--source:api-specifications-->Message<!--/source--> |

##### Response `403``application/json`

<!--source:api-specifications-->
2 fields
<!--/source-->
<!--source:api-specifications-->
Invalid key for service
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `message` | `string` | — |
| `url` | `string` | — |

##### Response `422``application/json`

<!--source:api-specifications-->
2 fields
<!--/source-->
<!--source:api-specifications-->
Request data failed validation
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `message` | `string` | <!--source:api-specifications-->Message<!--/source--> |
| `error` | `string` | <!--source:api-specifications-->Message<!--/source--> |

##### Response `500``application/json`

<!--source:api-specifications-->
1 fields
<!--/source-->
<!--source:api-specifications-->
The product has encountered an internal server error
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `message` | `string` | <!--source:api-specifications-->Error Message<!--/source--> |

##### Other responses

`404`

`GET` `/{partner_name}/credentials`

<!--source:api-specifications-->

#### Retrieve Partner Credentials Schema
<!--/source-->

`getCredentials`

<!--source:api-specifications-->
Get Credentials Schema
<!--/source-->

<!--source:api-specifications-->
Get credentials schema for specific partner. You can use retrieved schema for updating the partner credentials.

<!--/source-->

##### Response

<!--source:api-specifications-->
400403422500
<!--/source-->

<!--source:api-specifications-->
application/json Copy Request data failed validation

```
{
 "message": "{'data': ['Missing data for required field.']}"
}
```

<!--/source-->

<!--source:api-specifications-->
application/json Copy Invalid key for service

```
{
 "message": "Please check the key you used to call this service",
 "url": "https://staircase.stoplight.io/docs/api-reference/customer-account-manager-service.yml/paths/~1products~1refresh/post"
}
```

<!--/source-->

<!--source:api-specifications-->
application/json Copy Request data failed validation

```
{
 "message": "Invalid request body",
 "error": "[object has missing required properties ([\"client_secret\"])]"
}
```

<!--/source-->

<!--source:api-specifications-->
application/json Copy The product has encountered an internal server error

```
{
 "message": "The product has encountered an internal server error"
}
```

<!--/source-->

##### Parameters

<!--source:api-specifications-->
2
<!--/source-->

| Parameter | Type | Example | Description |
| --- | --- | --- | --- |
| `x-api-key` required | `string` header | `xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx` | <!--source:api-specifications-->Staircase Environment API Key<!--/source--> |
| `partner_name` required | `string` path | `plaid` | <!--source:api-specifications-->Partner name<!--/source--> |

##### Response `200``application/json`

<!--source:api-specifications-->
1 fields
<!--/source-->
<!--source:api-specifications-->
Create Adapter API Triggered Successfully
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `message` | `string` | <!--source:api-specifications-->Message<!--/source--> |

##### Response `400``application/json`

<!--source:api-specifications-->
1 fields
<!--/source-->
<!--source:api-specifications-->
Request data failed validation
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `message` | `string` | <!--source:api-specifications-->Message<!--/source--> |

##### Response `403``application/json`

<!--source:api-specifications-->
2 fields
<!--/source-->
<!--source:api-specifications-->
Invalid key for service
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `message` | `string` | — |
| `url` | `string` | — |

##### Response `422``application/json`

<!--source:api-specifications-->
2 fields
<!--/source-->
<!--source:api-specifications-->
Request data failed validation
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `message` | `string` | <!--source:api-specifications-->Message<!--/source--> |
| `error` | `string` | <!--source:api-specifications-->Message<!--/source--> |

##### Response `500``application/json`

<!--source:api-specifications-->
1 fields
<!--/source-->
<!--source:api-specifications-->
The product has encountered an internal server error
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `message` | `string` | <!--source:api-specifications-->Error Message<!--/source--> |

##### Other responses

`404`

<!--source:api-specifications-->

### Proxying
<!--/source-->

`GET` `/transactions/{transaction_id}/collections`

<!--source:api-specifications-->

#### Retrieve Transaction Collections
<!--/source-->

`RetrieveTransactionCollections`

<!--source:api-specifications-->
Retrieve Transaction Collections returns the content of a given `collection_id` associated with a specific `transaction_id`.

<!--/source-->

##### Response

<!--source:api-specifications-->
200400403404500
<!--/source-->

<!--source:api-specifications-->
application/json Copy Transaction collection retrieved successfully

```
[
 {
 "data": {
 "deal_sets": {
 "deal_set": [
 {
 "deals": {
 "deal": [
 {
 "parties": {
 "party": [
 {
 "customer_transaction_ID": "e171ec31-75b4-4fd6-ada1-a0c48373c079",
 "individual": {
 "contact_points": {
 "contact_point": [
 {
 "contact_point_telephone": {
 "value": "+1234567890"
 },
 "contact_point_email": {
 "value": "test@test.com"
 }
 }
 ]
 },
 "name": {
 "first": "John",
 "last": "Jackson"
 }
 },
 "roles": {
 "role": [
 {
 "borrower": {
 "birth_date": "1984-01-01",
 "employers": {
 "employer": [
 {
 "legal_entity": {
 "full_name": "Amazon"
 }
 }
 ]
 },
 "residences": {
 "residence": [
 {
 "address": {
 "additional_line_text": "None",
 "city": "NEW YORK",
 "country": "US",
 "line_text": "33 IRVING PLACE",
 "postal_code": "10003",
 "state_code": "NY",
 "state": "NY"
 }
 }
 ]
 }
 }
 }
 ]
 },
 "taxpayer_identifiers": {
 "taxpayer_identifier": [
 {
 "value": "317210001"
 }
 ]
 }
 }
 ]
 }
 }
 ]
 }
 }
 ]
 },
 "document_sets": {
 "document_set": [
 {
 "documents": {
 "document": [
 {
 "document_classification": {
 "document_classes": {
 "document_class": [
 {
 "staircase_type": "Staircase",
 "type": "BorrowerApproval"
 }
 ]
 }
 },
 "foreign_objects": {
 "foreign_object": [
 {
 "description": "BorrowerApproval",
 "mime_type_identifier": "application/pdf",
 "name": "01F1Z5KG9E3CPD78P7GYB3TYC1.pdf",
 "staircase_blob_id": "01F1Z5KG9E3CPD78P7GYB3TYC1"
 }
 ]
 }
 }
 ]
 }
 }
 ]
 }
 },
 "metadata": {}
 },
 {
 "data": {
 "deal_sets": {
 "deal_set": [
 {
 "deals": {
 "deal": [
 {
 "parties": {
 "party": [
 {
 "roles": {
 "role": [
 {
 "borrower": {
 "employers": {
 "employer": [
 {
 "asset": {
 "end_date": "2020-09-10",
 "position_description": "Developer",
 "start_date": "2016-09-10",
 "status_type": "Current"
 },
 "legal_entity": {
 "full_name": "Amazing Community Pharmacy LLC"
 }
 }
 ]
 }
 }
 }
 ]
 },
 "taxpayer_identifiers": {
 "taxpayer_identifier": [
 {
 "value": "317210001"
 }
 ]
 }
 }
 ]
 },
 "services": {
 "service": [
 {
 "verification_of_asset": {
 "verification_of_asset_response": {
 "partner": "Wage",
 "partner_data_source_date": "2021-07-19"
 }
 }
 }
 ]
 }
 }
 ]
 }
 }
 ]
 }
 },
 "metadata": {}
 }
]
```

<!--/source-->

<!--source:api-specifications-->
text/html Copy Error

```
<html>\r\n<head><title>400 Bad Request</title></head>\r\n<body>\r\n<center><h1>400 Bad Request</h1></center>\r\n</body>\r\n</html>\r\n
```

<!--/source-->

<!--source:api-specifications-->
application/json Copy 403 invalid error

```
{
 "message": "Please check the key you used to call this service",
 "url": "https://staircase.stoplight.io/docs/api-reference/customer-account-manager-service.yml/paths/~1products~1refresh/post"
}
```

<!--/source-->

<!--source:api-specifications-->
application/json Copy Resource not found

```
{
 "message": "Unable to get collections of given transaction. Please check the transaction id"
}
```

<!--/source-->

<!--source:api-specifications-->
application/json Copy Internal server error

```
{
 "message": "The product has encountered an internal server error. If you have used a transaction_id to call our services, please submit it to Staircase support"
}
```

<!--/source-->

##### Parameters

<!--source:api-specifications-->
2
<!--/source-->

| Parameter | Type | Example | Description |
| --- | --- | --- | --- |
| `x-api-key` required | `string` header | `xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx` | <!--source:api-specifications-->Environment API Key.<!--/source--> |
| `transaction_id` required | `string (ulid)` path | `01F0KHK7DN3H5JZ4QJKMYAM6GB` | <!--source:api-specifications-->Staircase Transaction Identifier<!--/source--> |

##### Response `200``application/json`

<!--source:api-specifications-->
4 fields
<!--/source-->
<!--source:api-specifications-->
Transaction collection retrieved successfully
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `transaction_id` | `string (ulid)` | <!--source:api-specifications-->Transaction id<!--/source-->Example `01EZQ32PJQGKRA6HR8D72Q9FFF` |
| `collection_id` | `string (ulid)` | <!--source:api-specifications-->Collection id<!--/source-->Example `01EZQ32PJQGKRA6HR8D72Q9FFF` |
| `data` | `array` | — |
| `metadata` | `object` | <!--source:api-specifications-->Metadata about collection, f.e version of used Staircase schema<!--/source--> |

##### Response `400``application/json`

<!--source:api-specifications-->
1 fields
<!--/source-->
<!--source:api-specifications-->
Error
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `message` | `one of` | <!--source:api-specifications-->Either message object with more properties.<!--/source--> |

##### Response `403``application/json`

<!--source:api-specifications-->
2 fields
<!--/source-->
<!--source:api-specifications-->
403 invalid error
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `message` | `string` | <!--source:api-specifications-->Error message.<!--/source--> |
| `url` | `string` | <!--source:api-specifications-->Error additional URL.<!--/source--> |

##### Response `404``application/json`

<!--source:api-specifications-->
1 fields
<!--/source-->
<!--source:api-specifications-->
Resource not found
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `message` | `string` | <!--source:api-specifications-->Message<!--/source--> |

##### Response `500``application/json`

<!--source:api-specifications-->
1 fields
<!--/source-->
<!--source:api-specifications-->
Internal server error
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `message` | `string` | <!--source:api-specifications-->Error message.<!--/source--> |

`GET` `/transactions/{transaction_id}/collections/{collection_id}`

<!--source:api-specifications-->

#### Retrieve Collection
<!--/source-->

`retrieveCollection`

<!--source:api-specifications-->
Retrieve Collection returns the content of a given `collection_id` associated with a `transaction_id`.

<!--/source-->

##### Response

<!--source:api-specifications-->
200403404 GetCollectionError404 GetCollectionsError500
<!--/source-->

<!--source:api-specifications-->
application/json Copy Successfully Retrieved Collection

```
{
 "data": {
 "deal_sets": {
 "deal_set": [
 {
 "deals": {
 "deal": [
 {
 "parties": {
 "party": [
 {
 "customer_transaction_ID": "e171ec31-75b4-4fd6-ada1-a0c48373c079",
 "individual": {
 "contact_points": {
 "contact_point": [
 {
 "contact_point_telephone": {
 "value": "+1234567890"
 },
 "contact_point_email": {
 "value": "test@test.com"
 }
 }
 ]
 },
 "name": {
 "first": "John",
 "last": "Jackson"
 }
 },
 "roles": {
 "role": [
 {
 "borrower": {
 "birth_date": "1984-01-01",
 "employers": {
 "employer": [
 {
 "legal_entity": {
 "full_name": "Amazon"
 }
 }
 ]
 },
 "residences": {
 "residence": [
 {
 "address": {
 "additional_line_text": "None",
 "city": "NEW YORK",
 "country": "US",
 "line_text": "33 IRVING PLACE",
 "postal_code": "10003",
 "state_code": "NY",
 "state": "NY"
 }
 }
 ]
 }
 }
 }
 ]
 },
 "taxpayer_identifiers": {
 "taxpayer_identifier": [
 {
 "value": "317210001"
 }
 ]
 }
 }
 ]
 }
 }
 ]
 }
 }
 ]
 },
 "document_sets": {
 "document_set": [
 {
 "documents": {
 "document": [
 {
 "document_classification": {
 "document_classes": {
 "document_class": [
 {
 "staircase_type": "Staircase",
 "type": "BorrowerApproval"
 }
 ]
 }
 },
 "foreign_objects": {
 "foreign_object": [
 {
 "description": "BorrowerApproval",
 "mime_type_identifier": "application/pdf",
 "name": "01F1Z5KG9E3CPD78P7GYB3TYC1.pdf",
 "staircase_blob_id": "01F1Z5KG9E3CPD78P7GYB3TYC1"
 }
 ]
 }
 }
 ]
 }
 }
 ]
 }
 },
 "metadata": {}
}
```

<!--/source-->

<!--source:api-specifications-->
application/json Copy 403 invalid error

```
{
 "message": "Please check the key you used to call this service",
 "url": "https://staircase.stoplight.io/docs/api-reference/customer-account-manager-service.yml/paths/~1products~1refresh/post"
}
```

<!--/source-->

<!--source:api-specifications-->
application/json Copy Resource not found

```
{
 "message": "Unable to get collection. Please check the given ids"
}
```

<!--/source-->

<!--source:api-specifications-->
application/json Copy Resource not found

```
{
 "message": "Unable to get collections of given transaction. Please check the transaction id"
}
```

<!--/source-->

<!--source:api-specifications-->
application/json Copy Internal server error

```
{
 "message": "The product has encountered an internal server error. If you have used a transaction_id to call our services, please submit it to Staircase support"
}
```

<!--/source-->

##### Parameters

<!--source:api-specifications-->
3
<!--/source-->

| Parameter | Type | Example | Description |
| --- | --- | --- | --- |
| `x-api-key` required | `string` header | `xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx` | <!--source:api-specifications-->Environment API Key.<!--/source--> |
| `transaction_id` required | `string (ulid)` path | `01F0KHK7DN3H5JZ4QJKMYAM6GB` | <!--source:api-specifications-->Staircase Transaction Identifier<!--/source--> |
| `collection_id` required | `string (ulid)` path | `01F0KHKADN0HRFXMCQQXPA6AFZ` | <!--source:api-specifications-->Staircase collection_id<!--/source--> |

##### Response `200``application/json`

<!--source:api-specifications-->
2 fields
<!--/source-->
<!--source:api-specifications-->
Successfully Retrieved Collection
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `data` | `object` | — |
| `deal_sets` | `object` | — |
| `deal_set` | `object[]` | — |
| `deals` | `object` | — |
| `document_sets` | `object` | — |
| `document_set` | `object[]` | — |
| `documents` | `object` | — |
| `metadata` | `—` | — |

##### Response `403``application/json`

<!--source:api-specifications-->
2 fields
<!--/source-->
<!--source:api-specifications-->
403 invalid error
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `message` | `string` | <!--source:api-specifications-->Error message.<!--/source--> |
| `url` | `string` | <!--source:api-specifications-->Error additional URL.<!--/source--> |

##### Response `404``application/json`

<!--source:api-specifications-->
1 fields
<!--/source-->
<!--source:api-specifications-->
Resource not found
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `message` | `string` | <!--source:api-specifications-->Message<!--/source--> |

##### Response `500``application/json`

<!--source:api-specifications-->
1 fields
<!--/source-->
<!--source:api-specifications-->
Internal server error
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `message` | `string` | <!--source:api-specifications-->Error message.<!--/source--> |

##### Other responses

`400`

<!--source:api-specifications-->

### Reverification
<!--/source-->

`POST` `/reverification`

<!--source:api-specifications-->

#### Reverify Asset
<!--/source-->

`InvokeAssetReverificationFlow`

<!--source:api-specifications-->
This endpoint does an asset reverification for the selected partner and request data. Please find various request examples at Request Body section.

#### Request Payload

In order to invoke asset reverification, add partner name in `partner_name` field and provide the following information in `request_data`:

You need to create `people`, `contact_information`, `addresses`, `mortgage_product` arrays in your request collection. Each of these array elements should have corresponding `@id` and `@type` fields.

Show the rest For `people` array's element you need to provide the following borrower information:

- first name
- last name
- birthdate
- taxpayer identifier
- contact_at relation with the `contact_information` object (unique identifier referencing element id from contact_information array)
- with_address relation with the `addresses` object (unique identifier referencing element id from addresses array)

For `contact_information` array's element you need to provide the following borrower contact information:

- email address

For `addresses` array's element you need to provide the following borrower address information:

- address line 1
- city name
- state code
- postal code

For `mortgage_products` array's element you need to provide the following information:

- partner transaction identifier (Reference number)

In case of invalid request data, you will receive 400 status code with information about missing fields.

##### Mock Request

If you want to test the system and see possible reverification results without invoking real asset reverification you can do mock request instead. Create payload as described in Request Payload section above but use following SSNs (taxpayer identifiers) for different scenarios.

| SSN | Mock Scenario |
| --- | --- |
| 000000001 | Generic Success Scenario |
| 990000001 | Application not available |
| 990000002 | Asset View Report not available |
| 990000003 | Missing reference number |
| 990000004 | Invalid reference number |
| 990000005 | Invalid partner |

##### Retrieving the Invocation Result

After request, endpoint returns an `id` which you can poll for its status using verification/asset/reverification/{id} endpoint. If you would rather receive a callback once the invocation is completed instead of polling it, you can set `callback_url` parameter in the request payload.

##### Monitoring the health of the Asset product

The Asset product is integrated with the Health product, a cloud-based DevOps service that monitors the health of APIs. With the help of Health product, you can monitor the process of reverification.

To check the health of the asset product, you can use the create async health query execution API. This API allows you to specify a time period, a response collection ID ("id" returned as result of asset reverification), and a product or API identifier.

Here are the relevant product and API identifiers for the Asset product:

- Asset Product Identifier: 48597cc5-c7d6-4856-9243-6fb4819d96e0
- Asset Reverification API ID: c41fd677-3162-4953-beed-e7322c937439

To check the health after submitting a new asset reverification request, you can use the following request payload:

```
{
 "start_date": "2023-01-28T00:00:00",
 "end_date": "2023-12-29T23:59:59",
 "response_collection_id": "01GNPTVCE9E737Y7HFEK9QKQRV",
 "product_identifier": "48597cc5-c7d6-4856-9243-6fb4819d96e0",
 "product_api_identifier": "c41fd677-3162-4953-beed-e7322c937439",
}
```

To check the overall health of your asset transaction, you can use the following request payload:

```
{
 "start_date": "2023-01-28T00:00:00",
 "end_date": "2023-12-29T23:59:59",
 "response_collection_id": "01GNPTVCE9E737Y7HFEK9QKQRV",
 "product_identifier": "48597cc5-c7d6-4856-9243-6fb4819d96e0"
}
```

To retrieve the results of your health query, use the get async health query result API. This API takes the query execution ID returned by the create async health query execution API as a parameter.

When you retrieve the results of your health query, you should see at least one health metric with corresponding status information (e.g. "SUCCEEDED", "FAILED").

###### Setting up alarms

You can set up alarms to be notified when the health of the asset product. To do this, use the create_health_alarm API. This API allows you to specify a threshold value and a notification method.

<!--/source-->

##### Request

<!--source:api-specifications-->
Reverification requestReverification request with callback url
<!--/source-->

<!--source:api-specifications-->
application/json Copy
```
{
 "partner_name": "partner_name",
 "request_data": {
 "people": [
 {
 "@type": "borrower",
 "@id": "01FD6ZKZD7WGZXYFGJBVPVP2Q5",
 "has_first_name": {
 "has_value": "John"
 },
 "has_last_name": {
 "has_value": "Jackson"
 },
 "has_birth_date": {
 "has_value": "1970-07-04"
 },
 "has_taxpayer_identifier_value": {
 "has_value": "000000001"
 },
 "with_address": [
 "01FD6ZNGJADZ0RB1H96FSE8BAB"
 ],
 "contact_at": [
 "01FD6ZNGJW9X96WGWX2BD37CFY"
 ]
 }
 ],
 "addresses": [
 {
 "@type": "address",
 "@id": "01FD6ZNGJADZ0RB1H96FSE8BAB",
 "has_address_line_1_text": {
 "has_value": "33 IRVING PLACE"
 },
 "has_city_name": {
 "has_value": "NEW YORK"
 },
 "has_state_code": {
 "has_value": "NY"
 },
 "has_postal_code": {
 "has_value": "10003"
 }
 }
 ],
 "contact_information": [
 {
 "@type": "contact_information",
 "@id": "01FD6ZNGJW9X96WGWX2BD37CFY",
 "has_email_address": {
 "has_value": "test.test@test.com"
 }
 }
 ],
 "mortgage_products": [
 {
 "@type": "asset",
 "@id": "01GTK2SSGE47WNEW38F38EM75V",
 "has_partner_transaction_identifier": {
 "has_value": "999626929858"
 }
 }
 ]
 }
}
```

<!--/source-->

<!--source:api-specifications-->
application/json Copy
```
{
 "partner_name": "partner_name",
 "callback_url": "url",
 "request_data": {
 "people": [
 {
 "@type": "borrower",
 "@id": "01FD6ZNGJADZ0RB1H96FSEAA01",
 "has_first_name": {
 "has_value": "Lorraine"
 },
 "has_last_name": {
 "has_value": "Purchaser"
 },
 "has_birth_date": {
 "has_value": "1970-07-04"
 },
 "has_taxpayer_identifier_value": {
 "has_value": "999565678"
 },
 "contact_at": [
 "01FD6ZNGJADZ0RB1H96FSEAA02"
 ],
 "with_address": [
 "01FD6ZNGJADZ0RB1H96FSEAA03"
 ]
 }
 ],
 "contact_information": [
 {
 "@type": "contact_information",
 "@id": "01FD6ZNGJADZ0RB1H96FSEAA02",
 "has_email_address": {
 "has_value": "contact@contact.com"
 }
 }
 ],
 "addresses": [
 {
 "@type": "address",
 "@id": "01FD6ZNGJADZ0RB1H96FSEAA03",
 "has_address_line_1_text": {
 "has_value": "1234 Main Street"
 },
 "has_city_name": {
 "has_value": "Baltimore"
 },
 "has_state_code": {
 "has_value": "MD"
 },
 "has_postal_code": {
 "has_value": "20600"
 }
 }
 ],
 "mortgage_products": [
 {
 "@type": "asset",
 "@id": "01GTK2SSGE47WNEW38F38EM75V",
 "has_partner_transaction_identifier": {
 "has_value": "999626929858"
 }
 }
 ]
 }
}
```

<!--/source-->

##### Response

<!--source:api-specifications-->
201400403404500
<!--/source-->

<!--source:api-specifications-->
application/json Copy Successfully started flow invocation.

```
{
 "id": "01F6NAQ4894HPMCBGB4P0G78HG"
}
```

<!--/source-->

<!--source:api-specifications-->
application/json Copy Request data failed validation

```
{
 "message": "{'data': ['Missing data for required field.']}"
}
```

<!--/source-->

<!--source:api-specifications-->
application/json Copy 403 invalid error

```
{
 "message": "Please check the key you used to call this service",
 "url": "https://api.staircase.co/docs/api-reference/customer-account-manager-service.yml/paths/~1products~1refresh/post"
}
```

<!--/source-->

<!--source:api-specifications-->
text/html Copy Resource not found

```
<html>\r\n<head><title>400 Bad Request</title></head>\r\n<body>\r\n<center><h1>400 Bad Request</h1></center>\r\n</body>\r\n</html>\r\n
```

<!--/source-->

<!--source:api-specifications-->
application/json Copy Internal server error

```
{
 "message": "The product has encountered an internal server error. If you have used a transaction_id to call our services, please submit it to Staircase support"
}
```

<!--/source-->

##### Parameters

<!--source:api-specifications-->
1
<!--/source-->

| Parameter | Type | Example | Description |
| --- | --- | --- | --- |
| `x-api-key` required | `string` header | `xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx` | <!--source:api-specifications-->Environment API Key.<!--/source--> |

##### Request body`application/json`

<!--source:api-specifications-->
2 fields
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `partner_name`required | `string` | <!--source:api-specifications-->Partner name.<!--/source-->Example `equifax` |
| `request_data`required | `object` | <!--source:api-specifications-->Request data for asset reverification.<!--/source--> |

##### Response `201``application/json`

<!--source:api-specifications-->
1 fields
<!--/source-->
<!--source:api-specifications-->
Successfully started flow invocation.
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `id`required | `string` | <!--source:api-specifications-->Response collection ID.<!--/source--> |

##### Response `400``application/json`

<!--source:api-specifications-->
1 fields
<!--/source-->
<!--source:api-specifications-->
Request data failed validation
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `message` | `one of` | <!--source:api-specifications-->Message<!--/source--> |

##### Response `403``application/json`

<!--source:api-specifications-->
2 fields
<!--/source-->
<!--source:api-specifications-->
403 invalid error
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `message` | `string` | <!--source:api-specifications-->Error message.<!--/source--> |
| `url` | `string` | <!--source:api-specifications-->Error additional URL.<!--/source--> |

##### Response `404``application/json`

<!--source:api-specifications-->
1 fields
<!--/source-->
<!--source:api-specifications-->
Resource not found
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `message` | `string` | <!--source:api-specifications-->Message<!--/source--> |

##### Response `500``application/json`

<!--source:api-specifications-->
1 fields
<!--/source-->
<!--source:api-specifications-->
Internal server error
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `message` | `string` | <!--source:api-specifications-->Error message.<!--/source--> |

`GET` `/reverification/{id}`

<!--source:api-specifications-->

#### Retrieve Asset Reverification Status
<!--/source-->

`RetrieveAssetReverificationFlowInvocationStatus`

<!--source:api-specifications-->
Retrieves the result of running Asset Reverification.

#### Response Body

As the result of the successful invocation you are expected to receive `addresses`, `asset_holders`, `assets`, `contact_information`, `currency_information`, `documents`, `mortgage_products`, `names`, `organizations`, `people`, `transactions` arrays.

Show the rest The element of `addresses` array will include following information:

- address line 1
- city name
- state code
- postal code
- country name

The element of `asset_holders` array will include following information:

- with_name relation with the `names` object (unique identifier referencing element id from names array)

The element of `assets` array will include following information:

- account identifier
- asset description
- asset type
- other asset type description
- market value amount
- held_by_financial_institution relations with `organizations` object (unique identifier referencing element id from organizations array)
- with_asset_holder relation with the `asset_holders` object (unique identifier referencing element id from asset_holders array)
- with_currency relation with the `currency_information` object (unique identifier referencing element id from currency_information array)
- with_transaction relation with the `transactions` object (unique identifier referencing element id from transactions array)

The element of `contact_information` array will include following information:

- email address

The element of `currency_information` array will include following information:

- currency code

The element of `documents` array will include following information:

- document description
- document mime type
- document name
- blob identifier
- document category type

The element of `mortgage_products` array will include following information:

- partner name
- partner product name
- partner transaction identifier (Reference number)
- service response data

The element of `names` array will include following information:

- first name
- last name

The element of `organizations` array will include following information:

- organization identifier
- organization name

The element of `people` array will include following information:

- first name
- last name
- birthdate
- taxpayer identifier
- contact_at relation with the `contact_information` object (unique identifier referencing element id from contact_information array)
- with_address relation with the `addresses` object (unique identifier referencing element id from addresses array)

The element of `transactions` array will include following information:

- transaction amount
- transaction date
- transaction description

<!--/source-->

##### Response

<!--source:api-specifications-->
200400403404500
<!--/source-->

<!--source:api-specifications-->
application/json Copy Successfully returned result of the Asset Reverification.

```
{
 "transaction_id": "01GT91JJRFRV60T4TTEMXFZMWE",
 "collection_id": "01GT91JJZRZ5ZNP7Y6V63527T7",
 "metadata": {
 "validation": false,
 "serialise_to_graph": false,
 "created_at": "2023-02-27T03:59:36.824278-05:00",
 "invocation_status": "COMPLETED",
 "last_updated_at": "2023-02-27T03:59:48.800645-05:00",
 "partner_name": "equifax",
 "product_invocation_id": "01GT91JJZRZ5ZNP7Y6V63527T7",
 "product_name": "asset"
 },
 "data": {
 "addresses": [
 {
 "has_address_line_1_text": {
 "has_value": "33 IRVING PLACE"
 },
 "has_state_code": {
 "has_value": "NY"
 },
 "@type": "address",
 "@id": "01GSTGGYHKZHHPT1584CVA5KGC2",
 "has_country_name": {
 "has_value": "US"
 },
 "has_postal_code": {
 "has_value": "10003"
 },
 "has_city_name": {
 "has_value": "NEW YORK"
 }
 }
 ],
 "assets": [
 {
 "has_asset_description": {
 "has_value": "Savings"
 },
 "held_by_financial_institution": [
 "01GSTGGYHJKKMFF8SR5SWT2BSW"
 ],
 "has_asset_type": {
 "has_value": "checking_account"
 },
 "has_asset_account_identifier": {
 "has_value": "xxxx5179"
 },
 "@type": "asset",
 "has_asset_type_other_description": {
 "has_value": "SavingsAccount"
 },
 "has_market_value_amount": {
 "has_value": 145461
 },
 "with_currency": [
 "01GSTGGYHKJCK0894E090RRKRN"
 ],
 "with_transaction": [
 "01GSTGGYHM0TRDWTR6MRS58T0N7",
 "01GSTGGYHKX04NE6K95S2TW23G",
 "01GSTGGYHKWZ3M3KHASKVSMMF0",
 "01GSTGGYHJYFHWST887CKDN6G4",
 "01GSTGGYHKP21Q0PFQ57YYC894",
 "01GSTGGYHKF7QZMFJ33BCE503D2",
 "01GSTGGYHK9AX6AWAVV0X9RGA3",
 "01GSTGGYHKF7QZMFJ33BCE503D4",
 "01GSTGGYHK54PM5J42R5XJYQ80",
 "01GSTGGYHKF7QZMFJ33BCE503D6",
 "01GSTGGYHKF61EXQGFF1SM1G6F",
 "01GSTGGYHJ8HJEZ8NQMEVGNDF4",
 "01GSTGGYHKF7QZMFJ33BCE503D9",
 "01GSTGGYHK095M5E9QJXDFXZJH",
 "01GSTGGYHJF1RFZ6KPAQ90B518"
 ],
 "@id": "01GSTGGYHMDNZ99GFV5SEX88DZ",
 "with_asset_holder": [
 "01GSTGGYHJSMA28T4T9CBG6PXX"
 ]
 },
 {
 "has_asset_description": {
 "has_value": "Investment account"
 },
 "held_by_financial_institution": [
 "01GSTGGYHKZHHPT1584CVA5KGC8"
 ],
 "has_asset_type": {
 "has_value": "savings_account"
 },
 "has_asset_account_identifier": {
 "has_value": "xxxx5163"
 },
 "@type": "asset",
 "has_asset_type_other_description": {
 "has_value": "Other"
 },
 "has_market_value_amount": {
 "has_value": 150000
 },
 "with_currency": [
 "01GSTGGYHKCG4MDTTH6M5TWB0Q"
 ],
 "with_transaction": [
 "01GSTGGYHMS8DVJQY9PCJ9FVS27",
 "01GSTGGYHKNBRZ3AX4HWPCYRQX6",
 "01GSTGGYHKQT9N51Y1N5DX1531",
 "01GSTGGYHJZZNG0Q7VQFA45D2F",
 "01GSTGGYHJ8N0YRRASTTS7165B",
 "01GSTGGYHKPZWQY83CNH981MET",
 "01GSTGGYHKXJGVFCTKHRSY0DZA",
 "01GSTGGYHJH2XDM60F8MQPX54Y",
 "01GSTGGYHJCHEB67S947S5RNJG",
 "01GSTGGYHKGP2VT4AZ306NANZ3",
 "01GSTGGYHKGN61E56DTS8DD7V0",
 "01GSTGGYHJMB7VQQ67T90JNHYK",
 "01GSTGGYHKK796SGTB86NHFNA1",
 "01GSTGGYHKE9KZ8PG4MC9N3EXV",
 "01GSTGGYHMS8DVJQY9PCJ9FVS26",
 "01GSTGGYHKNBRZ3AX4HWPCYRQX2",
 "01GSTGGYHJW9FZ3V87N8HNAXBG",
 "01GSTGGYHK96X9AJG5KETFGHSQ",
 "01GSTGGYHJ9B8GBFYVB5JRSJSA",
 "01GSTGGYHJANVPKPX7KCBDCG9W"
 ],
 "@id": "01GSTGGYHMSWV0WJ3N2TVDMCVE"
 },
 {
 "has_asset_description": {
 "has_value": "Investment account"
 },
 "held_by_financial_institution": [
 "01GSTGGYHJDEJW0D48335SFS45"
 ],
 "has_asset_type": {
 "has_value": "savings_account"
 },
 "has_asset_account_identifier": {
 "has_value": "xxxx5164"
 },
 "@type": "asset",
 "has_asset_type_other_description": {
 "has_value": "Other"
 },
 "has_market_value_amount": {
 "has_value": 120000
 },
 "with_currency": [
 "01GSTGGYHK3GZXHB5DRM3257CW"
 ],
 "with_transaction": [
 "01GSTGGYHKVXT82TCRAVYBV36X",
 "01GSTGGYHKQP1AYFYN4VRS6T53",
 "01GSTGGYHM0TRDWTR6MRS58T0N",
 "01GSTGGYHKF7QZMFJ33BCE503D",
 "01GSTGGYHM8CM381DE2VB8SQZ9",
 "01GSTGGYHK3AECDYT1DB3HVMA3",
 "01GSTGGYHMJ47EG4WZ7M7B9PX3",
 "01GSTGGYHKPTGZJWK4MQYJWV80",
 "01GSTGGYHKX2EWTVS6AJBSNXX5",
 "01GSTGGYHKZHHPT1584CVA5KGC",
 "01GSTGGYHKNBRZ3AX4HWPCYRQX",
 "01GSTGGYHMS8DVJQY9PCJ9FVS2",
 "01GSTGGYHKJEAMB524ANCXG9QB",
 "01GSTGGYHKVP5Z7WTZZV292BR2",
 "01GSTGGYHMQVJK6K6GPW9YNH11",
 "01GSTGGYHJT2RFKC4PRYDDEYR9",
 "01GSTGGYHK3Q6JEA9C2DD3D1TN",
 "01GSTGGYHME0GWQGMFQZHQ9XHD",
 "01GSTGGYHKJ9E26DSE7EG305E5",
 "01GSTGGYHJHCRVP4XHQKP66BAR"
 ],
 "@id": "01GSTGGYHMEQ29W12478J6QQ6W"
 }
 ],
 "names": [
 {
 "has_last_name": {
 "has_value": "Loanseeker"
 },
 "@id": "01GSTGGYHKX2EWTVS6AJBSNXX59",
 "has_first_name": {
 "has_value": "Home"
 },
 "@type": "name"
 }
 ],
 "currency_information": [
 {
 "has_currency_code": {
 "has_value": "USD"
 },
 "@type": "currency_information",
 "@id": "01GSTGGYHKJCK0894E090RRKRN"
 },
 {
 "has_currency_code": {
 "has_value": "USD"
 },
 "@type": "currency_information",
 "@id": "01GSTGGYHK3GZXHB5DRM3257CW"
 },
 {
 "has_currency_code": {
 "has_value": "USD"
 },
 "@type": "currency_information",
 "@id": "01GSTGGYHKCG4MDTTH6M5TWB0Q"
 }
 ],
 "asset_holders": [
 {
 "with_name": [
 "01GSTGGYHKX2EWTVS6AJBSNXX59"
 ],
 "@type": "asset_holder",
 "@id": "01GSTGGYHJSMA28T4T9CBG6PXX"
 }
 ],
 "documents": [
 {
 "has_staircase_document_category_type": {
 "has_value": "partner"
 },
 "@id": "01GSTGGYHM4806MKKRTP8ZDF9E",
 "has_document_description": {
 "has_value": "Asset Verification Report prepared by Equifax"
 },
 "has_document_mime_type": {
 "has_value": "application/pdf"
 },
 "@type": "verification_of_assets"
 }
 ],
 "organizations": [
 {
 "@id": "01GSTGGYHMMJRH9F6SXAWWQEBE",
 "has_organization_identifier": {
 "has_value": "80418"
 },
 "has_organization_name": {
 "has_value": "Mortgage Activation - Test"
 },
 "@type": "lender"
 },
 {
 "has_organization_name": {
 "has_value": "Dag Site"
 },
 "@type": "financial_institution",
 "@id": "01GSTGGYHJKKMFF8SR5SWT2BSW"
 },
 {
 "has_organization_name": {
 "has_value": "Dag Site"
 },
 "@type": "financial_institution",
 "@id": "01GSTGGYHKZHHPT1584CVA5KGC8"
 },
 {
 "has_organization_name": {
 "has_value": "Dag Site"
 },
 "@type": "financial_institution",
 "@id": "01GSTGGYHJDEJW0D48335SFS45"
 }
 ],
 "contact_information": [
 {
 "has_email_address": {
 "has_value": "test.test@test.com"
 },
 "@type": "contact_information",
 "@id": "01GSTGGYHKPVBWE0BSW8GZ20BZ"
 }
 ],
 "mortgage_products": [
 {
 "has_partner_product_name": {
 "has_value": "Asset"
 },
 "has_partner_transaction_identifier": {
 "has_value": "999626929858"
 },
 "@id": "01GSTGGYHMKXPJ2N8R4ZHZZ6F7",
 "has_service_response_date": {
 "has_value": "2022-04-08"
 },
 "has_partner_name": {
 "has_value": "Equifax"
 },
 "@type": "asset"
 }
 ],
 "transactions": [
 {
 "has_transaction_amount": {
 "has_value": 2267
 },
 "@id": "01GSTGGYHKQP1AYFYN4VRS6T53",
 "has_transaction_description": {
 "has_value": "ACH Transfer VANGUARD"
 },
 "has_transaction_date": {
 "has_value": "2022-02-27"
 },
 "@type": "asset_transaction"
 },
 {
 "has_transaction_amount": {
 "has_value": 2000
 },
 "@id": "01GSTGGYHKF7QZMFJ33BCE503D2",
 "has_transaction_description": {
 "has_value": "Web Authorized Pmt Recur XXXXXX1301"
 },
 "has_transaction_date": {
 "has_value": "2022-02-13"
 },
 "@type": "asset_transaction"
 },
 {
 "has_transaction_amount": {
 "has_value": 3105
 },
 "@id": "01GSTGGYHKVXT82TCRAVYBV36X",
 "has_transaction_description": {
 "has_value": "ACH Transfer FIDELITY"
 },
 "has_transaction_date": {
 "has_value": "2022-04-05"
 },
 "@type": "asset_transaction"
 },
 {
 "has_transaction_amount": {
 "has_value": 3583
 },
 "@id": "01GSTGGYHJH2XDM60F8MQPX54Y",
 "has_transaction_description": {
 "has_value": "ACH Transfer VANGUARD"
 },
 "has_transaction_date": {
 "has_value": "2022-03-29"
 },
 "@type": "asset_transaction"
 },
 {
 "has_transaction_amount": {
 "has_value": 817
 },
 "@id": "01GSTGGYHK96X9AJG5KETFGHSQ",
 "has_transaction_description": {
 "has_value": "ACH Transfer FIDELITY"
 },
 "has_transaction_date": {
 "has_value": "2022-04-03"
 },
 "@type": "asset_transaction"
 },
 {
 "has_transaction_amount": {
 "has_value": 90
 },
 "@id": "01GSTGGYHK54PM5J42R5XJYQ80",
 "has_transaction_description": {
 "has_value": "Web Authorized Pmt Ref No XXXXX7229 Leaky Couldron"
 },
 "has_transaction_date": {
 "has_value": "2022-03-13"
 },
 "@type": "asset_transaction"
 },
 {
 "has_transaction_amount": {
 "has_value": 4396
 },
 "@id": "01GSTGGYHKNBRZ3AX4HWPCYRQX2",
 "has_transaction_description": {
 "has_value": "ACH Transfer FIDELITY"
 },
 "has_transaction_date": {
 "has_value": "2022-02-22"
 },
 "@type": "asset_transaction"
 },
 {
 "has_transaction_amount": {
 "has_value": 985
 },
 "@id": "01GSTGGYHKXJGVFCTKHRSY0DZA",
 "has_transaction_description": {
 "has_value": "ACH Transfer FIDELITY"
 },
 "has_transaction_date": {
 "has_value": "2022-02-19"
 },
 "@type": "asset_transaction"
 },
 {
 "has_transaction_amount": {
 "has_value": 2000
 },
 "@id": "01GSTGGYHK095M5E9QJXDFXZJH",
 "has_transaction_description": {
 "has_value": "Web Authorized Pmt Recur PaymentRec Car loan XXXXXXXXX4354"
 },
 "has_transaction_date": {
 "has_value": "2022-02-09"
 },
 "@type": "asset_transaction"
 },
 {
 "has_transaction_amount": {
 "has_value": 3105
 },
 "@id": "01GSTGGYHKGP2VT4AZ306NANZ3",
 "has_transaction_description": {
 "has_value": "ACH Transfer FIDELITY"
 },
 "has_transaction_date": {
 "has_value": "2022-04-05"
 },
 "@type": "asset_transaction"
 },
 {
 "has_transaction_amount": {
 "has_value": 4000
 },
 "@id": "01GSTGGYHKWZ3M3KHASKVSMMF0",
 "has_transaction_description": {
 "has_value": "Direct deposit - Ministry Of Magic XXXXXXXXXX9938LWV"
 },
 "has_transaction_date": {
 "has_value": "2022-03-29"
 },
 "@type": "asset_transaction"
 },
 {
 "has_transaction_amount": {
 "has_value": 3932
 },
 "@id": "01GSTGGYHKX2EWTVS6AJBSNXX5",
 "has_transaction_description": {
 "has_value": "ACH Transfer FIDELITY"
 },
 "has_transaction_date": {
 "has_value": "2022-03-02"
 },
 "@type": "asset_transaction"
 },
 {
 "has_transaction_amount": {
 "has_value": 2267
 },
 "@id": "01GSTGGYHKPZWQY83CNH981MET",
 "has_transaction_description": {
 "has_value": "ACH Transfer VANGUARD"
 },
 "has_transaction_date": {
 "has_value": "2022-02-27"
 },
 "@type": "asset_transaction"
 },
 {
 "has_transaction_amount": {
 "has_value": 424
 },
 "@id": "01GSTGGYHKNBRZ3AX4HWPCYRQX",
 "has_transaction_description": {
 "has_value": "ACH Transfer FIDELITY"
 },
 "has_transaction_date": {
 "has_value": "2022-03-11"
 },
 "@type": "asset_transaction"
 },
 {
 "has_transaction_amount": {
 "has_value": 3583
 },
 "@id": "01GSTGGYHMJ47EG4WZ7M7B9PX3",
 "has_transaction_description": {
 "has_value": "ACH Transfer VANGUARD"
 },
 "has_transaction_date": {
 "has_value": "2022-03-29"
 },
 "@type": "asset_transaction"
 },
 {
 "has_transaction_amount": {
 "has_value": 209
 },
 "@id": "01GSTGGYHMQVJK6K6GPW9YNH11",
 "has_transaction_description": {
 "has_value": "ACH Transfer FIDELITY"
 },
 "has_transaction_date": {
 "has_value": "2022-02-25"
 },
 "@type": "asset_transaction"
 },
 {
 "has_transaction_amount": {
 "has_value": 4187
 },
 "@id": "01GSTGGYHK3Q6JEA9C2DD3D1TN",
 "has_transaction_description": {
 "has_value": "ACH Transfer FIDELITY"
 },
 "has_transaction_date": {
 "has_value": "2022-04-06"
 },
 "@type": "asset_transaction"
 },
 {
 "has_transaction_amount": {
 "has_value": 2000
 },
 "@id": "01GSTGGYHKP21Q0PFQ57YYC894",
 "has_transaction_description": {
 "has_value": "Web Authorized Pmt RecurPaymentRec XXXXXX1202"
 },
 "has_transaction_date": {
 "has_value": "2022-02-12"
 },
 "@type": "asset_transaction"
 },
 {
 "has_transaction_amount": {
 "has_value": 80
 },
 "@id": "01GSTGGYHK9AX6AWAVV0X9RGA3",
 "has_transaction_description": {
 "has_value": "Web Authorized Pmt Ref No XXXXX7228 Leaky Couldron"
 },
 "has_transaction_date": {
 "has_value": "2022-03-05"
 },
 "@type": "asset_transaction"
 },
 {
 "has_transaction_amount": {
 "has_value": 4187
 },
 "@id": "01GSTGGYHKNBRZ3AX4HWPCYRQX6",
 "has_transaction_description": {
 "has_value": "ACH Transfer FIDELITY"
 },
 "has_transaction_date": {
 "has_value": "2022-04-06"
 },
 "@type": "asset_transaction"
 },
 {
 "has_transaction_amount": {
 "has_value": 43
 },
 "@id": "01GSTGGYHKF7QZMFJ33BCE503D",
 "has_transaction_description": {
 "has_value": "ACH Transfer VANGUARD"
 },
 "has_transaction_date": {
 "has_value": "2022-03-31"
 },
 "@type": "asset_transaction"
 },
 {
 "has_transaction_amount": {
 "has_value": 4186
 },
 "@id": "01GSTGGYHJ9B8GBFYVB5JRSJSA",
 "has_transaction_description": {
 "has_value": "ACH Transfer FIDELITY"
 },
 "has_transaction_date": {
 "has_value": "2022-04-08"
 },
 "@type": "asset_transaction"
 },
 {
 "has_transaction_amount": {
 "has_value": 2000
 },
 "@id": "01GSTGGYHKF7QZMFJ33BCE503D9",
 "has_transaction_description": {
 "has_value": "Web Authorized Pmt RecurPaymentRec XXXXXX1202"
 },
 "has_transaction_date": {
 "has_value": "2022-02-12"
 },
 "@type": "asset_transaction"
 },
 {
 "has_transaction_amount": {
 "has_value": 70
 },
 "@id": "01GSTGGYHJF1RFZ6KPAQ90B518",
 "has_transaction_description": {
 "has_value": "Web Authorized Pmt Ref No XXXXX7227 Leaky Couldron"
 },
 "has_transaction_date": {
 "has_value": "2022-02-25T00:00:00.000Z"
 },
 "@type": "asset_transaction"
 },
 {
 "has_transaction_amount": {
 "has_value": 817
 },
 "@id": "01GSTGGYHKVP5Z7WTZZV292BR2",
 "has_transaction_description": {
 "has_value": "ACH Transfer FIDELITY"
 },
 "has_transaction_date": {
 "has_value": "2022-04-03"
 },
 "@type": "asset_transaction"
 },
 {
 "has_transaction_amount": {
 "has_value": 2403
 },
 "@id": "01GSTGGYHKPTGZJWK4MQYJWV80",
 "has_transaction_description": {
 "has_value": "ACH Transfer FIDELITY"
 },
 "has_transaction_date": {
 "has_value": "2022-04-04"
 },
 "@type": "asset_transaction"
 },
 {
 "has_transaction_amount": {
 "has_value": 800
 },
 "@id": "01GSTGGYHJ8HJEZ8NQMEVGNDF4",
 "has_transaction_description": {
 "has_value": "Web Authorized Pmt Recur PaymentRec Disney Hotstar XXXXXXXXXX5455"
 },
 "has_transaction_date": {
 "has_value": "2022-02-07"
 },
 "@type": "asset_transaction"
 },
 {
 "has_transaction_amount": {
 "has_value": 1846
 },
 "@id": "01GSTGGYHKGN61E56DTS8DD7V0",
 "has_transaction_description": {
 "has_value": "ACH Transfer FIDELITY"
 },
 "has_transaction_date": {
 "has_value": "2022-03-25"
 },
 "@type": "asset_transaction"
 },
 {
 "has_transaction_amount": {
 "has_value": 2049
 },
 "@id": "01GSTGGYHM8CM381DE2VB8SQZ9",
 "has_transaction_description": {
 "has_value": "ACH Transfer FIDELITY"
 },
 "has_transaction_date": {
 "has_value": "2022-04-07"
 },
 "@type": "asset_transaction"
 },
 {
 "has_transaction_amount": {
 "has_value": 50
 },
 "@id": "01GSTGGYHJYFHWST887CKDN6G4",
 "has_transaction_description": {
 "has_value": "Direct deposit - Ministry Of Magic XXXXXXXXXX9938LWV"
 },
 "has_transaction_date": {
 "has_value": "2022-02-17"
 },
 "@type": "asset_transaction"
 },
 {
 "has_transaction_amount": {
 "has_value": 450
 },
 "@id": "01GSTGGYHKX04NE6K95S2TW23G",
 "has_transaction_description": {
 "has_value": "Cash Withdrawal XX/XX XX:XXp"
 },
 "has_transaction_date": {
 "has_value": "2022-04-06"
 },
 "@type": "asset_transaction"
 },
 {
 "has_transaction_amount": {
 "has_value": 210
 },
 "@id": "01GSTGGYHKF61EXQGFF1SM1G6F",
 "has_transaction_description": {
 "has_value": "Web Authorized Pmt Ref No XXXXX7230 Leaky Couldron"
 },
 "has_transaction_date": {
 "has_value": "2022-03-21"
 },
 "@type": "asset_transaction"
 },
 {
 "has_transaction_amount": {
 "has_value": 43
 },
 "@id": "01GSTGGYHJZZNG0Q7VQFA45D2F",
 "has_transaction_description": {
 "has_value": "ACH Transfer VANGUARD"
 },
 "has_transaction_date": {
 "has_value": "2022-03-31"
 },
 "@type": "asset_transaction"
 },
 {
 "has_transaction_amount": {
 "has_value": 3932
 },
 "@id": "01GSTGGYHKK796SGTB86NHFNA1",
 "has_transaction_description": {
 "has_value": "ACH Transfer FIDELITY"
 },
 "has_transaction_date": {
 "has_value": "2022-03-02"
 },
 "@type": "asset_transaction"
 },
 {
 "has_transaction_amount": {
 "has_value": 2000
 },
 "@id": "01GSTGGYHM0TRDWTR6MRS58T0N7",
 "has_transaction_description": {
 "has_value": "Web Authorized Pmt RecurPaymentRec XXXXXX1102"
 },
 "has_transaction_date": {
 "has_value": "2022-02-11"
 },
 "@type": "asset_transaction"
 },
 {
 "has_transaction_amount": {
 "has_value": 3490
 },
 "@id": "01GSTGGYHJANVPKPX7KCBDCG9W",
 "has_transaction_description": {
 "has_value": "ACH Transfer FIDELITY"
 },
 "has_transaction_date": {
 "has_value": "2022-03-22"
 },
 "@type": "asset_transaction"
 },
 {
 "has_transaction_amount": {
 "has_value": 1338
 },
 "@id": "01GSTGGYHMS8DVJQY9PCJ9FVS2",
 "has_transaction_description": {
 "has_value": "ACH Transfer FIDELITY"
 },
 "has_transaction_date": {
 "has_value": "2022-03-08"
 },
 "@type": "asset_transaction"
 },
 {
 "has_transaction_amount": {
 "has_value": 3490
 },
 "@id": "01GSTGGYHJT2RFKC4PRYDDEYR9",
 "has_transaction_description": {
 "has_value": "ACH Transfer FIDELITY"
 },
 "has_transaction_date": {
 "has_value": "2022-03-22"
 },
 "@type": "asset_transaction"
 },
 {
 "has_transaction_amount": {
 "has_value": 2000
 },
 "@id": "01GSTGGYHKF7QZMFJ33BCE503D4",
 "has_transaction_description": {
 "has_value": "Web Authorized Pmt RecurPaymentRec XXXXXX1101"
 },
 "has_transaction_date": {
 "has_value": "2022-02-11"
 },
 "@type": "asset_transaction"
 },
 {
 "has_transaction_amount": {
 "has_value": 2000
 },
 "@id": "01GSTGGYHKF7QZMFJ33BCE503D6",
 "has_transaction_description": {
 "has_value": "Web Authorized Pmt Recur XXXXXX1302"
 },
 "has_transaction_date": {
 "has_value": "2022-02-13"
 },
 "@type": "asset_transaction"
 },
 {
 "has_transaction_amount": {
 "has_value": 209
 },
 "@id": "01GSTGGYHJCHEB67S947S5RNJG",
 "has_transaction_description": {
 "has_value": "ACH Transfer FIDELITY"
 },
 "has_transaction_date": {
 "has_value": "2022-02-25"
 },
 "@type": "asset_transaction"
 },
 {
 "has_transaction_amount": {
 "has_value": 4662
 },
 "@id": "01GSTGGYHK3AECDYT1DB3HVMA3",
 "has_transaction_description": {
 "has_value": "ACH Transfer VANGUARD"
 },
 "has_transaction_date": {
 "has_value": "2022-02-28"
 },
 "@type": "asset_transaction"
 },
 {
 "has_transaction_amount": {
 "has_value": 2403
 },
 "@id": "01GSTGGYHKE9KZ8PG4MC9N3EXV",
 "has_transaction_description": {
 "has_value": "ACH Transfer FIDELITY"
 },
 "has_transaction_date": {
 "has_value": "2022-04-04"
 },
 "@type": "asset_transaction"
 },
 {
 "has_transaction_amount": {
 "has_value": 3510
 },
 "@id": "01GSTGGYHJW9FZ3V87N8HNAXBG",
 "has_transaction_description": {
 "has_value": "ACH Transfer FIDELITY"
 },
 "has_transaction_date": {
 "has_value": "2022-04-02"
 },
 "@type": "asset_transaction"
 },
 {
 "has_transaction_amount": {
 "has_value": 1846
 },
 "@id": "01GSTGGYHJHCRVP4XHQKP66BAR",
 "has_transaction_description": {
 "has_value": "ACH Transfer FIDELITY"
 },
 "has_transaction_date": {
 "has_value": "2022-03-25"
 },
 "@type": "asset_transaction"
 },
 {
 "has_transaction_amount": {
 "has_value": 4186
 },
 "@id": "01GSTGGYHKJEAMB524ANCXG9QB",
 "has_transaction_description": {
 "has_value": "ACH Transfer FIDELITY"
 },
 "has_transaction_date": {
 "has_value": "2022-04-08"
 },
 "@type": "asset_transaction"
 },
 {
 "has_transaction_amount": {
 "has_value": 1338
 },
 "@id": "01GSTGGYHJMB7VQQ67T90JNHYK",
 "has_transaction_description": {
 "has_value": "ACH Transfer FIDELITY"
 },
 "has_transaction_date": {
 "has_value": "2022-03-08"
 },
 "@type": "asset_transaction"
 },
 {
 "has_transaction_amount": {
 "has_value": 985
 },
 "@id": "01GSTGGYHME0GWQGMFQZHQ9XHD",
 "has_transaction_description": {
 "has_value": "ACH Transfer FIDELITY"
 },
 "has_transaction_date": {
 "has_value": "2022-02-19"
 },
 "@type": "asset_transaction"
 },
 {
 "has_transaction_amount": {
 "has_value": 2608
 },
 "@id": "01GSTGGYHMS8DVJQY9PCJ9FVS26",
 "has_transaction_description": {
 "has_value": "ACH Transfer VANGUARD"
 },
 "has_transaction_date": {
 "has_value": "2022-02-15"
 },
 "@type": "asset_transaction"
 },
 {
 "has_transaction_amount": {
 "has_value": 424
 },
 "@id": "01GSTGGYHMS8DVJQY9PCJ9FVS27",
 "has_transaction_description": {
 "has_value": "ACH Transfer FIDELITY"
 },
 "has_transaction_date": {
 "has_value": "2022-03-11"
 },
 "@type": "asset_transaction"
 },
 {
 "has_transaction_amount": {
 "has_value": 2049
 },
 "@id": "01GSTGGYHJ8N0YRRASTTS7165B",
 "has_transaction_description": {
 "has_value": "ACH Transfer FIDELITY"
 },
 "has_transaction_date": {
 "has_value": "2022-04-07"
 },
 "@type": "asset_transaction"
 },
 {
 "has_transaction_amount": {
 "has_value": 4662
 },
 "@id": "01GSTGGYHKQT9N51Y1N5DX1531",
 "has_transaction_description": {
 "has_value": "ACH Transfer VANGUARD"
 },
 "has_transaction_date": {
 "has_value": "2022-02-28"
 },
 "@type": "asset_transaction"
 },
 {
 "has_transaction_amount": {
 "has_value": 2608
 },
 "@id": "01GSTGGYHKZHHPT1584CVA5KGC",
 "has_transaction_description": {
 "has_value": "ACH Transfer VANGUARD"
 },
 "has_transaction_date": {
 "has_value": "2022-02-15"
 },
 "@type": "asset_transaction"
 },
 {
 "has_transaction_amount": {
 "has_value": 4396
 },
 "@id": "01GSTGGYHKJ9E26DSE7EG305E5",
 "has_transaction_description": {
 "has_value": "ACH Transfer FIDELITY"
 },
 "has_transaction_date": {
 "has_value": "2022-02-22"
 },
 "@type": "asset_transaction"
 },
 {
 "has_transaction_amount": {
 "has_value": 3510
 },
 "@id": "01GSTGGYHM0TRDWTR6MRS58T0N",
 "has_transaction_description": {
 "has_value": "ACH Transfer FIDELITY"
 },
 "has_transaction_date": {
 "has_value": "2022-04-02"
 },
 "@type": "asset_transaction"
 }
 ],
 "people": [
 {
 "contact_at": [
 "01GSTGGYHKPVBWE0BSW8GZ20BZ"
 ],
 "has_taxpayer_identifier_value": {
 "has_value": "000000001"
 },
 "@type": "borrower",
 "has_birth_date": {
 "has_value": "1970-07-04"
 },
 "with_address": [
 "01GSTGGYHKZHHPT1584CVA5KGC2"
 ],
 "has_last_name": {
 "has_value": "Jackson"
 },
 "@id": "000000001",
 "has_first_name": {
 "has_value": "John"
 }
 }
 ]
 }
}
```

<!--/source-->

<!--source:api-specifications-->
application/json Copy Request data failed validation

```
{
 "message": "{'data': ['Missing data for required field.']}"
}
```

<!--/source-->

<!--source:api-specifications-->
application/json Copy 403 invalid error

```
{
 "message": "Please check the key you used to call this service",
 "url": "https://api.staircase.co/docs/api-reference/customer-account-manager-service.yml/paths/~1products~1refresh/post"
}
```

<!--/source-->

<!--source:api-specifications-->
text/html Copy Resource not found

```
<html>\r\n<head><title>400 Bad Request</title></head>\r\n<body>\r\n<center><h1>400 Bad Request</h1></center>\r\n</body>\r\n</html>\r\n
```

<!--/source-->

<!--source:api-specifications-->
application/json Copy Internal server error

```
{
 "message": "The product has encountered an internal server error. If you have used a transaction_id to call our services, please submit it to Staircase support"
}
```

<!--/source-->

##### Parameters

<!--source:api-specifications-->
2
<!--/source-->

| Parameter | Type | Example | Description |
| --- | --- | --- | --- |
| `x-api-key` required | `string` header | `xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx` | <!--source:api-specifications-->Environment API Key.<!--/source--> |
| `id` required | `string (Staircase Response Collection Identifier)` path | `01FFMHWSS346W9V6HZVGSEZPQ` | <!--source:api-specifications-->Asset Reverification ID<!--/source--> |

##### Response `200``application/json`

<!--source:api-specifications-->
4 fields
<!--/source-->
<!--source:api-specifications-->
Successfully returned result of the Asset Reverification.
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `transaction_id` | `string (ulid)` | <!--source:api-specifications-->Transaction ID.<!--/source-->Example `01EZQ32PJQGKRA6HR8D72Q9FFF` |
| `collection_id` | `string (ulid)` | <!--source:api-specifications-->Collection ID.<!--/source-->Example `01EZQ32PJQGKRA6HR8D72Q9FFF` |
| `data` | `object` | <!--source:api-specifications-->Asset Data in Staircase language schema.<!--/source--> |
| `metadata` | `object` | <!--source:api-specifications-->Metadata about collection, f.e version of used Staircase schema.<!--/source--> |
| `product_name` | `string` | <!--source:api-specifications-->Product name<!--/source-->Example `asset` |
| `partner_name` | `string` | <!--source:api-specifications-->Partner name<!--/source-->Example `equifax` |
| `created_at` | `string` | <!--source:api-specifications-->Time of creation<!--/source--> |
| `last_updated_at` | `string` | <!--source:api-specifications-->Time of last update<!--/source--> |
| `invocation_status` | `string` | <!--source:api-specifications-->Status of the Asset Reverification.<!--/source-->`COMPLETED``FAILED``RUNNING``STARTED` |

##### Response `400``application/json`

<!--source:api-specifications-->
1 fields
<!--/source-->
<!--source:api-specifications-->
Request data failed validation
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `message` | `one of` | <!--source:api-specifications-->Message<!--/source--> |

##### Response `403``application/json`

<!--source:api-specifications-->
2 fields
<!--/source-->
<!--source:api-specifications-->
403 invalid error
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `message` | `string` | <!--source:api-specifications-->Error message.<!--/source--> |
| `url` | `string` | <!--source:api-specifications-->Error additional URL.<!--/source--> |

##### Response `404``application/json`

<!--source:api-specifications-->
1 fields
<!--/source-->
<!--source:api-specifications-->
Resource not found
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `message` | `string` | <!--source:api-specifications-->Message<!--/source--> |

##### Response `500``application/json`

<!--source:api-specifications-->
1 fields
<!--/source-->
<!--source:api-specifications-->
Internal server error
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `message` | `string` | <!--source:api-specifications-->Error message.<!--/source--> |

<!--source:api-specifications-->

### Status Check
<!--/source-->

`POST` `/status`

<!--source:api-specifications-->

#### Create Status Check Query
<!--/source-->

`InvokeAssetRetrieveStatusFlow`

<!--source:api-specifications-->
Asset Create Status Check
<!--/source-->

<!--source:api-specifications-->
This endpoint allows creating status check query of asset verification or reverification. Please find various request examples at Request Body section.

#### Request Payload

In order to invoke asset status check, add partner name in `partner_name` field and provide the following information in `request_data`:

You need to create `staircase_collection_reference` array in your request collection with the following information:

Show the rest
- collection identifier (Asset invocation identifier)

In case of invalid request data, you will receive 400 status code with information about missing field.

##### Mock Request

If you want to test the system and see possible check status results without invoking real asset status check you can do mock request instead. Create payload as described in Request Payload section above but use following Invocation ID's for different scenarios.

| Invocation ID | Mock Scenario |
| --- | --- |
| 00XXXXXXXXXXXXXXXXXXXXXX01 | Success Scenario |
| 00XXXXXXXXXXXXXXXXXXXXXX02 | Asset Report not ready |
| 99XXXXXXXXXXXXXXXXXXXXXX01 | Invalid partner |
| 99XXXXXXXXXXXXXXXXXXXXXX02 | Fail Scenario |

##### Retrieving the Invocation Result

After request, endpoint returns an `id` which you can poll for its status using verification/asset/status/{id} endpoint. If you would rather receive a callback once the invocation is completed instead of polling it, you can set `callback_url` parameter in the request payload.

##### Monitoring the health of the Asset product

The Asset product is integrated with the Health product, a cloud-based DevOps service that monitors the health of APIs. With the help of Health product, you can monitor the process of status check.

To check the health of the asset product, you can use the create async health query execution API. This API allows you to specify a time period, a response collection ID ("id" returned as result of asset invocation), and a product or API identifier.

Here are the relevant product and API identifiers for the Asset product:

- Asset Product Identifier: 48597cc5-c7d6-4856-9243-6fb4819d96e0
- Asset Check Status API ID: 09685d7b-3838-4ed9-a9fb-d98c1ea4926c

To check the health after submitting a new asset status check request, you can use the following request payload:

```
{
 "start_date": "2023-01-28T00:00:00",
 "end_date": "2023-12-29T23:59:59",
 "response_collection_id": "01GNPTVCE9E737Y7HFEK9QKQRV",
 "product_identifier": "48597cc5-c7d6-4856-9243-6fb4819d96e0",
 "product_api_identifier": "09685d7b-3838-4ed9-a9fb-d98c1ea4926c",
}
```

To check the overall health of your asset invocation, you can use the following request payload:

```
{
 "start_date": "2023-01-28T00:00:00",
 "end_date": "2023-12-29T23:59:59",
 "response_collection_id": "01GNPTVCE9E737Y7HFEK9QKQRV",
 "product_identifier": "48597cc5-c7d6-4856-9243-6fb4819d96e0"
}
```

To retrieve the results of your health query, use the get async health query result API. This API takes the query execution ID returned by the create async health query execution API as a parameter.

When you retrieve the results of your health query, you should see at least one health metric with corresponding status information (e.g. "SUCCEEDED", "FAILED").

###### Setting up alarms

You can set up alarms to be notified when the health of the asset product. To do this, use the create_health_alarm API. This API allows you to specify a threshold value and a notification method.

<!--/source-->

##### Request

<!--source:api-specifications-->
Status Check requestStatus check request with callback url
<!--/source-->

<!--source:api-specifications-->
application/json Copy
```
{
 "partner_name": "partner_name",
 "request_data": {
 "staircase_collection_reference": [
 {
 "has_collection_identifier": {
 "has_value": "00XXXXXXXXXXXXXXXXXXXXXX01"
 }
 }
 ]
 }
}
```

<!--/source-->

<!--source:api-specifications-->
application/json Copy
```
{
 "partner_name": "partner_name",
 "callback_url": "url",
 "request_data": {
 "staircase_collection_reference": [
 {
 "has_collection_identifier": {
 "has_value": "00XXXXXXXXXXXXXXXXXXXXXX01"
 }
 }
 ]
 }
}
```

<!--/source-->

##### Response

<!--source:api-specifications-->
201400403404500
<!--/source-->

<!--source:api-specifications-->
application/json Copy Successfully started flow invocation.

```
{
 "id": "01F6NAQ4894HPMCBGB4P0G78HG"
}
```

<!--/source-->

<!--source:api-specifications-->
application/json Copy Request data failed validation

```
{
 "message": "{'data': ['Missing data for required field.']}"
}
```

<!--/source-->

<!--source:api-specifications-->
application/json Copy 403 invalid error

```
{
 "message": "Please check the key you used to call this service",
 "url": "https://api.staircase.co/docs/api-reference/customer-account-manager-service.yml/paths/~1products~1refresh/post"
}
```

<!--/source-->

<!--source:api-specifications-->
text/html Copy Resource not found

```
<html>\r\n<head><title>400 Bad Request</title></head>\r\n<body>\r\n<center><h1>400 Bad Request</h1></center>\r\n</body>\r\n</html>\r\n
```

<!--/source-->

<!--source:api-specifications-->
application/json Copy Internal server error

```
{
 "message": "The product has encountered an internal server error. If you have used a transaction_id to call our services, please submit it to Staircase support"
}
```

<!--/source-->

##### Parameters

<!--source:api-specifications-->
1
<!--/source-->

| Parameter | Type | Example | Description |
| --- | --- | --- | --- |
| `x-api-key` required | `string` header | `xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx` | <!--source:api-specifications-->Environment API Key.<!--/source--> |

##### Request body`application/json`

<!--source:api-specifications-->
2 fields
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `partner_name`required | `string` | <!--source:api-specifications-->Partner name.<!--/source-->Example `equifax` |
| `request_data`required | `object` | <!--source:api-specifications-->Request data for asset status retrieval.<!--/source--> |

##### Response `201``application/json`

<!--source:api-specifications-->
1 fields
<!--/source-->
<!--source:api-specifications-->
Successfully started flow invocation.
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `id`required | `string` | <!--source:api-specifications-->Response collection ID.<!--/source--> |

##### Response `400``application/json`

<!--source:api-specifications-->
1 fields
<!--/source-->
<!--source:api-specifications-->
Request data failed validation
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `message` | `one of` | <!--source:api-specifications-->Message<!--/source--> |

##### Response `403``application/json`

<!--source:api-specifications-->
2 fields
<!--/source-->
<!--source:api-specifications-->
403 invalid error
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `message` | `string` | <!--source:api-specifications-->Error message.<!--/source--> |
| `url` | `string` | <!--source:api-specifications-->Error additional URL.<!--/source--> |

##### Response `404``application/json`

<!--source:api-specifications-->
1 fields
<!--/source-->
<!--source:api-specifications-->
Resource not found
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `message` | `string` | <!--source:api-specifications-->Message<!--/source--> |

##### Response `500``application/json`

<!--source:api-specifications-->
1 fields
<!--/source-->
<!--source:api-specifications-->
Internal server error
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `message` | `string` | <!--source:api-specifications-->Error message.<!--/source--> |

`GET` `/status/{id}`

<!--source:api-specifications-->

#### Get Asset Status Check Result
<!--/source-->

`RetrieveAssetRetrieveStatusFlowInvocationStatus`

<!--source:api-specifications-->
Retrieve Asset Status Check Result
<!--/source-->

<!--source:api-specifications-->
Retrieves the result of running Asset Retrieve Status invocation.

#### Response Body

As the result of the successful invocation you are expected to receive `statuses` and `mortgage_products` arrays.

The element of `statuses` array will include following information:

- status code
- status name
- status description

The element of `mortgage_products` array will include following information:

- partner name
- product name
- partner transaction identifier (reference number)

<!--/source-->

##### Response

<!--source:api-specifications-->
200 Success Status Example200 Fail Status Example200 Running Status Example400403404500
<!--/source-->

<!--source:api-specifications-->
application/json Copy Successfully returned result of the Asset Status Check.

```
{
 "transaction_id": "01GT91JJRFRV60T4TTEMXFZMWE",
 "collection_id": "01GT91JJZRZ5ZNP7Y6V63527T7",
 "metadata": {
 "validation": false,
 "serialise_to_graph": false,
 "created_at": "2023-02-27T03:59:36.824278-05:00",
 "invocation_status": "COMPLETED",
 "last_updated_at": "2023-02-27T03:59:48.800645-05:00",
 "partner_name": "partner_name",
 "product_invocation_id": "01GT91JJZRZ5ZNP7Y6V63527T7",
 "product_name": "asset"
 },
 "data": {
 "statuses": [
 {
 "@id": "01GV5JH3PCN6JGAZM4JAR8VJE3",
 "@type": "status",
 "has_status_code": {
 "has_value": "200"
 },
 "has_status_name": {
 "has_value": "Succeeded"
 },
 "has_status_description": {
 "has_value": "Retrieve Successful"
 }
 }
 ],
 "mortgage_products": [
 {
 "@id": "01GV5JH3PCN6JGAZM4JAR8VJE3",
 "@type": "asset",
 "has_partner_name": {
 "has_value": "partner_name"
 },
 "has_partner_product_name": {
 "has_value": "Asset"
 },
 "has_partner_transaction_identifier": {
 "has_value": "partner_transaction_identifier"
 }
 }
 ]
 }
}
```

<!--/source-->

<!--source:api-specifications-->
application/json Copy Successfully returned result of the Asset Status Check.

```
{
 "transaction_id": "01GT91JJRFRV60T4TTEMXFZMWE",
 "collection_id": "01GT91JJZRZ5ZNP7Y6V63527T7",
 "metadata": {
 "validation": false,
 "serialise_to_graph": false,
 "created_at": "2023-02-27T03:59:36.824278-05:00",
 "invocation_status": "FAILED",
 "last_updated_at": "2023-02-27T03:59:48.800645-05:00",
 "partner_name": "partner_name",
 "product_invocation_id": "01GT91JJZRZ5ZNP7Y6V63527T7",
 "product_name": "asset"
 },
 "data": {
 "statuses": [
 {
 "@id": "01GV5PR5WRXMHF55B7RT8H0XPF",
 "@type": "status",
 "has_status_code": {
 "has_value": "400"
 },
 "has_status_name": {
 "has_value": "Failed"
 },
 "has_status_description": {
 "has_value": "Something went wrong! Staircase is notified and will reach out to you."
 }
 }
 ],
 "mortgage_products": [
 {
 "@id": "01GV5PR5WRXMHF55B7RT8H0XPF",
 "@type": "asset",
 "has_partner_name": {
 "has_value": "partner_name"
 },
 "has_partner_product_name": {
 "has_value": "Asset"
 },
 "has_partner_transaction_identifier": {
 "has_value": "partner_transaction_identifier"
 }
 }
 ]
 }
}
```

<!--/source-->

<!--source:api-specifications-->
application/json Copy Successfully returned result of the Asset Status Check.

```
{
 "transaction_id": "01GT91JJRFRV60T4TTEMXFZMWE",
 "collection_id": "01GT91JJZRZ5ZNP7Y6V63527T7",
 "metadata": {
 "validation": false,
 "serialise_to_graph": false,
 "created_at": "2023-02-27T03:59:36.824278-05:00",
 "invocation_status": "COMPLETED",
 "last_updated_at": "2023-02-27T03:59:48.800645-05:00",
 "partner_name": "partner_name",
 "product_invocation_id": "01GT91JJZRZ5ZNP7Y6V63527T7",
 "product_name": "asset"
 },
 "data": {
 "statuses": [
 {
 "@id": "01GV5PR5WRXMHF55B7RT8H0XPF",
 "@type": "status",
 "has_status_code": {
 "has_value": "200"
 },
 "has_status_name": {
 "has_value": "Running"
 },
 "has_status_description": {
 "has_value": "Asset Report is not ready!"
 }
 }
 ],
 "mortgage_products": [
 {
 "@id": "01GV5JH3PCN6JGAZM4JAR8VJE3",
 "@type": "asset",
 "has_partner_name": {
 "has_value": "partner_name"
 },
 "has_partner_product_name": {
 "has_value": "Asset"
 },
 "has_partner_transaction_identifier": {
 "has_value": "partner_transaction_identifier"
 }
 }
 ]
 }
}
```

<!--/source-->

<!--source:api-specifications-->
application/json Copy Request data failed validation

```
{
 "message": "{'data': ['Missing data for required field.']}"
}
```

<!--/source-->

<!--source:api-specifications-->
application/json Copy 403 invalid error

```
{
 "message": "Please check the key you used to call this service",
 "url": "https://api.staircase.co/docs/api-reference/customer-account-manager-service.yml/paths/~1products~1refresh/post"
}
```

<!--/source-->

<!--source:api-specifications-->
text/html Copy Resource not found

```
<html>\r\n<head><title>400 Bad Request</title></head>\r\n<body>\r\n<center><h1>400 Bad Request</h1></center>\r\n</body>\r\n</html>\r\n
```

<!--/source-->

<!--source:api-specifications-->
application/json Copy Internal server error

```
{
 "message": "The product has encountered an internal server error. If you have used a transaction_id to call our services, please submit it to Staircase support"
}
```

<!--/source-->

##### Parameters

<!--source:api-specifications-->
2
<!--/source-->

| Parameter | Type | Example | Description |
| --- | --- | --- | --- |
| `x-api-key` required | `string` header | `xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx` | <!--source:api-specifications-->Environment API Key.<!--/source--> |
| `id` required | `string (Staircase Response Collection Identifier)` path | `01FFMHWSS346W9V6HZVGSEZPQ` | <!--source:api-specifications-->Asset Check Status ID<!--/source--> |

##### Response `200``application/json`

<!--source:api-specifications-->
4 fields
<!--/source-->
<!--source:api-specifications-->
Successfully returned result of the Asset Status Check.
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `transaction_id` | `string (ulid)` | <!--source:api-specifications-->Transaction ID.<!--/source-->Example `01GT91JJRFRV60T4TTEMXFZMWE` |
| `collection_id` | `string (ulid)` | <!--source:api-specifications-->Collection ID.<!--/source-->Example `01EZQ32PJQGKRA6HR8D72Q9FFF` |
| `data` | `object` | <!--source:api-specifications-->Asset Data in Staircase language schema.<!--/source--> |
| `metadata` | `object` | <!--source:api-specifications-->Metadata about collection, f.e version of used Staircase schema.<!--/source--> |
| `product_name` | `string` | <!--source:api-specifications-->Product name<!--/source-->Example `asset` |
| `partner_name` | `string` | <!--source:api-specifications-->Partner name<!--/source-->Example `equifax` |
| `created_at` | `string` | <!--source:api-specifications-->Time of creation<!--/source--> |
| `last_updated_at` | `string` | <!--source:api-specifications-->Time of last update<!--/source--> |
| `invocation_status` | `string` | <!--source:api-specifications-->Status of the Asset Status Retrieval.<!--/source-->`COMPLETED``FAILED``RUNNING``STARTED` |
| `product_invocation_id` | `string` | <!--source:api-specifications-->Product Invocation ID<!--/source-->Example `01EZQ32PJQGKRA6HR8D72Q9FFF` |

##### Response `400``application/json`

<!--source:api-specifications-->
1 fields
<!--/source-->
<!--source:api-specifications-->
Request data failed validation
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `message` | `one of` | <!--source:api-specifications-->Message<!--/source--> |

##### Response `403``application/json`

<!--source:api-specifications-->
2 fields
<!--/source-->
<!--source:api-specifications-->
403 invalid error
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `message` | `string` | <!--source:api-specifications-->Error message.<!--/source--> |
| `url` | `string` | <!--source:api-specifications-->Error additional URL.<!--/source--> |

##### Response `404``application/json`

<!--source:api-specifications-->
1 fields
<!--/source-->
<!--source:api-specifications-->
Resource not found
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `message` | `string` | <!--source:api-specifications-->Message<!--/source--> |

##### Response `500``application/json`

<!--source:api-specifications-->
1 fields
<!--/source-->
<!--source:api-specifications-->
Internal server error
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `message` | `string` | <!--source:api-specifications-->Error message.<!--/source--> |

<!--source:api-specifications-->

### Operations
<!--/source-->

`POST` `/hello-world`

<!--source:api-specifications-->

#### Hello World
<!--/source-->

<!--source:api-specifications-->
Dummy hello world endpoint

<!--/source-->

##### Other responses

`200`

`POST` `/product/products/asset/invocations`

<!--source:api-specifications-->

#### Invoke Asset Verification
<!--/source-->

`invokeAssetVerification`

##### Request body`application/json`

<!--source:api-specifications-->
3 fields
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `product_flow_name` | `string` | Example `asset-verification-mock` |
| `request_data` | `object` | — |
| `people` | `object[]` | — |
| `@id` | `string` | — |
| `@type` | `string` | Example `person` |
| `first_name` | `string` | — |
| `last_name` | `string` | — |
| `ssn` | `string` | — |
| `has_communication_method` | `string` | — |
| `communications` | `object[]` | — |
| `@id` | `string` | — |
| `@type` | `string` | Example `communication` |
| `email_address` | `string` | — |
| `vendor_name` | `string` | Example `informative_research` |

##### Response `200``application/json`

<!--source:api-specifications-->
12 fields
<!--/source-->
<!--source:api-specifications-->
Successful response
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `product_flow_name` | `string` | — |
| `metadata` | `object` | — |
| `response_collection_id` | `string` | — |
| `invocation_mode` | `string` | — |
| `widget_url` | `string` | — |
| `invocation_id` | `string` | — |
| `invocation_status` | `string` | — |
| `transaction_id` | `string` | — |
| `request_collection_id` | `string` | — |
| `request_data` | `object` | — |
| `api_id` | `string` | — |
| `_links` | `object` | — |
| `health_metrics` | `string` | — |

##### Other responses

`400``401``500`

`GET` `/product/products/asset/invocations/{invocation_id}`

<!--source:api-specifications-->

#### Retrieve Asset Verification Information
<!--/source-->

`getAssetVerificationInfo`

##### Parameters

<!--source:api-specifications-->
1
<!--/source-->

| Parameter | Type | Description |
| --- | --- | --- |
| `invocation_id` required | `string` path | <!--source:api-specifications-->The ID of the asset verification invocation to retrieve.<!--/source--> |

##### Response `200``application/json`

<!--source:api-specifications-->
12 fields
<!--/source-->
<!--source:api-specifications-->
Successful response
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `invocation_id` | `string` | — |
| `transaction_id` | `string` | — |
| `product_flow_name` | `string` | — |
| `response_collection_id` | `string` | — |
| `invocation_status` | `string` | — |
| `widget_url` | `string` | — |
| `metadata` | `object` | — |
| `options` | `object` | — |
| `service_invocation` | `object` | — |
| `response_collection` | `object` | — |
| `data` | `object` | — |
| `metadata` | `object` | — |
| `transaction_id` | `string` | — |
| `collection_id` | `string` | — |
| `flows_responses` | `object` | — |
| `_links` | `object` | — |
| `health_metrics` | `string` | — |

##### Other responses

`400``401``404``500`

## Providers

1. Equifax
1. Finicity
1. Plaid

## Field mapping

| Provider | Flow | Canonical in | Vendor in | Vendor out | Canonical out |
| --- | --- | --- | --- | --- | --- |
| Plaid | `asset` | `staircase-graph` | `asset-input` | `asset-plaid-output` | `staircase-graph` |

## Errors

`400``401``403``404``405``422``500``502`

## More in Verification

- Next product: Credit
