IDX Client level API for accessing client properties, links, agents, offices, and search information.
endpoint: https://api.idxbroker.com/clients/[...]
This is a simple, access anywhere, method for getting a list of all API components available.
// access URL and request method $url = 'https://api.idxbroker.com/clients/listcomponents'; $method = 'GET'; // headers (required and optional) $headers = array( 'Content-Type: application/x-www-form-urlencoded', // required 'accesskey: abcdefghijklmnopqrstuvwx', // required - replace with your own 'outputtype: json' // optional - overrides the preferences in our API control page ); // set up cURL $handle = curl_init(); curl_setopt($handle, CURLOPT_URL, $url); curl_setopt($handle, CURLOPT_HTTPHEADER, $headers); curl_setopt($handle, CURLOPT_RETURNTRANSFER, true); curl_setopt($handle, CURLOPT_SSL_VERIFYHOST, false); curl_setopt($handle, CURLOPT_SSL_VERIFYPEER, false); // exec the cURL request and returned information. Store the returned HTTP code in $code for later reference $response = curl_exec($handle); $code = curl_getinfo($handle, CURLINFO_HTTP_CODE); if ($code >= 200 || $code < 300) $components = json_decode($response,true); else $error = $code;
A simple method for listing all available methods in the current API component. This method will also list which request methods (GET, PUT, POST, or DELETE) are supported by each method.
// access URL and request method $url = 'https://api.idxbroker.com/clients/listmethods'; $method = 'GET'; // headers (required and optional) $headers = array( 'Content-Type: application/x-www-form-urlencoded', // required 'accesskey: abcdefghijklmnopqrstuvwx', // required - replace with your own 'outputtype: json' // optional - overrides the preferences in our API control page ); // set up cURL $handle = curl_init(); curl_setopt($handle, CURLOPT_URL, $url); curl_setopt($handle, CURLOPT_HTTPHEADER, $headers); curl_setopt($handle, CURLOPT_RETURNTRANSFER, true); curl_setopt($handle, CURLOPT_SSL_VERIFYHOST, false); curl_setopt($handle, CURLOPT_SSL_VERIFYPEER, false); // exec the cURL request and returned information. Store the returned HTTP code in $code for later reference $response = curl_exec($handle); $code = curl_getinfo($handle, CURLINFO_HTTP_CODE); if ($code >= 200 || $code < 300) $response = json_decode($response,true); else $error = $code;
A method to view agent information on multi-user accounts.
filterField
optional the field to use when filtering output. Available values:
filterValue
conditional on use of filterField - the value by which to filter// access URL and request method $url = 'https://api.idxbroker.com/clients/agents?filterField=agentID&filterValue=1'; $method = 'GET'; // headers (required and optional) $headers = array( 'Content-Type: application/x-www-form-urlencoded', // required 'accesskey: abcdefghijklmnopqrstuvwx', // required - replace with your own 'outputtype: json' // optional - overrides the preferences in our API control page ); // set up cURL $handle = curl_init(); curl_setopt($handle, CURLOPT_URL, $url); curl_setopt($handle, CURLOPT_HTTPHEADER, $headers); curl_setopt($handle, CURLOPT_RETURNTRANSFER, true); curl_setopt($handle, CURLOPT_SSL_VERIFYHOST, false); curl_setopt($handle, CURLOPT_SSL_VERIFYPEER, false); // exec the cURL request and returned information. Store the returned HTTP code in $code for later reference $response = curl_exec($handle); $code = curl_getinfo($handle, CURLINFO_HTTP_CODE); if ($code >= 200 || $code < 300) $response = json_decode($response,true); else $error = $code;
A method to view all offices on a mutli-user account.
filterField
optional the field to use when filtering output. Available values:
filterValue
conditional on use of filterField - the value by which to filter// access URL and request method $url = 'https://api.idxbroker.com/clients/offices'; $method = 'GET'; // headers (required and optional) $headers = array( 'Content-Type: application/x-www-form-urlencoded', // required 'accesskey: abcdefghijklmnopqrstuvwx', // required - replace with your own 'outputtype: json' // optional - overrides the preferences in our API control page ); // set up cURL $handle = curl_init(); curl_setopt($handle, CURLOPT_URL, $url); curl_setopt($handle, CURLOPT_HTTPHEADER, $headers); curl_setopt($handle, CURLOPT_RETURNTRANSFER, true); curl_setopt($handle, CURLOPT_SSL_VERIFYHOST, false); curl_setopt($handle, CURLOPT_SSL_VERIFYPEER, false); // exec the cURL request and returned information. Store the returned HTTP code in $code for later reference $response = curl_exec($handle); $code = curl_getinfo($handle, CURLINFO_HTTP_CODE); if ($code >= 200 || $code < 300) $response = json_decode($response,true); else $error = $code;
Gathers all the pages system pages (search, featured, contact, etc) that can be directly linked to without additional property information being included in the URL.
systemresults
. If true this is a property results page that requires additional parameters. This means the url can be
useful when dynamically building results page links but should not be linked to directly.{ "uid": "100-1", "name": "Address Search", "url": "http://somesite.idxbroker.com/idx/search/address-search", "category": "search", "systemresults": false, "subpages": [ { "uid": "100-1-a001", "name": "Address Search (Regional Multiple Listing Service)", "url": "http://somesite.idxbroker.com/idx/search/address-search?idxID=a001", "category": "search", "systemresults": false }, { "uid": "100-1-a039", "name": "Address Search (Alaska MLS)", "url": "http://jsomesite.idxbroker.com/idx/search/address-search?idxID=a039", "category": "search", "systemresults": false } ] }
// access URL and request method $url = 'https://api.idxbroker.com/clients/systemlinks'; $method = 'GET'; // headers (required and optional) $headers = array( 'Content-Type: application/x-www-form-urlencoded', // required 'accesskey: abcdefghijklmnopqrstuvwx', // required - replace with your own 'outputtype: json' // optional - overrides the preferences in our API control page ); // set up cURL $handle = curl_init(); curl_setopt($handle, CURLOPT_URL, $url); curl_setopt($handle, CURLOPT_HTTPHEADER, $headers); curl_setopt($handle, CURLOPT_RETURNTRANSFER, true); curl_setopt($handle, CURLOPT_SSL_VERIFYHOST, false); curl_setopt($handle, CURLOPT_SSL_VERIFYPEER, false); // exec the cURL request and returned information. Store the returned HTTP code in $code for later reference $response = curl_exec($handle); $code = curl_getinfo($handle, CURLINFO_HTTP_CODE); if ($code >= 200 || $code < 300) $response = json_decode($response,true); else $error = $code;
Gather all the links that have been created on the given client account. Adding and editing saved link functionality will be added in a future version of the API.
// access URL and request method $url = 'https://api.idxbroker.com/clients/savedlinks'; $method = 'GET'; // headers (required and optional) $headers = array( 'Content-Type: application/x-www-form-urlencoded', // required 'accesskey: abcdefghijklmnopqrstuvwx', // required - replace with your own 'outputtype: json' // optional - overrides the preferences in our API control page ); // set up cURL $handle = curl_init(); curl_setopt($handle, CURLOPT_URL, $url); curl_setopt($handle, CURLOPT_HTTPHEADER, $headers); curl_setopt($handle, CURLOPT_RETURNTRANSFER, true); curl_setopt($handle, CURLOPT_SSL_VERIFYHOST, false); curl_setopt($handle, CURLOPT_SSL_VERIFYPEER, false); // exec the cURL request and returned information. Store the returned HTTP code in $code for later reference $response = curl_exec($handle); $code = curl_getinfo($handle, CURLINFO_HTTP_CODE); if ($code >= 200 || $code < 300) $response = json_decode($response,true); else $error = $code;
Gather all the URLs for javascript widgets on the user's account. These widgets can then be placed on the user's main site via the included URLs.
// access URL and request method $url = 'https://api.idxbroker.com/clients/widgetsrc'; $method = 'GET'; // headers (required and optional) $headers = array( 'Content-Type: application/x-www-form-urlencoded', // required 'accesskey: abcdefghijklmnopqrstuvwx', // required - replace with your own 'outputtype: json' // optional - overrides the preferences in our API control page ); // set up cURL $handle = curl_init(); curl_setopt($handle, CURLOPT_URL, $url); curl_setopt($handle, CURLOPT_HTTPHEADER, $headers); curl_setopt($handle, CURLOPT_RETURNTRANSFER, true); curl_setopt($handle, CURLOPT_SSL_VERIFYHOST, false); curl_setopt($handle, CURLOPT_SSL_VERIFYPEER, false); // exec the cURL request and returned information. Store the returned HTTP code in $code for later reference $response = curl_exec($handle); $code = curl_getinfo($handle, CURLINFO_HTTP_CODE); if ($code >= 200 || $code < 300) $response = json_decode($response,true); else $error = $code;
Returns a basic set of information for all of the client's featured (active) properties.
// access URL and request method $url = 'https://api.idxbroker.com/clients/featured'; $method = 'GET'; // headers (required and optional) $headers = array( 'Content-Type: application/x-www-form-urlencoded', // required 'accesskey: abcdefghijklmnopqrstuvwx', // required - replace with your own 'outputtype: json' // optional - overrides the preferences in our API control page ); // set up cURL $handle = curl_init(); curl_setopt($handle, CURLOPT_URL, $url); curl_setopt($handle, CURLOPT_HTTPHEADER, $headers); curl_setopt($handle, CURLOPT_RETURNTRANSFER, true); curl_setopt($handle, CURLOPT_SSL_VERIFYHOST, false); curl_setopt($handle, CURLOPT_SSL_VERIFYPEER, false); // exec the cURL request and returned information. Store the returned HTTP code in $code for later reference $response = curl_exec($handle); $code = curl_getinfo($handle, CURLINFO_HTTP_CODE); if ($code >= 200 || $code < 300) $response = json_decode($response,true); else $error = $code;
Returns a basic set of information for all of the client's sold and pending properties. That is, those that have been removed from their MLS data.
// access URL and request method $url = 'https://api.idxbroker.com/clients/soldpending'; $method = 'GET'; // headers (required and optional) $headers = array( 'Content-Type: application/x-www-form-urlencoded', // required 'accesskey: abcdefghijklmnopqrstuvwx', // required - replace with your own 'outputtype: json' // optional - overrides the preferences in our API control page ); // set up cURL $handle = curl_init(); curl_setopt($handle, CURLOPT_URL, $url); curl_setopt($handle, CURLOPT_HTTPHEADER, $headers); curl_setopt($handle, CURLOPT_RETURNTRANSFER, true); curl_setopt($handle, CURLOPT_SSL_VERIFYHOST, false); curl_setopt($handle, CURLOPT_SSL_VERIFYPEER, false); // exec the cURL request and returned information. Store the returned HTTP code in $code for later reference $response = curl_exec($handle); $code = curl_getinfo($handle, CURLINFO_HTTP_CODE); if ($code >= 200 || $code < 300) $response = json_decode($response,true); else $error = $code;
Returns a basic set of information for all of the client's supplemental (non-MLS) properties.
// access URL and request method $url = 'https://api.idxbroker.com/clients/supplemental'; $method = 'GET'; // headers (required and optional) $headers = array( 'Content-Type: application/x-www-form-urlencoded', // required 'accesskey: abcdefghijklmnopqrstuvwx', // required - replace with your own 'outputtype: json' // optional - overrides the preferences in our API control page ); // set up cURL $handle = curl_init(); curl_setopt($handle, CURLOPT_URL, $url); curl_setopt($handle, CURLOPT_HTTPHEADER, $headers); curl_setopt($handle, CURLOPT_RETURNTRANSFER, true); curl_setopt($handle, CURLOPT_SSL_VERIFYHOST, false); curl_setopt($handle, CURLOPT_SSL_VERIFYPEER, false); // exec the cURL request and returned information. Store the returned HTTP code in $code for later reference $response = curl_exec($handle); $code = curl_getinfo($handle, CURLINFO_HTTP_CODE); if ($code >= 200 || $code < 300) $response = json_decode($response,true); else $error = $code;
Returns a basic set of information for all of the client's historical (Sold MLS Data) properties when available.
// access URL and request method $url = 'https://api.idxbroker.com/clients/historical'; $method = 'GET'; // headers (required and optional) $headers = array( 'Content-Type: application/x-www-form-urlencoded', // required 'accesskey: abcdefghijklmnopqrstuvwx', // required - replace with your own 'outputtype: json' // optional - overrides the preferences in our API control page ); // set up cURL $handle = curl_init(); curl_setopt($handle, CURLOPT_URL, $url); curl_setopt($handle, CURLOPT_HTTPHEADER, $headers); curl_setopt($handle, CURLOPT_RETURNTRANSFER, true); curl_setopt($handle, CURLOPT_SSL_VERIFYHOST, false); curl_setopt($handle, CURLOPT_SSL_VERIFYPEER, false); // exec the cURL request and returned information. Store the returned HTTP code in $code for later reference $response = curl_exec($handle); $code = curl_getinfo($handle, CURLINFO_HTTP_CODE); if ($code >= 200 || $code < 300) $response = json_decode($response,true); else $error = $code;
Returns the cities available in each of a client's city lists. Since a client can build any number of city lists this method requires the ID of which list
you want to view. To get a list of all city lists available do not send the primary request ID. The default list on each account has the id
combinedActiveMLS
.
list ID
optional If no ID is given a list of IDs is returned.// access URL and request method $url = 'https://api.idxbroker.com/clients/cities'; $method = 'GET'; // headers (required and optional) $headers = array( 'Content-Type: application/x-www-form-urlencoded', // required 'accesskey: abcdefghijklmnopqrstuvwx', // required - replace with your own 'outputtype: json' // optional - overrides the preferences in our API control page ); // set up cURL $handle = curl_init(); curl_setopt($handle, CURLOPT_URL, $url); curl_setopt($handle, CURLOPT_HTTPHEADER, $headers); curl_setopt($handle, CURLOPT_RETURNTRANSFER, true); curl_setopt($handle, CURLOPT_SSL_VERIFYHOST, false); curl_setopt($handle, CURLOPT_SSL_VERIFYPEER, false); // exec the cURL request and returned information. Store the returned HTTP code in $code for later reference $response = curl_exec($handle); $code = curl_getinfo($handle, CURLINFO_HTTP_CODE); if ($code >= 200 || $code < 300) $response = json_decode($response,true); else $error = $code;
Returns the IDs and names for each of a client's city lists including MLS city lists. To get the list of all city lists available do not send the primary request ID.
The default list on each account has the ID combinedActiveMLS
.
Note: This method was previously camelcased as "citiesListName" but was made lower case to fit the API naming convention. Calls to "citiesListName" will be forwarded to "citieslistname" and "citiesListName" is listed as deprecated in the method list.
// access URL and request method $url = 'https://api.idxbroker.com/clients/citieslistname'; $method = 'GET'; // headers (required and optional) $headers = array( 'Content-Type: application/x-www-form-urlencoded', // required 'accesskey: abcdefghijklmnopqrstuvwx', // required - replace with your own 'outputtype: json' // optional - overrides the preferences in our API control page ); // set up cURL $handle = curl_init(); curl_setopt($handle, CURLOPT_URL, $url); curl_setopt($handle, CURLOPT_HTTPHEADER, $headers); curl_setopt($handle, CURLOPT_RETURNTRANSFER, true); curl_setopt($handle, CURLOPT_SSL_VERIFYHOST, false); curl_setopt($handle, CURLOPT_SSL_VERIFYPEER, false); // exec the cURL request and returned information. Store the returned HTTP code in $code for later reference $response = curl_exec($handle); $code = curl_getinfo($handle, CURLINFO_HTTP_CODE); if ($code >= 200 || $code < 300) $response = json_decode($response,true); else $error = $code;
Returns the counties available in each of a client's county lists. Since a client can build any number of county lists this method requires the ID of which list
you want to view. To get a list of all county lists available do not send the primary request ID. The default list on each account has the id
combinedActiveMLS
.
list ID
optional If no ID is given a list of IDs is returned.// access URL and request method $url = 'https://api.idxbroker.com/clients/counties'; $method = 'GET'; // headers (required and optional) $headers = array( 'Content-Type: application/x-www-form-urlencoded', // required 'accesskey: abcdefghijklmnopqrstuvwx', // required - replace with your own 'outputtype: json' // optional - overrides the preferences in our API control page ); // set up cURL $handle = curl_init(); curl_setopt($handle, CURLOPT_URL, $url); curl_setopt($handle, CURLOPT_HTTPHEADER, $headers); curl_setopt($handle, CURLOPT_RETURNTRANSFER, true); curl_setopt($handle, CURLOPT_SSL_VERIFYHOST, false); curl_setopt($handle, CURLOPT_SSL_VERIFYPEER, false); // exec the cURL request and returned information. Store the returned HTTP code in $code for later reference $response = curl_exec($handle); $code = curl_getinfo($handle, CURLINFO_HTTP_CODE); if ($code >= 200 || $code < 300) $response = json_decode($response,true); else $error = $code;
Returns the zipcodes available in each of a client's zipcode lists. Since a client can build any number of zipcode lists this method requires the ID of which list
you want to view. To get a list of all zipcode lists available do not send the primary request ID. The default list on each account has the id
combinedActiveMLS
.
list ID
optional If no ID is given a list of IDs is returned.// access URL and request method $url = 'https://api.idxbroker.com/clients/zipcodes'; $method = 'GET'; // headers (required and optional) $headers = array( 'Content-Type: application/x-www-form-urlencoded', // required 'accesskey: abcdefghijklmnopqrstuvwx', // required - replace with your own 'outputtype: json' // optional - overrides the preferences in our API control page ); // set up cURL $handle = curl_init(); curl_setopt($handle, CURLOPT_URL, $url); curl_setopt($handle, CURLOPT_HTTPHEADER, $headers); curl_setopt($handle, CURLOPT_RETURNTRANSFER, true); curl_setopt($handle, CURLOPT_SSL_VERIFYHOST, false); curl_setopt($handle, CURLOPT_SSL_VERIFYPEER, false); // exec the cURL request and returned information. Store the returned HTTP code in $code for later reference $response = curl_exec($handle); $code = curl_getinfo($handle, CURLINFO_HTTP_CODE); if ($code >= 200 || $code < 300) $response = json_decode($response,true); else $error = $code;
When dynamic wrappers are in use in the idx system the values that are gathered are cached for a period of 2 hours to increase page load performance and decrease load on your site. This method will force that cached to be cleared to that a fresh version of your wrapper is gathered the next time a page is loaded.
// access URL and request method $url = 'https://api.idxbroker.com/clients/wrappercache'; $method = 'DELETE'; // headers (required and optional) $headers = array( 'Content-Type: application/x-www-form-urlencoded', // required 'accesskey: abcdefghijklmnopqrstuvwx', // required - replace with your own 'outputtype: json' // optional - overrides the preferences in our API control page ); // set up cURL $handle = curl_init(); curl_setopt($handle, CURLOPT_URL, $url); curl_setopt($handle, CURLOPT_HTTPHEADER, $headers); curl_setopt($handle, CURLOPT_RETURNTRANSFER, true); curl_setopt($handle, CURLOPT_SSL_VERIFYHOST, false); curl_setopt($handle, CURLOPT_SSL_VERIFYPEER, false); curl_setopt($handle, CURLOPT_CUSTOMREQUEST, $method); // exec the cURL request and returned information. Store the returned HTTP code in $code for later reference $response = curl_exec($handle); $code = curl_getinfo($handle, CURLINFO_HTTP_CODE); if ($code == 204) $response = true; else $response = false;
// access URL and request method $url = 'https://api.idxbroker.com/clients/accounttype'; $method = 'GET'; // headers (required and optional) $headers = array( 'Content-Type: application/x-www-form-urlencoded', // required 'accesskey: abcdefghijklmnopqrstuvwx', // required - replace with your own 'outputtype: json' // optional - overrides the preferences in our API control page ); // set up cURL $handle = curl_init(); curl_setopt($handle, CURLOPT_URL, $url); curl_setopt($handle, CURLOPT_HTTPHEADER, $headers); curl_setopt($handle, CURLOPT_RETURNTRANSFER, true); curl_setopt($handle, CURLOPT_SSL_VERIFYHOST, false); curl_setopt($handle, CURLOPT_SSL_VERIFYPEER, false); // exec the cURL request and returned information. Store the returned HTTP code in $code for later reference $response = curl_exec($handle); $code = curl_getinfo($handle, CURLINFO_HTTP_CODE); if ($code >= 200 || $code < 300) $response = json_decode($response,true); else $error = $code;