CLIENTS

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.

  • GET

    • primary request ID: none
    • secondary request ID: none
    • additional input: none
    • output: all available APIs/Components
    // 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;
    											
  • POST None

  • PUT None

  • DELETE None

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.

  • GET

    • primary request ID: none
    • secondary request ID: none
    • additional input: none
    • output: basic information about all available methods in this API. Data included includes:
      • Method Name
      • The list of actions (GET, POST, etc) and a boolean denoting whether or not the action is available in the method.
      • The method's status.
        • indev: This method is in development. Input or output may change without notice.
        • active: This method is operating normally.
        • deprecated: The functionality of this method is being superseded by another as described in the method description.
        • sunset: This method is no longer available.
      • A One to Two sentence description of the 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;
    											
  • POST None

  • PUT None

  • DELETE None

A method to view agent information on multi-user accounts.

  • GET

    • primary request ID: none
    • secondary request ID: none
    • additional input:
      • filterField optional the field to use when filtering output. Available values:
        • agentID - The IDX assigned agent ID
        • officeID- The IDX assigned office ID
        • category - The agent category
        • language - The defined language settings
        • agentName - The agent name
      • filterValue conditional on use of filterField - the value by which to filter
      • interval optional - the number of hours worth of data to return.
        • This must be a numeric value but can be an integer or a decimal. E.g. to get the last 90 minutes you would use an interval value of 1.5.
          • Up to 4 digits after the decimal point will be tolerated, additional precision will be rounded off.
          • Intervals will also be rounded to the nearest second.
        • The interval specifies the number of hours before the startDatetime from which agent information will be returned.
        • Minimum value: 0.0166 (~ 1 minute). Maximum value: 8765 (1 year).
        • If no value is specified 720 hours (~1 month) will we used.
      • startDatetime optional - the date and time to from which the interval counts back.
        • This is the date and time closest to now from which you want agent information. E.g. if you want all agents created on New Year's Day you could use an interval of 24 plus a startDatetime of 2013-01-01 23:59:59. This will pull data from the very end of the day to 24 hours previous.
        • Format: YYYY-MM-DD hh:mm:ss
        • This method currently assumes the date passed will be UTC
        • If no value is specified the current date/time will be used
      • dateType optional - there are several dates associated with an agent, this will specify what is being used to return information.
        • Possible Values:
          • accountCreated - the date/time the agent was added to our system.
          • lastLoginDate - the last time the agent logged in to their account.
        • If no value is specified accountCreated will be used.
      • rf optional array of fields to return in the output
        • List of available return fields can be obtained via the listmethods method.
        • rf[]=* or rf=* returns all the available fields in the output
        • Specified fields that are not in the available return fields list will be ignored
    • output: All agents on the account or those matching filter values
    // access URL and request method
    $url = 'https://api.idxbroker.com/clients/agents?filterField=agentID&filterValue=1&interval=24&startDatetime=2012-01-01+23:59:59&dateType=accountCreated';
    $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;
    											
  • POST None

  • PUT None

  • DELETE None

A method to view all offices on a mutli-user account.

  • GET

    • primary request ID: none
    • secondary request ID: none
    • additional input:
      • filterField optional the field to use when filtering output. Available values:
        • officeID- The IDX assigned office ID
        • stateprovince - The state or province that the office(s) are in
        • zipcode - The zip code that the office(s) are in
      • filterValue conditional on use of filterField - the value by which to filter
      • interval optional - the number of hours worth of data to return.
        • This must be a numeric value but can be an integer or a decimal. E.g. to get the last 90 minutes you would use an interval value of 1.5.
          • Up to 4 digits after the decimal point will be tolerated, additional precision will be rounded off.
          • Intervals will also be rounded to the nearest second.
        • The interval specifies the number of hours before the startDatetime from which office information will be returned.
        • Minimum value: 0.0166 (~ 1 minute). Maximum value: 8765 (1 year).
        • If no value is specified 720 hours (~1 month) will we used.
      • startDatetime optional - the date and time to from which the interval counts back.
        • This is the date and time closest to now from which you want office information. E.g. if you want all offices created on New Year's Day you could use an interval of 24 plus a startDatetime of 2013-01-01 23:59:59. This will pull data from the very end of the day to 24 hours previous.
        • Format: YYYY-MM-DD hh:mm:ss
        • This method currently assumes the date passed will be UTC
        • If no value is specified the current date/time will be used
      • dateType optional - there are several dates associated with an office, this will specify what is being used to return information.
        • Possible Values:
          • accountCreated - the date/time the office was added to our system.
          • lastUpdate - the date/time the office information was updated.
        • If no value is specified accountCreated will be used.
      • rf optional array of fields to return in the output
        • List of available return fields can be obtained via the listmethods method.
        • rf[]=* or rf=* returns all the available fields in the output
        • Specified fields that are not in the available return fields list will be ignored
    • output: All offices on the account or those matching filter values
    // access URL and request method
    $url = 'https://api.idxbroker.com/clients/offices?interval=24&startDatetime=2012-01-01+23:59:59&dateType=accountCreated';
    $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;
    											
  • POST None

  • PUT None

  • DELETE None

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.

  • GET

    • primary request ID: none
    • secondary request ID: none
    • additional input:
      • rf optional array of fields to return in the output
        • List of available return fields can be obtained via the listmethods method.
        • rf[]=* or rf=* returns all the available fields in the output
        • Specified fields that are not in the available return fields list will be ignored
    • output: The name, unique ID and URL for all javascript widgets that have been created on the user's account.
    // 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;
    											
  • POST None

  • PUT None

  • DELETE None

