Skip to content

Instantly share code, notes, and snippets.

@antonioortegajr
Created June 19, 2018 15:37
Show Gist options
  • Save antonioortegajr/f950c3e8a43497c3bc924c7e6aaccc1a to your computer and use it in GitHub Desktop.
Save antonioortegajr/f950c3e8a43497c3bc924c7e6aaccc1a to your computer and use it in GitHub Desktop.
swagger: '2.0'
info:
title: IDX Broker API
description: Valid API key required.
version: 1.6.0
host: developers.idxbroker.com
schemes:
- https
consumes:
- application/json
produces:
- application/json
basePath: /wp-json/swagger-proxy/v1
paths:
'/clients/cities/sold{listID}':
get:
summary: Returns the cities (limited to sold data)
description: Returns the cities (limited to sold data) 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.
parameters:
- $ref: '#/parameters/accesskey'
- $ref: '#/parameters/ancillarykey'
- $ref: '#/parameters/apiversion'
- $ref: '#/parameters/outputtype'
- in: path
name: listID
description: If no ID is given a list of IDs is returned.
required: true
type: number
- $ref: '#/parameters/rf'
tags:
- Clients
responses:
'200':
description: Success
'400':
description: Required parameter missing or invalid.
'401':
description: accesskey not valid or revoked.
'403':
description: URL provided is not using SSL (HTTPS).
'404':
description: Invalid API component specified.
'405':
description: Method requested is invalid. This usually indicates a typo or that you may be requested a method that is part of a different API component.
'406':
description: accesskey not provided
'409':
description: Duplicate unique data detected.
'412':
description: Account is over it's hourly access limit.
'413':
description: Requested entity too large.
'416':
description: Requested time range not satisfiable.
'417':
description: There are more saved links in the account than allowed through the API.
'500':
description: General system error. Please try again later or contact IDX support.
'503':
description: Scheduled or emergency API maintenance will result in 503 errors.
'521':
description: Temporary error. There is a possibility that not all API methods are affected.
'/clients/counties/sold{listID}':
get:
summary: All counties (limited to sold data) represented in the current set of MLS data are available from this method.
description: All counties (limited to sold data) represented in the current set of MLS data are available from this method. The output can be filtered using additional GET parameters.
parameters:
- $ref: '#/parameters/accesskey'
- $ref: '#/parameters/ancillarykey'
- $ref: '#/parameters/apiversion'
- $ref: '#/parameters/outputtype'
- in: path
name: listID
description: If no ID is given a list of IDs is returned.
required: true
type: number
- $ref: '#/parameters/rf'
tags:
- Clients
responses:
'200':
description: Success
'400':
description: Required parameter missing or invalid.
'401':
description: accesskey not valid or revoked.
'403':
description: URL provided is not using SSL (HTTPS).
'404':
description: Invalid API component specified.
'405':
description: Method requested is invalid. This usually indicates a typo or that you may be requested a method that is part of a different API component.
'406':
description: accesskey not provided
'409':
description: Duplicate unique data detected.
'412':
description: Account is over it's hourly access limit.
'413':
description: Requested entity too large.
'416':
description: Requested time range not satisfiable.
'417':
description: There are more saved links in the account than allowed through the API.
'500':
description: General system error. Please try again later or contact IDX support.
'503':
description: Scheduled or emergency API maintenance will result in 503 errors.
'521':
description: Temporary error. There is a possibility that not all API methods are affected.
'/clients/postalcodes/sold{listID}':
get:
summary: Returns the postalcodes (limited to sold data)
description: Returns the postalcodes (limited to sold data) available in each of a client's postalcode lists. Since a client can build any number of postalcode lists this method requires the ID of which list you want to view. To get a list of all postalcode lists available do not send the primary request ID. Note - This method was previously called as "zipcodes" but was changed to keep API format more international. Calls to "zipcodes" will be forwarded to "postalcodes" and "zipcodes" is listed as deprecated in the method list.
parameters:
- $ref: '#/parameters/accesskey'
- $ref: '#/parameters/ancillarykey'
- $ref: '#/parameters/apiversion'
- $ref: '#/parameters/outputtype'
- in: path
name: listID
description: If no ID is given a list of IDs is returned.
required: true
type: number
- $ref: '#/parameters/rf'
- $ref: '#/parameters/limit'
- $ref: '#/parameters/offset'
tags:
- Clients
responses:
'200':
description: Success
'400':
description: Required parameter missing or invalid.
'401':
description: accesskey not valid or revoked.
'403':
description: URL provided is not using SSL (HTTPS).
'404':
description: Invalid API component specified.
'405':
description: Method requested is invalid. This usually indicates a typo or that you may be requested a method that is part of a different API component.
'406':
description: accesskey not provided
'409':
description: Duplicate unique data detected.
'412':
description: Account is over it's hourly access limit.
'413':
description: Requested entity too large.
'416':
description: Requested time range not satisfiable.
'417':
description: There are more saved links in the account than allowed through the API.
'500':
description: General system error. Please try again later or contact IDX support.
'503':
description: Scheduled or emergency API maintenance will result in 503 errors.
'521':
description: Temporary error. There is a possibility that not all API methods are affected.
'/mls/cities/sold{listID}':
get:
summary: All cities (limited to sold data)
description: All cities (limited to sold data) represented in the current set of MLS data are available from this method. The output can be filtered using additional GET parameters.
parameters:
- $ref: '#/parameters/accesskey'
- $ref: '#/parameters/ancillarykey'
- $ref: '#/parameters/apiversion'
- $ref: '#/parameters/outputtype'
- in: path
name: listID
description: format = x000
required: true
type: number
- name: filterField
in: query
description: Field to use when filtering output.
required: false
enum:
- cityID
- cityName
- mlsPtID
type: string
- $ref: '#/parameters/rf'
tags:
- Clients
responses:
'200':
description: Success
'400':
description: Required parameter missing or invalid.
'401':
description: accesskey not valid or revoked.
'403':
description: URL provided is not using SSL (HTTPS).
'404':
description: Invalid API component specified.
'405':
description: Method requested is invalid. This usually indicates a typo or that you may be requested a method that is part of a different API component.
'406':
description: accesskey not provided
'409':
description: Duplicate unique data detected.
'412':
description: Account is over it's hourly access limit.
'413':
description: Requested entity too large.
'416':
description: Requested time range not satisfiable.
'417':
description: There are more saved links in the account than allowed through the API.
'500':
description: General system error. Please try again later or contact IDX support.
'503':
description: Scheduled or emergency API maintenance will result in 503 errors.
'521':
description: Temporary error. There is a possibility that not all API methods are affected.
'/mls/counties/sold{listID}':
get:
summary: All counties (limited to sold data) represented in the current set of MLS data are available from this method.
description: All counties (limited to sold data) represented in the current set of MLS data are available from this method. The output can be filtered using additional GET parameters.
parameters:
- $ref: '#/parameters/accesskey'
- $ref: '#/parameters/ancillarykey'
- $ref: '#/parameters/apiversion'
- $ref: '#/parameters/outputtype'
- in: path
name: listID
description: format = x000
required: true
type: number
- name: filterField
in: query
description: Field to use when filtering output.
required: false
enum:
- countyID
- countyName
- mlsPtID
type: string
- $ref: '#/parameters/rf'
tags:
- Clients
responses:
'200':
description: Success
'400':
description: Required parameter missing or invalid.
'401':
description: accesskey not valid or revoked.
'403':
description: URL provided is not using SSL (HTTPS).
'404':
description: Invalid API component specified.
'405':
description: Method requested is invalid. This usually indicates a typo or that you may be requested a method that is part of a different API component.
'406':
description: accesskey not provided
'409':
description: Duplicate unique data detected.
'412':
description: Account is over it's hourly access limit.
'413':
description: Requested entity too large.
'416':
description: Requested time range not satisfiable.
'417':
description: There are more saved links in the account than allowed through the API.
'500':
description: General system error. Please try again later or contact IDX support.
'503':
description: Scheduled or emergency API maintenance will result in 503 errors.
'521':
description: Temporary error. There is a possibility that not all API methods are affected.
'/mls/postalcodes/sold{idxID}':
get:
summary: All postal codes (limited to sold data) list
description: All postal codes (limited to sold data) represented in the current set of MLS data are available from this method. The output can be filtered using additional GET parameters.
parameters:
- $ref: '#/parameters/accesskey'
- $ref: '#/parameters/ancillarykey'
- $ref: '#/parameters/apiversion'
- $ref: '#/parameters/outputtype'
- in: path
name: idxID
description: format = x000
required: true
type: string
- name: filterField
in: query
description: Field to use when filtering output.
required: false
enum:
- id
- stateAbrv
- mlsPtID
type: string
- $ref: '#/parameters/filterValue'
- $ref: '#/parameters/rf'
tags:
- Clients
responses:
'200':
description: Success
'400':
description: Required parameter missing or invalid.
'401':
description: accesskey not valid or revoked.
'403':
description: URL provided is not using SSL (HTTPS).
'404':
description: Invalid API component specified.
'405':
description: Method requested is invalid. This usually indicates a typo or that you may be requested a method that is part of a different API component.
'406':
description: accesskey not provided
'409':
description: Duplicate unique data detected.
'412':
description: Account is over it's hourly access limit.
'413':
description: Requested entity too large.
'416':
description: Requested time range not satisfiable.
'417':
description: There are more saved links in the account than allowed through the API.
'500':
description: General system error. Please try again later or contact IDX support.
'503':
description: Scheduled or emergency API maintenance will result in 503 errors.
'521':
description: Temporary error. There is a possibility that not all API methods are affected.
'/mls/zipcodes/sold{idxID}':
get:
summary: All zip codes (limited to sold data) list
description: All zip codes (limited to sold data) represented in the current set of MLS data are available from this method. The output can be filtered using additional GET parameters.
parameters:
- $ref: '#/parameters/accesskey'
- $ref: '#/parameters/ancillarykey'
- $ref: '#/parameters/apiversion'
- $ref: '#/parameters/outputtype'
- in: path
name: idxID
description: format = x000
required: true
type: string
- name: filterField
in: query
description: Field to use when filtering output.
required: false
enum:
- zipcode
- stateAbrv
- mlsPtID
type: string
- $ref: '#/parameters/filterValue'
- $ref: '#/parameters/rf'
tags:
- Clients
responses:
'200':
description: Success
'400':
description: Required parameter missing or invalid.
'401':
description: accesskey not valid or revoked.
'403':
description: URL provided is not using SSL (HTTPS).
'404':
description: Invalid API component specified.
'405':
description: Method requested is invalid. This usually indicates a typo or that you may be requested a method that is part of a different API component.
'406':
description: accesskey not provided
'409':
description: Duplicate unique data detected.
'412':
description: Account is over it's hourly access limit.
'413':
description: Requested entity too large.
'416':
description: Requested time range not satisfiable.
'417':
description: There are more saved links in the account than allowed through the API.
'500':
description: General system error. Please try again later or contact IDX support.
'503':
description: Scheduled or emergency API maintenance will result in 503 errors.
'521':
description: Temporary error. There is a possibility that not all API methods are affected.
'/mls/prices/sold{idxID}':
get:
summary: The sum total of properties (limited to sold data)
description: The sum total of properties (limited to sold data) listed in a given MLS as well as sums for each property type in the MLS.
parameters:
- $ref: '#/parameters/accesskey'
- $ref: '#/parameters/ancillarykey'
- $ref: '#/parameters/apiversion'
- $ref: '#/parameters/outputtype'
- in: path
name: idxID
description: format = x000
required: true
type: string
- $ref: '#/parameters/rf'
tags:
- MLS
responses:
'200':
description: Success
'400':
description: Required parameter missing or invalid.
'401':
description: accesskey not valid or revoked.
'403':
description: URL provided is not using SSL (HTTPS).
'404':
description: Invalid API component specified.
'405':
description: Method requested is invalid. This usually indicates a typo or that you may be requested a method that is part of a different API component.
'406':
description: accesskey not provided
'409':
description: Duplicate unique data detected.
'412':
description: Account is over it's hourly access limit.
'413':
description: Requested entity too large.
'416':
description: Requested time range not satisfiable.
'417':
description: There are more saved links in the account than allowed through the API.
'500':
description: General system error. Please try again later or contact IDX support.
'503':
description: Scheduled or emergency API maintenance will result in 503 errors.
'521':
description: Temporary error. There is a possibility that not all API methods are affected.
'/mls/propertycount{idxID}':
get:
summary: Gives a total number of listings available for a given city, county, or zipcode.
description: Gives a total number of listings available for a given city, county, or zipcode.
parameters:
- $ref: '#/parameters/accesskey'
- $ref: '#/parameters/ancillarykey'
- $ref: '#/parameters/apiversion'
- $ref: '#/parameters/outputtype'
- in: path
name: idxID
description: format = x000
required: true
type: string
- name: filterField
in: query
description: Field to use when filtering output.
required: false
enum:
- city
- county
- zipcode
type: string
tags:
- Partners
responses:
'200':
description: Success
'400':
description: Required parameter missing or invalid.
'401':
description: accesskey not valid or revoked.
'403':
description: URL provided is not using SSL (HTTPS).
'404':
description: Invalid API component specified.
'405':
description: Method requested is invalid. This usually indicates a typo or that you may be requested a method that is part of a different API component.
'406':
description: accesskey not provided
'409':
description: Duplicate unique data detected.
'412':
description: Account is over it's hourly access limit.
'413':
description: Requested entity too large.
'416':
description: Requested time range not satisfiable.
'417':
description: There are more saved links in the account than allowed through the API.
'500':
description: General system error. Please try again later or contact IDX support.
'503':
description: Scheduled or emergency API maintenance will result in 503 errors.
'521':
description: Temporary error. There is a possibility that not all API methods are affected.
'/mls/searchfieldvalue/sold{idxID}':
get:
summary: Field values (limited to sold data) in a given MLS that are currently allowed to be searched according to MLS guidelines
description: Field values in a given MLS that are currently allowed to be searched according to MLS guidelines.
parameters:
- $ref: '#/parameters/accesskey'
- $ref: '#/parameters/ancillarykey'
- $ref: '#/parameters/apiversion'
- $ref: '#/parameters/outputtype'
- in: path
name: idxID
description: format = x000
required: true
type: string
- in: path
name: mlsPtID
description: The IDX assigned ID of the MLS property type(s). See the propertytypes method in this API/Component for a lookup of property type IDs.
required: true
type: string
- in: path
name: name
description: mls field name - the IDX assigned name of the MLS field name. See the searchfields for the list of searchable fields.
required: true
type: string
- $ref: '#/parameters/rf'
tags:
- MLS
responses:
'200':
description: Success
'400':
description: Required parameter missing or invalid.
'401':
description: accesskey not valid or revoked.
'403':
description: URL provided is not using SSL (HTTPS).
'404':
description: Invalid API component specified.
'405':
description: Method requested is invalid. This usually indicates a typo or that you may be requested a method that is part of a different API component.
'406':
description: accesskey not provided
'409':
description: Duplicate unique data detected.
'412':
description: Account is over it's hourly access limit.
'413':
description: Requested entity too large.
'416':
description: Requested time range not satisfiable.
'417':
description: There are more saved links in the account than allowed through the API.
'500':
description: General system error. Please try again later or contact IDX support.
'503':
description: Scheduled or emergency API maintenance will result in 503 errors.
'521':
description: Temporary error. There is a possibility that not all API methods are affected.
/partners/prices:
get:
summary: Get IDX account and agent/office add-on pricing.
description: Get IDX account and agent/office add-on pricing.
parameters:
- $ref: '#/parameters/accesskey'
- $ref: '#/parameters/ancillarykey'
- $ref: '#/parameters/apiversion'
- $ref: '#/parameters/outputtype'
tags:
- Partners
responses:
'200':
description: Success
'400':
description: Required parameter missing or invalid.
'401':
description: accesskey not valid or revoked.
'403':
description: URL provided is not using SSL (HTTPS).
'404':
description: Invalid API component specified.
'405':
description: Method requested is invalid. This usually indicates a typo or that you may be requested a method that is part of a different API component.
'406':
description: accesskey not provided
'409':
description: Duplicate unique data detected.
'412':
description: Account is over it's hourly access limit.
'413':
description: Requested entity too large.
'416':
description: Requested time range not satisfiable.
'417':
description: There are more saved links in the account than allowed through the API.
'500':
description: General system error. Please try again later or contact IDX support.
'503':
description: Scheduled or emergency API maintenance will result in 503 errors.
'521':
description: Temporary error. There is a possibility that not all API methods are affected.
/partners/subscriptions:
put:
summary: Create IDX subscriber.
description: Create IDX subscriber. To get list of required or optional fields, simply make a request with nothing in the body. Make sure all required fields are passed in the request body. Fields and values example - 'product'=> 'lite','firstName => 'Test','lastName' => 'Test','companyName' => 'Test Company','address' => '1000 E Test street','city' => 'Eugene','state' => 'OR', // Use XX for international.'zipcode' => 97402,'primaryPhone' => '5555555555','email' => 'test@gmail.com','mlsIDList' => 'a001,a002','agreeToTermsOfService' => 'yes'
parameters:
- $ref: '#/parameters/accesskey'
- $ref: '#/parameters/ancillarykey'
- $ref: '#/parameters/apiversion'
- $ref: '#/parameters/outputtype'
tags:
- Partners
responses:
'200':
description: Success
'400':
description: Required parameter missing or invalid.
'401':
description: accesskey not valid or revoked.
'403':
description: URL provided is not using SSL (HTTPS).
'404':
description: Invalid API component specified.
'405':
description: Method requested is invalid. This usually indicates a typo or that you may be requested a method that is part of a different API component.
'406':
description: accesskey not provided
'409':
description: Duplicate unique data detected.
'412':
description: Account is over it's hourly access limit.
'413':
description: Requested entity too large.
'416':
description: Requested time range not satisfiable.
'417':
description: There are more saved links in the account than allowed through the API.
'500':
description: General system error. Please try again later or contact IDX support.
'503':
description: Scheduled or emergency API maintenance will result in 503 errors.
'521':
description: Temporary error. There is a possibility that not all API methods are affected.
parameters:
accesskey:
name: accesskey
in: header
description: REQUIRED Your API Key.
required: true
type: string
minLength: 22
maxLength: 22
ancillarykey:
name: ancillarykey
in: header
description: Your Developer Partner API Key.
required: false
type: string
minLength: 22
maxLength: 22
apiversion:
name: apiversion
in: header
description: Version of the API to call. (Only 1.4.0 is supported in this tester)
required: false
type: string
default: 1.4.0
outputtype:
name: outputtype
in: header
description: Request JSON or XML. (Only JSON is supported in this tester)
required: false
enum:
- json
- xml
type: string
default: json
interval:
name: interval
in: query
description: The number of hours worth of data to return.
required: false
type: number
startDatetime:
name: startDatetime
in: query
description: 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. Example for all agents created on New Year's Day provided.
required: false
enum:
- '2016-01-01 23:59:59'
type: string
limit:
name: limit
in: query
description: Items to skip from the beginning.
required: false
type: number
offset:
name: offset
in: query
description: Items to skip from the beginning.
required: false
type: number
filterValue:
name: filterValue
in: query
description: The value by which to filter. Conditional on use of filterField
required: false
type: string
rf:
name: rf
in: query
description: Array of fields to return in the output.
required: false
type: string
enum:
- 'rf[]=\*'
- rf=\*
idxID:
name: idxID
in: path
description: The IDX id of a mls.
required: true
type: string
minLength: 4
maxLength: 4
clientChunk:
name: clientChunk
in: query
description: Limit the results data to 400 clients. Example - clientChunk=1 returns data for the first 400 clients and clientChunk=2 returns the data for the next 400 clients.
required: false
type: number
includeDisabledAccounts:
name: includeDisabledAccounts
in: query
description: By default disabled accounts are excluded from the results data. Use this parameter to include disabled accounts.
required: false
type: boolean
leadID:
name: leadID
in: path
description: The idx id of a lead.
required: true
type: string
minLength: 4
listingID:
name: listingID
in: path
description: The idx id of a property listing.
required: true
type: string
minLength: 1
disclaimers:
name: disclaimers
in: query
description: Include MLS disclaimer/courtesy in the response.
required: false
type: boolean
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment