Spruce API API Reference

The Spruce API enables mortgage lenders and real estate companies to manage the title & closing process. E.g., it can be used to provide TRID-compliant quotes for use in generating Loan Estimate disclosures, estimating recording fees and taxes, creating and receiving title search orders, and scheduling closings.

To discuss the different workflows and configurations available, and obtain API credentials, please reach out at contact@spruce.co, or call us at 888-665-7535.

You can access the raw OpenAPI definition here.

AUTHORIZATION

We use JSON Web Tokens - you will be provided with one for our staging API, and one for our production API when you are ready to go live.

Submit it as a bearer token with every request header:

Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...

STAGING

The base Staging URL is https://api.staging.spruce.co. This is where all testing should be done.

ORDER STATUSES

Orders can have the following order_status:

  • new - Newly opened order
  • initial_docs_available - The initial documents (PreliminaryClosingDisclosure,SellersClosingDisclosure, and/or SettlementAgentWireInstructions) are available
  • title_report_available - The title search was performed (TitleSearchReport available)
  • signing_scheduled - The closing has been scheduled
  • signing_confirmed - The closing has been confirmed by the notary and signers
  • signing_occurred - The closing happened (ExecutedClientClosingPackage available)
  • waiting_for_funds - Waiting for cash to close (ExecutedBuyerSettlementStatement available)
  • funded - The order has been funded
  • recorded - The required recording documents have been recorded (RecordedDeed available for a purchase, RecordedMortgage available for a refinance)
  • funded_and_recorded - The order has been funded and recorded (does not always happen sequentially due to different state laws).
  • policy_issued - The title policy has been issued (LendersPolicy available)
  • cancelled - The order has been cancelled

CALLBACK API

We will trigger callbacks for certain events. Right now, we support callbacks on order status changes.

When setting up your API integration you will be asked to provide a callback URL. We will POST to this callback URL whenever an order_status_changed event occurs.

The request body will be as follows:

{ 
  event_id: "35e8609c-7ce4-43fd-9b43-61c0d9ebd1a8",
  event: "order_status_changed",
  timestamp: "2019-04-04T14:16:23Z", 
  payload: { 
    order_id: "ad52d967-9331-4951-8f7b-1697d0bc07bf", 
    file_number: "114350000004", 
    status: "funded"
  }
}

The callback request header contains an AUTHORIZATION key. The value for the key will need to be specified by you during the initial setup phase. This header can be used for Authentication purposes. The value for the header can be different across environments(production vs integration).

Response:

Your endpoint will need to return a 2XX HTTP status code.

You can also always pull the current state of the order via the GET /orders/:order_id endpoint.

API Endpoint
https://api.staging.spruce.co/
Request Content-Types: application/json
Response Content-Types: application/json, application/pdf
Schemes: https
Version: 4

Quotes

Create a refinance transaction quote

POST /quotes/v3/refinance

Returns an accurate quote for the applicable title fees, recording fees, and any applicable mortgage taxes, for a proposed refinance or HELOC transaction. Also included in the response is the applicable Settlement Agent information, for use in populating disclosures as necessary.

Refinance quote information

Request Example
{
  "loan_amount": 580000,
  "estimated_property_value": 725000,
  "property_address": {
    "street_address": "123 Main St.",
    "unit": "Ste. 001",
    "city": "Anywhere",
    "state": "NY",
    "zip_code": "10004"
  },
  "num_of_units": 1
}
201 Created

Quote successfully created

Response Example (201 Created)
{
  "fees": [
    {
      "type": "title",
      "label": "Lender's Policy",
      "amount": 1500.75,
      "section": "C"
    }
  ],
  "settlement_agent": {
    "name": "Spruce Land Services",
    "email": "orders@spruce.co",
    "phone": "18886657535",
    "contact": {
      "first_name": "Patrick",
      "last_name": "Burns",
      "formatted_contact": "Patrick Burns"
    },
    "address": {
      "street_address": "155 W 23rd St",
      "unit": "Floor 10",
      "city": "New York",
      "state": "NY",
      "zip_code": "10011",
      "formatted_address": "155 W 23rd St, Floor 10, New York, NY 10011"
    },
    "license_info": {
      "state_license_id": "TLA-1234567",
      "contact_license_id": "TLA-7654321"
    }
  }
}

Create a purchase transaction quote

POST /quotes/v3/purchase

Returns an accurate quote for the applicable title fees, recording fees, and any applicable mortgage taxes, for a proposed purchase mortgage transaction. Also included in the response is the applicable Settlement Agent information, for use in populating disclosures as necessary.

Purchase quote information

Request Example
{
  "loan_amount": 580000,
  "purchase_price": 725000,
  "buyer_pays_transfer_taxes": "false",
  "num_of_units": 1,
  "property_address": {
    "street_address": "123 Main St.",
    "unit": "Ste. 001",
    "city": "Anywhere",
    "state": "NY",
    "zip_code": "10004"
  }
}
201 Created

Quote successfully created

Response Example (201 Created)
{
  "fees": [
    {
      "type": "title",
      "label": "Lender's Policy",
      "amount": 1500.75,
      "section": "C"
    }
  ],
  "settlement_agent": {
    "name": "Spruce Land Services",
    "email": "orders@spruce.co",
    "phone": "18886657535",
    "contact": {
      "first_name": "Patrick",
      "last_name": "Burns",
      "formatted_contact": "Patrick Burns"
    },
    "address": {
      "street_address": "155 W 23rd St",
      "unit": "Floor 10",
      "city": "New York",
      "state": "NY",
      "zip_code": "10011",
      "formatted_address": "155 W 23rd St, Floor 10, New York, NY 10011"
    },
    "license_info": {
      "state_license_id": "TLA-1234567",
      "contact_license_id": "TLA-7654321"
    }
  }
}

Orders

Create a refinance transaction title order

POST /orders/v4/refinance

Creates a title order for a new refinance transaction. Returns an order_id and full quote. Depending on client configuration, this will result in the production of a title search report, or full commitment to issue title insurance. The settlement_agent field will additionally contain wiring instructions.

Refinance order information

Request Example
{
  "loan_amount": 580000,
  "loan_id": "A4100000",
  "estimated_property_value": 725000,
  "property_address": {
    "street_address": "123 Main St.",
    "unit": "Ste. 001",
    "city": "Anywhere",
    "state": "NY",
    "zip_code": "10004"
  },
  "borrowers": [
    {
      "first_name": "Anne",
      "middle_name": "Jimmy",
      "last_name": "Carlisle",
      "email": "annejcarlisle@example.com",
      "phone": "10000000000",
      "ssn": "0004"
    }
  ],
  "num_of_units": 1
}
201 Created

Order successfully created

Order created. We were unable to automatically generate fees for your request. They will be added shortly.

Response Example (201 Created)
{
  "id": "43bc939f-c5a2-4939-a31a-d0a5fc4f3961",
  "file_number": "114350000004",
  "order_status": "new",
  "fees": [
    {
      "type": "title",
      "label": "Lender's Policy",
      "amount": 1500.75,
      "section": "C"
    }
  ],
  "settlement_agent": {
    "name": "Spruce Land Services",
    "email": "orders@spruce.co",
    "phone": "18886657535",
    "contact": {
      "first_name": "Patrick",
      "last_name": "Burns",
      "formatted_contact": "Patrick Burns"
    },
    "address": {
      "street_address": "155 W 23rd St",
      "unit": "Floor 10",
      "city": "New York",
      "state": "NY",
      "zip_code": "10011",
      "formatted_address": "155 W 23rd St, Floor 10, New York, NY 10011"
    },
    "license_info": {
      "state_license_id": "TLA-1234567",
      "contact_license_id": "TLA-7654321"
    },
    "wiring_instructions": {
      "account_number": "1234567890",
      "routing_number": "0110000010",
      "obi": "114350000000"
    }
  },
  "borrowers": [
    {
      "id": "43bc939f-c5a2-4939-a31a-d0a5fc4f3961",
      "first_name": "Anne",
      "middle_name": "Jimmy",
      "last_name": "Carlisle",
      "email": "annejcarlisle@example.com",
      "phone": "10000000000",
      "ssn": "0004"
    }
  ],
  "buyers": [
    {
      "id": "43bc939f-c5a2-4939-a31a-d0a5fc4f3961",
      "first_name": "Anne",
      "middle_name": "Jimmy",
      "last_name": "Carlisle",
      "email": "annejcarlisle@example.com",
      "phone": "10000000000",
      "ssn": "0004"
    }
  ]
}
Response Example (212 )
{
  "id": "43bc939f-c5a2-4939-a31a-d0a5fc4f3961",
  "file_number": "114350000004",
  "order_status": "new",
  "fees": [
    {
      "type": "title",
      "label": "Lender's Policy",
      "amount": 1500.75,
      "section": "C"
    }
  ],
  "settlement_agent": {
    "name": "Spruce Land Services",
    "email": "orders@spruce.co",
    "phone": "18886657535",
    "contact": {
      "first_name": "Patrick",
      "last_name": "Burns",
      "formatted_contact": "Patrick Burns"
    },
    "address": {
      "street_address": "155 W 23rd St",
      "unit": "Floor 10",
      "city": "New York",
      "state": "NY",
      "zip_code": "10011",
      "formatted_address": "155 W 23rd St, Floor 10, New York, NY 10011"
    },
    "license_info": {
      "state_license_id": "TLA-1234567",
      "contact_license_id": "TLA-7654321"
    },
    "wiring_instructions": {
      "account_number": "1234567890",
      "routing_number": "0110000010",
      "obi": "114350000000"
    }
  },
  "borrowers": [
    {
      "id": "43bc939f-c5a2-4939-a31a-d0a5fc4f3961",
      "first_name": "Anne",
      "middle_name": "Jimmy",
      "last_name": "Carlisle",
      "email": "annejcarlisle@example.com",
      "phone": "10000000000",
      "ssn": "0004"
    }
  ],
  "buyers": [
    {
      "id": "43bc939f-c5a2-4939-a31a-d0a5fc4f3961",
      "first_name": "Anne",
      "middle_name": "Jimmy",
      "last_name": "Carlisle",
      "email": "annejcarlisle@example.com",
      "phone": "10000000000",
      "ssn": "0004"
    }
  ]
}

Create a purchase mortgage transaction title order

POST /orders/v4/purchase

Creates a title order for a new purchase mortgage transaction. Returns an order_id and full quote. This will result in the production of a full commitment to issue title insurance. The settlement_agent field will additionally contain wiring instructions.

Purchase order information

Request Example
{
  "loan_amount": 580000,
  "loan_id": "A4100000",
  "purchase_price": 725000,
  "property_address": {
    "street_address": "123 Main St.",
    "unit": "Ste. 001",
    "city": "Anywhere",
    "state": "NY",
    "zip_code": "10004"
  },
  "borrowers": [
    {
      "first_name": "Anne",
      "middle_name": "Jimmy",
      "last_name": "Carlisle",
      "email": "annejcarlisle@example.com",
      "phone": "10000000000",
      "ssn": "0004"
    }
  ],
  "buyer_pays_transfer_taxes": "false",
  "num_of_units": 1,
  "closing_date": "2017-07-21"
}
201 Created

Order successfully created

Order created. We were unable to automatically generate fees for your request. They will be added shortly.

Response Example (201 Created)
{
  "id": "43bc939f-c5a2-4939-a31a-d0a5fc4f3961",
  "file_number": "114350000004",
  "order_status": "new",
  "fees": [
    {
      "type": "title",
      "label": "Lender's Policy",
      "amount": 1500.75,
      "section": "C"
    }
  ],
  "settlement_agent": {
    "name": "Spruce Land Services",
    "email": "orders@spruce.co",
    "phone": "18886657535",
    "contact": {
      "first_name": "Patrick",
      "last_name": "Burns",
      "formatted_contact": "Patrick Burns"
    },
    "address": {
      "street_address": "155 W 23rd St",
      "unit": "Floor 10",
      "city": "New York",
      "state": "NY",
      "zip_code": "10011",
      "formatted_address": "155 W 23rd St, Floor 10, New York, NY 10011"
    },
    "license_info": {
      "state_license_id": "TLA-1234567",
      "contact_license_id": "TLA-7654321"
    },
    "wiring_instructions": {
      "account_number": "1234567890",
      "routing_number": "0110000010",
      "obi": "114350000000"
    }
  },
  "borrowers": [
    {
      "id": "43bc939f-c5a2-4939-a31a-d0a5fc4f3961",
      "first_name": "Anne",
      "middle_name": "Jimmy",
      "last_name": "Carlisle",
      "email": "annejcarlisle@example.com",
      "phone": "10000000000",
      "ssn": "0004"
    }
  ],
  "buyers": [
    {
      "id": "43bc939f-c5a2-4939-a31a-d0a5fc4f3961",
      "first_name": "Anne",
      "middle_name": "Jimmy",
      "last_name": "Carlisle",
      "email": "annejcarlisle@example.com",
      "phone": "10000000000",
      "ssn": "0004"
    }
  ]
}
Response Example (212 )
{
  "id": "43bc939f-c5a2-4939-a31a-d0a5fc4f3961",
  "file_number": "114350000004",
  "order_status": "new",
  "fees": [
    {
      "type": "title",
      "label": "Lender's Policy",
      "amount": 1500.75,
      "section": "C"
    }
  ],
  "settlement_agent": {
    "name": "Spruce Land Services",
    "email": "orders@spruce.co",
    "phone": "18886657535",
    "contact": {
      "first_name": "Patrick",
      "last_name": "Burns",
      "formatted_contact": "Patrick Burns"
    },
    "address": {
      "street_address": "155 W 23rd St",
      "unit": "Floor 10",
      "city": "New York",
      "state": "NY",
      "zip_code": "10011",
      "formatted_address": "155 W 23rd St, Floor 10, New York, NY 10011"
    },
    "license_info": {
      "state_license_id": "TLA-1234567",
      "contact_license_id": "TLA-7654321"
    },
    "wiring_instructions": {
      "account_number": "1234567890",
      "routing_number": "0110000010",
      "obi": "114350000000"
    }
  },
  "borrowers": [
    {
      "id": "43bc939f-c5a2-4939-a31a-d0a5fc4f3961",
      "first_name": "Anne",
      "middle_name": "Jimmy",
      "last_name": "Carlisle",
      "email": "annejcarlisle@example.com",
      "phone": "10000000000",
      "ssn": "0004"
    }
  ],
  "buyers": [
    {
      "id": "43bc939f-c5a2-4939-a31a-d0a5fc4f3961",
      "first_name": "Anne",
      "middle_name": "Jimmy",
      "last_name": "Carlisle",
      "email": "annejcarlisle@example.com",
      "phone": "10000000000",
      "ssn": "0004"
    }
  ]
}

