This guide will walk you through everything you need to know about the DLP V2 API from Attom. After going through this page, you should be able to understand the structure of the API, test sample API calls through the interactive docs, lookup the data available in the API, and begin testing and integration.
All requests to the API endpoints require you to specify your unique API key. The API Key is assigned to you by Attom and is used to identify and authorize each request. Your API key should be kept private and should never be displayed publicly.
All successful responses are returned in JSON or XML, depending on the response format you request. Only queries that respond with a 200 code (successfully completed), are counted towards monthly usage and overages.
The Property V2 API is designed to help you to integrate U.S. property information into any application that you are building. The API returns data from beds/baths/square footage to sales history, AVM, foreclosure, and owner/mortgage information.
The data provided in the Property V2 API is derived originally from county public records and proprietary Attom algorithms.
The endpoints for the Property V2 API are structured as follows:
https://api.gateway.attomdata.com/property/v2/{API Call Name}/{Parameters}
Here is an example with the Basic Profile API call:
https://api.gateway.attomdata.com/property/v2/BasicProfile/PropId/45
There is one required header that needs to be passed with each API call:
Our data is organized into a set of resources. While all resources ultimately relate to a property (or piece of real estate), they contain different data sets. You’ll find the available resources below.
Use the /BasicProfile resource to get basic assessor data, information on the latest loan and transaction, along with owner and tax data basic property characteristics for a property or list of properties.
Use the /BasicHistory resource to get transaction and loan history on a given property.
Use the /ExpandedProfile resource to get detailed assessor data, information on the latest loan and transaction, along with owner and tax data.
Use the /ExpandedHistory resource to get sales transaction, loan, owner, and foreclosure history on a given property.
Use the /qunatumavmreport resource to display the latest “automated valuation model” (Attomized AVM) calculation of a property.
Use the /avmreport resource to return an “automated valuation model” (AVM) for a given property.
Use the /PropertySearch resource to get basic information on a given property.
Use the /SalesComparables resource to get comparable sales around a given property based on parameters input into the API call.
The table below shows what search parameters are available for each resource with a brief description.
Parameter | Description |
---|---|
/PropId | A unique Attom property ID associated with every property in the Attom database |
/Address | Address information, including street address, city, state, zip code, and county |
/SaPropId | A unique Attom property ID associated with every property in the Attom database |
/APN | The unique assessor’s parcel number assigned to each property within a county |
/Geo | Only available for the /PropertySearch resource. Includes the latitude, longitude, and radius input parameters |
There is some default behavior to be aware of for the /PropertySearch API call. The tables below shows all available search filters for the API call and their default values:
Parameter | Default Value |
---|---|
searchType | Exact |
numberOfRecords | 10 |
sort (optional) | Asc |
There is some default behavior to be aware of for the /BasicHistory and /ExpandedHistory API calls. The tables below shows all available search filters for the API call and their default values:
Parameter | Default Value |
---|---|
suppressNonPurchaseTransaction | False |
include0OrUnknowSalesAmounts | True |
maxNumberOfTransactions (optional) | NULL |
There is some default behavior to be aware of for the /SalesComparables API call. The tables below shows all available search filters for the API call and their default values:
Parameter | Default Value |
---|---|
searchType | Radius |
minComps | 1 |
maxComps | 10 |
miles | 5 |
sameCity | False |
useSameTargetCode | True |
useCode | NULL |
bedroomsRange | 2 |
bathroomRange | 2 |
sqFeetRange | 600 |
lotSizeRange | 2000 |
onlyPropertiesWithPool | False |
saleDateRange | 6 |
saleAmountRangeFrom | NULL |
saleAmountRangeTo | NULL |
unitNumberRange | NULL |
yearBuiltRange | 10 |
storiesRange | NULL |
include0SalesAmounts | True |
includeFullSalesOnly | False |
createSalesCompMap | True |
ownerOccupied | Both |
distressed | IncludeDistressed |
Show me all of the comparable sales within a 5-mile radius that have sold for between $300,000 and $350,000 within the last 6 months.
https://api.gateway.attomdata.com/property/v2/SalesComparables/Address/4529%20Winona%20Court/Denver/-/CO/80212?searchType=Radius&minComps=1&maxComps=10&miles=5&bedroomsRange=2&bathroomRange=2&sqFeetRange=600&lotSizeRange=2000&saleDateRange=6&saleAmountRangeFrom=300000&saleAmountRangeTo=350000&yearBuiltRange=10&ownerOccupied=Both&distressed=IncludeDistressed
A standard response from the property API will include the following structure to help you handle different response codes, page sizes, and number of records. This can be found at the bottom of the response and the follow examples shows a successful response:
"PRODUCT": {
   "STATUS": {
     "_Code": 0,
     "_Condition": "Success",
     "_Name": "Success",
     "_Description": "Successful execution"
   }
}