<!-- https://staircase.co/products/assessment/tax -->
# Tax

# Tax

Property tax at parcel level: assessed values, millage, exemptions, and the tax-roll history behind them.

A caller sends a parcel and receives its tax position — assessed, exempt and taxable values, the authority levying them, and the roll history year on year.

Two consumers with different needs. Escrow calculation needs the current annual obligation; collateral analysis needs the history, because a long gap between assessed and market value is itself a signal.

## How it works

The dual listing is real: this is the property side, and Tax under Verification is the borrower side — transcripts and returns. They share a name in the source catalogue and nothing else.

The class carrying this data is `tax` in the property model, together with the authority, jurisdiction and exemption classes it points at.

## Dual listing

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

## Operations

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

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

`POST` `/products/property-taxes/invocations`

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

#### Invoke Product Flow
<!--/source-->

`InvokeSpecificProductFlow`

<!--source:api-specifications-->
This endpoint retrieves the Property Taxes for the given property using different partners.

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

Note: You cannot provide `product_flow_name` and `vendor_name` parameters together. When provided together, simply `product_flow_name` is used.

Show the rest

#### Retrieving the Invocation Result

After invocation, endpoint returns an `invocation_id` which you can poll for its status using /products/property-taxes/invocations/{invocation_id} 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.

<!--/source-->

##### Request

<!--source:api-specifications-->
Flow Invocation with Collection IDRequest Example
<!--/source-->

<!--source:api-specifications-->
application/json Copy
```
{
 "vendor_name": "ernst",
 "transaction_id": "01F6NAMXWN2XVBD1YJ92A6S6R4",
 "request_collection_id": "01F6QF1QJF20DMSXH4SYXKB1SN"
}
```

<!--/source-->

<!--source:api-specifications-->
application/json Copy
```
{
 "vendor_name": "ernst",
 "request_data": {
 "addresses": [
 {
 "@id": "01FMM41S2R86Q33TC28H9RC197",
 "@type": "residential_address",
 "has_county_name": {
 "has_value": "Kent"
 },
 "has_state_code": {
 "has_value": "TX"
 },
 "has_city_name": {
 "has_value": "Houston"
 },
 "has_postal_code": {
 "has_value": "77069"
 },
 "has_address_line_1_text": {
 "has_value": "5118 Westerham Pl"
 }
 }
 ],
 "properties": [
 {
 "@id": "01FMM41S2RE99T8XGQJC2MTE8E",
 "@type": "property",
 "with_value": [
 "01FMM41S2RM5X2RWJJG2NFH91Z"
 ],
 "with_address": [
 "01FMM41S2R86Q33TC28H9RC197"
 ]
 }
 ],
 "property_valuations": [
 {
 "@id": "01FMM41S2RM5X2RWJJG2NFH91Z",
 "@type": "property_valuation",
 "has_property_valuation_amount": {
 "has_value": 374900
 }
 }
 ]
 }
}
```

<!--/source-->

##### Response

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

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

```
{
 "product_flow_name": "ErnstPropertyTaxes",
 "metadata": {},
 "request_collection_id": "01FFHJ4JCWGHV38SC1NJ8TVNFY",
 "invocation_id": "08f0f7bd-0158-4ab8-845c-f94eafa3859c",
 "invocation_status": "STARTED",
 "transaction_id": "01FFHJ2ZVS4P7N4AV5W0993QMD"
}
```

<!--/source-->

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

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

<!--/source-->

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

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

<!--/source-->

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

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

<!--/source-->

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

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

<!--/source-->

##### Parameters

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

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

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

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

| Field | Type | Description |
| --- | --- | --- |
| `vendor_name`required | `string` | <!--source:api-specifications-->Vendor name. If not specified default vendor will be used.<!--/source-->`ernst` |
| `transaction_id`required | `string` | <!--source:api-specifications-->Transaction ID used for invocation.<!--/source--> |
| `request_collection_id`required | `string` | <!--source:api-specifications-->Request Collection ID.<!--/source--> |
| `response_collection_id` | `string` | <!--source:api-specifications-->Response Collection ID. The response will be saved into this collection if response_collection_id is provided. If not provided, a new collection will be created for response.<!--/source--> |
| `callback_url` | `string (uri)` | <!--source:api-specifications-->Callback URL.<!--/source--> |
| `request_data` | `object` | <!--source:api-specifications-->Request Data. If request_collection_id is not provided and request_data is provided, request data will be saved into a new collection and that collection will be used for invocation.<!--/source--> |
| `addresses`required | `object[]` | — |
| `@type`required | `string` | — |
| `@id`required | `string` | — |
| `has_county_name`required | `object` | — |
| `has_value`required | `string` | — |
| `has_state_code`required | `object` | — |
| `has_value`required | `string` | — |
| `has_city_name`required | `object` | — |
| `has_value`required | `string` | — |
| `has_postal_code` | `object` | — |
| `has_value`required | `string` | — |
| `has_address_line_1_text` | `object` | — |
| `has_value`required | `string` | — |
| `properties`required | `object[]` | — |
| `@type`required | `string` | — |
| `@id`required | `string` | — |
| `with_value`required | `string[]` | — |
| `with_address`required | `string[]` | — |
| `property_valuations`required | `object[]` | — |
| `@type`required | `string` | — |
| `@id`required | `string` | — |
| `has_property_valuation_amount`required | `object` | — |
| `has_value`required | `number` | — |

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

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