Create a cash purchase transaction title order

POST /orders/v4/cash_purchase

Creates a title order for a new cash purchase transaction. Returns an order_id and full quote. This will result in the production of a full commitment to issue title insurance. The settlement_agent field will additionally contain wiring instructions.

Cash purchase order information

Request Example
{
  "loan_id": "A4100000",
  "purchase_price": 725000,
  "property_address": {
    "street_address": "123 Main St.",
    "unit": "Ste. 001",
    "city": "Anywhere",
    "state": "NY",
    "zip_code": "10004"
  },
  "buyers": [
    {
      "first_name": "Anne",
      "middle_name": "Jimmy",
      "last_name": "Carlisle",
      "email": "annejcarlisle@example.com",
      "phone_number": "10000000000",
      "ssn": "0004"
    }
  ],
  "buyer_pays_transfer_taxes": "false",
  "num_of_units": 1,
  "closing_date": "2017-07-21"
}
201 Created

Order successfully created

Order created. We were unable to automatically generate fees for your request. They will be added shortly.

Response Example (201 Created)
{
  "id": "43bc939f-c5a2-4939-a31a-d0a5fc4f3961",
  "file_number": "114350000004",
  "order_status": "new",
  "fees": [
    {
      "type": "title",
      "label": "Lender's Policy",
      "amount": 1500.75,
      "section": "C"
    }
  ],
  "settlement_agent": {
    "name": "Spruce Land Services",
    "email": "orders@spruce.co",
    "phone": "18886657535",
    "contact": {
      "first_name": "Patrick",
      "last_name": "Burns",
      "formatted_contact": "Patrick Burns"
    },
    "address": {
      "street_address": "155 W 23rd St",
      "unit": "Floor 10",
      "city": "New York",
      "state": "NY",
      "zip_code": "10011",
      "formatted_address": "155 W 23rd St, Floor 10, New York, NY 10011"
    },
    "license_info": {
      "state_license_id": "TLA-1234567",
      "contact_license_id": "TLA-7654321"
    },
    "wiring_instructions": {
      "account_number": "1234567890",
      "routing_number": "0110000010",
      "obi": "114350000000"
    }
  },
  "borrowers": [
    {
      "id": "43bc939f-c5a2-4939-a31a-d0a5fc4f3961",
      "first_name": "Anne",
      "middle_name": "Jimmy",
      "last_name": "Carlisle",
      "email": "annejcarlisle@example.com",
      "phone": "10000000000",
      "ssn": "0004"
    }
  ],
  "buyers": [
    {
      "id": "43bc939f-c5a2-4939-a31a-d0a5fc4f3961",
      "first_name": "Anne",
      "middle_name": "Jimmy",
      "last_name": "Carlisle",
      "email": "annejcarlisle@example.com",
      "phone": "10000000000",
      "ssn": "0004"
    }
  ]
}
Response Example (212 )
{
  "id": "43bc939f-c5a2-4939-a31a-d0a5fc4f3961",
  "file_number": "114350000004",
  "order_status": "new",
  "fees": [
    {
      "type": "title",
      "label": "Lender's Policy",
      "amount": 1500.75,
      "section": "C"
    }
  ],
  "settlement_agent": {
    "name": "Spruce Land Services",
    "email": "orders@spruce.co",
    "phone": "18886657535",
    "contact": {
      "first_name": "Patrick",
      "last_name": "Burns",
      "formatted_contact": "Patrick Burns"
    },
    "address": {
      "street_address": "155 W 23rd St",
      "unit": "Floor 10",
      "city": "New York",
      "state": "NY",
      "zip_code": "10011",
      "formatted_address": "155 W 23rd St, Floor 10, New York, NY 10011"
    },
    "license_info": {
      "state_license_id": "TLA-1234567",
      "contact_license_id": "TLA-7654321"
    },
    "wiring_instructions": {
      "account_number": "1234567890",
      "routing_number": "0110000010",
      "obi": "114350000000"
    }
  },
  "borrowers": [
    {
      "id": "43bc939f-c5a2-4939-a31a-d0a5fc4f3961",
      "first_name": "Anne",
      "middle_name": "Jimmy",
      "last_name": "Carlisle",
      "email": "annejcarlisle@example.com",
      "phone": "10000000000",
      "ssn": "0004"
    }
  ],
  "buyers": [
    {
      "id": "43bc939f-c5a2-4939-a31a-d0a5fc4f3961",
      "first_name": "Anne",
      "middle_name": "Jimmy",
      "last_name": "Carlisle",
      "email": "annejcarlisle@example.com",
      "phone": "10000000000",
      "ssn": "0004"
    }
  ]
}

Retrieve order info

GET /orders/v4/:order_id

Use the order_id provided in the create order request to get the current state of the order.

order_id: string
in path

order_id provided in the create order request

200 OK

Order found

404 Not Found

Order not found

Response Example (200 OK)
{
  "id": "43bc939f-c5a2-4939-a31a-d0a5fc4f3961",
  "file_number": "114350000004",
  "order_status": "new",
  "fees": [
    {
      "type": "title",
      "label": "Lender's Policy",
      "amount": 1500.75,
      "section": "C"
    }
  ],
  "settlement_agent": {
    "name": "Spruce Land Services",
    "email": "orders@spruce.co",
    "phone": "18886657535",
    "contact": {
      "first_name": "Patrick",
      "last_name": "Burns",
      "formatted_contact": "Patrick Burns"
    },
    "address": {
      "street_address": "155 W 23rd St",
      "unit": "Floor 10",
      "city": "New York",
      "state": "NY",
      "zip_code": "10011",
      "formatted_address": "155 W 23rd St, Floor 10, New York, NY 10011"
    },
    "license_info": {
      "state_license_id": "TLA-1234567",
      "contact_license_id": "TLA-7654321"
    },
    "wiring_instructions": {
      "account_number": "1234567890",
      "routing_number": "0110000010",
      "obi": "114350000000"
    }
  },
  "borrowers": [
    {
      "id": "43bc939f-c5a2-4939-a31a-d0a5fc4f3961",
      "first_name": "Anne",
      "middle_name": "Jimmy",
      "last_name": "Carlisle",
      "email": "annejcarlisle@example.com",
      "phone": "10000000000",
      "ssn": "0004"
    }
  ],
  "buyers": [
    {
      "id": "43bc939f-c5a2-4939-a31a-d0a5fc4f3961",
      "first_name": "Anne",
      "middle_name": "Jimmy",
      "last_name": "Carlisle",
      "email": "annejcarlisle@example.com",
      "phone": "10000000000",
      "ssn": "0004"
    }
  ]
}
Response Example (404 Not Found)
{
  "id": "43bc939f-c5a2-4939-a31a-d0a5fc4f3961",
  "file_number": "114350000004",
  "order_status": "new",
  "fees": [
    {
      "type": "title",
      "label": "Lender's Policy",
      "amount": 1500.75,
      "section": "C"
    }
  ],
  "settlement_agent": {
    "name": "Spruce Land Services",
    "email": "orders@spruce.co",
    "phone": "18886657535",
    "contact": {
      "first_name": "Patrick",
      "last_name": "Burns",
      "formatted_contact": "Patrick Burns"
    },
    "address": {
      "street_address": "155 W 23rd St",
      "unit": "Floor 10",
      "city": "New York",
      "state": "NY",
      "zip_code": "10011",
      "formatted_address": "155 W 23rd St, Floor 10, New York, NY 10011"
    },
    "license_info": {
      "state_license_id": "TLA-1234567",
      "contact_license_id": "TLA-7654321"
    },
    "wiring_instructions": {
      "account_number": "1234567890",
      "routing_number": "0110000010",
      "obi": "114350000000"
    }
  },
  "borrowers": [
    {
      "id": "43bc939f-c5a2-4939-a31a-d0a5fc4f3961",
      "first_name": "Anne",
      "middle_name": "Jimmy",
      "last_name": "Carlisle",
      "email": "annejcarlisle@example.com",
      "phone": "10000000000",
      "ssn": "0004"
    }
  ],
  "buyers": [
    {
      "id": "43bc939f-c5a2-4939-a31a-d0a5fc4f3961",
      "first_name": "Anne",
      "middle_name": "Jimmy",
      "last_name": "Carlisle",
      "email": "annejcarlisle@example.com",
      "phone": "10000000000",
      "ssn": "0004"
    }
  ]
}

