<!-- https://staircase.co/products/adapters/los -->
# LOS

# LOS

The origination-system adapter, in its Adapters listing: the connective layer beneath every product that touches the loan file.

This is the same slot as LOS under Integration, carried in both categories because the source catalogue lists it in both. The Integration listing is the vendor-facing view; this one is the platform-facing view.

What sits here is the read and write path into the loan file: a product asks the adapter for the loan, works in canonical classes, and writes back through the same layer.

## Dual listing

LOS is filed under two categories. The other listing is LOS under Integration
<!--source:api-specifications-->
, and the recorded specifications resolve there — its 10 operations render on that page.
<!--/source-->

## Operations

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

### Byte Service Application
<!--/source-->

`POST` `/job/jobs/los-byte-VOI/executions`

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

#### Income Service Application
<!--/source-->

`byteIncomeAutomation`

<!--source:api-specifications-->
Invoke Income Verification
<!--/source-->

<!--source:api-specifications-->
Income Service Application You can start an Income Verification for a loan in Byte using this endpoint. This endpoint takes file_data_id which is the file id in Byte.

<!--/source-->

##### Request

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

<!--/source-->

##### Response

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

<!--source:api-specifications-->
application/json Copy Income Verification Triggered Successfully

```
{
 "execution_id": "01FDYNKEP7DRV8HAE4X6J580NP"
}
```

<!--/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 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-->
1 fields
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `file_data_id`required | `string` | <!--source:api-specifications-->Byte File ID<!--/source--> |

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

<!--source:api-specifications-->
1 fields
<!--/source-->
<!--source:api-specifications-->
Income Verification Triggered Successfully
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `execution_id` | `string` | <!--source:api-specifications-->Execution 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-->
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
<!--/source-->

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

##### Other responses

`404`

`GET` `/job/jobs/los-byte-VOI/{execution_id}`

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

#### Retrieve Execution Status
<!--/source-->

`retrieveByteIncomeExecutionStatus`

<!--source:api-specifications-->
Retrieve Adapter Invocation Response
<!--/source-->

<!--source:api-specifications-->
Retrieves Execution Status

<!--/source-->

##### Response

<!--source:api-specifications-->
201 Get Execution Detail Succeeded201 Get Execution Detail Failed400403
<!--/source-->

<!--source:api-specifications-->
application/json Copy Successfully finished execution.

```
{
 "status": "SUCCEEDED",
 "start_time": "2021-08-11T17:06:47.000Z",
 "stop_time": "2021-08-11T17:07:40.000Z",
 "health_logs_url": "https://documentation.staircaseapi.com/code-health-checker/metric/01FDCEJT790J22PY13MCP0B90K"
}
```

<!--/source-->

<!--source:api-specifications-->
application/json Copy Successfully finished execution.

```
{
 "status": "FAILED",
 "start_time": "2021-08-11T15:54:47.000Z",
 "stop_time": "2021-08-11T15:54:59.000Z",
 "health_logs_url": "https://documentation.staircaseapi.com/code-health-checker/metric/01FDCEJT790J22PY13MCP0B90K"
}
```

<!--/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-->

##### 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--> |
| `execution_id` required | `string (ulid)` path | `01FEK8V6RT027SRAW903G97DPF` | <!--source:api-specifications-->Execution ID<!--/source--> |

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

<!--source:api-specifications-->
7 fields
<!--/source-->
<!--source:api-specifications-->
Successfully finished execution.
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `status` | `string` | <!--source:api-specifications-->Job Execution Status<!--/source-->`ABORTED``FAILED``RUNNING``SUCCEEDED``TIMED_OUT``WAIT_FOR_ACTION` |
| `start_time` | `string` | <!--source:api-specifications-->ISO 8601 format with UTC<!--/source--> |
| `stop_time` | `string` | <!--source:api-specifications-->ISO 8601 format with UTC<!--/source--> |
| `health_logs_url` | `string` | <!--source:api-specifications-->Health URL for execution<!--/source--> |
| `execution_output` | `object` | <!--source:api-specifications-->Contains status, response_payload, request_payload.<!--/source--> |
| `execution_data` | `—` | <!--source:api-specifications-->Description<!--/source--> |
| `next_token` | `string` | <!--source:api-specifications-->If next_token is returned, there are more results available.<!--/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` | — |

##### Other responses

`404`

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

### Setup
<!--/source-->

`GET` `/partners`

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

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

`getPartners`

<!--source:api-specifications-->
Get list of all LOS partners
<!--/source-->

<!--source:api-specifications-->
Retrieve Partners retrieves an object containing all active partners for LOS.

<!--/source-->

##### Response

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

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

```
[
 {
 "partner": "partner_name_1",
 "active": true,
 "status": "active"
 },
 {
 "partner": "partner_name_2",
 "active": true,
 "status": "active"
 },
 {
 "partner": "partner_name_3",
 "active": false,
 "status": "upcoming"
 }
]
```

<!--/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": "{'data': ['Missing data for required field.']}"
}
```

<!--/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--> |

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

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

| Field | Type | Description |
| --- | --- | --- |
| `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--> |
| `partner` | `string` | <!--source:api-specifications-->Partner 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-->
Invalid key for service
<!--/source-->

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

##### Response `422``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 `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` `/partners/{partner_name}/schema`

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

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

`getPartnerSchema`

<!--source:api-specifications-->
Get list of all LOS partners
<!--/source-->

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

<!--/source-->

##### Response

<!--source:api-specifications-->
200400403422500
<!--/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"
 }
 ],
 "required": [
 "key1",
 "key2"
 ],
 "properties": {
 "key1": {
 "$id": "#/properties/key1",
 "type": "string",
 "title": "Partner key1 schema",
 "description": "Partner key1",
 "default": "",
 "examples": [
 "value1"
 ]
 },
 "key2": {
 "$id": "#/properties/key2",
 "type": "string",
 "title": "Partner key2 schema",
 "description": "Partner key2",
 "default": "",
 "examples": [
 "value2"
 ]
 }
 },
 "additionalProperties": true
}
```

<!--/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": "{'data': ['Missing data for required field.']}"
}
```

<!--/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 | `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-->
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-->
1 fields
<!--/source-->
<!--source:api-specifications-->
Request data failed validation
<!--/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
<!--/source-->

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

##### Other responses

`404`

`GET` `/byte/credentials`

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

#### Get Byte Credentials
<!--/source-->

`getByteCredentials`

<!--source:api-specifications-->
Get Byte Credentials except the password

<!--/source-->

##### Response

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

<!--source:api-specifications-->
application/json Copy Byte Credentials Response

```
{
 "site_name": "YOUR Byte Site Name",
 "username": "admin",
 "Authorization Key": "YOUR Authorization Key"
}
```

<!--/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": "{'data': ['Missing data for required field.']}"
}
```

<!--/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--> |
| `credentials_type` | `string` query | `test` | <!--source:api-specifications-->Credentials type: production or test<!--/source--> |

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

<!--source:api-specifications-->
4 fields
<!--/source-->
<!--source:api-specifications-->
Byte Credentials Response
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `site_name`required | `string` | <!--source:api-specifications-->The Byte Site Name<!--/source--> |
| `username`required | `string` | <!--source:api-specifications-->The username<!--/source--> |
| `authorization_key`required | `string` | <!--source:api-specifications-->Authorization Key<!--/source--> |
| `server_url`required | `string` | <!--source:api-specifications-->Authorization 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-->
Invalid key for service
<!--/source-->

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

##### Response `422``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 `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` `/byte/credentials`

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

#### Set Byte Credentials
<!--/source-->

`setByteCredentials`

##### Request

<!--source:api-specifications-->
application/json Copy
```
{
 "site_name": "YOUR Byte Site Name",
 "username": "admin",
 "password": "------",
 "Authorization Key": "YOUR Authorization Key"
}
```

<!--/source-->

##### Response

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

<!--source:api-specifications-->
application/json Copy Create Adapter 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": "{'data': ['Missing data for required field.']}"
}
```

<!--/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-->
6 fields
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `credentials_type` | `string` | <!--source:api-specifications-->Credentials Type<!--/source-->`production``test` |
| `server_url`required | `string` | <!--source:api-specifications-->The url of Byte site<!--/source--> |
| `site_name`required | `string` | <!--source:api-specifications-->The Byte Site Name<!--/source--> |
| `username`required | `string` | <!--source:api-specifications-->The username<!--/source--> |
| `password`required | `string` | <!--source:api-specifications-->The password<!--/source--> |
| `authorization_key`required | `string` | <!--source:api-specifications-->Authorization Key<!--/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-->
1 fields
<!--/source-->
<!--source:api-specifications-->
Request data failed validation
<!--/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
<!--/source-->

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

##### Other responses

`404`

`GET` `/encompass/credentials`

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

#### Get Encompass Credentials
<!--/source-->

`getEncompassCredentials`

<!--source:api-specifications-->
Get Encompass Credentials except the password

<!--/source-->

##### Response

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

<!--source:api-specifications-->
application/json Copy Encompass Credentials Response

```
{
 "encompass_instance_id": "TEBE1234",
 "username": "admin",
 "client_id": "YOUR CLIENT ID",
 "client_secret": "<redacted>"
}
```

<!--/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": "{'data': ['Missing data for required field.']}"
}
```

<!--/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--> |

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

<!--source:api-specifications-->
4 fields
<!--/source-->
<!--source:api-specifications-->
Encompass Credentials Response
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `encompass_instance_id` | `string` | <!--source:api-specifications-->Encompass instance ID<!--/source--> |
| `username` | `string` | <!--source:api-specifications-->Username<!--/source--> |
| `client_id` | `string` | <!--source:api-specifications-->The unique identifier for the client application.<!--/source--> |
| `client_secret` | `string` | <!--source:api-specifications-->The secret for the client application.<!--/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-->
1 fields
<!--/source-->
<!--source:api-specifications-->
Request data failed validation
<!--/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
<!--/source-->

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

##### Other responses

`404`

`POST` `/encompass/credentials`

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

#### Set Encompass Credentials
<!--/source-->

`setEncompassCredentials`

<!--source:api-specifications-->
Important: You do not need to use this endpoint to use Staircase Service integrations in Encompass Applications!

Set Encompass Credentials makes our services available by securely storing your credentials in staircase systems.

#### Credentials Table

| Credential | Description | Services that need |
| --- | --- | --- |
| Encompass Instance ID | Used for setting up staircase service inside encompass | `Process Automations`,`Input Adapters`,`Output Adapters`, `Staircase Automatizations` |
| Username | Used for setting up staircase service inside encompass | `Process Automations`,`Input Adapters`,`Output Adapters`, `Staircase Automatizations` |
| Password | Used for setting up staircase service inside encompass | `Process Automations`,`Input Adapters`,`Output Adapters`,`Staircase Automatizations` |
| Client ID | Used for setting up staircase automations service inside encompass | `Input Adapters`,`Output Adapters`, `Staircase Automatizations` |
| Client Secret | Used for setting up staircase automations service inside encompass | `Input Adapters`,`Output Adapters`, `Staircase Automatizations` |

#### How to obtain Client ID and Client Secret?

You can obtain these credentials from the Encompass Developer Connect Console.

Show the rest

#### Setting up Staircase Services inside Encompass

After successfully registering your credentials, you can enable Staircase Services automatically by using Process Automations Service.

<!--/source-->

##### Request

<!--source:api-specifications-->
application/json Copy
```
{
 "encompass_instance_id": "TEBE1234",
 "username": "admin",
 "password": "------",
 "client_id": "YOUR CLIENT ID",
 "client_secret": "<redacted>"
}
```

<!--/source-->

##### Response

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

<!--source:api-specifications-->
application/json Copy Create Adapter 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": "{'data': ['Missing data for required field.']}"
}
```

<!--/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-->
5 fields
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `encompass_instance_id` | `string` | <!--source:api-specifications-->The Encompass instance ID<!--/source--> |
| `username` | `string` | <!--source:api-specifications-->The username<!--/source--> |
| `password` | `string` | <!--source:api-specifications-->The grant type must be "password" for resource owner password credentials<!--/source--> |
| `client_id` | `string` | <!--source:api-specifications-->The unique identifier for the client application. Replace <client_id> with the API client ID portion of the API key available from your Encompass Super Administrator<!--/source--> |
| `client_secret` | `string` | <!--source:api-specifications-->The secret for the client application. Replace <client_secret> with the API client secret portion of the API key available from your Encompass Super Administrator<!--/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-->
1 fields
<!--/source-->
<!--source:api-specifications-->
Request data failed validation
<!--/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
<!--/source-->

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

##### Other responses

`404`

`GET` `/encompass-epc/credentials`

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

#### Get Encompass (EPC) Credentials
<!--/source-->

`getEncompassEPCCredentials`

##### Response

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

<!--source:api-specifications-->
application/json Copy Encompass EPC Credentials Response

```
{
 "client_id": "YOUR EPC CLIENT ID",
 "client_secret": "<redacted>"
}
```

<!--/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": "{'data': ['Missing data for required field.']}"
}
```

<!--/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--> |

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

<!--source:api-specifications-->
2 fields
<!--/source-->
<!--source:api-specifications-->
Encompass EPC Credentials Response
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `client_id` | `string` | <!--source:api-specifications-->The unique identifier for the client application.<!--/source--> |
| `client_secret` | `string` | <!--source:api-specifications-->The secret for the client application.<!--/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-->
1 fields
<!--/source-->
<!--source:api-specifications-->
Request data failed validation
<!--/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
<!--/source-->

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

##### Other responses

`404`

`POST` `/encompass-epc/credentials`

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

#### Set Encompass (EPC) Credentials
<!--/source-->

`setEncompassEPCCredentials`

<!--source:api-specifications-->
EPC uses the Client Credentials grant type to give Partner products secure access to lender-owned resources. With the Client Credentials grant type, a client application sends its own credentials (its Client ID and Client Secret) to an Ellie Mae oAuth2 Identity Service endpoint that generates an access token.

In order to be able to use Staircase Service Application component for processing your EPC transactions, you need to set your credentials.

<!--/source-->

##### Request

<!--source:api-specifications-->
application/json Copy
```
{
 "client_id": "YOUR EPC CLIENT ID",
 "client_secret": "<redacted>"
}
```

<!--/source-->

##### Response

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

<!--source:api-specifications-->
application/json Copy Create Adapter 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": "{'data': ['Missing data for required field.']}"
}
```

<!--/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 |
| --- | --- | --- |
| `client_id` | `string` | <!--source:api-specifications-->The unique identifier for the client application.<!--/source--> |
| `client_secret` | `string` | <!--source:api-specifications-->The secret for the client application.<!--/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-->
1 fields
<!--/source-->
<!--source:api-specifications-->
Request data failed validation
<!--/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
<!--/source-->

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

##### Other responses

`404`

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

### Sales Boomerang Adapter
<!--/source-->

`POST` `/products/los-sales-boomerang/invocations/`

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

#### Invoke Sales Boomerang Adapter
<!--/source-->

`salesBoomerang`

<!--source:api-specifications-->
Sales Boomerang Adapter
<!--/source-->

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

#### Usage

You can send a request in two different ways:

- 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.
- Using `transaction_id` and `request_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.

#### Retrieving the Invocation Result

After invocation, endpoint returns an `invocation_id` which you can poll for its status using Retrieve Invocation Response 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.

#### Supported Staircase Products Flows

- `create_loan`
- `update_loan`
- `list_loans`
- `delete_loan`