| Field | Type | Description |
| --- | --- | --- |
| `invocation_id` | `string` | <!--source:api-specifications-->Invocation ID.<!--/source--> |
| `invocation_status` | `string` | <!--source:api-specifications-->The status of the invocation.<!--/source-->`STARTED` |
| `transaction_id` | `string` | <!--source:api-specifications-->Transaction ID.<!--/source--> |
| `product_flow_name` | `string` | <!--source:api-specifications-->Product flow name.<!--/source-->`ErnstPropertyTaxes` |
| `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-->
403 invalid error
<!--/source-->

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

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

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

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

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

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

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

`GET` `/products/property-taxes/invocations/{invocation_id}`

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

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

`RetrieveProductFlowInvocationStatus`

<!--source:api-specifications-->
Retrieve status of a Product Flow Invocation
<!--/source-->

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

<!--/source-->

##### Response

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

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

```
{
 "request_collection_id": "01FFHJ4JCWGHV38SC1NJ8TVNFY",
 "response_collection_id": "01FFHKS6W9J0JDTGTQJB9Y2RWB",
 "metadata": {},
 "invocation_id": "08f0f7bd-0158-4ab8-845c-f94eafa3859c",
 "invocation_status": "RUNNING",
 "transaction_id": "01FFHJ2ZVS4P7N4AV5W0993QMD",
 "product_flow_name": "ErnstPropertyTaxes",
 "request_collection": {
 "metadata": {
 "created_at": "2021-09-14T03:08:00.284090-04:00",
 "validation": false
 },
 "transaction_id": "01FFHJ2ZVS4P7N4AV5W0993QMD",
 "collection_id": "01FFHJ4JCWGHV38SC1NJ8TVNFY",
 "data": {
 "addresses": [
 {
 "@id": "01FMM41S2R86Q33TC28H9RC197",
 "@type": "residential_address",
 "has_county_name": {
 "has_value": "Kent"
 },
 "has_state_code": {
 "has_value": "TX"
 },
 "has_city_name": {
 "has_value": "Houston"
 },
 "has_postal_code": {
 "has_value": "77069"
 },
 "has_address_line_1_text": {
 "has_value": "5118 Westerham Pl"
 }
 }
 ],
 "properties": [
 {
 "@id": "01FMM41S2RE99T8XGQJC2MTE8E",
 "@type": "property",
 "with_value": [
 "01FMM41S2RM5X2RWJJG2NFH91Z"
 ],
 "with_address": [
 "01FMM41S2R86Q33TC28H9RC197"
 ]
 }
 ],
 "property_valuations": [
 {
 "@id": "01FMM41S2RM5X2RWJJG2NFH91Z",
 "@type": "property_valuation",
 "has_property_valuation_amount": {
 "has_value": 374900
 }
 }
 ]
 }
 },
 "response_collection": {
 "metadata": {
 "created_at": "2021-09-14T03:36:45.193268-04:00",
 "validation": false
 },
 "transaction_id": "01FFHJ2ZVS4P7N4AV5W0993QMD",
 "collection_id": "01FFHKS6W9J0JDTGTQJB9Y2RWB",
 "data": {
 "taxes": [
 {
 "@id": "TX1010000",
 "@type": "property_tax",
 "with_payment": [
 "01FN8GGQ44MPFQPRKX2QW3JZJ7"
 ],
 "has_tax_authority_name": {
 "has_value": "HARRIS COUNTY"
 },
 "has_tax_authority_account_identifier": {
 "has_value": "TX1010000"
 },
 "has_tax_description": {
 "has_value": "Tax Bill Installment 1"
 }
 },
 {
 "@id": "TX1010339",
 "@type": "property_tax",
 "with_payment": [
 "01FN8GGQ44W42284VRXP5G53RE"
 ],
 "has_tax_authority_name": {
 "has_value": "HEATHERLOCH MUD (ASMT OF SW)"
 },
 "has_tax_authority_account_identifier": {
 "has_value": "TX1010339"
 },
 "has_tax_description": {
 "has_value": "Tax Bill Installment 1"
 }
 }
 ],
 "payments": [
 {
 "@id": "01FN8GGQ44MPFQPRKX2QW3JZJ7",
 "@type": "tax_payment",
 "has_next_payment_due_date": {
 "has_value": "2022-01-31"
 },
 "has_payment_amount": {
 "has_value": "3880.99"
 }
 },
 {
 "@id": "01FN8GGQ44W42284VRXP5G53RE",
 "@type": "tax_payment",
 "has_next_payment_due_date": {
 "has_value": "2021-01-31"
 },
 "has_payment_amount": {
 "has_value": "1063.92"
 }
 }
 ]
 }
 }
}
```

<!--/source-->

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

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

<!--/source-->

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

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

<!--/source-->

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

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

<!--/source-->

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

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

<!--/source-->

##### Parameters

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

| Parameter | Type | Example | Description |
| --- | --- | --- | --- |
| `x-api-key` required | `string` header | — | <!--source:api-specifications-->Environment API Key.<!--/source--> |
| `invocation_id` required | `string (ulid)` path | `01F0KHKADN0HRFXMCQQXPA6AFZ` | <!--source:api-specifications-->Product flow invocation identifier<!--/source--> |

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

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

| Field | Type | Description |
| --- | --- | --- |
| `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` | — |
| `taxes` | `object[]` | — |
| `@type` | `string` | — |
| `@id` | `string` | — |
| `with_payment` | `string[]` | — |
| `has_tax_authority_name` | `object` | — |
| `has_tax_authority_account_identifier` | `object` | — |
| `has_tax_description` | `object` | — |
| `payments` | `object[]` | — |
| `@type` | `string` | — |
| `@id` | `string` | — |
| `has_next_payment_due_date` | `object` | — |
| `has_payment_amount` | `object` | — |
| `metadata` | `object` | <!--source:api-specifications-->Metadata about collection, f.e version of used Staircase schema.<!--/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--> |

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

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

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

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

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

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

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

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

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

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

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

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

`GET` `/products/property-taxes/request-schema`

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

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

`retrieveRequestSchema`

<!--source:api-specifications-->
Retrieve Request Schema retrieves a JSON schema for the request collection that you can provide to the invocation.

If you'd like to retrieve some examples for the request collection, use `return_examples=True` query parameter.

<!--/source-->

##### Response

<!--source:api-specifications-->
200 Schema200 Schema with Examples400 InvalidReturnExamplesValue400 text/html403404 GetProduct404 text/html500
<!--/source-->

<!--source:api-specifications-->
application/json Copy Request schema (possibly with examples) is successfully returned.

```
{
 "schema": {
 "type": "object",
 "properties": {
 "addresses": {
 "type": "array",
 "items": {
 "type": "object",
 "required": [
 "@type",
 "@id",
 "has_county_name",
 "has_state_code",
 "has_city_name"
 ],
 "properties": {
 "@type": {
 "type": "string"
 },
 "@id": {
 "type": "string"
 },
 "has_county_name": {
 "type": "object",
 "required": [
 "has_value"
 ],
 "properties": {
 "has_value": {
 "type": "string"
 }
 }
 },
 "has_state_code": {
 "type": "object",
 "required": [
 "has_value"
 ],
 "properties": {
 "has_value": {
 "type": "string"
 }
 }
 },
 "has_city_name": {
 "type": "object",
 "required": [
 "has_value"
 ],
 "properties": {
 "has_value": {
 "type": "string"
 }
 }
 },
 "has_postal_code": {
 "type": "object",
 "required": [
 "has_value"
 ],
 "properties": {
 "has_value": {
 "type": "string"
 }
 }
 },
 "has_address_line_1_text": {
 "type": "object",
 "required": [
 "has_value"
 ],
 "properties": {
 "has_value": {
 "type": "string"
 }
 }
 }
 }
 }
 },
 "properties": {
 "type": "array",
 "items": {
 "type": "object",
 "required": [
 "@type",
 "@id",
 "with_value",
 "with_address"
 ],
 "properties": {
 "@type": {
 "type": "string"
 },
 "@id": {
 "type": "string"
 },
 "with_value": {
 "type": "array",
 "items": {
 "type": "string"
 }
 },
 "with_address": {
 "type": "array",
 "items": {
 "type": "string"
 }
 }
 }
 }
 },
 "property_valuations": {
 "type": "array",
 "items": {
 "type": "object",
 "required": [
 "@type",
 "@id",
 "has_property_valuation_amount"
 ],
 "properties": {
 "@type": {
 "type": "string"
 },
 "@id": {
 "type": "string"
 },
 "has_property_valuation_amount": {
 "type": "object",
 "required": [
 "has_value"
 ],
 "properties": {
 "has_value": {
 "type": "number"
 }
 }
 }
 }
 }
 }
 },
 "required": [
 "addresses",
 "properties",
 "property_valuations"
 ],
 "description": "Request Data. If request_collection_id is not provided and request_data is provided, request data will be saved into a new collection and that collection will be used for invocation."
 }
}
```

<!--/source-->

<!--source:api-specifications-->
application/json Copy Request schema (possibly with examples) is successfully returned.

```
{
 "schema": {
 "type": "object",
 "properties": {
 "addresses": {
 "type": "array",
 "items": {
 "type": "object",
 "required": [
 "@type",
 "@id",
 "has_county_name",
 "has_state_code",
 "has_city_name"
 ],
 "properties": {
 "@type": {
 "type": "string"
 },
 "@id": {
 "type": "string"
 },
 "has_county_name": {
 "type": "object",
 "required": [
 "has_value"
 ],
 "properties": {
 "has_value": {
 "type": "string"
 }
 }
 },
 "has_state_code": {
 "type": "object",
 "required": [
 "has_value"
 ],
 "properties": {
 "has_value": {
 "type": "string"
 }
 }
 },
 "has_city_name": {
 "type": "object",
 "required": [
 "has_value"
 ],
 "properties": {
 "has_value": {
 "type": "string"
 }
 }
 },
 "has_postal_code": {
 "type": "object",
 "required": [
 "has_value"
 ],
 "properties": {
 "has_value": {
 "type": "string"
 }
 }
 },
 "has_address_line_1_text": {
 "type": "object",
 "required": [
 "has_value"
 ],
 "properties": {
 "has_value": {
 "type": "string"
 }
 }
 }
 }
 }
 },
 "properties": {
 "type": "array",
 "items": {
 "type": "object",
 "required": [
 "@type",
 "@id",
 "with_value",
 "with_address"
 ],
 "properties": {
 "@type": {
 "type": "string"
 },
 "@id": {
 "type": "string"
 },
 "with_value": {
 "type": "array",
 "items": {
 "type": "string"
 }
 },
 "with_address": {
 "type": "array",
 "items": {
 "type": "string"
 }
 }
 }
 }
 },
 "property_valuations": {
 "type": "array",
 "items": {
 "type": "object",
 "required": [
 "@type",
 "@id",
 "has_property_valuation_amount"
 ],
 "properties": {
 "@type": {
 "type": "string"
 },
 "@id": {
 "type": "string"
 },
 "has_property_valuation_amount": {
 "type": "object",
 "required": [
 "has_value"
 ],
 "properties": {
 "has_value": {
 "type": "number"
 }
 }
 }
 }
 }
 }
 },
 "required": [
 "addresses",
 "properties",
 "property_valuations"
 ],
 "description": "Request Data. If request_collection_id is not provided and request_data is provided, request data will be saved into a new collection and that collection will be used for invocation."
 },
 "examples": [
 {
 "addresses": [
 {
 "@id": "01FMM41S2R86Q33TC28H9RC197",
 "@type": "residential_address",
 "has_county_name": {
 "has_value": "Kent"
 },
 "has_state_code": {
 "has_value": "TX"
 },
 "has_city_name": {
 "has_value": "Houston"
 },
 "has_postal_code": {
 "has_value": "77069"
 },
 "has_address_line_1_text": {
 "has_value": "5118 Westerham Pl"
 }
 }
 ],
 "properties": [
 {
 "@id": "01FMM41S2RE99T8XGQJC2MTE8E",
 "@type": "property",
 "with_value": [
 "01FMM41S2RM5X2RWJJG2NFH91Z"
 ],
 "with_address": [
 "01FMM41S2R86Q33TC28H9RC197"
 ]
 }
 ],
 "property_valuations": [
 {
 "@id": "01FMM41S2RM5X2RWJJG2NFH91Z",
 "@type": "property_valuation",
 "has_property_valuation_amount": {
 "has_value": 374900
 }
 }
 ]
 }
 ]
}
```

<!--/source-->

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

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

<!--/source-->

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

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

<!--/source-->

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

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

<!--/source-->

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

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

<!--/source-->

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

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

<!--/source-->

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

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

<!--/source-->

##### Parameters

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

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

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

<!--source:api-specifications-->
2 fields
<!--/source-->
<!--source:api-specifications-->
Request schema (possibly with examples) is successfully returned.
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `schema`required | `object` | <!--source:api-specifications-->Schema for the Request Collection<!--/source--> |
| `examples` | `object` | <!--source:api-specifications-->Each item in the dictionary corresponds to the name of the example and dictionary content is the sample response.<!--/source--> |

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

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

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

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

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

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

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

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

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

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

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

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

`GET` `/products/property-taxes/response-schema`

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

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

`retrieveResponseSchema`

<!--source:api-specifications-->
Retrieve Response Schema returns the JSON schema for the response collection, created by an invocation.

If you would like to retrieve examples along with the schema, you can provide `return_examples=True` query parameter.

<!--/source-->

##### Response

<!--source:api-specifications-->
200 Schema200 Schema with Examples Response400 InvalidReturnExamplesValue400 text/html403404 GetProduct404 text/html500
<!--/source-->

<!--source:api-specifications-->
application/json Copy Response schema (possibly with examples) is successfully returned.

```
{
 "schema": {
 "type": "object",
 "properties": {
 "taxes": {
 "type": "array",
 "items": {
 "type": "object",
 "properties": {
 "@type": {
 "type": "string"
 },
 "@id": {
 "type": "string"
 },
 "with_payment": {
 "type": "array",
 "items": {
 "type": "string"
 }
 },
 "has_tax_authority_name": {
 "type": "object",
 "properties": {
 "has_value": {
 "type": "string"
 }
 }
 },
 "has_tax_authority_account_identifier": {
 "type": "object",
 "properties": {
 "has_value": {
 "type": "string"
 }
 }
 },
 "has_tax_description": {
 "type": "object",
 "properties": {
 "has_value": {
 "type": "string"
 }
 }
 }
 }
 }
 },
 "payments": {
 "type": "array",
 "items": {
 "type": "object",
 "properties": {
 "@type": {
 "type": "string"
 },
 "@id": {
 "type": "string"
 },
 "has_next_payment_due_date": {
 "type": "object",
 "properties": {
 "has_value": {
 "type": "string"
 }
 }
 },
 "has_payment_amount": {
 "type": "object",
 "properties": {
 "has_value": {
 "type": "string"
 }
 }
 }
 }
 }
 }
 }
 }
}
```

<!--/source-->

<!--source:api-specifications-->
application/json Copy Response schema (possibly with examples) is successfully returned.

```
{
 "schema": {
 "type": "object",
 "properties": {
 "taxes": {
 "type": "array",
 "items": {
 "type": "object",
 "properties": {
 "@type": {
 "type": "string"
 },
 "@id": {
 "type": "string"
 },
 "with_payment": {
 "type": "array",
 "items": {
 "type": "string"
 }
 },
 "has_tax_authority_name": {
 "type": "object",
 "properties": {
 "has_value": {
 "type": "string"
 }
 }
 },
 "has_tax_authority_account_identifier": {
 "type": "object",
 "properties": {
 "has_value": {
 "type": "string"
 }
 }
 },
 "has_tax_description": {
 "type": "object",
 "properties": {
 "has_value": {
 "type": "string"
 }
 }
 }
 }
 }
 },
 "payments": {
 "type": "array",
 "items": {
 "type": "object",
 "properties": {
 "@type": {
 "type": "string"
 },
 "@id": {
 "type": "string"
 },
 "has_next_payment_due_date": {
 "type": "object",
 "properties": {
 "has_value": {
 "type": "string"
 }
 }
 },
 "has_payment_amount": {
 "type": "object",
 "properties": {
 "has_value": {
 "type": "string"
 }
 }
 }
 }
 }
 }
 }
 },
 "examples": [
 {
 "taxes": [
 {
 "@id": "TX1010000",
 "@type": "property_tax",
 "with_payment": [
 "01FN8GGQ44MPFQPRKX2QW3JZJ7"
 ],
 "has_tax_authority_name": {
 "has_value": "HARRIS COUNTY"
 },
 "has_tax_authority_account_identifier": {
 "has_value": "TX1010000"
 },
 "has_tax_description": {
 "has_value": "Tax Bill Installment 1"
 }
 },
 {
 "@id": "TX1010339",
 "@type": "property_tax",
 "with_payment": [
 "01FN8GGQ44W42284VRXP5G53RE"
 ],
 "has_tax_authority_name": {
 "has_value": "HEATHERLOCH MUD (ASMT OF SW)"
 },
 "has_tax_authority_account_identifier": {
 "has_value": "TX1010339"
 },
 "has_tax_description": {
 "has_value": "Tax Bill Installment 1"
 }
 }
 ],
 "payments": [
 {
 "@id": "01FN8GGQ44MPFQPRKX2QW3JZJ7",
 "@type": "tax_payment",
 "has_next_payment_due_date": {
 "has_value": "2022-01-31"
 },
 "has_payment_amount": {
 "has_value": "3880.99"
 }
 },
 {
 "@id": "01FN8GGQ44W42284VRXP5G53RE",
 "@type": "tax_payment",
 "has_next_payment_due_date": {
 "has_value": "2021-01-31"
 },
 "has_payment_amount": {
 "has_value": "1063.92"
 }
 }
 ]
 }
 ]
}
```

<!--/source-->

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

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

<!--/source-->

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

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

<!--/source-->

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

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

<!--/source-->

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

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

<!--/source-->

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

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

<!--/source-->

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

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

<!--/source-->

##### Parameters

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

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

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

<!--source:api-specifications-->
2 fields
<!--/source-->
<!--source:api-specifications-->
Response schema (possibly with examples) is successfully returned.
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `schema`required | `object` | <!--source:api-specifications-->JSON-Schema as a single object<!--/source--> |
| `examples` | `object` | <!--source:api-specifications-->A key-value pair for the examples. Keys are the example names, while values correspond to the example values for the response collections you can retrieve.<!--/source--> |

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

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

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

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

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

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

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

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

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

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

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

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

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

##### 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://staircase.stoplight.io/docs/api-reference/customer-account-manager-service.yml/paths/~1products~1refresh/post"
}
```