Update a title order

PUT /orders/v4/:order_id

Updates the title order for an existing transaction.

This will result in the generation of related documents.

Currently you can update the loan_id and borrowers (Purchase or Refinance transaction) or buyers (Cash Purchase transaction) associated with the given Order.

This endpoint cannot be used to add or remove borrowers or buyers, only to update existing ones.

Order update information

order_id: string
in path

order_id provided in the create order request

Request Example
{
  "loan_id": "A4100000",
  "borrowers": [
    {
      "id": "43bc939f-c5a2-4939-a31a-d0a5fc4f3961",
      "first_name": "Anne",
      "middle_name": "Jimmy",
      "last_name": "Carlisle",
      "email": "annejcarlisle@example.com",
      "phone": "10000000000",
      "ssn": "0004"
    }
  ],
  "buyers": [
    {
      "id": "43bc939f-c5a2-4939-a31a-d0a5fc4f3961",
      "first_name": "Anne",
      "middle_name": "Jimmy",
      "last_name": "Carlisle",
      "email": "annejcarlisle@example.com",
      "phone": "10000000000",
      "ssn": "0004"
    }
  ]
}
200 OK

Order found

400 Bad Request

Bad Request

404 Not Found

Order not found

Response Example (200 OK)
{
  "id": "43bc939f-c5a2-4939-a31a-d0a5fc4f3961",
  "file_number": "114350000004",
  "order_status": "new",
  "fees": [
    {
      "type": "title",
      "label": "Lender's Policy",
      "amount": 1500.75,
      "section": "C"
    }
  ],
  "settlement_agent": {
    "name": "Spruce Land Services",
    "email": "orders@spruce.co",
    "phone": "18886657535",
    "contact": {
      "first_name": "Patrick",
      "last_name": "Burns",
      "formatted_contact": "Patrick Burns"
    },
    "address": {
      "street_address": "155 W 23rd St",
      "unit": "Floor 10",
      "city": "New York",
      "state": "NY",
      "zip_code": "10011",
      "formatted_address": "155 W 23rd St, Floor 10, New York, NY 10011"
    },
    "license_info": {
      "state_license_id": "TLA-1234567",
      "contact_license_id": "TLA-7654321"
    },
    "wiring_instructions": {
      "account_number": "1234567890",
      "routing_number": "0110000010",
      "obi": "114350000000"
    }
  },
  "borrowers": [
    {
      "id": "43bc939f-c5a2-4939-a31a-d0a5fc4f3961",
      "first_name": "Anne",
      "middle_name": "Jimmy",
      "last_name": "Carlisle",
      "email": "annejcarlisle@example.com",
      "phone": "10000000000",
      "ssn": "0004"
    }
  ],
  "buyers": [
    {
      "id": "43bc939f-c5a2-4939-a31a-d0a5fc4f3961",
      "first_name": "Anne",
      "middle_name": "Jimmy",
      "last_name": "Carlisle",
      "email": "annejcarlisle@example.com",
      "phone": "10000000000",
      "ssn": "0004"
    }
  ]
}
Response Example (404 Not Found)
{
  "id": "43bc939f-c5a2-4939-a31a-d0a5fc4f3961",
  "file_number": "114350000004",
  "order_status": "new",
  "fees": [
    {
      "type": "title",
      "label": "Lender's Policy",
      "amount": 1500.75,
      "section": "C"
    }
  ],
  "settlement_agent": {
    "name": "Spruce Land Services",
    "email": "orders@spruce.co",
    "phone": "18886657535",
    "contact": {
      "first_name": "Patrick",
      "last_name": "Burns",
      "formatted_contact": "Patrick Burns"
    },
    "address": {
      "street_address": "155 W 23rd St",
      "unit": "Floor 10",
      "city": "New York",
      "state": "NY",
      "zip_code": "10011",
      "formatted_address": "155 W 23rd St, Floor 10, New York, NY 10011"
    },
    "license_info": {
      "state_license_id": "TLA-1234567",
      "contact_license_id": "TLA-7654321"
    },
    "wiring_instructions": {
      "account_number": "1234567890",
      "routing_number": "0110000010",
      "obi": "114350000000"
    }
  },
  "borrowers": [
    {
      "id": "43bc939f-c5a2-4939-a31a-d0a5fc4f3961",
      "first_name": "Anne",
      "middle_name": "Jimmy",
      "last_name": "Carlisle",
      "email": "annejcarlisle@example.com",
      "phone": "10000000000",
      "ssn": "0004"
    }
  ],
  "buyers": [
    {
      "id": "43bc939f-c5a2-4939-a31a-d0a5fc4f3961",
      "first_name": "Anne",
      "middle_name": "Jimmy",
      "last_name": "Carlisle",
      "email": "annejcarlisle@example.com",
      "phone": "10000000000",
      "ssn": "0004"
    }
  ]
}

Documents

Retrieve all the currently downloadable document types for a given order

GET /public_documents/v2/:order_id/downloadable_document_types
order_id: string
in path

order_id provided in the create order request

200 OK

Success

Response Example (200 OK)
[
  "PreliminaryClosingDisclosure",
  "PreliminarySellerClosingDisclosure",
  "SettlementAgentWireInstructions"
]

Retrieve the currently available document of the given type

GET /public_documents/v2/:order_id/:document_type

Returns the most recent PDF for the provided order_id and document_type

order_id: string
in path

order_id provided in the create order request

document_type: string
in path

document_type as retrieved from the orders/:order_id/documents/available_document_types endpoint

200 OK

the PDF of the given file type

404 Not Found

No document of this type found

Response Content-Types: application/pdf

Upload a document

POST /public_documents/v2/:order_id/:document_type

Upload a Base64-encoded file of the given document_type to Spruce. The list of document_types you can upload is available by calling the /uploadable_document_types endpoint. There is a 200MB maximum file size.

Base64-encoded file

order_id: string
in path

order_id provided in the create order request

document_type: string
in path