Returns a basic set of information for all of the client's sold and pending properties during a specified time frame of up to 1 year. That is, those that have been removed from their MLS data.

  • GET

    • primary request ID: none
    • secondary request ID: none
    • additional input:
      • interval optional - the number of hours worth of data to return.
        • This must be a numeric value but can be an integer or a decimal. E.g. to get the last 90 minutes you would use an interval value of 1.5.
          • Up to 4 digits after the decimal point will be tolerated, additional precision will be rounded off.
          • Intervals will also be rounded to the nearest second.
        • The interval specifies the number of hours before the startDatetime from which sold/pending properties will be returned.
        • Minimum value: 0.0166 (~ 1 minute). Maximum value: 8765 (1 year).
        • If no value is specified 720 hours (~1 month) will we used.
      • startDatetime optional - the date and time to from which the interval counts back.
        • This is the date and time closest to now from which you want sold/pending property information. E.g. if you want all sold/pending properties created on New Year's Day you could use an interval of 24 plus a startDatetime of 2013-01-01 23:59:59. This will pull data from the very end of the day to 24 hours previous.
        • Format: YYYY-MM-DD hh:mm:ss
        • This method currently assumes the date passed will be UTC
        • If no value is specified the current date/time will be used
      • dateType optional - there are several dates associated with a sold/pending property, this will specify what is being used to return information.
        • Possible Values:
          • dateAdded - the date/time at which the IDX system first added the listing to our system.
          • dateModified - the date time the IDX system last saw a change in data as listed in the MLS. Note that this value will be 0000-00-00 00:00:00 if the property has not changed in the time that it has been in our system.
        • If no value is specified dateAdded will be used.
      • rf optional array of fields to return in the output
        • List of available return fields can be obtained via the listmethods method.
        • rf[]=* or rf=* returns all the available fields in the output
        • Specified fields that are not in the available return fields list will be ignored
    • output: sold/pending properties on the account for the specified period
    // access URL and request method
    $url = 'https://api.idxbroker.com/clients/soldpending?interval=24&startDatetime=2012-01-01+23:59:59&dateType=dateAdded';
    $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;
    											
  • POST None

  • PUT None

  • DELETE None