<!--/source-->

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

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

<!--/source-->

##### Parameters

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

| Parameter | Type | Description |
| --- | --- | --- |
| `x-api-key` required | `string` header | <!--source:api-specifications-->Environment API Key.<!--/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`

`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 /products/property-taxes/invocations

<!--/source-->

##### Request

<!--source:api-specifications-->
application/json Copy
```
{
 "data": {
 "addresses": [
 {
 "@id": "01FMM41S2R86Q33TC28H9RC197",
 "@type": "residential_address",
 "has_county_name": {
 "has_value": "Kent"
 },
 "has_state_code": {
 "has_value": "TX"
 },
 "has_city_name": {
 "has_value": "Houston"
 },
 "has_postal_code": {
 "has_value": "77069"
 },
 "has_address_line_1_text": {
 "has_value": "5118 Westerham Pl"
 }
 }
 ],
 "properties": [
 {
 "@id": "01FMM41S2RE99T8XGQJC2MTE8E",
 "@type": "property",
 "with_value": [
 "01FMM41S2RM5X2RWJJG2NFH91Z"
 ],
 "with_address": [
 "01FMM41S2R86Q33TC28H9RC197"
 ]
 }
 ],
 "property_valuations": [
 {
 "@id": "01FMM41S2RM5X2RWJJG2NFH91Z",
 "@type": "property_valuation",
 "has_property_valuation_amount": {
 "has_value": 374900
 }
 }
 ]
 }
}
```

<!--/source-->

##### Response

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

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

```
{
 "transaction_id": "01F0KHK7DN3H5JZ4QJKMYAM6GB",
 "collection_id": "01F6QF1QJF20DMSXH4SYXKB1SN",
 "metadata": {
 "created_at": "2021-09-14T03:08:00.284090-04:00",
 "validation": false
 },
 "data": {
 "addresses": [
 {
 "@id": "01FMM41S2R86Q33TC28H9RC197",
 "@type": "residential_address",
 "has_county_name": {
 "has_value": "Kent"
 },
 "has_state_code": {
 "has_value": "TX"
 },
 "has_city_name": {
 "has_value": "Houston"
 },
 "has_postal_code": {
 "has_value": "77069"
 },
 "has_address_line_1_text": {
 "has_value": "5118 Westerham Pl"
 }
 }
 ],
 "properties": [
 {
 "@id": "01FMM41S2RE99T8XGQJC2MTE8E",
 "@type": "property",
 "with_value": [
 "01FMM41S2RM5X2RWJJG2NFH91Z"
 ],
 "with_address": [
 "01FMM41S2R86Q33TC28H9RC197"
 ]
 }
 ],
 "property_valuations": [
 {
 "@id": "01FMM41S2RM5X2RWJJG2NFH91Z",
 "@type": "property_valuation",
 "has_property_valuation_amount": {
 "has_value": 374900
 }
 }
 ]
 }
}
```