document_type as retrieved from the /document_types endpoint

Request Example
{
  "file": "/9j/4AAQSkZJRgABAgAAAQABAAD/7QCcUGhvdG9zaG9wIDMuMAA4QklNBAQAAAAAAIAcAmcAFFdOclF6UlhCbEd1a..."
}
201 Created

Success

413 Request Entity Too Large

Payload too large

Retrieve all the document types that can be uploaded

GET /public_documents/v2/:order_id/uploadable_document_types
200 OK

Success

Response Example (200 OK)
[
  "PreliminaryClosingDisclosure",
  "PreliminarySellerClosingDisclosure",
  "SettlementAgentWireInstructions"
]

Title Report

Get title report data

GET /title_reports/v2/:order_id

Returns the data generated from the title search report, in conjunction with either a pdf title search report or title commitment document available from the documents endpoint. The response will include legal description, vesting information, APN, and title defect summary.

order_id: string
in path

order_id provided in the create order request

200 OK

Success

404 Not Found

Title report not yet available

Response Example (200 OK)
{
  "effective_date": "2017-07-21",
  "vesting_info": "Betty Smith, a married woman as her sole and separate property",
  "legal_description": "Lots 6, 7, and the South ½ of Lot 3, West 60 feet of South ½ of Lot 4, West 60 feet of Lot 5 and Lot 8, Block 20, OLD SURVEY, Leesville, Vernon Parish, Louisiana...",
  "apn": "230-110-023",
  "num_of_open_mortgages": 0,
  "num_of_bankruptcies": 0,
  "num_of_judgements": 1,
  "num_of_other_liens": 1
}

Closing

Submit a scheduling request for a loan closing

POST /closing/v2/:order_id/schedule

Creates a scheduling request for a closing for a given order_id. If only the closing_date is submitted with the request, the customer will be given the choice of time and location before the appointment is fulfilled. If the closing_time and closing_address are also submitted with the request, the appointment will be fulfilled and the customer notified. This endpoint is only intended to be called once, any subsequent requests will recieve a 409. If you need to make updates to a request please contact the Spruce team.

Schedule request information

order_id: string
in path

order_id provided in the create order request

Request Example
{
  "closing_date": "2017-07-21",
  "closing_time": "3:00 PM",
  "closing_address": {
    "street_address": "123 Main St.",
    "unit": "Ste. 001",
    "city": "Anywhere",
    "state": "NY",
    "zip_code": "10004"
  }
}
201 Created

Scheduling request created

400 Bad Request

Bad request

409 Conflict

Request already submitted for this order.

Retrieve closing info

GET /closing/v2/:order_id

Retrieve current information on the scheduled closing.

order_id: string
in path

order_id provided in the create order request

200 OK

Success

404 Not Found

Scheduling request not found

Response Example (200 OK)
{
  "closing_date": "2017-07-21",
  "closing_time": "3:00 PM",
  "closing_address": {
    "street_address": "123 Main St.",
    "unit": "Ste. 001",
    "city": "Anywhere",
    "state": "NY",
    "zip_code": "10004"
  },
  "notary": {
    "first_name": "Kate",
    "last_name": "McKinnon",
    "phone": "10000000000",
    "email": "kate.mckinnon@example.com"
  }
}

Settlement Statements

Retrieve settlement statements

GET /settlement_statements/v1/:order_id

Use the order_id provided in the request to get the current settlement statement for the order

order_id: string
in path

Spruce Order ID

Generated settlement statement

404 Not Found

Order with provided Order Id not found

Response Example (200 OK)
{
  "info": {
    "title": "testTitle",
    "file_number": "114350000004",
    "property_address": {
      "street_address": "123 Main St.",
      "unit": "Ste. 001",
      "city": "Anywhere",
      "state": "NY",
      "zip_code": "10004"
    },
    "buyers": [
      {
        "id": "43bc939f-c5a2-4939-a31a-d0a5fc4f3961",
        "first_name": "Anne",
        "middle_name": "Jimmy",
        "last_name": "Carlisle",
        "email": "annejcarlisle@example.com",
        "phone": "10000000000",
        "ssn": "0004"
      }
    ],
    "settlement_agent": {
      "name": "Spruce Land Services",
      "email": "orders@spruce.co",
      "phone": "18886657535",
      "contact": {
        "first_name": "Patrick",
        "last_name": "Burns",
        "formatted_contact": "Patrick Burns"
      },
      "address": {
        "street_address": "155 W 23rd St",
        "unit": "Floor 10",
        "city": "New York",
        "state": "NY",
        "zip_code": "10011",
        "formatted_address": "155 W 23rd St, Floor 10, New York, NY 10011"
      },
      "license_info": {
        "state_license_id": "TLA-1234567",
        "contact_license_id": "TLA-7654321"
      }
    },
    "seller": "Jane Doe",
    "prepared_for": "Test User",
    "closing_date": "2017-07-21",
    "funding_date": "2017-08-13"
  },
  "transaction_type": "purchase",
  "report_type": "buyer",
  "sections": [
    {
      "totals": {
        "seller_credit": 10,
        "seller_debit": 10,
        "buyer_credit": 10,
        "buyer_debit": 10
      },
      "label": "Title Fees",
      "section_type": "escrow_title_charges",
      "items": [
        {
          "type": "title_fee",
          "label": "Title Fees",
          "payment_note": "Paid by seller before closing",
          "payment": {
            "seller_credit": 10,
            "seller_debit": 10,
            "buyer_credit": 10,
            "buyer_debit": 10
          }
        }
      ]
    }
  ]
}

Schema Definitions

Address: object

street_address: string
unit: string
city: string
state: string

uppercase two-letter state abbreviation.

zip_code: string
Example
{
  "street_address": "123 Main St.",
  "unit": "Ste. 001",
  "city": "Anywhere",
  "state": "NY",
  "zip_code": "10004"
}

NumOfUnits: number

Number of Dwellings/Units

Example
1

LocalDate: string

Date in format: YYYY-MM-DD

ClosingDate: string

Date is assumed to be in the timezone of the closing_address of the order. Format: YYYY-MM-DD

RefinanceQuoteRequest: object

loan_amount: number
estimated_property_value: number
property_address: Address
num_of_units: NumOfUnits
Example
{
  "loan_amount": 580000,
  "estimated_property_value": 725000,
  "property_address": {
    "street_address": "123 Main St.",
    "unit": "Ste. 001",
    "city": "Anywhere",
    "state": "NY",
    "zip_code": "10004"
  },
  "num_of_units": 1
}

PurchaseQuoteRequest: object

loan_amount: number
purchase_price: number
buyer_pays_transfer_taxes: boolean
num_of_units: NumOfUnits
property_address: Address
Example
{
  "loan_amount": 580000,
  "purchase_price": 725000,
  "buyer_pays_transfer_taxes": "false",
  "num_of_units": 1,
  "property_address": {
    "street_address": "123 Main St.",
    "unit": "Ste. 001",
    "city": "Anywhere",
    "state": "NY",
    "zip_code": "10004"
  }
}

RefinanceOrderRequest: object

