Select Page
View all Web API examples ▸

CoreLogic Trestle (generic)

MLS Provider: CoreLogic

A1 | Get metadata

Retrieve metadata for a specific service in OData EDMX/xml format. https://api-prod.corelogic.com/trestle/odata/$metadata

Output format must be set to None.

Top

A2 | Get single Data System

Select a specific Data System and list its resources. The DataSystem endpoint will list all available Resources. https://api-prod.corelogic.com/trestle/odata/DataSystem('Trestle-1-1') Top

A3 | See all available Data Systems

To get the complete list of DataSystems provided by a server, append /DataSystem to the URI Stem of the server. Each Data System provided by the service will be listed as items and will contain a list all available Resources for that... https://api-prod.corelogic.com/trestle/odata/DataSystem Top

B4 | Filter for specific Property

There are several ways to get a single property. By ID as in this example or including the unique key (i.e. Listing Key) in the Property attribute. i.e. Property(‘23442234’). Resultant fields are dictated by the $select... https://api-prod.corelogic.com/trestle/odata/Property?$filter=ListingKey eq '335914814'&$ListingKey,BedroomsTotal,PropertyType,StreetName,ModificationTimestamp,OriginatingSystemName,Appliances,ListingContractDate,AssociationFeeFrequency Top

B5 | Filter by resource key

You can search most resources by using that resource’s unique identifier. https://api-prod.corelogic.com/trestle/odata/Property('335914814') Top

C10 | Filter using not equal

not equal (ne) is used as to counter equal (eq) https://api-prod.corelogic.com/trestle/odata/Property?$filter=BedroomsTotal ne 3 &$top=5&$select=ListingKey,BedroomsTotal,PropertyType,StreetName,ModificationTimestamp,OriginatingSystemName,Appliances,ListingContractDate,AssociationFeeFrequency Top

C11 | Filter using ‘not’ in an expression

A boolean ‘Not’ must enclose its operands in a parenthesis with not as an operator i.e. not(City eq ‘Elkwood’). https://api-prod.corelogic.com/trestle/odata/Property?$filter=not(BedroomsTotal le 3) and (PropertyType eq 'Residential')&$select=ListingKey,BedroomsTotal,PropertyType,StreetName,ModificationTimestamp,OriginatingSystemName,Appliances,ListingContractDate,AssociationFeeFrequency,BedroomsTotal&$top=11 Top

C6 | Filter on Boolean field

Filter results by a boolean field (true or false). Note, do not treat the value true or false as a string. https://api-prod.corelogic.com/trestle/odata/Property?$filter=InternetAddressDisplayYN eq true &$top=5&$select=ListingKey,BedroomsTotal,PropertyType,StreetName,ModificationTimestamp,OriginatingSystemName,Appliances,ListingContractDate,AssociationFeeFrequency,InternetAddressDisplayYN Top

C7 | Filter on multiple field values

All names in the $filter option are case sensitive and must match the names of elements provided by the metadata resource. Values are also case sensitive. https://api-prod.corelogic.com/trestle/odata/Property?$filter=BedroomsTotal eq 3 and (City eq 'El Paso') and (PropertyType eq 'Residential')&$top=5&$select=ListingKey,BedroomsTotal,PropertyType,StreetName,ModificationTimestamp,OriginatingSystemName,Appliances,ListingContractDate,AssociationFeeFrequency Top

C8 | Filter on same field

Use parenthesis and logical ‘and’ or ‘or’ to group filter expressions. https://api-prod.corelogic.com/trestle/odata/Property?$filter=BedroomsTotal eq 3 or (BedroomsTotal eq 4 and InternetAddressDisplayYN eq true) &$top=5&$select=ListingKey,BedroomsTotal,PropertyType,StreetName,ModificationTimestamp,OriginatingSystemName,Appliances,ListingContractDate,AssociationFeeFrequency Top

C9 | Filter on string fields