<!--/source-->

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

```
{
 "message": "Unable to create collection. Please check the collectionchr\ndata"
}
```

<!--/source-->

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

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

<!--/source-->

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

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

<!--/source-->

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

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

<!--/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\nhave used a transaction_id to call our services, please submit it to\nStaircase support"
}
```

<!--/source-->

##### Parameters

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

| Parameter | Type | Example | Description |
| --- | --- | --- | --- |
| `x-api-key` required | `string` header | — | <!--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-->
1 fields
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `data` | `object` | <!--source:api-specifications-->Request Data. If request_collection_id is not provided and request_data is provided, request data will be saved into a new collection and that collection will be used for invocation.<!--/source--> |
| `addresses`required | `object[]` | — |
| `@type`required | `string` | — |
| `@id`required | `string` | — |
| `has_county_name`required | `object` | — |
| `has_value`required | `string` | — |
| `has_state_code`required | `object` | — |
| `has_value`required | `string` | — |
| `has_city_name`required | `object` | — |
| `has_value`required | `string` | — |
| `has_postal_code` | `object` | — |
| `has_value`required | `string` | — |
| `has_address_line_1_text` | `object` | — |
| `has_value`required | `string` | — |
| `properties`required | `object[]` | — |
| `@type`required | `string` | — |
| `@id`required | `string` | — |
| `with_value`required | `string[]` | — |
| `with_address`required | `string[]` | — |
| `property_valuations`required | `object[]` | — |
| `@type`required | `string` | — |
| `@id`required | `string` | — |
| `has_property_valuation_amount`required | `object` | — |
| `has_value`required | `number` | — |

##### 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` | `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 `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-->
403404 GetCollectionError404 GetCollectionsError500
<!--/source-->

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

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

<!--/source-->

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

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

<!--/source-->

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

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

<!--/source-->

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

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

<!--/source-->

##### Parameters

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

| Parameter | Type | Example | Description |
| --- | --- | --- | --- |
| `x-api-key` required | `string` header | — | <!--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-->
4 fields
<!--/source-->
<!--source:api-specifications-->
Successfully Retrieved Collection
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `transaction_id`required | `string` | — |
| `collection_id`required | `string` | — |
| `metadata`required | `object` | — |
| `created_at`required | `string` | — |
| `validation`required | `boolean` | — |
| `data`required | `object` | — |

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

`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

```
{
 "metadata": {
 "created_at": "2021-09-14T03:08:00.284090-04:00",
 "validation": false
 },
 "transaction_id": "01FFHJ2ZVS4P7N4AV5W0993QMD",
 "collection_id": "01FFHJ4JCWGHV38SC1NJ8TVNFY",
 "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://staircase.stoplight.io/docs/api-reference/customer-account-manager-service.yml/paths/~1products~1refresh/post"
}
```

<!--/source-->

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

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

<!--/source-->

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

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

<!--/source-->

##### Parameters

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

| Parameter | Type | Example | Description |
| --- | --- | --- | --- |
| `x-api-key` required | `string` header | — | <!--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` | `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 `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--> |

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

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

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

`updateCollection`

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

<!--/source-->

##### Request

<!--source:api-specifications-->
application/json Copy
```
{
 "data": {
 "addresses": [
 {
 "@id": "01FMM41S2R86Q33TC28H9RC197",
 "@type": "residential_address",
 "has_county_name": {
 "has_value": "Kent"
 },
 "has_state_code": {
 "has_value": "TX"
 },
 "has_city_name": {
 "has_value": "Houston"
 },
 "has_postal_code": {
 "has_value": "77069"
 },
 "has_address_line_1_text": {
 "has_value": "5118 Westerham Pl"
 }
 }
 ],
 "properties": [
 {
 "@id": "01FMM41S2RE99T8XGQJC2MTE8E",
 "@type": "property",
 "with_value": [
 "01FMM41S2RM5X2RWJJG2NFH91Z"
 ],
 "with_address": [
 "01FMM41S2R86Q33TC28H9RC197"
 ]
 }
 ],
 "property_valuations": [
 {
 "@id": "01FMM41S2RM5X2RWJJG2NFH91Z",
 "@type": "property_valuation",
 "has_property_valuation_amount": {
 "has_value": 374900
 }
 }
 ]
 }
}
```

<!--/source-->

##### Response

<!--source:api-specifications-->
200400 UpdateCollectionError400 text/html403404 UpdateCollectionError404 text/html500
<!--/source-->

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

```
{
 "transaction_id": "01F0KHK7DN3H5JZ4QJKMYAM6GB",
 "collection_id": "01F6QF1QJF20DMSXH4SYXKB1SN",
 "metadata": {
 "created_at": "2021-09-14T03:08:00.284090-04:00",
 "validation": false
 },
 "data": {
 "addresses": [
 {
 "@id": "01FMM41S2R86Q33TC28H9RC197",
 "@type": "residential_address",
 "has_county_name": {
 "has_value": "Kent"
 },
 "has_state_code": {
 "has_value": "TX"
 },
 "has_city_name": {
 "has_value": "Houston"
 },
 "has_postal_code": {
 "has_value": "77069"
 },
 "has_address_line_1_text": {
 "has_value": "5118 Westerham Pl"
 }
 }
 ],
 "properties": [
 {
 "@id": "01FMM41S2RE99T8XGQJC2MTE8E",
 "@type": "property",
 "with_value": [
 "01FMM41S2RM5X2RWJJG2NFH91Z"
 ],
 "with_address": [
 "01FMM41S2R86Q33TC28H9RC197"
 ]
 }
 ],
 "property_valuations": [
 {
 "@id": "01FMM41S2RM5X2RWJJG2NFH91Z",
 "@type": "property_valuation",
 "has_property_valuation_amount": {
 "has_value": 374900
 }
 }
 ]
 }
}
```

<!--/source-->

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

```
{
 "description": "Error details.",
 "message": "Unable to update collection. Please check the collection\ndata"
}
```

<!--/source-->

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

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

<!--/source-->

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

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

<!--/source-->

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

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