#### How to Use Sales Boomerang Adapter with any Staircase CRM Integration

The following diagram illustrates the general overview about integration

<!--/source-->

##### Request

<!--source:api-specifications-->
Create LoanUpdate LoanDelete LoanList LoansStaircase Lexicon Example Loan Collection
<!--/source-->

<!--source:api-specifications-->
application/json Copy
```
{
 "transaction_id": "01FV0H1MPRMAF6JAHJ6BAPYF9X",
 "product_flow_name": "create_loan",
 "request_collection_id": "01FV0H1MWC9N5F71DG0W79V0H3",
 "options": {
 "credentials": {
 "api_key": "<redacted>"
 }
 }
}
```

<!--/source-->

<!--source:api-specifications-->
application/json Copy
```
{
 "transaction_id": "01FV0H1MPRMAF6JAHJ6BAPYF9X",
 "product_flow_name": "update_loan",
 "request_collection_id": "01FV0H1MWC9N5F71DG0W79V0H3",
 "options": {
 "credentials": {
 "api_key": "<redacted>"
 }
 }
}
```

<!--/source-->

<!--source:api-specifications-->
application/json Copy
```
{
 "transaction_id": "01FV0H1MPRMAF6JAHJ6BAPYF9X",
 "product_flow_name": "delete_loan",
 "request_collection_id": "01FV0H1MWC9N5F71DG0W79V0H3",
 "options": {
 "credentials": {
 "api_key": "<redacted>"
 }
 }
}
```

<!--/source-->

<!--source:api-specifications-->
application/json Copy
```
{
 "transaction_id": "01FV0H1MPRMAF6JAHJ6BAPYF9X",
 "product_flow_name": "list_loans",
 "request_data": {},
 "options": {
 "credentials": {
 "api_key": "<redacted>"
 },
 "query": {
 "modified_from": "2022-03-17T00:00:00"
 }
 }
}
```

<!--/source-->

<!--source:api-specifications-->
application/json Copy
```
{
 "metadata": {
 "version": 2,
 "validation": false
 },
 "data": {
 "loans": [
 {
 "@id": "01FT93DZJRD06E7VC5SK08M9X2",
 "@type": "loan",
 "has_loan_role_type": {
 "has_value": "subject_loan"
 },
 "has_loan_status_type": {
 "has_value": "new_loan"
 },
 "has_mortgage_type": {
 "has_value": "conventional"
 },
 "has_originator_loan_identifier": {
 "has_value": "01FT93DYZG12384RHJBP2RKHSG"
 },
 "has_relocation_loan_indicator": {
 "has_value": false
 },
 "secured_by_property": [
 "01FT93F8YJ1AHDYXEBN803KM2M"
 ],
 "with_borrower": [
 "_:b28"
 ]
 }
 ],
 "notes": [
 {
 "has_notes_comment": {
 "has_value": ""
 }
 }
 ],
 "addresses": [
 {
 "@id": "01FT93F8YJ2VXJBWPAF4PPWK1B",
 "@type": "residential_address",
 "has_address_line_1_text": {
 "has_value": "126 4TH ST"
 },
 "has_city_name": {
 "has_value": "Texas"
 },
 "has_county_name": {
 "has_value": "Collin"
 },
 "has_postal_code": {
 "has_value": "30014"
 },
 "has_state_code": {
 "has_value": "TX"
 }
 },
 {
 "@id": "01FT93DZJQYP1J2C6XBJZNM1BW",
 "@type": "address",
 "has_address_line_1_text": {
 "has_value": "126 4th St"
 },
 "has_address_line_2_text": {
 "has_value": ""
 },
 "has_city_name": {
 "has_value": "Atlanta"
 },
 "has_country_name": {
 "has_value": "US"
 },
 "has_postal_code": {
 "has_value": "30014"
 },
 "has_state_code": {
 "has_value": "GA"
 }
 },
 {
 "@id": "01FT93DZJQYP1J2C6XBJZNTEST",
 "@type": "address",
 "has_address_line_1_text": {
 "has_value": "126 4th St"
 },
 "has_address_line_2_text": {
 "has_value": ""
 },
 "has_city_name": {
 "has_value": "Atlanta"
 },
 "has_country_name": {
 "has_value": "US"
 },
 "has_postal_code": {
 "has_value": "30014"
 },
 "has_state_code": {
 "has_value": "GA"
 }
 }
 ],
 "contact_information": [
 {
 "@id": "01FT93DZJQDE98K6BT0HDX52PD",
 "@type": "contact_information",
 "has_email_address": {
 "has_value": "test@email.com"
 },
 "has_phone_number": {
 "has_value": "1231231232"
 }
 }
 ],
 "credit_information": [
 {
 "@id": "01FT93ETHH63K1X8MG3QSWW4KM",
 "@type": "credit_information",
 "has_credit_rating_code_type": {
 "has_value": "experian"
 },
 "has_credit_report_action_type": {
 "has_value": "submit"
 },
 "has_credit_report_first_issued_date": {
 "has_value": "2022-01-25"
 },
 "has_credit_report_identifier": {
 "has_value": "DEVWM6"
 },
 "has_credit_report_last_updated_date": {
 "has_value": "2022-01-25"
 },
 "has_credit_report_merge_type": {
 "has_value": "blend"
 },
 "has_credit_report_type": {
 "has_value": "merge"
 },
 "with_credit_score_information": [
 "01FT93ETMMKVN9BPR713GEWME0"
 ]
 }
 ],
 "credit_score_information": [
 {
 "@id": "01FT93ETMMKVN9BPR713GEWME0",
 "@type": "credit_score_information",
 "has_credit_report_identifier": {
 "has_value": "DEVWM6"
 },
 "has_credit_score": {
 "has_value": "00660"
 }
 }
 ],
 "employment": [
 {
 "@id": "01FT93DZJRDQ78KW9J9GKM5H4G",
 "@type": "employment",
 "has_current_employment_indicator": {
 "has_value": "True"
 },
 "has_employment_classification_type": {
 "has_value": "secondary"
 },
 "has_employment_monthly_income_amount": {
 "has_value": 15000
 },
 "has_employment_position_description": {
 "has_value": "Software Engineer"
 },
 "has_employment_start_date": {
 "has_value": "2008-04-15"
 },
 "has_ownership_interest_type": {
 "has_value": "greater_than_or_equal_to_25_percent"
 },
 "has_self_employment_indicator": {
 "has_value": true
 },
 "has_special_borrower_employer_relationship_indicator": {
 "has_value": false
 },
 "has_time_in_line_of_work_months_count": {
 "has_value": 132
 },
 "provided_by": [
 "01FT93DZJQNEP4GAQXGGGTTPXG"
 ]
 }
 ],
 "loan_identifiers": [
 {
 "@type": "loan_identifier",
 "has_loan_identifier_type": {
 "has_value": "other"
 },
 "has_loan_identifier_type_other_description": {
 "has_value": "sales_boomerang_id"
 },
 "has_loan_identifier_value": {
 "has_value": 31042953
 }
 },
 {
 "@type": "loan_identifier",
 "has_loan_identifier_type": {
 "has_value": "other"
 },
 "has_loan_identifier_type_other_description": {
 "has_value": "surefire"
 },
 "has_loan_identifier_value": {
 "has_value": "01FYBVPJSQ81YNGEWRQ5WR5849"
 }
 }
 ],
 "organizations": [
 {
 "@id": "01FT93DZJQNEP4GAQXGGGTTPXG",
 "@type": "organization",
 "has_organization_name": {
 "has_value": "Amazon"
 },
 "with_address": [
 "01FT93DZJQYP1J2C6XBJZNTEST"
 ]
 }
 ],
 "people": [
 {
 "@id": "_:b28",
 "@type": "borrower",
 "contact_at": [
 "01FT93DZJQDE98K6BT0HDX52PD"
 ],
 "employed_as": [
 "01FT93DZJRDQ78KW9J9GKM5H4G"
 ],
 "has_birth_date": {
 "has_value": "1958-12-12"
 },
 "has_first_name": {
 "has_value": "TEST1"
 },
 "has_last_name": {
 "has_value": "test"
 },
 "has_marital_status_type": {
 "has_value": "unmarried"
 },
 "has_middle_name": {
 "has_value": ""
 },
 "has_taxpayer_identifier_value": {
 "has_value": "999008881"
 },
 "lives_at": [
 "01FT93DZJQ5E5QHAKC2NJMZ0ZM"
 ],
 "with_address": [
 "01FT93DZJQYP1J2C6XBJZNM1BW"
 ],
 "with_credit_information": [
 "01FT93ETHH63K1X8MG3QSWW4KM"
 ]
 }
 ],
 "properties": [
 {
 "@id": "01FT93F8YJ1AHDYXEBN803KM2M",
 "@type": "subject_property",
 "has_financed_unit_count": {
 "has_value": 1
 },
 "has_manufactured_home_width_type": {
 "has_value": "single_wide"
 },
 "has_number_of_units_type": {
 "has_value": "one"
 },
 "has_project_design_type": {
 "has_value": "midrise"
 },
 "has_project_type": {
 "has_value": "condominium"
 },
 "has_property_usage_type": {
 "has_value": "primary_residence"
 },
 "has_stories_count": {
 "has_value": 1
 },
 "with_address": [
 "01FT93F8YJ2VXJBWPAF4PPWK1B"
 ],
 "with_sales_contract": [
 "01FT93F8YJNBJX6VCEED94ZFCR"
 ],
 "with_value": [
 "01FT93F8YJCQG6R0D3Y7P74C6F"
 ]
 }
 ],
 "property_valuations": [
 {
 "@id": "01FT93F8YJCQG6R0D3Y7P74C6F",
 "@type": "property_valuation",
 "has_property_valuation_amount": {
 "has_value": 200000
 }
 }
 ],
 "residences": [
 {
 "@id": "01FT93DZJQ5E5QHAKC2NJMZ0ZM",
 "@type": "residence",
 "has_borrower_residency_type": {
 "has_value": "current"
 },
 "has_residency_basis_type": {
 "has_value": "living_rent_free"
 },
 "has_residency_duration_months_count": {
 "has_value": 30
 },
 "with_address": [
 "01FT93DZJQYP1J2C6XBJZNM1BW"
 ]
 }
 ],
 "sales_contracts": [
 {
 "@id": "01FT93F8YJNBJX6VCEED94ZFCR",
 "@type": "property_sales_contract",
 "has_sales_contract_amount": {
 "has_value": 200000
 }
 }
 ]
 }
}
```

<!--/source-->

##### Response

<!--source:api-specifications-->
403404 Example404 application/json
<!--/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 is not found.

```
{
 "message": "Unable to retrieve configurations for given product."
}
```

<!--/source-->

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

```
03/03/2021, 8:24:04 AM EST
```