loan_amount: number
loan_id: string
estimated_property_value: number
property_address: Address
borrowers: BorrowerRequest
BorrowerRequest
num_of_units: NumOfUnits
Example
{
  "loan_amount": 580000,
  "loan_id": "A4100000",
  "estimated_property_value": 725000,
  "property_address": {
    "street_address": "123 Main St.",
    "unit": "Ste. 001",
    "city": "Anywhere",
    "state": "NY",
    "zip_code": "10004"
  },
  "borrowers": [
    {
      "first_name": "Anne",
      "middle_name": "Jimmy",
      "last_name": "Carlisle",
      "email": "annejcarlisle@example.com",
      "phone": "10000000000",
      "ssn": "0004"
    }
  ],
  "num_of_units": 1
}

PurchaseOrderRequest: object

loan_amount: number
loan_id: string
purchase_price: number
property_address: Address
borrowers: BorrowerRequest
BorrowerRequest
buyer_pays_transfer_taxes: boolean
num_of_units: NumOfUnits
closing_date: ClosingDate
Example
{
  "loan_amount": 580000,
  "loan_id": "A4100000",
  "purchase_price": 725000,
  "property_address": {
    "street_address": "123 Main St.",
    "unit": "Ste. 001",
    "city": "Anywhere",
    "state": "NY",
    "zip_code": "10004"
  },
  "borrowers": [
    {
      "first_name": "Anne",
      "middle_name": "Jimmy",
      "last_name": "Carlisle",
      "email": "annejcarlisle@example.com",
      "phone": "10000000000",
      "ssn": "0004"
    }
  ],
  "buyer_pays_transfer_taxes": "false",
  "num_of_units": 1,
  "closing_date": "2017-07-21"
}

CashPurchaseOrderRequest: object

loan_id: string
purchase_price: number
property_address: Address
buyers: BuyerRequest
BuyerRequest
buyer_pays_transfer_taxes: boolean
num_of_units: NumOfUnits
closing_date: ClosingDate
Example
{
  "loan_id": "A4100000",
  "purchase_price": 725000,
  "property_address": {
    "street_address": "123 Main St.",
    "unit": "Ste. 001",
    "city": "Anywhere",
    "state": "NY",
    "zip_code": "10004"
  },
  "buyers": [
    {
      "first_name": "Anne",
      "middle_name": "Jimmy",
      "last_name": "Carlisle",
      "email": "annejcarlisle@example.com",
      "phone_number": "10000000000",
      "ssn": "0004"
    }
  ],
  "buyer_pays_transfer_taxes": "false",
  "num_of_units": 1,
  "closing_date": "2017-07-21"
}

OrderUpdateRequest: object

loan_id: string
borrowers: BorrowerResponse
BorrowerResponse
buyers: BuyerResponse
BuyerResponse
Example
{
  "loan_id": "A4100000",
  "borrowers": [
    {
      "id": "43bc939f-c5a2-4939-a31a-d0a5fc4f3961",
      "first_name": "Anne",
      "middle_name": "Jimmy",
      "last_name": "Carlisle",
      "email": "annejcarlisle@example.com",
      "phone": "10000000000",
      "ssn": "0004"
    }
  ],
  "buyers": [
    {
      "id": "43bc939f-c5a2-4939-a31a-d0a5fc4f3961",
      "first_name": "Anne",
      "middle_name": "Jimmy",
      "last_name": "Carlisle",
      "email": "annejcarlisle@example.com",
      "phone": "10000000000",
      "ssn": "0004"
    }
  ]
}

QuoteResponse: object

fees: Fee
Fee
settlement_agent: SettlementAgent
Example
{
  "fees": [
    {
      "type": "title",
      "label": "Lender's Policy",
      "amount": 1500.75,
      "section": "C"
    }
  ],
  "settlement_agent": {
    "name": "Spruce Land Services",
    "email": "orders@spruce.co",
    "phone": "18886657535",
    "contact": {
      "first_name": "Patrick",
      "last_name": "Burns",
      "formatted_contact": "Patrick Burns"
    },
    "address": {
      "street_address": "155 W 23rd St",
      "unit": "Floor 10",
      "city": "New York",
      "state": "NY",
      "zip_code": "10011",
      "formatted_address": "155 W 23rd St, Floor 10, New York, NY 10011"
    },
    "license_info": {
      "state_license_id": "TLA-1234567",
      "contact_license_id": "TLA-7654321"
    }
  }
}

OrderResponse: object

id: string

the order_id to be used for subsequent API calls

file_number: string
order_status: string new, initial_docs_available, title_report_available, signing_scheduled, signing_confirmed, signing_occurred, waiting_for_funds, funded, recorded, funded_and_recorded, policy_issued, cancelled

the current state of the order

fees: Fee

the fees associated with an order. In situations where you received a 212 on order creation, will not be set until the fees have been added.

Fee
settlement_agent: SettlementAgentWithWireInstructions
borrowers: BorrowerResponse

the borrowers associated with an order. This is only returned for Refinance or Purchase transactions.

BorrowerResponse
buyers: BuyerResponse

the buyers associated with an order. This is only returned for Cash Purchase transactions.

BuyerResponse
Example
{
  "id": "43bc939f-c5a2-4939-a31a-d0a5fc4f3961",
  "file_number": "114350000004",
  "order_status": "new",
  "fees": [
    {
      "type": "title",
      "label": "Lender's Policy",
      "amount": 1500.75,
      "section": "C"
    }
  ],
  "settlement_agent": {
    "name": "Spruce Land Services",
    "email": "orders@spruce.co",
    "phone": "18886657535",
    "contact": {
      "first_name": "Patrick",
      "last_name": "Burns",
      "formatted_contact": "Patrick Burns"
    },
    "address": {
      "street_address": "155 W 23rd St",
      "unit": "Floor 10",
      "city": "New York",
      "state": "NY",
      "zip_code": "10011",
      "formatted_address": "155 W 23rd St, Floor 10, New York, NY 10011"
    },
    "license_info": {
      "state_license_id": "TLA-1234567",
      "contact_license_id": "TLA-7654321"
    },
    "wiring_instructions": {
      "account_number": "1234567890",
      "routing_number": "0110000010",
      "obi": "114350000000"
    }
  },
  "borrowers": [
    {
      "id": "43bc939f-c5a2-4939-a31a-d0a5fc4f3961",
      "first_name": "Anne",
      "middle_name": "Jimmy",
      "last_name": "Carlisle",
      "email": "annejcarlisle@example.com",
      "phone": "10000000000",
      "ssn": "0004"
    }
  ],
  "buyers": [
    {
      "id": "43bc939f-c5a2-4939-a31a-d0a5fc4f3961",
      "first_name": "Anne",
      "middle_name": "Jimmy",
      "last_name": "Carlisle",
      "email": "annejcarlisle@example.com",
      "phone": "10000000000",
      "ssn": "0004"
    }
  ]
}

Fee: object

type: string title, recording, tax
label: string
amount: number
section: string B, C, E, H

Section of the disclosure for this fee

Example
{
  "type": "title",
  "label": "Lender's Policy",
  "amount": 1500.75,
  "section": "C"
}

SettlementAgent: object

name: string
email: string
phone: string
contact: SettlementAgentContact
address: SettlementAgentAddress
license_info: SettlementAgentLicenseInfo
Example
{
  "name": "Spruce Land Services",
  "email": "orders@spruce.co",
  "phone": "18886657535",
  "contact": {
    "first_name": "Patrick",
    "last_name": "Burns",
    "formatted_contact": "Patrick Burns"
  },
  "address": {
    "street_address": "155 W 23rd St",
    "unit": "Floor 10",
    "city": "New York",
    "state": "NY",
    "zip_code": "10011",
    "formatted_address": "155 W 23rd St, Floor 10, New York, NY 10011"
  },
  "license_info": {
    "state_license_id": "TLA-1234567",
    "contact_license_id": "TLA-7654321"
  }
}