Filter a query by matching strings. Note that string comparisons are case sensitive. There are also string functions to aid with string filters but will vary depending on MLS Provider (i.e. toupper(StreetName) eq... https://api-prod.corelogic.com/trestle/odata/Member?$(MemberFirstName eq 'James' or toupper(MemberFirstName) eq 'ADAM')&$top=20 Top

D12 | Expand Resources in results

The $expand system query option specifies the related resources to be included in line with retrieved resources. Look for the NavigationProperty in the metadata to determine if a resource is linked for expansion. https://api-prod.corelogic.com/trestle/odata/Property?$filter=(City eq 'El Paso') and (PropertyType eq 'Residential') and PhotosCount gt 1&$top=5&$select=ListingKey,BedroomsTotal,PropertyType,StreetName,ModificationTimestamp,OriginatingSystemName,Appliances,ListingContractDate,AssociationFeeFrequency,PhotosCount&$expand=Media Top

D13 | Sort Results

The $orderby system query option allows clients to request resources in either ascending order using asc or descending order using desc. If asc or desc not specified, then the resources will be ordered in ascending (asc) order. A compliant client SHOULD use the... https://api-prod.corelogic.com/trestle/odata/Property?$filter=ListPrice lt 1000000 and (City eq 'El Paso') and (PropertyType eq 'Residential')&$orderby=ListPrice desc&$top=10&$select=ListingKey,BedroomsTotal,PropertyType,StreetName,ModificationTimestamp,OriginatingSystemName,Appliances,ListingContractDate,AssociationFeeFrequency Top

D14 | Return only limited number of records

Get first 10 results from query/filter. All names in the $select option are case-sensitive to match the names of elements provided by the resource. The implementation of $top and $orderby is defined by the server and may restrict what values may be used in either... https://api-prod.corelogic.com/trestle/odata/Member?$top=10&$select=MemberLastName,MemberFirstName,MemberLoginId&$filter=MemberFirstName eq 'John' Top

D15 | Skip n records and get next m records

Skip by the first 10 results and return the 2nd 10 results from a filter. If more records exist in the query than returned then using the @odata.nextLink value from the result is another way to retrieve remaining... https://api-prod.corelogic.com/trestle/odata/Member?$skip=10&$top=10&$orderby=MemberLastName&$select=MemberLastName,MemberFirstName,MemberLoginId Top

D16 | Ouput a selected set of fields

The resultant output (usually JSON) can be dictated by using the OData ‘select’ statement. https://api-prod.corelogic.com/trestle/odata/Property?$filter=BedroomsTotal eq 3&$top=5&$select=ListingKey,BedroomsTotal,PropertyType,StreetName,ModificationTimestamp,OriginatingSystemName,Appliances,ListingContractDate,AssociationFeeFrequency Top

E17 | Filter on single value enumeration

A Single Valued Lookup is a field that can have one and only one selection from a list of values. The Web API Implements Single Valued Lookup fields using the OData data type of Edm.EnumType with an underlying type of... https://api-prod.corelogic.com/trestle/odata/Property?$filter=(PropertyType eq 'Residential') and AssociationFeeFrequency has CoreLogic.DataStandard.RESO.DD.Enums.FeeFrequency'Quarterly'&$top=10&$select=ListingKey,BedroomsTotal,PropertyType,StreetName,ModificationTimestamp,OriginatingSystemName,Appliances,ListingContractDate,AssociationFeeFrequency,AssociationFeeFrequency Top

E18 | Filter on multi-valued enumeration

A Multi-Valued Lookup is a field that can have one or more items selected from a list of values. https://api-prod.corelogic.com/trestle/odata/Property?$filter=(PropertyType eq 'Residential') and (Appliances has CoreLogic.DataStandard.RESO.DD.Enums.Appliances'Dishwasher') or (Appliances has CoreLogic.DataStandard.RESO.DD.Enums.Appliances'Refrigerator')&$top=10&$select=ListingKey,BedroomsTotal,PropertyType,StreetName,ModificationTimestamp,OriginatingSystemName,Appliances,ListingContractDate,AssociationFeeFrequency,Appliances Top

F19 | Filter on a Date

Filtering on a date requires date fields to be defined as dates (Type=”Edm.Date”) in the metadata https://api-prod.corelogic.com/trestle/odata/Property?$filter=ListingContractDate lt 2017-12-31 and (PropertyType eq 'Residential')&$top=5&$select=ListingKey,BedroomsTotal,PropertyType,StreetName,ModificationTimestamp,OriginatingSystemName,Appliances,ListingContractDate,AssociationFeeFrequency,ListingContractDate Top

F20 | Filter on a date value of now

The function now() will return the now time in UTC https://api-prod.corelogic.com/trestle/odata/Property?$filter=ModificationTimestamp le now() and (PropertyType eq 'Residential')&$select=ListingKey,BedroomsTotal,PropertyType,StreetName,ModificationTimestamp,OriginatingSystemName,Appliances,ListingContractDate,AssociationFeeFrequency,ModificationTimestamp&$top=5 Top

F21 | Filter on a fractional second

filtering on fractions of a second requires the use of the function fractionalseconds() https://api-prod.corelogic.com/trestle/odata/Property?$filter=ListingContractDate lt 2017-12-31 and fractionalseconds(ModificationTimestamp) lt 0033 and (PropertyType eq 'Residential')&$top=5&$select=ListingKey,BedroomsTotal,PropertyType,StreetName,ModificationTimestamp,OriginatingSystemName,Appliances,ListingContractDate,AssociationFeeFrequency,ListingContractDate,ModificationTimestamp Top

F22 | Filter on time

Filtering on time can use of the hour, minute, second and fractional seconds functions. https://api-prod.corelogic.com/trestle/odata/Property?$filter=year(ModificationTimestamp) eq 2018 and month(ModificationTimestamp) gt 5 and day(ModificationTimestamp) lt 31 and hour(ModificationTimestamp) gt 1 and minute(ModificationTimestamp) gt 3 and (PropertyType eq 'Residential')&$top=5&$select=ListingKey,BedroomsTotal,PropertyType,StreetName,ModificationTimestamp,OriginatingSystemName,Appliances,ListingContractDate,AssociationFeeFrequency,ModificationTimestamp Top

G23 | Filter on a string that ends with

Filter on a string field value that ends with a certain value. This is case sensitive https://api-prod.corelogic.com/trestle/odata/Property?$filter=endswith(StreetName, 'M')&$select=ListingKey,BedroomsTotal,PropertyType,StreetName,ModificationTimestamp,OriginatingSystemName,Appliances,ListingContractDate,AssociationFeeFrequency,StreetName&$top=5 Top

G24 | Filter by comparing upper case

Convert a string to upper case (toupper). Lower case would use the function tolower(). https://api-prod.corelogic.com/trestle/odata/Property?$filter=toupper(StreetName) eq 'MAIN'&$top=5&$select=ListingKey,BedroomsTotal,PropertyType,StreetName,ModificationTimestamp,OriginatingSystemName,Appliances,ListingContractDate,AssociationFeeFrequency Top

G25 | Filter on a string that starts with

Filter on a string field value that starts with a certain value. This is case sensitive https://api-prod.corelogic.com/trestle/odata/Member/?$filter=startswith(MemberFirstName, 'Joh')&$select=MemberFirstName,MemberLastName,MemberStatus,ModificationTimestamp&$top=20 Top

G26 | Filter a string that contains

Filter on a string field value that contains a certain value. This is case sensitive https://api-prod.corelogic.com/trestle/odata/Property?$filter=contains(StreetName,'Main')&$top=5&$select=ListingKey,BedroomsTotal,PropertyType,StreetName,ModificationTimestamp,OriginatingSystemName,Appliances,ListingContractDate,AssociationFeeFrequency Top

G27 | Filter using cast function

The cast function has the following signatures: type cast(type) and type cast(expression,type). The single parameter cast function returns the current instance cast to the type specified. The two parameter cast function returns the object referred to by the expression... https://api-prod.corelogic.com/trestle/odata/Property?$filter=cast(AboveGradeFinishedArea, 'Edm.String') eq '1500'&$top=5&$select=ListingKey,BedroomsTotal,PropertyType,StreetName,ModificationTimestamp,OriginatingSystemName,Appliances,ListingContractDate,AssociationFeeFrequency,AboveGradeFinishedArea Top

G28 | Flter using concatenation function

The concat function with string parameter values returns a string that appends the second parameter string value to the first. The concat function with collection parameter values returns a collection that appends all items of the second collection to the first. If... https://api-prod.corelogic.com/trestle/odata/Property?$filter=(concat(concat(StreetName, '-'), City) eq 'Napa-Rolla')&$top=5&$select=ListingKey,BedroomsTotal,PropertyType,StreetName,ModificationTimestamp,OriginatingSystemName,Appliances,ListingContractDate,AssociationFeeFrequency Top

H29 | Geospatial Filter within a radius

A geographic search from a point in the Data System. Note that the structure of a geospatial search can vary per MLS.Search. Pay attention to MLS Service metadata name for Type=”Edm.GeographyPoint”. https://api-prod.corelogic.com/trestle/odata/Property?$filter=geo.distance(X_Location, geography'POINT(-122.256 37.8078)') le 1000&$top=5 Top

H30 | Geospatial Filter within a polygon

Need a minimum of four points to search by a polygon. The first and last points must be the same and because you’re able to put ‘holes’ into your polygon, you’d need to wrap the coords in another set of parenthesis. Note that the structure of a... https://api-prod.corelogic.com/trestle/odata/Property?$filter=geo.intersects(X_Location,geography'POLYGON((-84.23567 33.681218, -84.202101 33.686658, -84.205493 33.763106, -84.23567 33.681218))')&$top=5&$select=ListingKey,BedroomsTotal,PropertyType,StreetName,ModificationTimestamp,OriginatingSystemName,Appliances,ListingContractDate,AssociationFeeFrequency Top
Subscribe To Our Blog!

Subscribe To Our Blog!

Join our mailing list to receive the latest news and updates from our team.

You have Successfully Subscribed!