Returns a basic set of information for all of the client's supplemental (non-MLS) properties during a specified time frame of up to 1 year.

  • GET

    • primary request ID: none
    • secondary request ID: none
    • additional input:
      • interval optional - the number of hours worth of data to return.
        • This must be a numeric value but can be an integer or a decimal. E.g. to get the last 90 minutes you would use an interval value of 1.5.
          • Up to 4 digits after the decimal point will be tolerated, additional precision will be rounded off.
          • Intervals will also be rounded to the nearest second.
        • The interval specifies the number of hours before the startDatetime from which supplemental properties will be returned.
        • Minimum value: 0.0166 (~ 1 minute). Maximum value: 8765 (1 year).
        • If no value is specified 720 hours (~1 month) will we used.
      • startDatetime optional - the date and time to from which the interval counts back.
        • This is the date and time closest to now from which you want supplemental property information. E.g. if you want all supplemental properties created on New Year's Day you could use an interval of 24 plus a startDatetime of 2013-01-01 23:59:59. This will pull data from the very end of the day to 24 hours previous.
        • Format: YYYY-MM-DD hh:mm:ss
        • This method currently assumes the date passed will be UTC
        • If no value is specified the current date/time will be used
      • dateType optional - there are several dates associated with a supplemental property, this will specify what is being used to return information.
        • Possible Values:
          • dateAdded - the date/time at which the IDX system first added the listing to our system.
          • dateModified - the date time the IDX system last saw a change in data as listed in the MLS. Note that this value will be 0000-00-00 00:00:00 if the property has not changed in the time that it has been in our system.
        • If no value is specified dateAdded will be used.
      • rf optional array of fields to return in the output
        • List of available return fields can be obtained via the listmethods method.
        • rf[]=* or rf=* returns all the available fields in the output
        • Specified fields that are not in the available return fields list will be ignored
    • output: supplemental properties on the account for the specified period
    // access URL and request method
    $url = 'https://api.idxbroker.com/clients/supplemental?interval=24&startDatetime=2012-01-01+23:59:59&dateType=dateAdded';
    $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;
    											
  • POST None

  • PUT None

  • DELETE

    Remove a clients supplemental property.
    • primary request ID: listingID required The listingID of a supplemental property
    • secondary request ID: none
    • additional input: none
    • output: none (204 on success)
    // access URL and request method
    $url = 'https://api.idxbroker.com/clients/supplemental/1234';
    $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);
    
    if ($method != 'GET')
        curl_setopt($handle, CURLOPT_CUSTOMREQUEST, $method);
    
    // send the data
    curl_setopt($handle, CURLOPT_POSTFIELDS, $data);
    
    // 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 during a specified time frame of up to 1 year.

  • GET

    • primary request ID: none
    • secondary request ID: none
    • additional input:
      • interval optional - the number of hours worth of data to return.
        • This must be a numeric value but can be an integer or a decimal. E.g. to get the last 90 minutes you would use an interval value of 1.5.
          • Up to 4 digits after the decimal point will be tolerated, additional precision will be rounded off.
          • Intervals will also be rounded to the nearest second.
        • The interval specifies the number of hours before the startDatetime from which historical properties will be returned.
        • Minimum value: 0.0166 (~ 1 minute). Maximum value: 8765 (1 year).
        • If no value is specified 720 hours (~1 month) will we used.
      • startDatetime optional - the date and time to from which the interval counts back.
        • This is the date and time closest to now from which you want historical property information. E.g. if you want all historical properties created on New Year's Day you could use an interval of 24 plus a startDatetime of 2013-01-01 23:59:59. This will pull data from the very end of the day to 24 hours previous.
        • Format: YYYY-MM-DD hh:mm:ss
        • This method currently assumes the date passed will be UTC
        • If no value is specified the current date/time will be used
      • dateType optional - there are several dates associated with a historical property, this will specify what is being used to return information.
        • Possible Values:
          • dateAdded - the date/time at which the IDX system first added the listing to our system.
          • dateModified - the date time the IDX system last saw a change in data as listed in the MLS. Note that this value will be 0000-00-00 00:00:00 if the property has not changed in the time that it has been in our system.
        • If no value is specified dateAdded will be used.
      • rf optional array of fields to return in the output
        • List of available return fields can be obtained via the listmethods method.
        • rf[]=* or rf=* returns all the available fields in the output
        • Specified fields that are not in the available return fields list will be ignored
    • output: historical properties on the account for the specified period
    // access URL and request method
    $url = 'https://api.idxbroker.com/clients/historical?interval=24&startDatetime=2012-01-01+23:59:59&dateType=dateAdded';
    $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;
    											
  • POST None

  • PUT None

  • DELETE None

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.

  • GET

    • primary request ID: list ID optional If no ID is given a list of IDs is returned.
    • secondary request ID: none
    • additional input:
      • rf optional array of fields to return in the output
        • List of available return fields can be obtained via the listmethods method.
        • rf[]=* or rf=* returns all the available fields in the output
        • Specified fields that are not in the available return fields list will be ignored
    • output: All cities in a given list or, if no list ID is provided, a list of list IDs
    // 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;
    											
  • POST None

  • PUT None

  • DELETE None

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.

  • GET

    • primary request ID: none
    • secondary request ID: none
    • additional input: none
    • output: A list of city list IDs and names
    // 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;
    											
  • POST None

  • PUT None

  • DELETE None

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.

  • GET

    • primary request ID: list ID optional If no ID is given a list of IDs is returned.
    • secondary request ID: none
    • additional input:
      • rf optional array of fields to return in the output
        • List of available return fields can be obtained via the listmethods method.
        • rf[]=* or rf=* returns all the available fields in the output
        • Specified fields that are not in the available return fields list will be ignored
    • output: All counties in a given list or, if no list ID is provided, a list of list IDs
    // 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;
    											
  • POST None

  • PUT None

  • DELETE None

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.

  • GET

    • primary request ID: list ID optional If no ID is given a list of IDs is returned.
    • secondary request ID: none
    • additional input:
      • rf optional array of fields to return in the output
        • List of available return fields can be obtained via the listmethods method.
        • rf[]=* or rf=* returns all the available fields in the output
        • Specified fields that are not in the available return fields list will be ignored
    • output: All zipcodes in a given list or, if no list ID is provided, a list of list IDs
    // 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;
    											
  • POST None

  • PUT None

  • DELETE None

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.

  • GET None

  • POST None

  • PUT None

  • DELETE

    • primary request ID: none
    • secondary request ID: none
    • additional input: none
    • output: none. a 204 HTTP response code indicated success
    // 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;
    											
  • GET

    • primary request ID: none
    • secondary request ID: none
    • additional input: none
    • output: account type
    // 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;
                                                
  • POST none

  • PUT none

  • DELETE none