SettlementAgentContact: object

first_name: string
last_name: string
formatted_contact: string
Example
{
  "first_name": "Patrick",
  "last_name": "Burns",
  "formatted_contact": "Patrick Burns"
}

SettlementAgentAddress: object

street_address: string
unit: string
city: string
state: string

uppercase two-letter state abbreviation.

zip_code: string
formatted_address: string
Example
{
  "street_address": "155 W 23rd St",
  "unit": "Floor 10",
  "city": "New York",
  "state": "NY",
  "zip_code": "10011",
  "formatted_address": "155 W 23rd St, Floor 10, New York, NY 10011"
}

SettlementAgentLicenseInfo: object

state_license_id: string
contact_license_id: string
Example
{
  "state_license_id": "TLA-1234567",
  "contact_license_id": "TLA-7654321"
}

SettlementAgentWithWireInstructions: object

name: string
email: string
phone: string
contact: SettlementAgentContact
address: SettlementAgentAddress
license_info: SettlementAgentLicenseInfo
wiring_instructions: WiringInstructions
Example
{
  "name": "Spruce Land Services",
  "email": "orders@spruce.co",
  "phone": "18886657535",
  "contact": {
    "first_name": "Patrick",
    "last_name": "Burns",
    "formatted_contact": "Patrick Burns"
  },
  "address": {
    "street_address": "155 W 23rd St",
    "unit": "Floor 10",
    "city": "New York",
    "state": "NY",
    "zip_code": "10011",
    "formatted_address": "155 W 23rd St, Floor 10, New York, NY 10011"
  },
  "license_info": {
    "state_license_id": "TLA-1234567",
    "contact_license_id": "TLA-7654321"
  },
  "wiring_instructions": {
    "account_number": "1234567890",
    "routing_number": "0110000010",
    "obi": "114350000000"
  }
}

WiringInstructions: object

account_number: string
routing_number: string
obi: string
Example
{
  "account_number": "1234567890",
  "routing_number": "0110000010",
  "obi": "114350000000"
}

BorrowerRequest: object

first_name: string
middle_name: string
last_name: string
email: string
phone: string
ssn: string (up to 4 chars)

Last 4 digits of the borrower's social security number

Example
{
  "first_name": "Anne",
  "middle_name": "Jimmy",
  "last_name": "Carlisle",
  "email": "annejcarlisle@example.com",
  "phone": "10000000000",
  "ssn": "0004"
}

BorrowerResponse: object

id: string

the Borrower id to be used for subsequent API calls

first_name: string
middle_name: string
last_name: string
email: string
phone: string
ssn: string (up to 4 chars)

Last 4 digits of the borrower's social security number

Example
{
  "id": "43bc939f-c5a2-4939-a31a-d0a5fc4f3961",
  "first_name": "Anne",
  "middle_name": "Jimmy",
  "last_name": "Carlisle",
  "email": "annejcarlisle@example.com",
  "phone": "10000000000",
  "ssn": "0004"
}

BuyerRequest: object

first_name: string
middle_name: string
last_name: string
email: string
phone_number: string
ssn: string (up to 4 chars)

Last 4 digits of the borrower's social security number

Example
{
  "first_name": "Anne",
  "middle_name": "Jimmy",
  "last_name": "Carlisle",
  "email": "annejcarlisle@example.com",
  "phone_number": "10000000000",
  "ssn": "0004"
}

BuyerResponse: object

id: string

the Borrower id to be used for subsequent API calls

first_name: string
middle_name: string
last_name: string
email: string
phone: string
ssn: string (up to 4 chars)

Last 4 digits of the borrower's social security number

Example
{
  "id": "43bc939f-c5a2-4939-a31a-d0a5fc4f3961",
  "first_name": "Anne",
  "middle_name": "Jimmy",
  "last_name": "Carlisle",
  "email": "annejcarlisle@example.com",
  "phone": "10000000000",
  "ssn": "0004"
}

DocumentTypes: array

string ClosingProtectionLetter, Commitment, EOInsurance, ExecutedClientClosingPackage, ExecutedDeed, LendersPolicy, PreliminaryBorrowerSettlementStatement, PreliminaryMasterSettlementStatement, PreliminaryClosingDisclosure, PreliminarySellerClosingDisclosure, PreparedDeed, RecordedDeed, RecordedMortgage, SearchPackage, SettlementAgentWireInstructions, Survey, TaxCertificate, TitleSearchReport, ExecutedSellerClosingDisclosure
Example
[
  "PreliminaryClosingDisclosure",
  "PreliminarySellerClosingDisclosure",
  "SettlementAgentWireInstructions"
]

File: object

file: string

Base64-encoded file

Example
{
  "file": "/9j/4AAQSkZJRgABAgAAAQABAAD/7QCcUGhvdG9zaG9wIDMuMAA4QklNBAQAAAAAAIAcAmcAFFdOclF6UlhCbEd1a..."
}

TitleReport: object

effective_date: string (date)

Date is relative to the timezone of the property_address of the order

vesting_info: string
legal_description: string
apn: string
num_of_open_mortgages: number
num_of_bankruptcies: number
num_of_judgements: number
num_of_other_liens: number
Example
{
  "effective_date": "2017-07-21",
  "vesting_info": "Betty Smith, a married woman as her sole and separate property",
  "legal_description": "Lots 6, 7, and the South ½ of Lot 3, West 60 feet of South ½ of Lot 4, West 60 feet of Lot 5 and Lot 8, Block 20, OLD SURVEY, Leesville, Vernon Parish, Louisiana...",
  "apn": "230-110-023",
  "num_of_open_mortgages": 0,
  "num_of_bankruptcies": 0,
  "num_of_judgements": 1,
  "num_of_other_liens": 1
}

ScheduleClosingRequest: object

closing_date: ClosingDate
closing_time: string

Time is assumed to be in the timezone of the closing_address of the order. Format: h:mm P

closing_address: Address
Example
{
  "closing_date": "2017-07-21",
  "closing_time": "3:00 PM",
  "closing_address": {
    "street_address": "123 Main St.",
    "unit": "Ste. 001",
    "city": "Anywhere",
    "state": "NY",
    "zip_code": "10004"
  }
}

Closing: object

closing_date: ClosingDate
closing_time: string

Time is assumed to be in the timezone of the closing_address of the order. Format: H:MM P

closing_address: Address
notary: Notary
Example
{
  "closing_date": "2017-07-21",
  "closing_time": "3:00 PM",
  "closing_address": {
    "street_address": "123 Main St.",
    "unit": "Ste. 001",
    "city": "Anywhere",
    "state": "NY",
    "zip_code": "10004"
  },
  "notary": {
    "first_name": "Kate",
    "last_name": "McKinnon",
    "phone": "10000000000",
    "email": "kate.mckinnon@example.com"
  }
}

Notary: object

first_name: string
last_name: string
phone: string
email: string
Example
{
  "first_name": "Kate",
  "last_name": "McKinnon",
  "phone": "10000000000",
  "email": "kate.mckinnon@example.com"
}