<!--/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 `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 is not found.
<!--/source-->

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

##### Other responses

`200``400``422`

`GET` `/products/los-sales-boomerang/invocations/{invocation_id}`

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

#### Get Invocation Status
<!--/source-->

`RetrieveProductFlowInvocationStatus`

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

<!--/source-->

##### Response

<!--source:api-specifications-->
200 ProductFlowStatus200 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": "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 | `object` | <!--source:api-specifications-->Includes underlying services invocation.<!--/source--> |
| `Connector` | `object` | <!--source:api-specifications-->Response from Connector service.<!--/source--> |
| `connector_flow_name` | `string` | <!--source:api-specifications-->Vendor flow name.<!--/source--> |
| `invocation_id` | `string (uuid)` | <!--source:api-specifications-->Connector job ID.<!--/source--> |
| `status` | `string` | <!--source:api-specifications-->Connector flow status.<!--/source-->`ACTION_REQUIRED``COMPLETED``FAILED``RUNNING` |
| `Translator` | `object` | <!--source:api-specifications-->Response from Translator service about input and output translation.<!--/source--> |
| `input` | `object` | <!--source:api-specifications-->Input translation status.<!--/source--> |
| `language_name` | `string` | <!--source:api-specifications-->Input translation language.<!--/source--> |
| `translation_id` | `string (uuid)` | <!--source:api-specifications-->Translation ID.<!--/source--> |
| `status` | `string` | <!--source:api-specifications-->Input translation status.<!--/source-->`COMPLETED``FAILED``RUNNING` |
| `convert_input` | `object` | <!--source:api-specifications-->Convert input translation status.<!--/source--> |
| `language_name` | `string` | <!--source:api-specifications-->Input translation language.<!--/source--> |
| `translation_id` | `string (uuid)` | <!--source:api-specifications-->Translation ID.<!--/source--> |
| `status` | `string` | <!--source:api-specifications-->Input translation status.<!--/source-->`COMPLETED``FAILED``RUNNING` |
| `output` | `object` | <!--source:api-specifications-->Output translation status.<!--/source--> |
| `language_name` | `string` | <!--source:api-specifications-->Output translation language.<!--/source--> |
| `translation_id` | `string (uuid)` | <!--source:api-specifications-->Translation ID.<!--/source--> |
| `status` | `string` | <!--source:api-specifications-->Output translation status.<!--/source-->`COMPLETE``FAILED``RUNNING` |
| `convert_output` | `object` | <!--source:api-specifications-->Convert output translation status.<!--/source--> |
| `language_name` | `string` | <!--source:api-specifications-->Output translation language.<!--/source--> |
| `translation_id` | `string (uuid)` | <!--source:api-specifications-->Translation ID.<!--/source--> |
| `status` | `string` | <!--source:api-specifications-->Output translation status.<!--/source-->`COMPLETE``FAILED``RUNNING` |

##### 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-->

### Platform
<!--/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` `/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

```
{
 "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-->
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

```
{
 "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` | <!--source:api-specifications-->Collection data<!--/source--> |
| `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--> |

`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 product invocation. A collection contains a digital representation of the input or output data for the product and is identified by `collection_id`.

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

<!--/source-->

##### Request

<!--source:api-specifications-->
application/json Copy
```
{
 "data": {
 "organizations": [
 {
 "has_organization_name": {
 "has_value": "Enterprise One"
 },
 "@type": "organization",
 "@id": "01FD6ZNGNFKY3B7CX0YN6NH56E"
 }
 ],
 "contact_information": [
 {
 "has_email_address": {
 "has_value": "test@test.com"
 },
 "@type": "contact_information",
 "@id": "01FD6ZNGJW9X96WGWX2BD37CFY"
 }
 ],
 "addresses": [
 {
 "has_address_line_1_text": {
 "has_value": "33 IRVING PLACE"
 },
 "has_state_code": {
 "has_value": "NY"
 },
 "@type": "address",
 "@id": "01FD6ZNGJADZ0RB1H96FSE8BAB",
 "has_country_name": {
 "has_value": "US"
 },
 "has_address_line_2_text": {
 "has_value": "a"
 },
 "has_postal_code": {
 "has_value": "10003"
 },
 "has_city_name": {
 "has_value": "NEW YORK"
 }
 }
 ],
 "people": [
 {
 "contact_at": [
 "01FD6ZNGJW9X96WGWX2BD37CFY"
 ],
 "has_taxpayer_identifier_value": {
 "has_value": "666234390"
 },
 "has_birth_date": {
 "has_value": "12/28/1958"
 },
 "with_address": [
 "01FD6ZNGJADZ0RB1H96FSE8BAB"
 ],
 "has_last_name": {
 "has_value": "Jackson"
 },
 "@id": "01FD6ZKZD7WGZXYFGJBVPVP2Q5",
 "works_for": [
 "01FD6ZNGNFKY3B7CX0YN6NH56E"
 ],
 "has_first_name": {
 "has_value": "John"
 }
 }
 ]
 }
}
```

<!--/source-->

##### Response

<!--source:api-specifications-->
201400 CreateCollectionError400 text/html403404 CreateCollectionError404 text/html500
<!--/source-->

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

```
{
 "data": {},
 "metadata": {}
}
```

<!--/source-->

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

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

<!--/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

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

<!--/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--> |
| `transaction_id` required | `string (ulid)` path | `01F0KHK7DN3H5JZ4QJKMYAM6GB` | <!--source:api-specifications-->Staircase Transaction Identifier<!--/source--> |

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

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

| Field | Type | Description |
| --- | --- | --- |
| `data` | `object` | — |
| `people` | `object[]` | — |
| `@id` | `string` | — |
| `has_first_name` | `object` | — |
| `has_value` | `string` | — |
| `has_last_name` | `object` | — |
| `has_value` | `string` | — |
| `has_birth_date` | `object` | — |
| `has_value` | `string` | — |
| `has_taxpayer_identifier_value` | `object` | — |
| `has_value` | `string` | — |
| `with_address` | `string[]` | — |
| `contact_at` | `string[]` | — |
| `works_for` | `string[]` | — |
| `addresses` | `object[]` | — |
| `@id` | `string` | — |
| `@type` | `string` | — |
| `has_address_line_1_text` | `object` | — |
| `has_value` | `string` | — |
| `has_address_line_2_text` | `object` | — |
| `has_value` | `string` | — |
| `has_city_name` | `object` | — |
| `has_value` | `string` | — |
| `has_state_code` | `object` | — |
| `has_value` | `string` | — |
| `has_postal_code` | `object` | — |
| `has_value` | `string` | — |
| `has_country_name` | `object` | — |
| `has_value` | `string` | — |
| `contact_information` | `object[]` | — |
| `@id` | `string` | — |
| `@type` | `string` | — |
| `has_email_address` | `object` | — |
| `has_value` | `string` | — |
| `organizations` | `object[]` | — |
| `@id` | `string` | — |
| `@type` | `string` | — |
| `has_organization_name` | `object` | — |
| `has_value` | `string` | — |
| `metadata` | `object` | <!--source:api-specifications-->Metadata of the collection<!--/source--> |

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

<!--source:api-specifications-->
4 fields
<!--/source-->
<!--source:api-specifications-->
Collection created 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` | <!--source:api-specifications-->Collection data<!--/source--> |
| `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--> |

##### Other responses

`405`

`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-->
200 response_collection_example200 request_collection_example403404 GetCollectionError404 GetCollectionsError500
<!--/source-->

<!--source:api-specifications-->
application/json Copy Successfully Retrieved Collection

```
{
 "data": {
 "credit_information": [
 {
 "has_credit_report_identifier": {
 "has_value": "2-d0a38e38-1639-4493-8",
 "data_sourced_from": [
 "01FCZHG9EGC306GQ34ZNZ36A67"
 ]
 },
 "has_credit_request_data_credit_repository_included_equifax_indicator": {
 "has_value": "false"
 },
 "has_credit_frozen_status_experian_indicator": {
 "has_value": "false"
 },
 "has_credit_request_data_credit_repository_included_trans_union_indicator": {
 "has_value": "false"
 },
 "has_data_version_equifax_identifier": {
 "has_value": "4"
 },
 "@type": "credit_information",
 "has_credit_bureau_name": {
 "has_value": null
 },
 "has_credit_rating_code_type": {
 "has_value": "equifax"
 },
 "has_credit_report_merge_type": {
 "has_value": "list_and_stack"
 },
 "has_credit_frozen_status_trans_union_indicator": {
 "has_value": "false"
 },
 "has_credit_repository_included_experian_indicator": {
 "has_value": "false"
 },
 "has_credit_repository_included_equifax_indicator": {
 "has_value": "false"
 },
 "has_credit_request_data_credit_repository_included_experian_indicator": {
 "has_value": "false"
 },
 "has_requesting_party_name": {
 "has_value": null
 },
 "has_credit_repository_included_trans_union_indicator": {
 "has_value": "true"
 },
 "has_credit_report_first_issued_date": {
 "has_value": "2021-08-13"
 },
 "@id": "01FCZHG9ED6FP1B3853716DDBJ",
 "has_credit_frozen_status_equifax_indicator": {
 "has_value": "false"
 },
 "with_credit_score_information": [
 "01FCZHG9EVWB7XSMY2VAK0QAJ1"
 ],
 "has_data_version_credmo_identifier": {
 "has_value": "1.3"
 }
 }
 ],
 "credit_score_information": [
 {
 "has_credit_report_identifier": {
 "has_value": "2-d0a38e38-1639-4493-8",
 "data_sourced_from": [
 "01FCZHG9EGC306GQ34ZNZ36A67"
 ]
 },
 "has_credit_score_model_name_type_other_description": {
 "has_value": "TransUnionVantageScore3.0"
 },
 "has_credit_score": {
 "has_value": "677",
 "data_sourced_from": [
 "01FCZHG9EGC306GQ34ZNZ36A67"
 ]
 },
 "has_credit_score_model_name_type": {
 "has_value": "Other"
 },
 "with_credit_score_factor": [
 [
 "01FCZHG9G3Y586GW0QXYH9GEY1",
 "01FCZHG9G372Z31MSTBYD1RZRT",
 "01FCZHG9G3C36KNGA1WSY9KGSW",
 "01FCZHG9G30MEQG7RSHZTZD3RB",
 "01FCZHG9G30BENG7W0ERGN939G"
 ]
 ],
 "@type": "credit_score_information",
 "has_credit_score_facta_inquiries_indicator": {
 "has_value": "true"
 },
 "has_credit_repository_source_type": {
 "has_value": "trans_union"
 },
 "@id": "01FCZHG9EVWB7XSMY2VAK0QAJ1",
 "has_credit_score_date": {
 "has_value": "2015-06-09"
 }
 }
 ],
 "credit_score_factors": [
 {
 "has_credit_score_factor_code": {
 "has_value": "63"
 },
 "has_credit_score_factor_text": {
 "has_value": "Lack of sufficient relevant real estate account information"
 },
 "@id": "01FCZHG9G3Y586GW0QXYH9GEY1",
 "@type": "credit_score_factor"
 },
 {
 "has_credit_score_factor_code": {
 "has_value": "12"
 },
 "has_credit_score_factor_text": {
 "has_value": "The date that you opened your oldest account is too recent"
 },
 "@id": "01FCZHG9G372Z31MSTBYD1RZRT",
 "@type": "credit_score_factor"
 },
 {
 "has_credit_score_factor_code": {
 "has_value": "14"
 },
 "has_credit_score_factor_text": {
 "has_value": "Lack of sufficient credit history"
 },
 "@id": "01FCZHG9G3C36KNGA1WSY9KGSW",
 "@type": "credit_score_factor"
 },
 {
 "has_credit_score_factor_code": {
 "has_value": "30"
 },
 "has_credit_score_factor_text": {
 "has_value": "Too few of your bankcard or other revolving accounts have high limits"
 },
 "@id": "01FCZHG9G30MEQG7RSHZTZD3RB",
 "@type": "credit_score_factor"
 },
 {
 "has_credit_score_factor_code": {
 "has_value": "I"
 },
 "has_credit_score_factor_text": {
 "has_value": "Inquiries did impact the credit score"
 },
 "@id": "01FCZHG9G30BENG7W0ERGN939G",
 "@type": "credit_score_factor"
 }
 ]
 }
}
```

<!--/source-->

<!--source:api-specifications-->
application/json Copy Successfully Retrieved Collection

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

<!--/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

```
{
 "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` | — |
| `people` | `object[]` | — |
| `@id` | `string` | — |
| `has_first_name` | `object` | — |
| `has_value` | `string` | — |
| `has_last_name` | `object` | — |
| `has_value` | `string` | — |
| `has_birth_date` | `object` | — |
| `has_value` | `string` | — |
| `has_taxpayer_identifier_value` | `object` | — |
| `has_value` | `string` | — |
| `with_address` | `string[]` | — |
| `contact_at` | `string[]` | — |
| `works_for` | `string[]` | — |
| `addresses` | `object[]` | — |
| `@id` | `string` | — |
| `@type` | `string` | — |
| `has_address_line_1_text` | `object` | — |
| `has_value` | `string` | — |
| `has_address_line_2_text` | `object` | — |
| `has_value` | `string` | — |
| `has_city_name` | `object` | — |
| `has_value` | `string` | — |
| `has_state_code` | `object` | — |
| `has_value` | `string` | — |
| `has_postal_code` | `object` | — |
| `has_value` | `string` | — |
| `has_country_name` | `object` | — |
| `has_value` | `string` | — |
| `contact_information` | `object[]` | — |
| `@id` | `string` | — |
| `@type` | `string` | — |
| `has_email_address` | `object` | — |
| `has_value` | `string` | — |
| `organizations` | `object[]` | — |
| `@id` | `string` | — |
| `@type` | `string` | — |
| `has_organization_name` | `object` | — |
| `has_value` | `string` | — |
| `metadata` | `object` | <!--source:api-specifications-->Metadata of the collection<!--/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--> |

##### Other responses

`400`

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

### Encompass Input Adapter
<!--/source-->

`POST` `/products/los-encompass-input-adapter/invocations`

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

#### Invoke Input Adapter
<!--/source-->

`invokeEncompassInputAdapter`

<!--source:api-specifications-->
You can invoke byte input adapters by using this endpoint. This endpoint takes customer_transaction_id from the partner. This should be the unique parameter to identify the loans. For input adapters, invocation responses are always transaction_id and collection_id. With using these two parameters, you can invoke the Staircase products. Adapters guarantee that the same transaction_id is used for each customer transaction_id. For each invocation adapters create transaction_id, request_collection_id and response_collection_id. Supported Staircase Products Flows

- employment
- income
- assets
- credit
- data extraction
- document classification
- fees

<!--/source-->

##### Request

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

<!--source:api-specifications-->
application/json Copy
```
{
 "product_flow_name": "employment",
 "transaction_id": "01FK0TWGPYFVYA81ACDQY651CE",
 "request_data": {
 "loans": [
 {
 "has_loan_identifier_value": {
 "has_value": "e8f84935-0384-4978-a5fb-aac7f3af987e"
 }
 }
 ]
 }
}
```

<!--/source-->

<!--source:api-specifications-->
application/json Copy
```
{
 "product_flow_name": "document-classification",
 "transaction_id": "01FK0TWGPYFVYA81ACDQY651CE",
 "request_data": {
 "loans": [
 {
 "has_loan_identifier_value": {
 "has_value": "63d64559-0af1-42d1-9d7d-70a6ce4e27f3"
 }
 }
 ],
 "foreign_object": [
 {
 "@type": "attachment",
 "has_foreign_object_identifier_value": {
 "has_value": "ed17561f-e5e3-4cf5-abf3-bbb5fb931e82"
 }
 }
 ]
 }
}
```

<!--/source-->

<!--source:api-specifications-->
application/json Copy
```
{
 "product_flow_name": "fees",
 "transaction_id": "01FK0TWGPYFVYA81ACDQY651CE",
 "request_data": {
 "loans": [
 {
 "has_loan_identifier_value": {
 "has_value": "63d64559-0af1-42d1-9d7d-70a6ce4e27f3"
 }
 }
 ],
 "foreign_object": [
 {
 "@type": "attachment",
 "has_foreign_object_identifier_value": {
 "has_value": "ed17561f-e5e3-4cf5-abf3-bbb5fb931e82"
 },
 "has_object_name": {
 "has_value": "conveyance_deed"
 }
 },
 {
 "@type": "attachment",
 "has_foreign_object_identifier_value": {
 "has_value": "ed17561f-e5e3-4cf5-abf3-aac7f3af987e"
 },
 "has_object_name": {
 "has_value": "note"
 }
 }
 ]
 }
}
```

<!--/source-->

##### Response

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

<!--source:api-specifications-->
application/json Copy Create Adapter API Triggered Successfully

```
{
 "invocation_id": "01FDYNKEP7DRV8HAE4X6J580NP"
}
```

<!--/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 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 |
| --- | --- | --- |
| `transaction_id` | `string` | <!--source:api-specifications-->Staircase Transaction ID used for invocation<!--/source--> |
| `product_flow_name` | `string` | <!--source:api-specifications-->Supported Staircase Product Name<!--/source-->`assets``credit``data-extraction``document-classification``employment``fees``income` |
| `request_data` | `object` | <!--source:api-specifications-->Encompass Input Adapter Request Schema<!--/source--> |
| `loans` | `object[]` | <!--source:api-specifications-->Loans<!--/source--> |
| `@type` | `string` | <!--source:api-specifications-->Loan ID<!--/source--> |
| `has_loan_identifier_value` | `object` | <!--source:api-specifications-->Encompass Loan ID<!--/source--> |
| `has_value` | `string` | <!--source:api-specifications-->Encompass Loan ID Value<!--/source--> |
| `foreign_object` | `object[]` | <!--source:api-specifications-->Foreign Objects<!--/source--> |
| `@type` | `string` | <!--source:api-specifications-->Attachment<!--/source--> |
| `has_foreign_object_identifier_value` | `object` | <!--source:api-specifications-->Encompass Document Attachment ID. Only use in Document related products<!--/source--> |
| `has_value` | `string` | <!--source:api-specifications-->Encompass Document Attachment ID Value<!--/source--> |
| `has_object_name` | `object` | <!--source:api-specifications-->Encompass Document Type (conveyance_deed or note). Required for Fees product<!--/source--> |
| `has_value` | `string` | <!--source:api-specifications-->Encompass Document Type Value<!--/source--> |

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

<!--source:api-specifications-->
1 fields
<!--/source-->
<!--source:api-specifications-->
Create Adapter API Triggered Successfully
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `invocation_id` | `string` | <!--source:api-specifications-->Invocation 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-->
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
<!--/source-->

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

##### Other responses

`404`

`GET` `/products/los-encompass-input-adapter/invocations/{invocation_id}`

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

#### Retrieve Adapter Invocation Response
<!--/source-->

`getEncompassInputAdapterInvocationResponse`

<!--source:api-specifications-->
Retrieve Encompass Adapter Invocation Response
<!--/source-->

<!--source:api-specifications-->
Retrieves Invocation Response

<!--/source-->

##### Response

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

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

```
{
 "invocation_id": "9aefb465-90fb-4d50-8ae6-2df2b58373f4",
 "invocation_status": "STARTED",
 "product_flow_name": "credit",
 "transaction_id": "01F6NAMXWN2XVBD1YJ92A6S6R4",
 "request_collection_id": "01F6NAQ4894HPMCBGB4P0G95XK"
}
```

<!--/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-->

##### 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--> |
| `invocation_id` required | `string (ulid)` path | `01FEK8V6RT027SRAW903G97DPF` | <!--source:api-specifications-->Invocation ID<!--/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-->`COMPLETED``FAILED``RUNNING``STARTED` |
| `transaction_id`required | `string` | <!--source:api-specifications-->Transaction 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--> |

##### 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` | — |

##### Other responses

`404`

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

### Encompass Output Adapter
<!--/source-->

`POST` `/products/los-encompass-output-adapter/invocations`

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

#### Invoke Output Adapter
<!--/source-->

`invokeEncompassOutputAdapter`

<!--source:api-specifications-->
Output adapters are used to receive output from a technology partner and return it to the LOS or POS. When the technology partner completes a request, it sends the response to Staircase APIs. Staircase APIs translate and persist the response, then forward it to the LOS/POS.

#### Prerequisite

##### Set up Encompass credentials

Call Setup Encompass Credentials to store your Encompass credentials for adapters use.

Show the rest

#### Usage

You can send a request in two different ways:

- 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.
- Using `transaction_id` and `request_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.

#### Retrieving the Invocation Result

After invocation, endpoint returns an `invocation_id` which you can poll for its status using Retrieve Invocation Response endpoint. Once the invocation is completed, the Response Collection is populated with these search results.

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.

#### Supported Staircase Products Flows

- `preapproval`
- `employment`
- `document classification`
- `fees`

#### Encompass Preapproval Output Adapter

Encompass Preapproval Output Adapter takes staircase collection as an input and converts it to encompass loan object.

In examples, you can find sample data that you can use to create a loan. When the process is completed successfully, the adapter will create the loan under the "pipeline" loan folder.

In response collection data, you will find loan identifier and loan case number.

<!--/source-->

##### Request

<!--source:api-specifications-->
Preapproval Output Adapter Request Payload ExampleInvokeEmploymentOutputAdapterInvokeDocumentClassificationOutputAdapterStaircase Lexicon Example Collection
<!--/source-->

<!--source:api-specifications-->
application/json Copy
```
{
 "product_flow_name": "preapproval",
 "transaction_id": "01FTG980NW4C0S8YX12Z7E3WZ6",
 "request_collection_id": "01FTG981VT214W97Y9NGSYA9JQ"
}
```

<!--/source-->

<!--source:api-specifications-->
application/json Copy
```
{
 "product_flow_name": "employment",
 "request_collection_id": "01FK0TY3FRH7P6WJCETM5HTW7V",
 "options": {
 "customer_transaction_id": "746edd67-dedd-480b-a94a-c17080c920d7"
 }
}
```

<!--/source-->

<!--source:api-specifications-->
application/json Copy
```
{
 "product_flow_name": "document-classification",
 "request_collection_id": "01FK0TY3FRH7P6WJCETM5HTW7V",
 "options": {
 "customer_transaction_id": "746edd67-dedd-480b-a94a-c17080c920d7",
 "customer_document_id": "0a88a069-731e-4869-b160-1f7f1912d3ce",
 "customer_doc_type": "IRS W-2"
 }
}
```

<!--/source-->

<!--source:api-specifications-->
application/json Copy
```
{
 "metadata": {
 "version": 2,
 "validation": false
 },
 "data": {
 "addresses": [
 {
 "@id": "01FT93F8YJ2VXJBWPAF4PPWK1B",
 "@type": "residential_address",
 "has_county_name": {
 "has_value": "Collin"
 },
 "has_state_code": {
 "has_value": "TX"
 },
 "has_address_line_1_text": {
 "has_value": "126 4TH ST"
 },
 "has_city_name": {
 "has_value": "Texas"
 },
 "has_postal_code": {
 "has_value": "30014"
 }
 },
 {
 "@id": "01FT93ETM2HZXV86F2E7VJ0A4P",
 "@type": "residential_address",
 "has_address_line_1_text": {
 "has_value": "126 4TH ST"
 },
 "has_city_name": {
 "has_value": "ATLANTA"
 },
 "has_postal_code": {
 "has_value": "30014"
 },
 "has_state_code": {
 "has_value": "GA"
 }
 },
 {
 "@id": "01FT93DZJQYP1J2C6XBJZNM1BW",
 "@type": "address",
 "has_address_line_1_text": {
 "has_value": "126 4th St"
 },
 "has_address_line_2_text": {
 "has_value": ""
 },
 "has_city_name": {
 "has_value": "Atlanta"
 },
 "has_country_name": {
 "has_value": "US"
 },
 "has_postal_code": {
 "has_value": "30014"
 },
 "has_state_code": {
 "has_value": "GA"
 }
 },
 {
 "@id": "01FT93DZJQYP1J2C6XBJZNTEST",
 "@type": "address",
 "has_address_line_1_text": {
 "has_value": "126 4th St"
 },
 "has_address_line_2_text": {
 "has_value": ""
 },
 "has_city_name": {
 "has_value": "Atlanta"
 },
 "has_country_name": {
 "has_value": "US"
 },
 "has_postal_code": {
 "has_value": "30014"
 },
 "has_state_code": {
 "has_value": "GA"
 }
 }
 ],
 "arm_adjustments": [
 {
 "@id": "01FT93F8YHHE8ZGJBKYF9JC422",
 "@type": "arm_adjustment",
 "has_first_rate_adjustment_months_count": {
 "has_value": "60"
 }
 }
 ],
 "assets": [
 {
 "@id": "01FT93E928K563KRN8VDGC6PT6",
 "@type": "checking_account",
 "has_market_value_amount": {
 "has_value": 10000
 },
 "has_account_identifier": {
 "has_value": "1523421245"
 },
 "held_by_financial_institution": [
 "01FS2DZ9F8QXS2QA8NQ675TJA9"
 ],
 "owned_by": [
 "01FT93DZJQGV9JJZV0RWHS8PK6"
 ]
 },
 {
 "@id": "01FT93E928K563KRN8VDGC6PT7",
 "@type": "checking_account",
 "has_market_value_amount": {
 "has_value": 20000
 },
 "has_account_identifier": {
 "has_value": "1523421245"
 },
 "held_by_financial_institution": [
 "01FS2DZ9F8QXS2QA8NQ675TJA9"
 ],
 "owned_by": [
 "01FT93DZJQGV9JJZV0RWHS8PK6"
 ]
 }
 ],
 "automated_underwriting": [
 {
 "@id": "01FT93F8YHVSSQPWW8KBQYP04J",
 "@type": "automated_underwriting"
 }
 ],
 "buydowns": [
 {
 "@id": "01FT93F8YHXJKVS06NEYEBBGT3",
 "@type": "buydown",
 "has_buydown_type": {
 "has_value": "one_zero"
 }
 }
 ],
 "contact_information": [
 {
 "@id": "01FT93DZJQDE98K6BT0HDX52PD",
 "@type": "contact_information",
 "has_email_address": {
 "has_value": "test@email.com"
 },
 "has_phone_number": {
 "has_value": "1231231232"
 }
 }
 ],
 "credit_information": [
 {
 "@id": "01FT93ETHH63K1X8MG3QSWW4KM",
 "@type": "credit_information",
 "has_credit_rating_code_type": {
 "has_value": "experian"
 },
 "has_credit_report_action_type": {
 "has_value": "submit"
 },
 "has_credit_report_first_issued_date": {
 "has_value": "2022-01-25"
 },
 "has_credit_report_identifier": {
 "has_value": "DEVWM6"
 },
 "has_credit_report_last_updated_date": {
 "has_value": "2022-01-25"
 },
 "has_credit_report_merge_type": {
 "has_value": "blend"
 },
 "has_credit_report_type": {
 "has_value": "merge"
 },
 "with_credit_score_information": [
 "01FT93ETMMKVN9BPR713GEWME0"
 ]
 }
 ],
 "credit_score_factors": [
 {
 "@type": "credit_score_factor"
 },
 {
 "@type": "credit_score_factor"
 }
 ],
 "credit_score_information": [
 {
 "@id": "01FT93ETMMKVN9BPR713GEWME0",
 "@type": "credit_score_information",
 "has_credit_report_identifier": {
 "has_value": "DEVWM6"
 },
 "has_credit_score": {
 "has_value": "00660"
 }
 }
 ],
 "declarations": [
 {
 "@id": "01FT93DZJQ65ZSBDCBBA7DN6X4",
 "@type": "declarations",
 "has_bankruptcy_indicator": {
 "has_value": false
 },
 "has_citizenship_residency_type": {
 "has_value": "us_citizen"
 },
 "has_intent_to_occupy_indicator": {
 "has_value": true
 }
 }
 ],
 "employment": [
 {
 "@id": "01FT93DZJRDQ78KW9J9GKM5H4G",
 "@type": "employment",
 "has_current_employment_indicator": {
 "has_value": "True"
 },
 "has_self_employment_indicator": {
 "has_value": true
 },
 "has_employment_start_date": {
 "has_value": "2008-04-15"
 },
 "has_employment_classification_type": {
 "has_value": "secondary"
 },
 "has_employment_position_description": {
 "has_value": "Software Engineer"
 },
 "has_employment_monthly_income_amount": {
 "has_value": 15000
 },
 "has_ownership_interest_type": {
 "has_value": "greater_than_or_equal_to_25_percent"
 },
 "has_special_borrower_employer_relationship_indicator": {
 "has_value": false
 },
 "has_time_in_line_of_work_months_count": {
 "has_value": 132
 },
 "provided_by": [
 "01FT93DZJQNEP4GAQXGGGTTPXG"
 ]
 }
 ],
 "housing_expenses": [
 {
 "@id": "01FT93DZJQ6WWC8B513W0PMTDE",
 "@type": "housing_expenses",
 "has_present_first_mortgage_principal_and_interest_monthly_amount": {
 "has_value": 0
 },
 "has_present_first_mortgage_principal_interest_taxes_and_insurance_piti_monthly_amount": {
 "has_value": 0
 },
 "has_present_flood_insurance_monthly_amount": {
 "has_value": 0
 },
 "has_present_homeowners_association_dues_and_condominium_fees_monthly_amount": {
 "has_value": 0
 },
 "has_present_homeowners_insurance_monthly_amount": {
 "has_value": 0
 },
 "has_present_mortgage_insurance_monthly_amount": {
 "has_value": 0
 },
 "has_present_other_mortgage_loan_principal_and_interest_monthly_amount": {
 "has_value": 0
 },
 "has_present_other_mortgage_loan_principal_interest_taxes_and_insurance_monthly_amount": {
 "has_value": 0
 },
 "has_present_property_tax_monthly_amount": {
 "has_value": 0
 },
 "has_present_supplemental_property_insurance_monthly_amount": {
 "has_value": 0
 },
 "has_present_total_monthly_payment_amount": {
 "has_value": 0
 }
 }
 ],
 "income": [
 {
 "@_label": "incomes",
 "@id": "01FTDVFEFEHM2MBZ9BF0NQWJP7",
 "@type": "employment_income",
 "has_bonus_income_amount": {
 "has_value": 40000
 },
 "has_income_amount": {
 "has_value": 100000
 },
 "has_income_year": {
 "has_value": 2021
 },
 "has_net_income_amount": {
 "has_value": 66500
 },
 "has_income_pay_frequency_type": {
 "has_value": "monthly"
 },
 "earned_from": [
 "01FT93DZJRDQ78KW9J9GKM5H4G"
 ]
 },
 {
 "@_label": "incomes",
 "@id": "01FTDVFEFEQFY10AZVTY1PCPAD",
 "@type": "employment_income",
 "has_bonus_income_amount": {
 "has_value": 40000
 },
 "has_income_amount": {
 "has_value": 100000
 },
 "has_income_year": {
 "has_value": 2020
 },
 "has_net_income_amount": {
 "has_value": 66500
 },
 "has_income_pay_frequency_type": {
 "has_value": "monthly"
 },
 "earned_from": [
 "01FT93DZJRDQ78KW9J9GKM5H4G"
 ]
 },
 {
 "@_label": "incomes",
 "@id": "01FTDVFEFEG6E9HHZEFSRE95MW",
 "@type": "employment_income",
 "has_bonus_income_amount": {
 "has_value": 30000
 },
 "has_income_amount": {
 "has_value": 85000
 },
 "has_income_year": {
 "has_value": 2019
 },
 "has_net_income_amount": {
 "has_value": 56525
 },
 "has_income_pay_frequency_type": {
 "has_value": "monthly"
 },
 "earned_from": [
 "01FT93DZJRDQ78KW9J9GKM5H4G"
 ]
 },
 {
 "@_label": "paystubs",
 "@id": "01FTDVFEGVM8AV0NJSDA33S3GP",
 "@type": "employment_income",
 "has_income_amount": {
 "has_value": 5000
 },
 "has_net_income_amount": {
 "has_value": 3325
 },
 "has_income_pay_frequency_type": {
 "has_value": "monthly"
 },
 "earned_from": [
 "01FT93DZJRDQ78KW9J9GKM5H4G"
 ]
 },
 {
 "@_label": "paystubs",
 "@id": "01FTDVFEGVSVRV5XNR6PPZVVNJ",
 "@type": "employment_income",
 "has_income_amount": {
 "has_value": 5000
 },
 "has_net_income_amount": {
 "has_value": 3325
 },
 "has_income_pay_frequency_type": {
 "has_value": "monthly"
 },
 "earned_from": [
 "01FT93DZJRDQ78KW9J9GKM5H4G"
 ]
 },
 {
 "@_label": "paystubs",
 "@id": "01FTDVFEGWCWVKNJQ557E8TY7N",
 "@type": "employment_income",
 "has_bonus_income_amount": {
 "has_value": 10000
 },
 "has_income_amount": {
 "has_value": 20000
 },
 "has_net_income_amount": {
 "has_value": 9975
 },
 "has_base_income_amount": {
 "has_value": 5000
 },
 "has_income_pay_date": {
 "has_value": "27-01-2022"
 },
 "has_income_pay_frequency_type": {
 "has_value": "monthly"
 },
 "earned_from": [
 "01FT93DZJRDQ78KW9J9GKM5H4G"
 ]
 },
 {
 "@_label": "paystubs",
 "@id": "01FTDVFEGWCWMA6HR67C7EV9YY",
 "@type": "employment_income",
 "has_income_amount": {
 "has_value": 5000
 },
 "has_net_income_amount": {
 "has_value": 3325
 },
 "has_income_pay_frequency_type": {
 "has_value": "monthly"
 },
 "earned_from": [
 "01FT93DZJRDQ78KW9J9GKM5H4G"
 ]
 },
 {
 "@_label": "paystubs",
 "@id": "01FTDVFEGWF33EA7RX4WS0VN9X",
 "@type": "employment_income",
 "has_income_amount": {
 "has_value": 5000
 },
 "has_net_income_amount": {
 "has_value": 3325
 },
 "has_income_pay_frequency_type": {
 "has_value": "monthly"
 },
 "earned_from": [
 "01FT93DZJRDQ78KW9J9GKM5H4G"
 ]
 },
 {
 "@_label": "paystubs",
 "@id": "01FTDVFEGW923Z4WF7G5F5T49G",
 "@type": "employment_income",
 "has_bonus_income_amount": {
 "has_value": 10000
 },
 "has_income_amount": {
 "has_value": 15000
 },
 "has_net_income_amount": {
 "has_value": 9975
 },
 "has_income_pay_frequency_type": {
 "has_value": "monthly"
 },
 "earned_from": [
 "01FT93DZJRDQ78KW9J9GKM5H4G"
 ]
 },
 {
 "@_label": "paystubs",
 "@id": "01FTDVFEGW3CN37DQKYVPAA56G",
 "@type": "employment_income",
 "has_income_amount": {
 "has_value": 5000
 },
 "has_net_income_amount": {
 "has_value": 3325
 },
 "has_income_pay_frequency_type": {
 "has_value": "monthly"
 },
 "earned_from": [
 "01FT93DZJRDQ78KW9J9GKM5H4G"
 ]
 },
 {
 "@_label": "paystubs",
 "@id": "01FTDVFEGWT5C5V2JT8D63P5JD",
 "@type": "employment_income",
 "has_income_amount": {
 "has_value": 5000
 },
 "has_net_income_amount": {
 "has_value": 3325
 },
 "has_income_pay_frequency_type": {
 "has_value": "monthly"
 },
 "earned_from": [
 "01FT93DZJRDQ78KW9J9GKM5H4G"
 ]
 },
 {
 "@_label": "paystubs",
 "@id": "01FTDVFEGWH8GFQR1BT1M31PZQ",
 "@type": "employment_income",
 "has_bonus_income_amount": {
 "has_value": 10000
 },
 "has_income_amount": {
 "has_value": 15000
 },
 "has_net_income_amount": {
 "has_value": 9975
 },
 "has_income_pay_frequency_type": {
 "has_value": "monthly"
 },
 "earned_from": [
 "01FT93DZJRDQ78KW9J9GKM5H4G"
 ]
 },
 {
 "@_label": "paystubs",
 "@id": "01FTDVFEGWMX5D6XHJ1FFB6E8P",
 "@type": "employment_income",
 "has_income_amount": {
 "has_value": 5000
 },
 "has_net_income_amount": {
 "has_value": 3325
 },
 "has_income_pay_frequency_type": {
 "has_value": "monthly"
 },
 "earned_from": [
 "01FT93DZJRDQ78KW9J9GKM5H4G"
 ]
 },
 {
 "@_label": "paystubs",
 "@id": "01FTDVFEGW4E07YKNTMHZVJ013",
 "@type": "employment_income",
 "has_income_amount": {
 "has_value": 5000
 },
 "has_net_income_amount": {
 "has_value": 3325
 },
 "has_income_pay_frequency_type": {
 "has_value": "monthly"
 },
 "earned_from": [
 "01FT93DZJRDQ78KW9J9GKM5H4G"
 ]
 },
 {
 "@_label": "paystubs",
 "@id": "01FTDVFEGWX4BWDKFYGYJZMKXD",
 "@type": "employment_income",
 "has_bonus_income_amount": {
 "has_value": 10000
 },
 "has_income_amount": {
 "has_value": 15000
 },
 "has_net_income_amount": {
 "has_value": 9975
 },
 "has_income_pay_frequency_type": {
 "has_value": "monthly"
 },
 "earned_from": [
 "01FT93DZJRDQ78KW9J9GKM5H4G"
 ]
 },
 {
 "@_label": "paystubs",
 "@id": "01FTDVFEGW5FG0B4SQWHFDJJBY",
 "@type": "employment_income",
 "has_income_amount": {
 "has_value": 5000
 },
 "has_net_income_amount": {
 "has_value": 3325
 },
 "has_income_pay_frequency_type": {
 "has_value": "monthly"
 },
 "earned_from": [
 "01FT93DZJRDQ78KW9J9GKM5H4G"
 ]
 },
 {
 "@_label": "paystubs",
 "@id": "01FTDVFEGWP6RNCEMF18CCBR0V",
 "@type": "employment_income",
 "has_income_amount": {
 "has_value": 5000
 },
 "has_net_income_amount": {
 "has_value": 3325
 },
 "has_income_pay_frequency_type": {
 "has_value": "monthly"
 },
 "earned_from": [
 "01FT93DZJRDQ78KW9J9GKM5H4G"
 ]
 },
 {
 "@_label": "paystubs",
 "@id": "01FTDVFEGWD4E9PM9WW90CV9FP",
 "@type": "employment_income",
 "has_bonus_income_amount": {
 "has_value": 10000
 },
 "has_income_amount": {
 "has_value": 15000
 },
 "has_net_income_amount": {
 "has_value": 9975
 },
 "has_income_pay_frequency_type": {
 "has_value": "monthly"
 },
 "earned_from": [
 "01FT93DZJRDQ78KW9J9GKM5H4G"
 ]
 },
 {
 "@_label": "paystubs",
 "@id": "01FTDVFEGX99MPQK453AR7QWXH",
 "@type": "employment_income",
 "has_income_amount": {
 "has_value": 5000
 },
 "has_net_income_amount": {
 "has_value": 3325
 },
 "has_income_pay_frequency_type": {
 "has_value": "monthly"
 },
 "earned_from": [
 "01FT93DZJRDQ78KW9J9GKM5H4G"
 ]
 },
 {
 "@_label": "paystubs",
 "@id": "01FTDVFEGXEJ6TBG188XR70XEN",
 "@type": "employment_income",
 "has_income_amount": {
 "has_value": 5000
 },
 "has_net_income_amount": {
 "has_value": 3325
 },
 "has_income_pay_frequency_type": {
 "has_value": "monthly"
 },
 "earned_from": [
 "01FT93DZJRDQ78KW9J9GKM5H4G"
 ]
 },
 {
 "@_label": "paystubs",
 "@id": "01FTDVFEGXS33610PXGVRDFVR2",
 "@type": "employment_income",
 "has_bonus_income_amount": {
 "has_value": 10000
 },
 "has_income_amount": {
 "has_value": 15000
 },
 "has_net_income_amount": {
 "has_value": 9975
 },
 "has_income_pay_frequency_type": {
 "has_value": "monthly"
 },
 "earned_from": [
 "01FT93DZJRDQ78KW9J9GKM5H4G"
 ]
 },
 {
 "@_label": "paystubs",
 "@id": "01FTDVFEGXQ2MV68EYDDDQX9NA",
 "@type": "employment_income",
 "has_income_amount": {
 "has_value": 5000
 },
 "has_net_income_amount": {
 "has_value": 3325
 },
 "has_income_pay_frequency_type": {
 "has_value": "monthly"
 },
 "earned_from": [
 "01FT93DZJRDQ78KW9J9GKM5H4G"
 ]
 },
 {
 "@_label": "paystubs",
 "@id": "01FTDVFEGX4J6CS19FY4ASEZSK",
 "@type": "employment_income",
 "has_income_amount": {
 "has_value": 5000
 },
 "has_net_income_amount": {
 "has_value": 3325
 },
 "has_income_pay_frequency_type": {
 "has_value": "monthly"
 },
 "earned_from": [
 "01FT93DZJRDQ78KW9J9GKM5H4G"
 ]
 },
 {
 "@_label": "paystubs",
 "@id": "01FTDVFEGXV6ED2KJEQ8PH4DRA",
 "@type": "employment_income",
 "has_bonus_income_amount": {
 "has_value": 10000
 },
 "has_income_amount": {
 "has_value": 15000
 },
 "has_net_income_amount": {
 "has_value": 9975
 },
 "has_income_pay_frequency_type": {
 "has_value": "monthly"
 },
 "earned_from": [
 "01FT93DZJRDQ78KW9J9GKM5H4G"
 ]
 },
 {
 "@_label": "paystubs",
 "@id": "01FTDVFEGXGZ51M0GSKB9P5J4N",
 "@type": "employment_income",
 "has_income_amount": {
 "has_value": 5000
 },
 "has_net_income_amount": {
 "has_value": 3325
 },
 "has_income_pay_frequency_type": {
 "has_value": "monthly"
 }
 },
 {
 "@_label": "paystubs",
 "@id": "01FTDVFEGXD57CF7NKSX37HRX3",
 "@type": "employment_income",
 "has_income_amount": {
 "has_value": 5000
 },
 "has_net_income_amount": {
 "has_value": 3325
 },
 "has_income_pay_frequency_type": {
 "has_value": "monthly"
 },
 "earned_from": [
 "01FT93DZJRDQ78KW9J9GKM5H4G"
 ]
 },
 {
 "@_label": "paystubs",
 "@id": "01FTDVFEGXMTBBPZ1YABPEXX2S",
 "@type": "employment_income",
 "has_bonus_income_amount": {
 "has_value": 10000
 },
 "has_income_amount": {
 "has_value": 15000
 },
 "has_net_income_amount": {
 "has_value": 9975
 },
 "has_income_pay_frequency_type": {
 "has_value": "monthly"
 },
 "earned_from": [
 "01FT93DZJRDQ78KW9J9GKM5H4G"
 ]
 },
 {
 "@_label": "paystubs",
 "@id": "01FTDVFEGXZ47C2SQF4P9C53JM",
 "@type": "employment_income",
 "has_income_amount": {
 "has_value": 5000
 },
 "has_net_income_amount": {
 "has_value": 3325
 },
 "has_income_pay_frequency_type": {
 "has_value": "monthly"
 },
 "earned_from": [
 "01FT93DZJRDQ78KW9J9GKM5H4G"
 ]
 },
 {
 "@_label": "paystubs",
 "@id": "01FTDVFEGXB6G4N8XJX79BRMHW",
 "@type": "employment_income",
 "has_income_amount": {
 "has_value": 5000
 },
 "has_net_income_amount": {
 "has_value": 3325
 },
 "has_income_pay_frequency_type": {
 "has_value": "monthly"
 }
 },
 {
 "@_label": "paystubs",
 "@id": "01FTDVFEGXQ6KQQSX738GP5DJF",
 "@type": "employment_income",
 "has_bonus_income_amount": {
 "has_value": 10000
 },
 "has_income_amount": {
 "has_value": 15000
 },
 "has_net_income_amount": {
 "has_value": 9975
 },
 "has_income_pay_frequency_type": {
 "has_value": "monthly"
 },
 "earned_from": [
 "01FT93DZJRDQ78KW9J9GKM5H4G"
 ]
 },
 {
 "@_label": "paystubs",
 "@id": "01FTDVFEGYZEC5VXV9CV82N7P6",
 "@type": "employment_income",
 "has_income_amount": {
 "has_value": 5000
 },
 "has_net_income_amount": {
 "has_value": 3325
 },
 "has_income_pay_frequency_type": {
 "has_value": "monthly"
 },
 "earned_from": [
 "01FT93DZJRDQ78KW9J9GKM5H4G"
 ]
 },
 {
 "@_label": "paystubs",
 "@id": "01FTDVFEGYVV1D5M005DQ7H8Q8",
 "@type": "employment_income",
 "has_income_amount": {
 "has_value": 5000
 },
 "has_net_income_amount": {
 "has_value": 3325
 },
 "has_income_pay_frequency_type": {
 "has_value": "monthly"
 },
 "earned_from": [
 "01FT93DZJRDQ78KW9J9GKM5H4G"
 ]
 },
 {
 "@_label": "paystubs",
 "@id": "01FTDVFEGY2599ZE5XJN4VRH2D",
 "@type": "employment_income",
 "has_bonus_income_amount": {
 "has_value": 10000
 },
 "has_income_amount": {
 "has_value": 15000
 },
 "has_net_income_amount": {
 "has_value": 9975
 },
 "has_income_pay_frequency_type": {
 "has_value": "monthly"
 },
 "earned_from": [
 "01FT93DZJRDQ78KW9J9GKM5H4G"
 ]
 },
 {
 "@_label": "paystubs",
 "@id": "01FTDVFEGY9ARMVNM184ARPBCQ",
 "@type": "employment_income",
 "has_income_amount": {
 "has_value": 5000
 },
 "has_net_income_amount": {
 "has_value": 3325
 },
 "has_income_pay_frequency_type": {
 "has_value": "monthly"
 },
 "earned_from": [
 "01FT93DZJRDQ78KW9J9GKM5H4G"
 ]
 },
 {
 "@_label": "paystubs",
 "@id": "01FTDVFEGYAV79WMACMQC9QM65",
 "@type": "employment_income",
 "has_income_amount": {
 "has_value": 5000
 },
 "has_net_income_amount": {
 "has_value": 3325
 },
 "has_income_pay_frequency_type": {
 "has_value": "monthly"
 },
 "earned_from": [
 "01FT93DZJRDQ78KW9J9GKM5H4G"
 ]
 },
 {
 "@_label": "paystubs",
 "@id": "01FTDVFEGYTN382MZ7RG3CHTXJ",
 "@type": "employment_income",
 "has_bonus_income_amount": {
 "has_value": 10000
 },
 "has_income_amount": {
 "has_value": 15000
 },
 "has_net_income_amount": {
 "has_value": 9975
 },
 "has_income_pay_frequency_type": {
 "has_value": "monthly"
 },
 "earned_from": [
 "01FT93DZJRDQ78KW9J9GKM5H4G"
 ]
 },
 {
 "@_label": "paystubs",
 "@id": "01FTDVFEGY35VDA7782QKWV0R9",
 "@type": "employment_income",
 "has_income_amount": {
 "has_value": 5000
 },
 "has_net_income_amount": {
 "has_value": 3325
 },
 "has_income_pay_frequency_type": {
 "has_value": "monthly"
 },
 "earned_from": [
 "01FT93DZJRDQ78KW9J9GKM5H4G"
 ]
 },
 {
 "@_label": "paystubs",
 "@id": "01FTDVFEGYEDJXNCKRKHZA0AQW",
 "@type": "employment_income",
 "has_income_amount": {
 "has_value": 5000
 },
 "has_net_income_amount": {
 "has_value": 3325
 },
 "has_income_pay_frequency_type": {
 "has_value": "monthly"
 },
 "earned_from": [
 "01FT93DZJRDQ78KW9J9GKM5H4G"
 ]
 }
 ],
 "insurance": [
 {
 "@id": "01FT93F8YJYWS7TJ7SWS9903NF",
 "@type": "mortgage_insurance",
 "has_mortgage_insurance_premium_source_type": {
 "has_value": "borrower"
 }
 }
 ],
 "liabilities": [
 {
 "@id": "01FT93DZJQ5SFFBXVWCHFEJ468",
 "@type": "liability",
 "has_liability_payment_amount": {
 "has_value": 2000
 },
 "has_liability_unpaid_balance_amount": {
 "has_value": 2000
 }
 }
 ],
 "loan_documentation": [
 {
 "@id": "01FT93F8YJ23KFZ56PW2TYFT1M",
 "@type": "loan_documentation",
 "has_asset_documentation_level_type": {
 "has_value": "stated_and_verified"
 },
 "has_employment_documentation_level_type": {
 "has_value": "stated_and_verified"
 },
 "has_income_documentation_level_type": {
 "has_value": "stated_and_verified"
 }
 }
 ],
 "loan_summaries": [
 {
 "@id": "01FT93F8YJWBRPGH181JNHS2Q7",
 "@type": "loan_summary",
 "has_projected_reserves_amount": {
 "has_value": 24
 },
 "has_representative_credit_score": {
 "has_value": 660
 },
 "has_total_debt_expense_to_income_dti_ratio": {
 "has_value": 25
 },
 "has_total_monthly_income_amount": {
 "has_value": 8125
 }
 }
 ],
 "loan_terms": [
 {
 "@id": "01FT93F8YHDQ7M6KNRFE7A1JQR",
 "@type": "loan_terms",
 "has_base_loan_amount": {
 "has_value": 15000
 },
 "has_buydown_indicator": {
 "has_value": true
 },
 "has_construction_loan_indicator": {
 "has_value": false
 },
 "has_escrow_required_indicator": {
 "has_value": "True"
 },
 "has_interest_only_indicator": {
 "has_value": false
 },
 "has_lien_position_type": {
 "has_value": "first_lien"
 },
 "has_loan_purpose_type": {
 "has_value": "purchase"
 },
 "has_pledged_assets_indicator": {
 "has_value": false
 },
 "has_prepayment_penalty_indicator": {
 "has_value": false
 },
 "has_prepayment_penalty_term_months_count": {
 "has_value": 0
 },
 "has_refinance_type": {
 "has_value": "no_cash_out"
 }
 }
 ],
 "loans": [
 {
 "@id": "01FT93DZJRD06E7VC5SK08M9X2",
 "@type": "loan",
 "has_loan_role_type": {
 "has_value": "subject_loan"
 },
 "has_loan_status_type": {
 "has_value": "prequalification"
 },
 "has_mortgage_type": {
 "has_value": "conventional"
 },
 "has_originator_loan_identifier": {
 "has_value": "01FT93DYZG12384RHJBP2RKHSG"
 },
 "has_relocation_loan_indicator": {
 "has_value": false
 },
 "secured_by_property": [
 "01FT93F8YJ1AHDYXEBN803KM2M"
 ],
 "serviced_by": [
 "01FT93F8YJV09Z71WCV6F9E33H"
 ],
 "with_arm_adjustment": [
 "01FT93F8YHHE8ZGJBKYF9JC422"
 ],
 "with_automated_underwriting": [
 "01FT93F8YHVSSQPWW8KBQYP04J"
 ],
 "with_borrower": [
 "01FT93DZJQGV9JJZV0RWHS8PK6"
 ],
 "with_buydown": [
 "01FT93F8YHXJKVS06NEYEBBGT3"
 ],
 "with_documentation": [
 "01FT93F8YJ23KFZ56PW2TYFT1M"
 ],
 "with_insurance": [
 "01FT93F8YJYWS7TJ7SWS9903NF"
 ],
 "with_loan_terms": [
 "01FT93F8YHDQ7M6KNRFE7A1JQR"
 ],
 "with_quote_request": [
 "01FT93F8YJFHVYEM9MYHQ3RB5J"
 ],
 "with_summary": [
 "01FT93F8YJWBRPGH181JNHS2Q7"
 ]
 }
 ],
 "mortgage_products": [
 {
 "@id": "01FT93F8YJHD220HNMAWJS4EZB",
 "@type": "pricing",
 "has_partner_name": {
 "has_value": "Optimal Blue"
 }
 },
 {
 "@id": "01FT93F8YJSR6NR90J310GR0KQ",
 "@type": "automated_underwriting_system",
 "has_credit_report_vendor_identifier": {
 "has_value": ""
 }
 },
 {
 "@id": "01FT93ETGV4ZTNE2753H4E87F3",
 "@type": "credit"
 }
 ],
 "organizations": [
 {
 "@id": "01FT93F8YJV09Z71WCV6F9E33H",
 "@type": "servicer"
 },
 {
 "@id": "01FT93DZJQNEP4GAQXGGGTTPXG",
 "@type": "organization",
 "has_organization_name": {
 "has_value": "Amazon"
 },
 "with_address": [
 "01FT93DZJQYP1J2C6XBJZNTEST"
 ]
 },
 {
 "@id": "01FT93DZJQKRNR64A20R2H9C0W",
 "@type": "customer",
 "has_transaction_identifier": {
 "has_value": "01FT93DYZG12384RHJBP2RKHSG"
 }
 },
 {
 "@id": "01FS2DZ9F8QXS2QA8NQ675TJA9",
 "@type": "financial_institution",
 "has_organization_name": {
 "has_value": "BankA"
 }
 }
 ],
 "people": [
 {
 "@id": "01FT93DZJQGV9JJZV0RWHS8PK6",
 "@type": "borrower",
 "contact_at": [
 "01FT93DZJQDE98K6BT0HDX52PD"
 ],
 "earns": [
 "01FTDVFEFEHM2MBZ9BF0NQWJP7",
 "01FTDVFEFEQFY10AZVTY1PCPAD",
 "01FTDVFEFEG6E9HHZEFSRE95MW",
 "01FTDVFEGVM8AV0NJSDA33S3GP",
 "01FTDVFEGVSVRV5XNR6PPZVVNJ",
 "01FTDVFEGWCWVKNJQ557E8TY7N",
 "01FTDVFEGWCWMA6HR67C7EV9YY",
 "01FTDVFEGWF33EA7RX4WS0VN9X",
 "01FTDVFEGW923Z4WF7G5F5T49G",
 "01FTDVFEGW3CN37DQKYVPAA56G",
 "01FTDVFEGWT5C5V2JT8D63P5JD",
 "01FTDVFEGWH8GFQR1BT1M31PZQ",
 "01FTDVFEGWMX5D6XHJ1FFB6E8P",
 "01FTDVFEGW4E07YKNTMHZVJ013",
 "01FTDVFEGWX4BWDKFYGYJZMKXD",
 "01FTDVFEGW5FG0B4SQWHFDJJBY",
 "01FTDVFEGWP6RNCEMF18CCBR0V",
 "01FTDVFEGWD4E9PM9WW90CV9FP",
 "01FTDVFEGX99MPQK453AR7QWXH",
 "01FTDVFEGXEJ6TBG188XR70XEN",
 "01FTDVFEGXS33610PXGVRDFVR2",
 "01FTDVFEGXQ2MV68EYDDDQX9NA",
 "01FTDVFEGX4J6CS19FY4ASEZSK",
 "01FTDVFEGXV6ED2KJEQ8PH4DRA",
 "01FTDVFEGXGZ51M0GSKB9P5J4N",
 "01FTDVFEGXD57CF7NKSX37HRX3",
 "01FTDVFEGXMTBBPZ1YABPEXX2S",
 "01FTDVFEGXZ47C2SQF4P9C53JM",
 "01FTDVFEGXB6G4N8XJX79BRMHW",
 "01FTDVFEGXQ6KQQSX738GP5DJF",
 "01FTDVFEGYZEC5VXV9CV82N7P6",
 "01FTDVFEGYVV1D5M005DQ7H8Q8",
 "01FTDVFEGY2599ZE5XJN4VRH2D",
 "01FTDVFEGY9ARMVNM184ARPBCQ",
 "01FTDVFEGYAV79WMACMQC9QM65",
 "01FTDVFEGYTN382MZ7RG3CHTXJ",
 "01FTDVFEGY35VDA7782QKWV0R9",
 "01FTDVFEGYEDJXNCKRKHZA0AQW"
 ],
 "has_birth_date": {
 "has_value": "1958-12-12"
 },
 "has_first_name": {
 "has_value": "Frodo"
 },
 "has_last_name": {
 "has_value": "Baggins"
 },
 "has_marital_status_type": {
 "has_value": "unmarried"
 },
 "has_taxpayer_identifier_type": {
 "has_value": "individual_taxpayer_identification_number"
 },
 "has_taxpayer_identifier_value": {
 "has_value": "999008881"
 },
 "lives_at": [
 "01FT93DZJQ5E5QHAKC2NJMZ0ZM"
 ],
 "owes_liability": [
 "01FT93DZJQ5SFFBXVWCHFEJ468"
 ],
 "owns_asset": [
 "01FT93E928K563KRN8VDGC6PT6",
 "01FT93E928K563KRN8VDGC6PT7"
 ],
 "with_address": [
 "01FT93DZJQYP1J2C6XBJZNM1BW"
 ],
 "with_credit_information": [
 "01FT93ETHH63K1X8MG3QSWW4KM"
 ],
 "with_declarations": [
 "01FT93DZJQ65ZSBDCBBA7DN6X4"
 ],
 "with_housing_expenses": [
 "01FT93DZJQ6WWC8B513W0PMTDE"
 ],
 "works_for": [
 "01FT93DZJQNEP4GAQXGGGTTPXG"
 ],
 "employed_as": [
 "01FT93DZJRDQ78KW9J9GKM5H4G"
 ]
 }
 ],
 "properties": [
 {
 "@id": "01FT93F8YJ1AHDYXEBN803KM2M",
 "@type": "subject_property",
 "has_financed_unit_count": {
 "has_value": 1
 },
 "has_in_project_indicator": {
 "has_value": false
 },
 "has_manufactured_home_indicator": {
 "has_value": false
 },
 "has_manufactured_home_width_type": {
 "has_value": "single_wide"
 },
 "has_number_of_units_type": {
 "has_value": "one"
 },
 "has_planned_unit_development_pud_indicator": {
 "has_value": false
 },
 "has_project_design_type": {
 "has_value": "midrise"
 },
 "has_project_type": {
 "has_value": "condominium"
 },
 "has_project_usage_type": {
 "has_value": false
 },
 "has_property_usage_type": {
 "has_value": "primary_residence"
 },
 "has_stories_count": {
 "has_value": 1
 },
 "with_address": [
 "01FT93F8YJ2VXJBWPAF4PPWK1B"
 ],
 "with_sales_contract": [
 "01FT93F8YJNBJX6VCEED94ZFCR"
 ],
 "with_value": [
 "01FT93F8YJCQG6R0D3Y7P74C6F"
 ]
 }
 ],
 "property_valuations": [
 {
 "@id": "01FT93F8YJCQG6R0D3Y7P74C6F",
 "@type": "property_valuation",
 "has_property_valuation_amount": {
 "has_value": 200000
 }
 }
 ],
 "quote_amortization_terms": [
 {
 "@id": "01FT93F8YJ1DKRB33X4C9SCHWQ",
 "@type": "quote_amortization_term",
 "has_amortization_term_months_count": {
 "has_value": "360"
 }
 }
 ],
 "quote_requests": [
 {
 "@id": "01FT93F8YJFHVYEM9MYHQ3RB5J",
 "@type": "loan_price_quote_request",
 "has_calculate_borrower_requested_loan_amount_indicator": {
 "has_value": true
 },
 "has_include_adjustable_rate_amortization_loans_indicator": {
 "has_value": "False"
 },
 "has_include_ballon_loans_indicator": {
 "has_value": "False"
 },
 "has_include_fixed_rate_amortization_loans_indicator": {
 "has_value": "True"
 },
 "has_include_payment_option_adjustable_rate_amortization_loans_indicator": {
 "has_value": "False"
 },
 "has_loan_officer_compensation_type": {
 "has_value": "yes_lender_paid"
 },
 "include_loans_with_amortization_term": [
 "01FT93F8YJ1DKRB33X4C9SCHWQ"
 ]
 }
 ],
 "residences": [
 {
 "@id": "01FT93DZJQ5E5QHAKC2NJMZ0ZM",
 "@type": "residence",
 "has_borrower_residency_type": {
 "has_value": "current"
 },
 "has_residency_basis_type": {
 "has_value": "living_rent_free"
 },
 "has_residency_duration_months_count": {
 "has_value": 30
 },
 "with_address": [
 "01FT93DZJQYP1J2C6XBJZNM1BW"
 ]
 }
 ],
 "sales_contracts": [
 {
 "@id": "01FT93F8YJNBJX6VCEED94ZFCR",
 "@type": "property_sales_contract",
 "has_sales_contract_amount": {
 "has_value": 200000
 }
 }
 ]
 }
}
```

<!--/source-->

##### Response

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

<!--source:api-specifications-->
application/json Copy Create Adapter API Triggered Successfully

```
{
 "invocation_id": "01FDYNKEP7DRV8HAE4X6J580NP"
}
```

<!--/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 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 |
| --- | --- | --- |
| `transaction_id` | `string` | <!--source:api-specifications-->Staircase Transaction ID used for invocation<!--/source--> |
| `request_collection_id` | `string` | <!--source:api-specifications-->Output collection of Staircase product<!--/source--> |
| `product_flow_name` | `string` | <!--source:api-specifications-->Supported Staircase Product Name<!--/source-->`document-classification``employment``fees``preapproval` |
| `options` | `object` | <!--source:api-specifications-->Request Collection Data<!--/source--> |
| `customer_transaction_id` | `string` | <!--source:api-specifications-->Encompass Loan ID<!--/source--> |
| `customer_document_id` | `string` | <!--source:api-specifications-->Encompass Document ID. Only use in Document related products<!--/source--> |
| `customer_doc_type` | `string` | <!--source:api-specifications-->Encompass Document Type. Only use in Document related products<!--/source--> |

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

<!--source:api-specifications-->
1 fields
<!--/source-->
<!--source:api-specifications-->
Create Adapter API Triggered Successfully
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `invocation_id` | `string` | <!--source:api-specifications-->Invocation 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-->
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
<!--/source-->

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

##### Other responses

`404`

`GET` `/products/los-encompass-output-adapter/invocations/{invocation_id}`

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

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

`getEncompassOutputAdapterInvocationResponse`

<!--source:api-specifications-->
Retrieves Invocation Response

<!--/source-->

##### Response

<!--source:api-specifications-->
201 Example201 Preapproval Product Flow Complete Response Example400403
<!--/source-->

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

```
{
 "invocation_id": "9aefb465-90fb-4d50-8ae6-2df2b58373f4",
 "invocation_status": "STARTED",
 "product_flow_name": "credit",
 "transaction_id": "01F6NAMXWN2XVBD1YJ92A6S6R4",
 "request_collection_id": "01F6NAQ4894HPMCBGB4P0G95XK"
}
```

<!--/source-->

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

```
{
 "connector_job_id": "e5ce2145-61b3-4fb4-89b8-9ce7f722e3f9",
 "invocation_id": "3e475ba5-2e1f-4f1b-a39b-54a8e70249eb",
 "invocation_status": "COMPLETED",
 "product_flow_name": "preapproval",
 "request_collection_id": "01FTGERYJ41RF4TFE9E9ER9EH6",
 "response_collection": {
 "collection_id": "01FTGES37P2W9QK2HBA9CRRAXG",
 "data": {
 "loan_identifiers": [
 {
 "@id": "01FTGET8G3F0GYNH1CKNAHGYTC",
 "@type": "loan_identifier",
 "has_loan_identifier_other_desctiption": {
 "has_value": "encompass"
 },
 "has_loan_identifier_type": {
 "has_value": "lender_loan"
 },
 "has_loan_identifier_value": {
 "has_value": "adb0479a-3e41-4b82-8380-b356bcf3c33d"
 }
 },
 {
 "@id": "01FTGET8G6FMQ2WS2HMF3HTTSS",
 "@type": "loan_identifier",
 "has_loan_identifier_other_desctiption": {
 "has_value": "encompass"
 },
 "has_loan_identifier_type": {
 "has_value": "lender_case"
 },
 "has_loan_identifier_value": {
 "has_value": "TEST220100423"
 }
 }
 ]
 },
 "metadata": {
 "created_at": "2022-01-28T08:42:44.215009-05:00",
 "invocation_status": "COMPLETED",
 "last_updated_at": "2022-01-28T08:43:31.553466-05:00",
 "partner_language": "encompass-to-lexicon-output-adapter",
 "service_invocation": {
 "Connector": {
 "connector_flow_name": "create_or_update_loan",
 "invocation_id": "e5ce2145-61b3-4fb4-89b8-9ce7f722e3f9",
 "status": "COMPLETED"
 },
 "Translator": {
 "output": {
 "invocation_id": "3bb1b3eb-fcdb-4802-ae16-039e51927fb1",
 "language_name": "encompass-to-lexicon-output-adapter",
 "status": "COMPLETED"
 }
 }
 },
 "staircase_language_version": 0,
 "validation": false,
 "version": 0
 },
 "transaction_id": "01FTGERXD9JVQQ09KP4GQNZWF9"
 },
 "response_collection_id": "01FTGES37P2W9QK2HBA9CRRAXG",
 "service_invocation": {
 "Connector": {
 "connector_flow_name": "create_or_update_loan",
 "invocation_id": "e5ce2145-61b3-4fb4-89b8-9ce7f722e3f9",
 "status": "COMPLETED"
 },
 "Translator": {
 "output": {
 "invocation_id": "3bb1b3eb-fcdb-4802-ae16-039e51927fb1",
 "language_name": "encompass-to-lexicon-output-adapter",
 "status": "COMPLETED"
 }
 }
 },
 "transaction_id": "01FTGERXD9JVQQ09KP4GQNZWF9"
}
```

<!--/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-->

##### 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--> |
| `invocation_id` required | `string (ulid)` path | `01FEK8V6RT027SRAW903G97DPF` | <!--source:api-specifications-->Invocation ID<!--/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-->`COMPLETED``FAILED``RUNNING``STARTED` |
| `transaction_id`required | `string` | <!--source:api-specifications-->Transaction 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--> |

##### 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` | — |

##### Other responses

`404`

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

### Encompass Service Application
<!--/source-->

`POST` `/products/los-encompass-service-application/invocations`

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

#### Service Application
<!--/source-->

`invokeEncompassServiceApplicationPP`

<!--source:api-specifications-->
This is a product component invocation endpoint. You can use service application features with this endpoint. What you need to do is provide an input to the invocation with `request_data` and specify the feature of the product component with `product_flow_name` that you want to use.

This product component has two different flows. You can get detailed information about the services provided by staircase in EPC with `get_services`, or with `process_transaction`, you can process your EPC transaction with the staircase product of your choice and inject your processed data into Encompass.

Show the rest After you invoke product component, product will create transaction, and request-response collections from the request_data you provided.

#### Staircase Glossary

Transaction:

What is a transaction?

When do I create a transaction?

Collection:

What is a collection?

#### Retrieving the Invocation Result

After invocation, endpoint returns an `invocation_id` which you can poll for its status using Retrieve Invocation Response endpoint. Once the invocation is completed, the Response Collection is populated with these search results.

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.

##### How Callbacks are working?

`callback_url` is used by the product to send a callback, when the flow invocation status changes, including changes in status of underlying services invocation.

Invocation data is included throughout the invocation. Either response payload or failure reason is sent when invocation completed/failed.

##### How you can validate the callback messages?

Each work unit (invocation) is represented with three distinct ID.

- Transaction
- Request Collection ID
- Response Collection ID

Combination of these three id can be used for validating callback messages related with invocation. You will retrieve these ids in the request body of callback payload.

You can find the callback sample messages response examples.

#### Process Transaction

! Prerequisite (Setup EPC Credentials): If you want to use Staircase credentials by default, you don't need to do anything. But if you want to use Staircase LOS Adapter as your EPC Integration backend, you need to set your EPC credentials

`Process Transaction` flow allows you to process Encompass EPC transactions. Flow is doing following items after during invocation:

1. Extracts transaction data.
1. Converts transaction data to Staircase Lexicon.
1. Invokes the Staircase product
1. After the invocation is completed, the results are sent to Encompass and the transaction is complete.

##### How to create EPC transaction with using Encompass Partner JS API

! When creating a transaction with the Encompass Partner JS API, you should add three important information to request.options.

- applicationId: Application ID field
- borrowerType: Type of borrower (borrower or coborrower)
- employmentId: Employment ID field
- updateLoan: Flag for service application to update the loan after verification
- uploadStaircaseReport: Flag for service application to upload the verification report generated by Staircase
- uploadPartnerReport: Flag for service application to upload the verification report generated by the partner (if exists)

Check EPC Transaction Management Developer Guide to create transaction

Check below code to create EPC Transaction with Encompass Partner JS API

```
import host from '@elliemae/em-ssf-guest'

...

let transactionRequest = {
 request: {
 type: 'NEW_REQUEST',
 options: {
 applicationId: "",
 borrowerType: "borrower",
 employmentId: "",
 updateLoan: true,
 uploadStaircaseReport: true,
 uploadPartnerReport: true
 }
 }
}

async function createTransaction(transactionRequest) {
 try {
 const transactionObject = await host.getObject('transaction')
 const transactionData = await transactionObject.create(transactionRequest)

 applicationState.transactionId = transactionData.id
 } catch (error) {
 console.log({error})
 }
}

createTransaction(transactionRequest)
```

! A single verification can be triggered with a single invocation.

##### Working with webhooks

If you are using the EPC webhook integration, you will get an event like below when you create the transaction. If you want to process the transaction in Staircase Service Application, you can find the epc transaction in the $.meta.resourceId path in the incoming message.

```
{
 "eventTime" : "2020-05-02T11:08:52Z",
 "eventType" : "created",
 "meta" : {
 "resourceType" : "urn:elli:epc:transaction",
 "resourceId" : "{{EPC_TRANSACTION_ID}}",
 "instanceId" : "{{PRODUCT_NAME}}",
 "resourceRef" : ""
 }
}
```

##### Map your EPC Transaction to request data

```
{
 "organizations": [
 {
 "@type": "customer",
 "@id": "01FD6ZNGJADZ0RB1H96FSE8ABC",
 "has_transaction_identifier": {
 "has_value": "{{EPC_TRANSACTION_ID}}"
 }
 }
 ],
 "staircase_products": [
 {
 "@type": "staircase_product",
 "@id": "AB2D6ZNGJADZ0RB1H96FSE8FTG",
 "has_product_name": {
 "has_value": "income"
 }
 }
 ]
}
```

##### Updated entitlements after successful application run

###### Verification of Employment

- Start Date
- End Date
- Start Date
- Position Description

###### Verification of Income

- Base Pay Amount
- Overtime Amount
- Bonus Amount
- Commissions Amount

##### Verification of Asset (VoD)

- Holder Name
- Type
- Account Identifier
- Cash Or Market Value Amount
- Depository Account Name

#### Get Services

It provides the partner services and details that Staircase offers within the encompass system.

#### Please check the links below to get detailed information about Staircase Encompass EPC Integration

- See how Staircase verification APIs can be embedded within Encompass to aggregate data from multiple best-in-class partners, to fully over all data needed to underwrite

Staircase APIs/Encompass Integration Use Case

- How to configure and call Staircase services in Encompass

Staircase APIs/Encompass Integration Quick Start Guide

<!--/source-->

##### Request

<!--source:api-specifications-->
Get ServicesProcess Transaction
<!--/source-->

<!--source:api-specifications-->
application/json Copy
```
{
 "product_flow_name": "get_services",
 "request_data": {}
}
```

<!--/source-->

<!--source:api-specifications-->
application/json Copy
```
{
 "product_flow_name": "process_transaction",
 "request_data": {
 "organizations": [
 {
 "@type": "customer",
 "@id": "01FD6ZNGJADZ0RB1H96FSE8ABC",
 "has_transaction_identifier": {
 "has_value": "25613a9c-8d08-40fe-bdac-6eea58794d1d"
 }
 }
 ],
 "staircase_products": [
 {
 "@type": "staircase_product",
 "@id": "AB2D6ZNGJADZ0RB1H96FSE8FEW",
 "has_product_name": {
 "has_value": "income"
 }
 }
 ]
 }
}
```

<!--/source-->

##### Response

<!--source:api-specifications-->
201 InvokeAdapterResp201 Callback flow started example201 Callback flow running example201 Callback flow completed example201 Callback flow failed example400403500
<!--/source-->

<!--source:api-specifications-->
application/json Copy Create Invocation Triggered Successfully

```
{
 "invocation_id": "01FDYNKEP7DRV8HAE4X6J580NP"
}
```

<!--/source-->

<!--source:api-specifications-->
application/json Copy Create Invocation Triggered Successfully

```
{
 "invocation_id": "5025ade0-709d-443d-9307-c05ea0a92c02",
 "invocation_status": "STARTED",
 "transaction_id": "01G10A1WJ1E610MH0AC3QE16W6",
 "request_collection_id": "01G10A1WSYCSR8F9Y1G7HYHEBS",
 "response_collection_id": "01G10A1WWADH75MTDT0DSC0KZW",
 "service_invocation": {},
 "data": {
 "organizations": [
 {
 "@type": "customer",
 "has_transaction_identifier": {
 "has_value": "25613a9c-8d08-40fe-bdac-6eea58794d1d"
 }
 }
 ],
 "staircase_products": [
 {
 "@type": "staircase_product",
 "has_product_name": {
 "has_value": "employment"
 }
 }
 ]
 }
}
```

<!--/source-->

<!--source:api-specifications-->
application/json Copy Create Invocation Triggered Successfully

```
{
 "invocation_id": "28ab302d-d146-4c3d-94ae-91f7f373be2b",
 "invocation_status": "RUNNING",
 "transaction_id": "01G10A9WZH3S31WM8DFK68GT0T",
 "request_collection_id": "01G10A9X8HM7QR51HJH6F964G8",
 "response_collection_id": "01G10A9XB8CBCPQA58Z7ZT1GXP",
 "service_invocation": {
 "Connector": {
 "connector_flow_name": "process_transaction",
 "invocation_id": "d4c2e290-887b-4e20-808f-c3bfafd170da",
 "status": "RUNNING"
 }
 },
 "connector_job_id": "d4c2e290-887b-4e20-808f-c3bfafd170da",
 "data": {
 "organizations": [
 {
 "@type": "customer",
 "has_transaction_identifier": {
 "has_value": "b51b9d92-2d0e-482a-9504-42d41cce1fa0"
 }
 }
 ],
 "staircase_products": [
 {
 "@type": "staircase_product",
 "has_product_name": {
 "has_value": "employment"
 }
 }
 ]
 }
}
```

<!--/source-->

<!--source:api-specifications-->
application/json Copy Create Invocation Triggered Successfully

```
{
 "invocation_id": "28ab302d-d146-4c3d-94ae-91f7f373be2b",
 "invocation_status": "COMPLETED",
 "transaction_id": "01G10A9WZH3S31WM8DFK68GT0T",
 "request_collection_id": "01G10A9X8HM7QR51HJH6F964G8",
 "response_collection_id": "01G10A9XB8CBCPQA58Z7ZT1GXP",
 "service_invocation": {
 "Connector": {
 "status": "COMPLETED",
 "invocation_id": "d4c2e290-887b-4e20-808f-c3bfafd170da",
 "connector_flow_name": "process_transaction"
 }
 },
 "connector_job_id": "d4c2e290-887b-4e20-808f-c3bfafd170da",
 "response_data": {
 "message": "EPC Transaction Completed."
 },
 "data": {
 "organizations": [
 {
 "@type": "customer",
 "has_transaction_identifier": {
 "has_value": "b51b9d92-2d0e-482a-9504-42d41cce1fa0"
 }
 }
 ],
 "staircase_products": [
 {
 "@type": "staircase_product",
 "has_product_name": {
 "has_value": "employment"
 }
 }
 ]
 }
}
```

<!--/source-->

<!--source:api-specifications-->
application/json Copy Create Invocation Triggered Successfully

```
{
 "invocation_id": "28ab302d-d146-4c3d-94ae-91f7f373be2b",
 "invocation_status": "FAILED",
 "transaction_id": "01G10A9WZH3S31WM8DFK68GT0T",
 "request_collection_id": "01G10A9X8HM7QR51HJH6F964G8",
 "response_collection_id": "01G10A9XB8CBCPQA58Z7ZT1GXP",
 "product_flow_name": "process_transaction",
 "service_invocation": {
 "Connector": {
 "status": "FAILED",
 "invocation_id": "d4c2e290-887b-4e20-808f-c3bfafd170da",
 "connector_flow_name": "process_transaction"
 }
 },
 "connector_job_id": "d4c2e290-887b-4e20-808f-c3bfafd170da",
 "failure_reason": "Failure reason message"
}
```

<!--/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 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 |
| --- | --- | --- |
| `request_data` | `object` | <!--source:api-specifications-->Empty Object<!--/source--> |
| `organizations` | `object[]` | <!--source:api-specifications-->Organizations Array<!--/source--> |
| `@type` | `string` | <!--source:api-specifications-->Organization's Type<!--/source-->`customer` |
| `@id` | `string` | <!--source:api-specifications-->Object's ID<!--/source--> |
| `has_transaction_identifier` | `object` | <!--source:api-specifications-->EPC Transaction ID<!--/source--> |
| `has_value` | `string` | <!--source:api-specifications-->Value<!--/source--> |
| `staircase_products` | `object[]` | <!--source:api-specifications-->Staircase Product Array. You can select only one target product for the process transaction flow. Transaction process allows only one transaction at a time. If you want to trigger another invocation, you can change the target product and invoke it again.<!--/source--> |
| `@type` | `string` | <!--source:api-specifications-->Product Type<!--/source--> |
| `@id` | `string` | <!--source:api-specifications-->Object's ID<!--/source--> |
| `has_product_name` | `object` | <!--source:api-specifications-->The business name of a product, which is a provider defined offering of goods or services, including mortgage loans.<!--/source--> |
| `has_value` | `string` | <!--source:api-specifications-->Value<!--/source-->`employment``income` |
| `product_flow_name` | `string` | <!--source:api-specifications-->Select product flow<!--/source-->`get_services``process_transaction` |
| `transaction_id` | `string` | <!--source:api-specifications-->Staircase Transaction ID used for invocation<!--/source--> |
| `callback_url` | `string` | <!--source:api-specifications-->The callback url<!--/source--> |

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

<!--source:api-specifications-->
1 fields
<!--/source-->
<!--source:api-specifications-->
Create Invocation Triggered Successfully
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `invocation_id` | `string` | <!--source:api-specifications-->Invocation 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-->
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
<!--/source-->

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

##### Other responses

`404`

`GET` `/products/los-encompass-service-application/invocations/{invocation_id}`

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

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

`getEncompassServiceAppInvocationResponse`

<!--source:api-specifications-->
Retrieves Invocation Response

<!--/source-->

##### Response

<!--source:api-specifications-->
201 Example201 Flow running example201 Flow completed example201 Flow failed example400403
<!--/source-->

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

```
{
 "invocation_id": "9aefb465-90fb-4d50-8ae6-2df2b58373f4",
 "invocation_status": "STARTED",
 "product_flow_name": "credit",
 "transaction_id": "01F6NAMXWN2XVBD1YJ92A6S6R4",
 "request_collection_id": "01F6NAQ4894HPMCBGB4P0G95XK"
}
```

<!--/source-->

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

```
{
 "request_collection_id": "01G10CQPDSFST529E6ZMVDEWNZ",
 "response_collection_id": "01G10CQPG8QDF8DPN9JMRWHQPH",
 "service_invocation": {
 "Connector": {
 "status": "RUNNING",
 "invocation_id": "f6ff74d0-ee98-4988-a8ca-7c2f79035890",
 "connector_flow_name": "process_transaction"
 }
 },
 "callback_url": "https://webhook.site/cc202161-980d-4f8a-bdd3-c0781fcd004e",
 "widget_url": {},
 "metadata": {},
 "options": {},
 "invocation_id": "5321578a-e17a-4139-aea2-3b8bbaa39795",
 "invocation_status": "RUNNING",
 "transaction_id": "01G10CQP6A1F63HFD6EX6RYE5T",
 "product_flow_name": "process_transaction",
 "connector_job_id": "f6ff74d0-ee98-4988-a8ca-7c2f79035890",
 "request_collection": {
 "data": {
 "organizations": [
 {
 "@type": "customer",
 "has_transaction_identifier": {
 "has_value": "b51b9d92-2d0e-482a-9504-42d41cce1fa0"
 }
 }
 ],
 "staircase_products": [
 {
 "@type": "staircase_product",
 "has_product_name": {
 "has_value": "employment"
 }
 }
 ]
 },
 "transaction_id": "01G10CQP6A1F63HFD6EX6RYE5T",
 "collection_id": "01G10CQPDSFST529E6ZMVDEWNZ",
 "metadata": {
 "created_at": "2022-04-19T03:49:03.033961-04:00",
 "validation": false
 }
 },
 "response_collection": {
 "transaction_id": "01G10CQP6A1F63HFD6EX6RYE5T",
 "metadata": {
 "created_at": "2022-04-19T03:49:03.112350-04:00",
 "invocation_status": "STARTED",
 "last_updated_at": "2022-04-19T03:49:14.969533-04:00",
 "product_name": "los-encompass-service-application",
 "service_invocation": {
 "Connector": {
 "status": "RUNNING",
 "invocation_id": "f6ff74d0-ee98-4988-a8ca-7c2f79035890",
 "connector_flow_name": "process_transaction"
 }
 },
 "validation": false
 },
 "collection_id": "01G10CQPG8QDF8DPN9JMRWHQPH",
 "data": {}
 },
 "flows_responses": {},
 "_links": {
 "health_metrics": "https://russell-dev.staircaseapi.com/code-health-checker/metric/01G10CQP6A1F63HFD6EX6RYE5T?product_name=los-encompass-service-application"
 }
}
```

<!--/source-->

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

```
{
 "request_collection_id": "01G10A9X8HM7QR51HJH6F964G8",
 "response_collection_id": "01G10A9XB8CBCPQA58Z7ZT1GXP",
 "service_invocation": {
 "Connector": {
 "status": "COMPLETED",
 "invocation_id": "d4c2e290-887b-4e20-808f-c3bfafd170da",
 "connector_flow_name": "process_transaction"
 }
 },
 "callback_url": "https://webhook.site/cc202161-980d-4f8a-bdd3-c0781fcd004e",
 "widget_url": {},
 "metadata": {},
 "options": {},
 "invocation_id": "28ab302d-d146-4c3d-94ae-91f7f373be2b",
 "invocation_status": "COMPLETED",
 "transaction_id": "01G10A9WZH3S31WM8DFK68GT0T",
 "product_flow_name": "process_transaction",
 "connector_job_id": "d4c2e290-887b-4e20-808f-c3bfafd170da",
 "request_collection": {
 "metadata": {
 "created_at": "2022-04-19T03:06:34.129585-04:00",
 "validation": false
 },
 "collection_id": "01G10A9X8HM7QR51HJH6F964G8",
 "data": {
 "organizations": [
 {
 "@type": "customer",
 "has_transaction_identifier": {
 "has_value": "b51b9d92-2d0e-482a-9504-42d41cce1fa0"
 }
 }
 ],
 "staircase_products": [
 {
 "@type": "staircase_product",
 "has_product_name": {
 "has_value": "employment"
 }
 }
 ]
 },
 "transaction_id": "01G10A9WZH3S31WM8DFK68GT0T"
 },
 "response_collection": {
 "metadata": {
 "created_at": "2022-04-19T03:06:34.216863-04:00",
 "invocation_status": "COMPLETED",
 "last_updated_at": "2022-04-19T03:08:33.526311-04:00",
 "product_name": "los-encompass-service-application",
 "service_invocation": {
 "Connector": {
 "status": "RUNNING",
 "invocation_id": "d4c2e290-887b-4e20-808f-c3bfafd170da",
 "connector_flow_name": "process_transaction"
 }
 },
 "validation": false
 },
 "collection_id": "01G10A9XB8CBCPQA58Z7ZT1GXP",
 "data": {
 "message": "EPC Transaction Completed."
 },
 "transaction_id": "01G10A9WZH3S31WM8DFK68GT0T"
 },
 "flows_responses": {},
 "_links": {
 "health_metrics": "https://russell-dev.staircaseapi.com/code-health-checker/metric/01G10A9WZH3S31WM8DFK68GT0T?product_name=los-encompass-service-application"
 }
}
```

<!--/source-->

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

```
{
 "request_collection_id": "01FX2ZTZEVR0QW15HV0M1X953S",
 "response_collection_id": "01FX2ZTZGP8GTVDXE1ECSKTF2A",
 "service_invocation": {
 "Connector": {
 "status": "FAILED",
 "invocation_id": "c3b02a42-53c9-49c7-981a-b3da462db747",
 "connector_flow_name": "process_transaction"
 },
 "Translator": {}
 },
 "metadata": {},
 "options": {},
 "invocation_id": "61fa5822-56a5-4f03-ac96-06c88831ca8a",
 "invocation_status": "FAILED",
 "transaction_id": "01FX2ZTZ7A8615R3R35TC794X7",
 "product_flow_name": "process_transaction",
 "connector_job_id": "c3b02a42-53c9-49c7-981a-b3da462db747",
 "failure_reason": "Service Connector failed. Connector flow failed. Response payload: {'Error': 'FailStateError', 'Cause': {'errorMessage': 'EPC Transaction Failed', 'errorType': 'FailStateError', 'requestId': 'c5bb2503-a108-40b6-90ec-319157320d0a'}}",
 "request_collection": {
 "collection_id": "01FX2ZTZEVR0QW15HV0M1X953S",
 "transaction_id": "01FX2ZTZ7A8615R3R35TC794X7",
 "data": {
 "organizations": [
 {
 "@type": "customer",
 "has_transaction_identifier": {
 "has_value": "2a47215f-d9f0-49cd-959d-95aec2f8a4f2"
 }
 }
 ],
 "staircase_products": [
 {
 "@type": "staircase_product",
 "has_product_name": {
 "has_value": "income"
 }
 }
 ]
 },
 "metadata": {
 "created_at": "2022-03-01T09:58:35.099460-05:00",
 "validation": false
 }
 },
 "response_collection": {
 "collection_id": "01FX2ZTZGP8GTVDXE1ECSKTF2A",
 "transaction_id": "01FX2ZTZ7A8615R3R35TC794X7",
 "data": {},
 "metadata": {
 "created_at": "2022-03-01T09:58:35.158772-05:00",
 "invocation_status": "FAILED",
 "last_updated_at": "2022-03-01T10:00:00.978478-05:00",
 "service_invocation": {
 "Connector": {
 "status": "FAILED",
 "invocation_id": "c3b02a42-53c9-49c7-981a-b3da462db747",
 "connector_flow_name": "process_transaction"
 },
 "Translator": {}
 },
 "validation": false
 }
 },
 "flows_responses": {},
 "_links": {
 "health_metrics": "https://russell-dev.staircaseapi.com/code-health-checker/metric/01FX2ZTZ7A8615R3R35TC794X7?product_name=los-encompass-service-application"
 }
}
```

<!--/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-->

##### 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--> |
| `invocation_id` required | `string (ulid)` path | `01FEK8V6RT027SRAW903G97DPF` | <!--source:api-specifications-->Invocation ID<!--/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-->`COMPLETED``FAILED``RUNNING``STARTED` |
| `transaction_id`required | `string` | <!--source:api-specifications-->Transaction 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--> |

##### 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` | — |

##### Other responses

`404`

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

### Encompass Process Automation
<!--/source-->

`POST` `/products/los-encompass-ui-process-automation/invocations`

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

#### Process Automation
<!--/source-->

`invokeEncompassProcessAutomationPP`

<!--source:api-specifications-->
Process Automation Adapters are RPA (Robotic Process Automation) system that emulate humans actions interacting with Encompass systems. Process Automation service can interact with system the same way people do

#### Prerequisite

##### Set up Encompass credentials

Call Setup Encompass Credentials to store your Encompass credentials for adapters use.

#### Staircase Encompass Services

The services we currently support are as follows. You can check the Service Application to get the collection of these services defined in the staircase lexicon.

Show the rest
- Staircase Employment Verification
- Staircase Income Verification
- Staircase Asset Verification

#### How to Use

Setup Staircase Service

It creates requested Staircase service if it's not created before and changes service credentials so that it works with the current environment.

1. RPA system goes under the menu Admin > Company/User Setup
1. Opens Service Management
1. If the service sent in the request is not in the list, it adds this service first.
1. Then, it completes the installation process by injecting the credentials you added with the setup service.

`Important notice`: You can set up only one service at a time with this product flow!

#### Create Loan

It creates loan on the Encompass system with the provided information.

#### Order Verification

It orders a verification of a selected Staircase service for the given loan number. Setup Staircase Service must be called for the service before ordering a verification.

<!--/source-->

##### Request

<!--source:api-specifications-->
Create LoanSetup Staircase ServiceOrder Verification
<!--/source-->

<!--source:api-specifications-->
application/json Copy
```
{
 "product_flow_name": "create_loan",
 "request_data": {
 "people": [
 {
 "@type": "borrower",
 "has_first_name": {
 "has_value": "John"
 },
 "has_last_name": {
 "has_value": "Jackson"
 },
 "has_birth_date": {
 "has_value": "1993-11-01"
 },
 "has_taxpayer_identifier_value": {
 "has_value": 666234390
 },
 "with_address": [
 {
 "@type": "address",
 "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
 },
 "has_country_name": {
 "has_value": "US"
 }
 }
 ],
 "contact_at": [
 {
 "@type": "contact_information",
 "has_email_address": {
 "has_value": "test@test.com"
 }
 },
 {
 "@type": "contact_information",
 "has_email_address": {
 "has_value": 1
 }
 }
 ],
 "works_for": [
 {
 "@type": "organization",
 "has_organization_name": {
 "has_value": "Amazon"
 }
 }
 ]
 }
 ]
 }
}
```

<!--/source-->

<!--source:api-specifications-->
application/json Copy
```
{
 "product_flow_name": "setup_staircase_service",
 "request_data": {
 "services": [
 {
 "has_service_name": {
 "has_value": "Staircase Employment Demo"
 }
 },
 {
 "has_service_name": {
 "has_value": "Staircase Income Demo"
 }
 }
 ]
 }
}
```

<!--/source-->

<!--source:api-specifications-->
application/json Copy
```
{
 "product_flow_name": "order_verification",
 "request_data": {
 "services": [
 {
 "loans": [
 {
 "with_loan_identifier": [
 {
 "has_loan_identifier": {
 "has_value": "TEST211200121"
 }
 }
 ]
 }
 ]
 },
 {
 "has_service_name": {
 "has_value": "Staircase Employment Demo"
 }
 }
 ]
 }
}
```

<!--/source-->

##### Response

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

<!--source:api-specifications-->
application/json Copy Create Invocation Triggered Successfully

```
{
 "invocation_id": "01FDYNKEP7DRV8HAE4X6J580NP"
}
```

<!--/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 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 |
| --- | --- | --- |
| `transaction_id` | `string` | <!--source:api-specifications-->Staircase Transaction ID used for invocation<!--/source--> |
| `request_data` | `object` | <!--source:api-specifications-->Empty Object<!--/source--> |
| `people` | `object[]` | <!--source:api-specifications-->Person Array<!--/source--> |
| `@type` | `string` | <!--source:api-specifications-->Person's Type<!--/source-->`borrower` |
| `has_first_name` | `object` | <!--source:api-specifications-->Borrower's First Name<!--/source--> |
| `has_value` | `string` | <!--source:api-specifications-->Value<!--/source--> |
| `has_last_name` | `object` | <!--source:api-specifications-->Borrower's Last Name<!--/source--> |
| `has_value` | `string` | <!--source:api-specifications-->Value<!--/source--> |
| `has_birth_date` | `object` | <!--source:api-specifications-->Borrower's Birthday<!--/source--> |
| `has_value` | `string` | <!--source:api-specifications-->Value<!--/source--> |
| `has_taxpayer_identifier_value` | `object` | <!--source:api-specifications-->Borrower's Taxpayer Identifier Value (SSN)<!--/source--> |
| `has_value` | `string` | <!--source:api-specifications-->Value<!--/source--> |
| `with_address` | `object[]` | <!--source:api-specifications-->Borrower's Address Array<!--/source--> |
| `@type` | `string` | <!--source:api-specifications-->Object Type<!--/source-->`address` |
| `has_address_line_1_text` | `object` | <!--source:api-specifications-->Address Line 1<!--/source--> |
| `has_city_name` | `object` | <!--source:api-specifications-->City<!--/source--> |
| `has_state_code` | `object` | <!--source:api-specifications-->State Code<!--/source--> |
| `has_postal_code` | `object` | <!--source:api-specifications-->Postal Code<!--/source--> |
| `has_country_name` | `object` | <!--source:api-specifications-->Country Name<!--/source--> |
| `contact_at` | `object[]` | <!--source:api-specifications-->Contact Information Array<!--/source--> |
| `@type` | `string` | <!--source:api-specifications-->Object Type<!--/source-->`contact_information` |
| `has_email_address` | `object` | <!--source:api-specifications-->Email Address<!--/source--> |
| `has_phone_number` | `object` | <!--source:api-specifications-->Phone Number<!--/source--> |
| `works_for` | `object[]` | <!--source:api-specifications-->Employment Information Array<!--/source--> |
| `@type` | `string` | <!--source:api-specifications-->Object Type<!--/source-->`organization` |
| `has_organization_name` | `object` | <!--source:api-specifications-->Organization Name<!--/source--> |
| `services` | `object[]` | <!--source:api-specifications-->Services Array<!--/source--> |
| `has_service_name` | `object` | <!--source:api-specifications-->Name of the service to be used in Encompass automation<!--/source--> |
| `has_value` | `string` | <!--source:api-specifications-->Service Name<!--/source--> |
| `mortgage_products` | `object[]` | <!--source:api-specifications-->Mortgage Products Array<!--/source--> |
| `has_partner_name` | `object` | <!--source:api-specifications-->Name of the partner to be used for verification<!--/source--> |
| `has_value` | `string` | <!--source:api-specifications-->Partner Name<!--/source--> |
| `loans` | `object[]` | <!--source:api-specifications-->Loans Array<!--/source--> |
| `with_loan_identifier` | `object[]` | <!--source:api-specifications-->Loan Identifier Array<!--/source--> |
| `has_loan_identifier` | `object` | <!--source:api-specifications-->Loan Identifier<!--/source--> |
| `product_flow_name` | `string` | <!--source:api-specifications-->Select product flow<!--/source-->`create_loan``order_verification``setup_staircase_service` |

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

<!--source:api-specifications-->
1 fields
<!--/source-->
<!--source:api-specifications-->
Create Invocation Triggered Successfully
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `invocation_id` | `string` | <!--source:api-specifications-->Invocation 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-->
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
<!--/source-->

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

##### Other responses

`404`

`GET` `/products/los-encompass-ui-process-automation/invocations/{invocation_id}`

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

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

`getEncompassProcessAutomationInvocationResponse`

<!--source:api-specifications-->
Retrieves Invocation Response

<!--/source-->

##### Response

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

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

```
{
 "invocation_id": "9aefb465-90fb-4d50-8ae6-2df2b58373f4",
 "invocation_status": "STARTED",
 "product_flow_name": "create_loan",
 "transaction_id": "01F6NAMXWN2XVBD1YJ92A6S6R4",
 "request_collection_id": "01F6NAQ4894HPMCBGB4P0G95XK"
}
```

<!--/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-->

##### 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--> |
| `invocation_id` required | `string (ulid)` path | `01FEK8V6RT027SRAW903G97DPF` | <!--source:api-specifications-->Invocation ID<!--/source--> |

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

<!--source:api-specifications-->
7 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-->`COMPLETED``FAILED``RUNNING``STARTED` |
| `transaction_id`required | `string` | <!--source:api-specifications-->Transaction 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--> |

##### 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` | — |

##### Other responses

`404`

## Providers

- Byte Software
- ICE Mortgage Technology
- LendingPad

## Errors

`400``403``404``405``422``500`
