{"openapi":"3.1.0","info":{"title":"Apizie","version":"2.0.0","description":"One API key, one envelope, many public data sources."},"servers":[{"url":"https://zieapi.vercel.app"}],"security":[{"ApiKeyAuth":[]}],"paths":{"/v1/open-data:simplyrets/get-openhouses":{"get":{"operationId":"open_data_simplyrets_get_openhouses","summary":"The SimplyRETS OpenHouses API","description":"GET /openhouses","tags":["open-data"],"parameters":[{"name":"type","in":"query","required":false,"description":"Request listings by a specific property type. This defaults to Residential, and you can only specify one type in a single query.","schema":{"type":"string","enum":["residential","rental","multifamily","condominium","commercial","land","farm"],"description":"Request listings by a specific property type. This defaults to Residential, and you can only specify one type in a single query."}},{"name":"listingId","in":"query","required":false,"description":"Request openhouses for a specific `listingId`.","schema":{"type":"string","description":"Request openhouses for a specific `listingId`."}},{"name":"cities","in":"query","required":false,"description":"Filter the openhouses returned by a list of valid cities. The `cities` query parameter is case-insensitive. The list of `cities` provided…","schema":{"type":"array","description":"Filter the openhouses returned by a list of valid cities. The `cities` query parameter is case-insensitive. The list of `cities` provided…"}},{"name":"brokers","in":"query","required":false,"description":"Filter the listings returned by brokerage with a Broker ID. You can specific multiple broker parameters. Note, the Broker ID is provided…","schema":{"type":"array","description":"Filter the listings returned by brokerage with a Broker ID. You can specific multiple broker parameters. Note, the Broker ID is provided…"}},{"name":"agent","in":"query","required":false,"description":"Filter the listings returned by an agent ID. Note, the Agent ID is provided by your MLS.","schema":{"type":"string","description":"Filter the listings returned by an agent ID. Note, the Agent ID is provided by your MLS."}},{"name":"minprice","in":"query","required":false,"description":"Filter listings by a minimum price.","schema":{"type":"integer","description":"Filter listings by a minimum price."}},{"name":"startdate","in":"query","required":false,"description":"Scheduled date and time of the open house showing","schema":{"type":"string","description":"Scheduled date and time of the open house showing"}},{"name":"offset","in":"query","required":false,"description":"Increase the offset parameter by the limit to go to the next \"page\" of listings. Also take a look at the Link HTTP Header for pre-built…","schema":{"type":"integer","description":"Increase the offset parameter by the limit to go to the next \"page\" of listings. Also take a look at the Link HTTP Header for pre-built…"}},{"name":"lastId","in":"query","required":false,"description":"Used as a cursor for pagination.","schema":{"type":"integer","description":"Used as a cursor for pagination."}},{"name":"limit","in":"query","required":false,"description":"Set the number of listings to return in the response. This defaults to 20 listings, and can be a maximum of 500. To paginate through to…","schema":{"type":"integer","description":"Set the number of listings to return in the response. This defaults to 20 listings, and can be a maximum of 500. To paginate through to…"}},{"name":"sort","in":"query","required":false,"description":"Sort the response by a specific field. Values starting with a minus (-) denote descending order, while the others are ascending.","schema":{"type":"string","enum":["listprice","-listprice","listdate","-listdate","beds","-beds","baths","-baths"],"description":"Sort the response by a specific field. Values starting with a minus (-) denote descending order, while the others are ascending."}},{"name":"include","in":"query","required":false,"description":"Include a extra fields which are not in the default response body - 'association' includes additional HOA data - 'agreement' information…","schema":{"type":"array","description":"Include a extra fields which are not in the default response body - 'association' includes additional HOA data - 'agreement' information…"}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RunEnvelope"}}}},"4XX":{"$ref":"#/components/responses/Error"},"5XX":{"$ref":"#/components/responses/Error"}},"x-apizie-cache-ttl":60,"x-apizie-min-plan":null,"x-apizie-bulk":true,"x-apizie-status":"byok"}},"/v1/open-data:simplyrets/get-openhouses-open-house-key":{"get":{"operationId":"open_data_simplyrets_get_openhouses_open_house_key","summary":"Single OpenHouse Endpoint","description":"GET /openhouses/{openHouseKey}","tags":["open-data"],"parameters":[{"name":"openHouseKey","in":"query","required":true,"description":"A unique OpenHouse identification key","schema":{"type":"integer","default":189018,"description":"A unique OpenHouse identification key"}},{"name":"include","in":"query","required":false,"description":"Include a extra fields which are not in the default response body - 'association' includes additional HOA data - 'agreement' information…","schema":{"type":"array","description":"Include a extra fields which are not in the default response body - 'association' includes additional HOA data - 'agreement' information…"}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RunEnvelope"}}}},"4XX":{"$ref":"#/components/responses/Error"},"5XX":{"$ref":"#/components/responses/Error"}},"x-apizie-cache-ttl":60,"x-apizie-min-plan":null,"x-apizie-bulk":true,"x-apizie-status":"byok"}},"/v1/open-data:simplyrets/get-properties":{"get":{"operationId":"open_data_simplyrets_get_properties","summary":"The SimplyRETS Listings API","description":"GET /properties","tags":["open-data"],"parameters":[{"name":"q","in":"query","required":false,"description":"A textual keyword search. This parameter will search the following fields, when available: - listingId (This does _not_ search the `mlsId`…","schema":{"type":"string","description":"A textual keyword search. This parameter will search the following fields, when available: - listingId (This does _not_ search the `mlsId`…"}},{"name":"status","in":"query","required":false,"description":"Request listings by a specific status. This parameter defaults to active and you can specify multiple statuses in a single query. Listing…","schema":{"type":"array","enum":["Active","Pending","Closed","ActiveUnderContract","Hold","Withdrawn","Expired","Delete","Incomplete","ComingSoon"],"description":"Request listings by a specific status. This parameter defaults to active and you can specify multiple statuses in a single query. Listing…"}},{"name":"type","in":"query","required":false,"description":"Request listings by a specific property type. This defaults to Residential and Rental. You can specify multiple property types in a single…","schema":{"type":"array","enum":["residential","rental","multifamily","condominium","commercial","land","farm"],"description":"Request listings by a specific property type. This defaults to Residential and Rental. You can specify multiple property types in a single…"}},{"name":"subtype","in":"query","required":false,"description":"Request listings by a specific property sub type. *NOTE* not all sub type filters are available for all vendors.","schema":{"type":"array","enum":["apartment","boatslip","singlefamilyresidence","deededparking","cabin","condominium","duplex","manufacturedhome","ownyourown","quadruplex","stockcooperative","townhouse","timeshare","triplex","manufacturedonland"],"description":"Request listings by a specific property sub type. *NOTE* not all sub type filters are available for all vendors."}},{"name":"agent","in":"query","required":false,"description":"Filter the listings returned by an agent ID. Note, the Agent ID is provided by your MLS. The co-listing agent is not included in this…","schema":{"type":"string","description":"Filter the listings returned by an agent ID. Note, the Agent ID is provided by your MLS. The co-listing agent is not included in this…"}},{"name":"brokers","in":"query","required":false,"description":"Filter the listings returned by brokerage with a Broker ID. For some MLS areas, this is the ListOfficeId (Listing Office ID). You can…","schema":{"type":"array","description":"Filter the listings returned by brokerage with a Broker ID. For some MLS areas, this is the ListOfficeId (Listing Office ID). You can…"}},{"name":"minprice","in":"query","required":false,"description":"Filter listings by a minimum price.","schema":{"type":"integer","description":"Filter listings by a minimum price."}},{"name":"maxprice","in":"query","required":false,"description":"Filter listings by a maximum price","schema":{"type":"integer","description":"Filter listings by a maximum price"}},{"name":"minarea","in":"query","required":false,"description":"Filter listings by a minimum area size in Sq Ft.","schema":{"type":"integer","description":"Filter listings by a minimum area size in Sq Ft."}},{"name":"maxarea","in":"query","required":false,"description":"Filter listings by a maximum area size in Sq Ft.","schema":{"type":"integer","description":"Filter listings by a maximum area size in Sq Ft."}},{"name":"minbaths","in":"query","required":false,"description":"Filter listings by a minimum number of bathrooms.","schema":{"type":"integer","description":"Filter listings by a minimum number of bathrooms."}},{"name":"maxbaths","in":"query","required":false,"description":"Filter listings by a maximum number of bathrooms.","schema":{"type":"integer","description":"Filter listings by a maximum number of bathrooms."}},{"name":"minbeds","in":"query","required":false,"description":"Filter listings by a minimum number of bedrooms.","schema":{"type":"integer","description":"Filter listings by a minimum number of bedrooms."}},{"name":"maxbeds","in":"query","required":false,"description":"Filter listings by a maximum number of bedrooms.","schema":{"type":"integer","description":"Filter listings by a maximum number of bedrooms."}},{"name":"maxdom","in":"query","required":false,"description":"Filter listings by a maximum number of days on market. _Note that your MLS must provide Days on Market data._","schema":{"type":"integer","description":"Filter listings by a maximum number of days on market. _Note that your MLS must provide Days on Market data._"}},{"name":"minyear","in":"query","required":false,"description":"Filter listings by a setting a minimum year built.","schema":{"type":"integer","description":"Filter listings by a setting a minimum year built."}},{"name":"limit","in":"query","required":false,"description":"Set the number of listings to return in the response. This defaults to 20 listings, and can be a maximum of 500. To paginate through to…","schema":{"type":"integer","description":"Set the number of listings to return in the response. This defaults to 20 listings, and can be a maximum of 500. To paginate through to…"}},{"name":"offset","in":"query","required":false,"description":"Increase the offset parameter by the limit to go to the next \"page\" of listings. Also take a look at the Link HTTP Header for pre-built…","schema":{"type":"integer","description":"Increase the offset parameter by the limit to go to the next \"page\" of listings. Also take a look at the Link HTTP Header for pre-built…"}},{"name":"lastId","in":"query","required":false,"description":"Used as a cursor for pagination. When using `lastId`, the `sort` parameter will not work.","schema":{"type":"integer","description":"Used as a cursor for pagination. When using `lastId`, the `sort` parameter will not work."}},{"name":"vendor","in":"query","required":false,"description":"Used to specify the vendor (MLS) to search from. This parameter is required on multi-MLS apps, and you can only query one vendor at a…","schema":{"type":"string","description":"Used to specify the vendor (MLS) to search from. This parameter is required on multi-MLS apps, and you can only query one vendor at a…"}},{"name":"postalCodes","in":"query","required":false,"description":"Filter the listings returned by postal codes / zip code. You can specify multiple.","schema":{"type":"array","description":"Filter the listings returned by postal codes / zip code. You can specify multiple."}},{"name":"features","in":"query","required":false,"description":"Filter the listings by specific interior features. You can filter by multiple. For example, to filter trial listings by multiple features…","schema":{"type":"array","description":"Filter the listings by specific interior features. You can filter by multiple. For example, to filter trial listings by multiple features…"}},{"name":"water","in":"query","required":false,"description":"Query water/waterfront listings only. Specify `true` to filter waterfront listings. If you specify `water=true`, all listings with any…","schema":{"type":"string","description":"Query water/waterfront listings only. Specify `true` to filter waterfront listings. If you specify `water=true`, all listings with any…"}},{"name":"neighborhoods","in":"query","required":false,"description":"Filter the listings returned by specific neighborhoods and subdivisions. You can specify multiple `neighborhoods` by using the query…","schema":{"type":"array","description":"Filter the listings returned by specific neighborhoods and subdivisions. You can specify multiple `neighborhoods` by using the query…"}},{"name":"cities","in":"query","required":false,"description":"Filter the listings returned by specific cities. You can specify multiple `cities` query parameters. The `cities` query parameter is…","schema":{"type":"array","description":"Filter the listings returned by specific cities. You can specify multiple `cities` query parameters. The `cities` query parameter is…"}},{"name":"counties","in":"query","required":false,"description":"Filter the listings returned by specific counties. You can specify multiple `counties` parameters. The `counties` query parameter is…","schema":{"type":"array","description":"Filter the listings returned by specific counties. You can specify multiple `counties` parameters. The `counties` query parameter is…"}},{"name":"points","in":"query","required":false,"description":"Return listings that are within a set of latitude longitude coordinates. For example; ``` 29.723837,-95.69778 29.938275,-95.69778…","schema":{"type":"array","description":"Return listings that are within a set of latitude longitude coordinates. For example; ``` 29.723837,-95.69778 29.938275,-95.69778…"}},{"name":"include","in":"query","required":false,"description":"Include a extra fields which are not in the default response body - 'association' includes additional HOA data - 'agreement' information…","schema":{"type":"array","enum":["association","agreement","garageSpaces","maintenanceExpense","parking","pool","rooms","taxYear","taxAnnualAmount"],"description":"Include a extra fields which are not in the default response body - 'association' includes additional HOA data - 'agreement' information…"}},{"name":"sort","in":"query","required":false,"description":"Sort the response by a specific field. Values starting with a minus (-) denote descending order, while the others are ascending.","schema":{"type":"string","enum":["listprice","-listprice","listdate","-listdate","beds","-beds","baths","-baths"],"description":"Sort the response by a specific field. Values starting with a minus (-) denote descending order, while the others are ascending."}},{"name":"count","in":"query","required":false,"description":"When set to `false`, The `X-Total-Count` header will not be returned Counting the listings can contribute to slower API calls due to the…","schema":{"type":"integer","description":"When set to `false`, The `X-Total-Count` header will not be returned Counting the listings can contribute to slower API calls due to the…"}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RunEnvelope"}}}},"4XX":{"$ref":"#/components/responses/Error"},"5XX":{"$ref":"#/components/responses/Error"}},"x-apizie-cache-ttl":60,"x-apizie-min-plan":null,"x-apizie-bulk":true,"x-apizie-status":"byok"}},"/v1/open-data:simplyrets/get-properties-mls-id":{"get":{"operationId":"open_data_simplyrets_get_properties_mls_id","summary":"Single Listing Endpoint","description":"GET /properties/{mlsId}","tags":["open-data"],"parameters":[{"name":"mlsId","in":"query","required":true,"description":"The `mlsId` field is a unique identifier which is specific to the SimplyRETS API only. This field is different from the `listingId` field…","schema":{"type":"integer","default":1005252,"description":"The `mlsId` field is a unique identifier which is specific to the SimplyRETS API only. This field is different from the `listingId` field…"}},{"name":"include","in":"query","required":false,"description":"Include a extra fields which are not in the default response body - 'association' includes additional HOA data - 'agreement' information…","schema":{"type":"array","enum":["association","agreement","garageSpaces","maintenanceExpense","parking","pool","rooms"],"description":"Include a extra fields which are not in the default response body - 'association' includes additional HOA data - 'agreement' information…"}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RunEnvelope"}}}},"4XX":{"$ref":"#/components/responses/Error"},"5XX":{"$ref":"#/components/responses/Error"}},"x-apizie-cache-ttl":60,"x-apizie-min-plan":null,"x-apizie-bulk":true,"x-apizie-status":"byok"}}},"components":{"securitySchemes":{"ApiKeyAuth":{"type":"apiKey","in":"header","name":"x-api-key"}},"schemas":{"RunEnvelope":{"type":"object","required":["project","data","timestamp"],"properties":{"project":{"type":"string","example":"dev-tools:hash"},"data":{},"timestamp":{"type":"string","format":"date-time"}}},"ErrorEnvelope":{"type":"object","properties":{"content":{},"message":{"type":"string"},"errors":{"type":"array","items":{}},"error":{"type":"object","properties":{"code":{"type":"string"},"message":{"type":"string"}}}}}},"responses":{"Error":{"description":"Invalid key, plan gate, rate limit or upstream failure","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorEnvelope"}}}}}}}