PublicSettlementStatement: object

An object to represent the settlement statement for a transaction

info: PublicSettlementStatementInfo
transaction_type: string refinance, purchase
report_type: string buyer, seller, master, borrower
sections: PublicSettlementStatementSection
PublicSettlementStatementSection
Example
{
  "info": {
    "title": "testTitle",
    "file_number": "114350000004",
    "property_address": {
      "street_address": "123 Main St.",
      "unit": "Ste. 001",
      "city": "Anywhere",
      "state": "NY",
      "zip_code": "10004"
    },
    "buyers": [
      {
        "id": "43bc939f-c5a2-4939-a31a-d0a5fc4f3961",
        "first_name": "Anne",
        "middle_name": "Jimmy",
        "last_name": "Carlisle",
        "email": "annejcarlisle@example.com",
        "phone": "10000000000",
        "ssn": "0004"
      }
    ],
    "settlement_agent": {
      "name": "Spruce Land Services",
      "email": "orders@spruce.co",
      "phone": "18886657535",
      "contact": {
        "first_name": "Patrick",
        "last_name": "Burns",
        "formatted_contact": "Patrick Burns"
      },
      "address": {
        "street_address": "155 W 23rd St",
        "unit": "Floor 10",
        "city": "New York",
        "state": "NY",
        "zip_code": "10011",
        "formatted_address": "155 W 23rd St, Floor 10, New York, NY 10011"
      },
      "license_info": {
        "state_license_id": "TLA-1234567",
        "contact_license_id": "TLA-7654321"
      }
    },
    "seller": "Jane Doe",
    "prepared_for": "Test User",
    "closing_date": "2017-07-21",
    "funding_date": "2017-08-13"
  },
  "transaction_type": "purchase",
  "report_type": "buyer",
  "sections": [
    {
      "totals": {
        "seller_credit": 10,
        "seller_debit": 10,
        "buyer_credit": 10,
        "buyer_debit": 10
      },
      "label": "Title Fees",
      "section_type": "escrow_title_charges",
      "items": [
        {
          "type": "title_fee",
          "label": "Title Fees",
          "payment_note": "Paid by seller before closing",
          "payment": {
            "seller_credit": 10,
            "seller_debit": 10,
            "buyer_credit": 10,
            "buyer_debit": 10
          }
        }
      ]
    }
  ]
}

PublicSettlementStatementInfo: object

Information regarding a settlement statement

title: string
file_number: string
property_address: Address
buyers: BuyerResponse
BuyerResponse
settlement_agent: SettlementAgent
seller: string
prepared_for: string
closing_date: ClosingDate
funding_date: LocalDate
Example
{
  "title": "testTitle",
  "file_number": "114350000004",
  "property_address": {
    "street_address": "123 Main St.",
    "unit": "Ste. 001",
    "city": "Anywhere",
    "state": "NY",
    "zip_code": "10004"
  },
  "buyers": [
    {
      "id": "43bc939f-c5a2-4939-a31a-d0a5fc4f3961",
      "first_name": "Anne",
      "middle_name": "Jimmy",
      "last_name": "Carlisle",
      "email": "annejcarlisle@example.com",
      "phone": "10000000000",
      "ssn": "0004"
    }
  ],
  "settlement_agent": {
    "name": "Spruce Land Services",
    "email": "orders@spruce.co",
    "phone": "18886657535",
    "contact": {
      "first_name": "Patrick",
      "last_name": "Burns",
      "formatted_contact": "Patrick Burns"
    },
    "address": {
      "street_address": "155 W 23rd St",
      "unit": "Floor 10",
      "city": "New York",
      "state": "NY",
      "zip_code": "10011",
      "formatted_address": "155 W 23rd St, Floor 10, New York, NY 10011"
    },
    "license_info": {
      "state_license_id": "TLA-1234567",
      "contact_license_id": "TLA-7654321"
    }
  },
  "seller": "Jane Doe",
  "prepared_for": "Test User",
  "closing_date": "2017-07-21",
  "funding_date": "2017-08-13"
}

PublicSettlementStatementSection: object

An object to represent Individual sections in a settlement statement

totals: MasterPayment
label: string
section_type: string financial_consideration, loan_charges_to_lender, escrow_title_charges, other_loan_charges, recording_fees_and_transfer_taxes, commissions_other, prorations_adjustments, payoffs, subtotals, totals, balance_borrower, balance_buyer, balance_seller, investment_amount
items: PublicSettlementStatementItem
PublicSettlementStatementItem
Example
{
  "totals": {
    "seller_credit": 10,
    "seller_debit": 10,
    "buyer_credit": 10,
    "buyer_debit": 10
  },
  "label": "Title Fees",
  "section_type": "escrow_title_charges",
  "items": [
    {
      "type": "title_fee",
      "label": "Title Fees",
      "payment_note": "Paid by seller before closing",
      "payment": {
        "seller_credit": 10,
        "seller_debit": 10,
        "buyer_credit": 10,
        "buyer_debit": 10
      }
    }
  ]
}

PublicSettlementStatementItem: object

Individual line items in a settlement statement

type: string percentage_of_loan_amount, origination_fee_other, title_fee, title_fee_other, other_loan_cost, endorsement, endorsement_other, recording_fee, recording_fee_other, tax, tax_other, interest_prepayment, non_interest_prepayment, prepayment_other, escrow_at_closing, escrow_at_closing_other, aggregate_adjustment, other_fee, lender_credit, payoff, personal_property_sale, buyer_deposit, existing_loans_assumed, seller_credit, seller_excess_deposit, buyer_credit_from_seller, buyer_credit_from_third_party, buyer_reimbursement_to_seller, buyer_reimbursement_other_to_seller, buyer_reimbursement_from_seller, buyer_reimbursement_other_from_seller, buyer_reimbursement_to_third_party, loan_amount, sale_price, hoa, property_taxes
label: string
payment_note: string
payment: MasterPayment
Example
{
  "type": "title_fee",
  "label": "Title Fees",
  "payment_note": "Paid by seller before closing",
  "payment": {
    "seller_credit": 10,
    "seller_debit": 10,
    "buyer_credit": 10,
    "buyer_debit": 10
  }
}

MasterPayment: object

Object to represent the payments in a settlement statement

seller_credit: number
seller_debit: number
buyer_credit: number
buyer_debit: number
Example
{
  "seller_credit": 10,
  "seller_debit": 10,
  "buyer_credit": 10,
  "buyer_debit": 10
}

CallbackBody: object

event_id: string
event: string order_status_changed

the event behind the callback

timestamp: timestamp

ISO 8601 UTC timestamp

payload: object
order_id: string

spruce order id

file_number: string

spruce file number

status: string new, initial_docs_available, title_report_available, signing_scheduled, signing_confirmed, signing_occurred, waiting_for_funds, funded, recorded, funded_and_recorded, policy_issued, cancelled

updated order status

Example
{
  "event_id": "35e8609c-7ce4-43fd-9b43-61c0d9ebd1a8",
  "event": "order_status_changed",
  "timestamp": "2019-04-04T14:16:23Z",
  "payload": {
    "order_id": "ad52d967-9331-4951-8f7b-1697d0bc07bf",
    "file_number": "114350000004",
    "status": "funded"
  }
}