<!--/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\nhave used a transaction_id to call our services, please submit it to\nStaircase support"
}
```

<!--/source-->

##### Parameters

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

| Parameter | Type | Example | Description |
| --- | --- | --- | --- |
| `x-api-key` required | `string` header | — | <!--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--> |

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

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

| Field | Type | Description |
| --- | --- | --- |
| `data` | `object` | <!--source:api-specifications-->Request Data. If request_collection_id is not provided and request_data is provided, request data will be saved into a new collection and that collection will be used for invocation.<!--/source--> |
| `addresses`required | `object[]` | — |
| `@type`required | `string` | — |
| `@id`required | `string` | — |
| `has_county_name`required | `object` | — |
| `has_value`required | `string` | — |
| `has_state_code`required | `object` | — |
| `has_value`required | `string` | — |
| `has_city_name`required | `object` | — |
| `has_value`required | `string` | — |
| `has_postal_code` | `object` | — |
| `has_value`required | `string` | — |
| `has_address_line_1_text` | `object` | — |
| `has_value`required | `string` | — |
| `properties`required | `object[]` | — |
| `@type`required | `string` | — |
| `@id`required | `string` | — |
| `with_value`required | `string[]` | — |
| `with_address`required | `string[]` | — |
| `property_valuations`required | `object[]` | — |
| `@type`required | `string` | — |
| `@id`required | `string` | — |
| `has_property_valuation_amount`required | `object` | — |
| `has_value`required | `number` | — |

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

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

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

### Operations
<!--/source-->

`POST` `/property-taxes`

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

#### Create Property taxes
<!--/source-->

`post-property-taxes`

##### Request

<!--source:api-specifications-->
application/json Copy
```
{
 "transaction_id": "uhz6t54e-9d74-g17e-99ca-a36b30vdfd35",
 "collection_id": "hg62e49f-9d74-g17e-99ca-a36b30vdfd35",
 "partner_name": "PartnerName"
}
```

<!--/source-->

##### Response

<!--source:api-specifications-->
application/json Copy Property taxes request created successfully.

```
{
 "collection_id": "e4502ed2-8df8-4b8f-84bd-a1097e999a77",
 "message": "When ready, data will be available under the following collection_id. Use this new collection_id to get the execution status."
}
```

<!--/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-->Authorization key<!--/source--> |

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

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

| Field | Type | Description |
| --- | --- | --- |
| `transaction_id`required | `string` | <!--source:api-specifications-->Transaction ID<!--/source--> |
| `collection_id`required | `string` | <!--source:api-specifications-->Collection ID<!--/source--> |
| `partner_name`required | `string` | — |

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

<!--source:api-specifications-->
2 fields
<!--/source-->
<!--source:api-specifications-->
Property taxes request created successfully.
<!--/source-->

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

`GET` `/property-taxes/elements`

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

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

`get-property-taxes-elements`

<!--source:api-specifications-->
Retrieve Elements provides a list of the elements needed to invoke a partner product.

<!--/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-->Authorization key<!--/source--> |

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

<!--source:api-specifications-->
1 fields
<!--/source-->
<!--source:api-specifications-->
Elements needed for request.
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `elements` | `object` | <!--source:api-specifications-->List of elements<!--/source--> |

`POST` `/property-taxes/elements/complete`

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

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

`post-property-taxes-collection-complete`

<!--source:api-specifications-->
Validate Collection validates that a collection contains all of the elements needed to invoke a partner product.

<!--/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-->Authorization key<!--/source--> |

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

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

| Field | Type | Description |
| --- | --- | --- |
| `collection`required | `object` | — |

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

<!--source:api-specifications-->
2 fields
<!--/source-->
<!--source:api-specifications-->
Collection is invalid.
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `message` | `string` | <!--source:api-specifications-->Error message<!--/source--> |
| `errors` | `object` | <!--source:api-specifications-->List of elements that are missing<!--/source--> |

##### Other responses

`200`

`GET` `/property-taxes/status/{transaction_id}/{collection_id}`

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

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

`get-property-taxes-status`

<!--source:api-specifications-->
Retrieve Status checks status of your request. Possible statuses:

- REQUEST_MADE
- REQUEST_ACCEPTED
- WAITING_FOR_RESPONSE
- COMPLETED

<!--/source-->

##### Response

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

<!--source:api-specifications-->
application/json Copy Statuses include: * REQUEST_MADE<p> * REQUEST_ACCEPTED<p> * WAITING_FOR_RESPONSE<p> * COMPLETED

```
{
 "status": "COMPLETED"
}
```

<!--/source-->

<!--source:api-specifications-->
application/json Copy Status is unavailable

```
{
 "error": "Request for specified transaction_id and collection_id was not found!"
}
```

<!--/source-->

##### Parameters

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

| Parameter | Type | Example | Description |
| --- | --- | --- | --- |
| `transaction_id` required | `string` path | `9u8z7t65-cb71-4f20-8e40-7a829b52e91e` | <!--source:api-specifications-->Transaction ID<!--/source--> |
| `collection_id` required | `string` path | `e4502ed2-8df8-4b8f-84bd-a1097e999a77` | <!--source:api-specifications-->Collection ID<!--/source--> |
| `x-api-key` required | `string` header | `xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx` | <!--source:api-specifications-->Authorization key<!--/source--> |

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

<!--source:api-specifications-->
1 fields
<!--/source-->
<!--source:api-specifications-->
Statuses include: * REQUEST_MADE<p> * REQUEST_ACCEPTED<p> * WAITING_FOR_RESPONSE<p> * COMPLETED
<!--/source-->

| Field | Type | Description |
| --- | --- | --- |
| `status` | `object` | <!--source:api-specifications-->Current execution status<!--/source--> |

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

<!--source:api-specifications-->
1 fields
<!--/source-->
<!--source:api-specifications-->
Status is unavailable
<!--/source-->

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

`POST` `/property-taxes/transactions`

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

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

`post-property-taxes-transaction`

<!--source:api-specifications-->
Create Transaction creates a transaction in Staircase. A transaction in Staircase is an acknowledgement that you want to call a Staircase product. It's a container for everything associated with that product invocation, and is correlated with a collection related to the product (e.g. a document). You need to create a new transaction every time you want to connect with a Staircase product. Staircase then associates everything, from a data and API execution standpoint, to that transaction.

<!--/source-->

##### Response

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

```
{
 "transaction_id": "a34c40a6-3c02-44f9-a696-cd7388f506d3"
}
```

<!--/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-->Authorization key<!--/source--> |

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

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

| Field | Type | Description |
| --- | --- | --- |
| `transaction_id` | `string` | <!--source:api-specifications-->Transaction ID<!--/source--> |

`POST` `/property-taxes/transactions/{transaction_id}/collections`

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

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

`post-property-taxes-collection`

<!--source:api-specifications-->
Create Collection creates a collection of elements . The elements within the collection are required.

<!--/source-->

##### Request

<!--source:api-specifications-->
application/json Copy
```
{
 "sets": {
 "set": [
 {
 "elements": {
 "element": [
 {
 "property_entry": {
 "property_entries": {
 "datetime": "2020-08-25",
 "description": "Description of property",
 "event_type": "TestType"
 }
 },
 "property_class": {
 "property_clases": {
 "type": "STATEMENT"
 },
 "name": "Test",
 "period_start_date": "2020-07-01",
 "period_end_date": "2020-07-31"
 },
 "content": {
 "foreign_object": "7e62ce76-d93d-4f31-92d3-45c2cb8255ea"
 }
 }
 ]
 }
 }
 ]
 }
}
```

<!--/source-->

##### Response

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

```
{
 "collection_id": "hg62e49f-9d74-g17e-99ca-a36b30vdfd35",
 "data": {
 "sets": {
 "set": [
 {
 "elements": {
 "element": [
 {
 "property_entry": {
 "property_entries": {
 "datetime": "2020-08-25",
 "description": "Description of property",
 "event_type": "TestType"
 }
 },
 "property_class": {
 "property_clases": {
 "type": "STATEMENT"
 },
 "name": "Test",
 "period_start_date": "2020-07-01",
 "period_end_date": "2020-07-31"
 },
 "content": {
 "foreign_object": "7e62ce76-d93d-4f31-92d3-45c2cb8255ea"
 }
 }
 ]
 }
 }
 ]
 }
 },
 "metadata": {},
 "transaction_id": "6t5r4wq1-9d74-g17e-99ca-a36b30vdfd35"
}
```

<!--/source-->

##### Parameters

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

| Parameter | Type | Example | Description |
| --- | --- | --- | --- |
| `transaction_id` required | `string` path | `3wet53r4-cb71-8u74-8e40-7a829b52e91e` | <!--source:api-specifications-->Transaction ID<!--/source--> |
| `x-api-key` required | `string` header | `xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx` | <!--source:api-specifications-->Authorization key<!--/source--> |

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

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

| Field | Type | Description |
| --- | --- | --- |
| `data`required | `object` | — |
| `metadata` | `object` | — |

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

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

| Field | Type | Description |
| --- | --- | --- |
| `transaction_id` | `object` | <!--source:api-specifications-->Transaction ID<!--/source--> |
| `collection_id` | `object` | <!--source:api-specifications-->Collection ID<!--/source--> |
| `data` | `object` | <!--source:api-specifications-->Data object<!--/source--> |
| `metadata` | `object` | <!--source:api-specifications-->Metadata object<!--/source--> |

`PUT` `/property-taxes/transactions/{transaction_id}/collections/{collection_id}`

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

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

`put-property-taxes-collection`

<!--source:api-specifications-->
Update Collection updates a collection of elements by new elements.

<!--/source-->

##### Request

<!--source:api-specifications-->
application/json Copy
```
{
 "sets": {
 "set": [
 {
 "properties": {
 "property": [
 {
 "propety_entry": {
 "propety_entries": {
 "datetime": "2020-05-05",
 "description": "Test Description",
 "event_type": "TestType"
 }
 },
 "propety_class": {
 "propety_classes": {
 "type": "TestType"
 },
 "name": "TestName",
 "period_start_date": "2019-01-01",
 "period_end_date": "2019-12-31"
 },
 "content": {
 "foreign_object": "7z6t5r4e-d93d-4f31-92d3-45c2cb8255ea"
 }
 }
 ]
 }
 }
 ]
 }
}
```

<!--/source-->

##### Response

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

```
{
 "collection_id": "hg62e49f-9d74-g17e-99ca-a36b30vdfd35",
 "data": {
 "sets": {
 "set": [
 {
 "properties": {
 "property": [
 {
 "property_data": {
 "property_class": {
 "datetime": "2020-05-05",
 "description": "Info",
 "event_type": "TestEvent"
 }
 },
 "document_classification": {
 "document_classes": {
 "type": "TestType"
 },
 "name": "TestName",
 "period_start_date": "2019-01-01",
 "period_end_date": "2019-12-31"
 },
 "content": {
 "foreign_object": "7z6t5r4e-d93d-4f31-92d3-45c2cb8255ea"
 }
 }
 ]
 }
 }
 ]
 }
 },
 "metadata": {},
 "transaction_id": "6t5r4wq1-9d74-g17e-99ca-a36b30vdfd35"
}
```

<!--/source-->

##### Parameters

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

| Parameter | Type | Example | Description |
| --- | --- | --- | --- |
| `transaction_id` required | `string` path | `3wet53r4-cb71-8u74-8e40-7a829b52e91e` | <!--source:api-specifications-->Transaction ID<!--/source--> |
| `collection_id` required | `string` path | `9u8z7t65-cb71-8u74-8e40-7a829b52e91e` | <!--source:api-specifications-->Transaction ID<!--/source--> |
| `x-api-key` required | `string` header | `xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx` | <!--source:api-specifications-->API Key<!--/source--> |

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

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

| Field | Type | Description |
| --- | --- | --- |
| `data`required | `object` | — |
| `metadata` | `object` | — |

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

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

| Field | Type | Description |
| --- | --- | --- |
| `transaction_id` | `object` | <!--source:api-specifications-->Transaction ID<!--/source--> |
| `collection_id` | `object` | <!--source:api-specifications-->Collection ID<!--/source--> |
| `data` | `object` | <!--source:api-specifications-->Data object<!--/source--> |
| `metadata` | `object` | <!--source:api-specifications-->Metadata object<!--/source--> |

`POST` `/tax`

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

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

`post-tax`

<!--source:api-specifications-->
Create Tax creates views of a borrower's tax returns, including IRS documents 4506T, W-2, 1040, 1065, 1098, 1099, 1120, and 5498.

<!--/source-->

##### Request

<!--source:api-specifications-->
application/json Copy
```
{
 "transaction_id": "uhz6t54e-9d74-g17e-99ca-a36b30vdfd35",
 "collection_id": "hg62e49f-9d74-g17e-99ca-a36b30vdfd35",
 "partner_name": "PartnerName"
}
```

<!--/source-->

##### Response

<!--source:api-specifications-->
application/json Copy Tax report request created successfully.

```
{
 "collection_id": "e4502ed2-8df8-4b8f-84bd-a1097e999a77",
 "message": "When ready, data will be available under the following collection_id. Use this new collection_id to get the execution status."
}
```

<!--/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-->Authorization key<!--/source--> |

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

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

| Field | Type | Description |
| --- | --- | --- |
| `transaction_id`required | `string` | <!--source:api-specifications-->Transaction ID<!--/source--> |
| `collection_id`required | `string` | <!--source:api-specifications-->Collection ID<!--/source--> |
| `partner_name`required | `string` | — |

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

<!--source:api-specifications-->
2 fields
<!--/source-->
<!--source:api-specifications-->
Tax report request created successfully.
<!--/source-->

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

## Errors

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

## More in Assessment

- Previous product: Property
- Next product: Valuation
