API dokumentacijos intro
Dežutės.lt - NT valdymo įrankis. Šio dokumento esmė paaiškinti kokiais būdais vyksta apsikeitimai tarp Dežutės.lt sistemos ir kliento(nt agentūros) svetainės.
Duomenų apsikeitimas
Duomenų apsikeitimas vyksta REST principu. Šiuo metu pilnai palaikomas tik GET metodas(ateityje planuojamas POST/PUT/DELETE metodu realizavimas). Duomenis atiduodami XML ir JSON formatu. Naudotojai identifikuojami Auth Basic principu. Vartotojo vardas naudojamas Dezutes.lt įmonės subdomainas pvz. wisemonks.dezutes.lt. Slaptažodis - api_key raktas(md5 string), sugeneruotas Dezutes.lt sistemos.
- G
-
- get_broker,
- get_brokers,
- get_estate,
- get_estate_blocks,
- get_estate_cities,
- get_estate_count,
- get_estate_municipalities,
- get_estate_photo_versions,
- get_estate_photos,
- get_estate_statuses,
- get_estates,
- get_offices,
- get_project,
- get_project_count,
- get_project_estates,
- get_project_photo_versions,
- get_project_photos,
- get_projects
- N
- S
- HTTParty
Source: show
# File ruby/dezutes.rb, line 36 def initialize(subdomain, api_key) @auth = {:username => subdomain, :password => api_key} end
Brokerio informacija
Source: show
# File ruby/dezutes.rb, line 396 def get_broker(id) send_request("/brokers/#{id}") end
Brokerių sąrašas
Duomenų rūšiavimas, rūšiavimo kryptis:
-
sort_by | type: option, default=name | Rūšiuoti pagal:
-
name - vardą
-
phone - telefono numerį
-
email - el.paštą
-
-
sort_to | type: option, default=asc | Rūšiavimo kryptis:
-
asc
-
desc
-
Source: show
# File ruby/dezutes.rb, line 391 def get_brokers(*args) send_request("/brokers", *args) end
Gražinamas konkretus NT objektas, pagal ID
Spec.parametrai
-
photo_version | type:option, default=original | Nuotraukos versija. Grąžinama tik viena pagrindinė objekto nuotrauka. Visos nuotraukų versijos žiūr. į #get_estate_photo_versions
Užklausos pvz:
get_estate(76943, {:photo_version => 'site_thumb'})
Source: show
# File ruby/dezutes.rb, line 230 def get_estate(id, *args) send_request("/estate/#{id}", *args) end
Mikrorajonų sąrašas
Grąžinamas tik realus mikrorajonų sąrašas t.y. tik tie mikrorajonai, kurios turi sąryšius su NT objektais
Rezultatą galime filtruoti pagal #get_estates metodo parametrus
Užklausos pvz:
#Visi Kauno miesto mikrorajonai
get_estate_blocks(:city => 2)
Source: show
# File ruby/dezutes.rb, line 295 def get_estate_blocks(*args) send_request("/blocks", *args) end
Miestų/gyvenviečių sąrašas
Grąžinamas tik realus miestų sąrašas t.y. tik tie miestai, kurios turi sąryšius su NT objektais
Rezultatą galime filtruoti pagal #get_estates metodo parametrus
Užklausos pvz:
#Visi Vilniaus savivaldybės miestai
get_estate_cities(:municipality => 461)
Source: show
# File ruby/dezutes.rb, line 281 def get_estate_cities(*args) send_request("/cities", *args) end
Metodas skirtas NT objektų kiekiui grąžinti
Kiekis grąžinamas pagal 'Duomenų filtravimo parametrus' nurodytus metode #get_estates
Užklausos pvz:
#Bendras butu ir namu kiekis
get_estate_count(:estate_type => 'flat,house')
Source: show
# File ruby/dezutes.rb, line 253 def get_estate_count(*args) send_request("/estates_count", *args) end
Savivaldybių sąrašas
Grąžinamas tik realus savivaldybių sąrašas t.y. tik tos savialdybės, kurios turi sąryšius su NT objektais
Rezultatą galime filtruoti pagal #get_estates metodo parametrus
Užklausos pvz:
#Visos savivaldybės, kuriose turime namų
get_estate_municipalities(:estate_type => 'house')
Source: show
# File ruby/dezutes.rb, line 267 def get_estate_municipalities(*args) send_request("/municipalities", *args) end
NT objektų nuotraukų versijų sąrašas
Source: show
# File ruby/dezutes.rb, line 361 def get_estate_photo_versions send_request("/estate_photo_versions") end
Visos konkretaus NT objekto nuotraukos
Spec.parametrai
-
photo_versions | type:array of options, default= | Pageidaujamos nuotraukų versijos. Visos nuotraukų versijos žiūr. į #get_estate_photo_versions
-
limit | type:integer | Nuotraukų skaičius
Užklausos pvz:
get_estate_photos(16252, {:photo_versions => ['site_thumb', 'original']})
Source: show
# File ruby/dezutes.rb, line 242 def get_estate_photos(id, *args) send_request("/estates/#{id}/photos", *args); end
NT objektų statusų sąrašas
Source: show
# File ruby/dezutes.rb, line 356 def get_estate_statuses send_request("/estate_statuses") end
Metodas skirtas NT objektu sarasui gauti. Grąžinamą sąrašą galimę filtruoti pagal metodui perduodamus parametrus.
Duomenų filtravimo parametrai:
-
estate_type | type:option, values=commercial, house, flat, site | NT tipas. Galima nurodyti kelis tipus, pvz. estate_type=commercial,site
-
broker | type:integer | Brokerio ID
-
municipality | type:integer | Savialdybė
-
city | type:integer | Miesto ID
-
block | type:integer | Mikrorajono ID
-
street | type:varchar | Gatvės paieška pagal pavadinimą ar pavadinimo dalį
-
project | type:integer | Projekto ID
-
belongs_to_project | type: boolean | Tik tie kurie yra priskirti projektui. Naudojamas, tais atvejais kai norima gauti visus Projektams priklausančius objektus
-
area_from | type:float | Plotas nuo
-
area_till | type:float | Plotas iki
-
for_sale | type:boolean | Ar NT parduodamas? | for_sale=1
-
for_rent | type:boolean | Ar NT nuomojamas? | for_rent=1
-
operation | type:option values = for_sale, for_rent | Alternatyvus nurodymas gauti parduodamus ar nuomojamus objektus | operation=for_sale
-
status | type:integer | Objekto statusas Dežutėse. Objektų sąrašo gavimas žiūr. į metodą #get_estate_statuses
-
statuses | type:array | Pagal kelis objektų statusus | statuses
-
price_from | type:float | Kaina nuo(imtinai) | price_from=400000
-
price_till | type:float | Kaina iki(imtinai)
-
square_price_from | type:float | Kv. m kaina nuo(imtinai) | square_price_from=400000
-
square_price_till | type:float | Kv. m kaina iki(imtinai)
-
rooms | type:float | Tikslus kamb.sk. Pvz. rooms=3 - rasti NT objektus su 3 kambariais/patalpomis.
-
room_count_from | type:integer | Kambarių skaičius nuo(imtinai).
-
room_count_till | type:integer | Kambarių skaičius iki(imtinai).
-
floor_count_from | type:integer | Aukštų skaičius pastate nuo(imtinai).
-
floor_count_till | type:integer | Aukštų skaičius pastate iki(imtinai).
-
floor_from | type:integer | Buto ar patalpų aukštas nuo(imtinai).
-
floor_till | type:integer | Buto ar patalpų aukštas iki(imtinai).
-
year_from | type:integer | Pastato statybos metai nuo(imtinai).
-
year_till | type:integer | Pastato statybos metai iki(imtinai).
-
purpose | type:varchar | Komercinio objekto arba sklypo paskirtis
-
purposes | type:array| Komercinio objekto paskirtys pvz. Rasti sandėliavimo IR gamybinės patalpas - purposes=purpose_store,purpose_manufacture
-
purposes_join | type: option, values = or, and. Komercinio objektų pagal paskirtis užklausos formavimo nustatymas. Pvz. Užklausa 'purposes=purpose_store,purpose_manufacture&purposes_join=or' grąžins sandėliavimo ARBA gamybinės patalpas
-
house_building_type | type:string | Pagal namo tipą.
-
new_estate | type:boolean | Tinklapio nustatymai “Naujas objektas” | new_estate=1
-
top_estate | type:boolean | Tinklapio nustatymai “Top objektas” | top_estate=1
-
projects | type:array | Objektų filtravimas pagal priskirtus projektus | projects=25,27
-
belongs_to_project | type:boolean | Objektai priklausantis projektams, nenurodant projektų id | belongs_to_project=1
-
no_project | type:boolean | Objektai nepriklausantis projektams | no_project=1
Buto specifiniai atributai
-
flat_has_high_ceiling | type:boolean | Aukštos lubos | flat_has_high_ceiling=1
-
flat_has_balcony | type:boolean | Balkonas | flat_has_balcony=1
-
flat_has_kitchen | type:boolean | Buitinė technika | flat_has_kitchen=1
-
flat_has_with_second_floor | type:boolean | Butas per kelis aukštus | flat_has_with_second_floor=1
-
flat_has_detail_plan | type:boolean | Detalus planas | flat_has_detail_plan=1
-
flat_has_internet | type:boolean | Internetas | flat_has_internet=1
-
flat_has_cable_tv | type:boolean | Kabelinė televizija | flat_has_cable_tv=1
-
flat_has_keylocked_stairway | type:boolean | Kodinė laiptinės spyna | flat_has_keylocked_stairway=1
-
flat_has_conditioning | type:boolean | Kondicionierius | flat_has_conditioning=1
-
flat_has_packet_windows | type:boolean | Langai su stiklo paketais | flat_has_packet_windows=1
-
flat_has_lift | type:boolean | Liftas | flat_has_lift=1
-
flat_has_parquet | type:boolean | Parketas | flat_has_parquet=1
-
flat_has_dressing_room | type:boolean | Rūbinė | flat_has_dressing_room=1
-
flat_has_basement | type:boolean | Rūsys | flat_has_basement=1
-
flat_has_lumber_room | type:boolean | Sandėliukas | flat_has_lumber_room=1
-
flat_has_alarm | type:boolean | Signalizacija | flat_has_alarm=1
-
flat_has_wahing_machine | type:boolean | Skalbimo mašina | flat_has_wahing_machine=1
-
flat_has_furniture | type:boolean | Su baldais | flat_has_furniture=1
-
flat_has_phone | type:boolean | Telefono linija | flat_has_phone=1
-
flat_has_tv | type:boolean | Televizorius | flat_has_tv=1
-
flat_has_terrace | type:boolean | Terasa | flat_has_terrace=1
-
flat_has_wc_bath_separate | type:boolean | Tualetas ir vonia atskirai | flat_has_wc_bath_separate=1
-
flat_has_parking_place | type:boolean | Vieta automobiliui | flat_has_parking_place=1
-
flat_has_open_kitchen | type:boolean | Virtuvė sujungta su kamb. | flat_has_open_kitchen=1
-
flat_has_bath | type:boolean | Vonia | flat_has_bath=1
-
flat_has_refridgerator | type:boolean | Šaldytuvas | flat_has_refridgerator=1
-
flat_has_armed_doors | type:boolean | Šarvuotos durys | flat_has_armed_doors=1
-
flat_has_fireside | type:boolean | Židinys | flat_has_fireside=1
Namo specifiniai atributai
-
house_has_water_pool | type:boolean | Baseinas | house_has_water_pool=1
-
house_has_boiler | type:boolean | Boileris | house_has_boiler=1
-
house_has_kitchen | type:boolean | Buitinė technika | house_has_kitchen=1
-
house_has_detail_plan | type:boolean | Detalus planas | house_has_detail_plan=1
-
house_has_gas | type:boolean | Dujos | house_has_gas=1
-
house_has_shower | type:boolean | Dušas | house_has_shower=1
-
house_has_electricity | type:boolean | Elektra | house_has_electricity=1
-
house_has_electricity_380V | type:boolean | Elektra 3x380V | house_has_electricity_380V=1
-
house_has_good_access | type:boolean | Geras privažiavimas | house_has_good_access=1
-
house_has_internet | type:boolean | Internetas | house_has_internet=1
-
house_has_cable_tv | type:boolean | Kabelinė televizija | house_has_cable_tv=1
-
house_has_conditioning | type:boolean | Kondicionierius | house_has_conditioning=1
-
house_has_packet_windows | type:boolean | Langai su stiklo paketais | house_has_packet_windows=1
-
house_has_outdoor_terrace | type:boolean | Lauko terasa | house_has_outdoor_terrace=1
-
house_has_lift | type:boolean | Liftas | house_has_lift=1
-
house_has_city_plumbing | type:boolean | Miesto kanalizacija | house_has_city_plumbing=1
-
house_has_parquet | type:boolean | Parketas | house_has_parquet=1
-
house_has_bathhouse | type:boolean | Pirtis | house_has_bathhouse=1
-
house_has_dressing_room | type:boolean | Rūbinė | house_has_dressing_room=1
-
house_has_basement | type:boolean | Rūsys | house_has_basement=1
-
house_has_alarm | type:boolean | Signalizacija | house_has_alarm=1
-
house_has_wahing_machine | type:boolean | Skalbimo mašina | house_has_wahing_machine=1
-
house_has_furniture | type:boolean | Su baldais | house_has_furniture=1
-
house_has_phone | type:boolean | Telefono linija | house_has_phone=1
-
house_has_tv | type:boolean | Televizorius | house_has_tv=1
-
house_has_wc_bath_separate | type:boolean | Tualetas ir vonia atskirai | house_has_wc_bath_separate=1
-
house_has_water | type:boolean | Vandentiekis | house_has_water=1
-
house_has_local_plumbing | type:boolean | Vietinė kanalizacija | house_has_local_plumbing=1
-
house_has_open_kitchen | type:boolean | Virtuvė sujungta su kamb. | house_has_open_kitchen=1
-
house_has_bath | type:boolean | Vonia | house_has_bath=1
-
house_has_wavin_pipes | type:boolean | Wavin vamzdžiai | house_has_wavin_pipes=1
-
house_has_refridgerator | type:boolean | Šaldytuvas | house_has_refridgerator=1
-
house_has_near_water | type:boolean | Šalia vandens tvenkinio | house_has_near_water=1
-
house_has_armed_doors | type:boolean | Šarvuotos durys | house_has_armed_doors=1
-
house_has_fireside | type:boolean | Židinys | house_has_fireside=1med_doors=1
-
house_has_fireside | type:boolean | Židinys | flat_has_fireside=1
Kom.patalpų specifiniai atributai
-
commercial_has_security | type:boolean | Apsauga | commercial_has_security=1
-
commercial_has_separate_entryway | type:boolean | Atskiras įėjimas | commercial_has_separate_entryway=1
-
commercial_has_balcony | type:boolean | Balkonas | commercial_has_balcony=1
-
commercial_has_kitchen | type:boolean | Buitinė technika | commercial_has_kitchen=1
-
commercial_has_detail_plan | type:boolean | Detalus planas | commercial_has_detail_plan=1
-
commercial_has_gas | type:boolean | Dujos | commercial_has_gas=1
-
commercial_has_shower | type:boolean | Dušas | commercial_has_shower=1
-
commercial_has_electricity | type:boolean | Elektra | commercial_has_electricity=1
-
commercial_has_good_access | type:boolean | Geras privažiavimas | commercial_has_good_access=1
-
commercial_has_internet | type:boolean | Internetas | commercial_has_internet=1
-
commercial_has_conference_hall | type:boolean | Konferencijų salė pastate | commercial_has_conference_hall=1
-
commercial_has_cargo_elevator | type:boolean | Krovininis liftas | commercial_has_cargo_elevator=1
-
commercial_has_lift | type:boolean | Liftas | commercial_has_lift=1
-
commercial_has_local_feeding | type:boolean | Maitinimo įstaiga pastate | commercial_has_local_feeding=1
-
commercial_has_room_conditioning | type:boolean | Patalpų kondicionavimas | commercial_has_room_conditioning=1
-
commercial_has_alarm | type:boolean | Signalizacija | commercial_has_alarm=1
-
commercial_has_furniture | type:boolean | Su baldais | commercial_has_furniture=1
-
commercial_has_phone | type:boolean | Telefono linija | commercial_has_phone=1
-
commercial_has_water | type:boolean | Vandentiekis | commercial_has_water=1
-
commercial_has_street_entrance | type:boolean | Įėjimas iš gatvės | commercial_has_street_entrance=1
Sklyplų specifiniai atributai
-
site_has_detail_plan | type:boolean | Detalus planas | site_has_detail_plan=1
-
site_has_gas | type:boolean | Dujos | site_has_gas=1
-
site_has_electricity | type:boolean | Elektra | site_has_electricity=1
-
site_has_internet | type:boolean | Internetas | site_has_internet=1
-
site_has_plumbing | type:boolean | Kanalizacija | site_has_plumbing=1
-
site_has_asphalt_entrance | type:boolean | Patogus privažiavimas | site_has_asphalt_entrance=1
-
site_has_phone | type:boolean | Telefono linija | site_has_phone=1
-
site_has_water | type:boolean | Vandentiekis | site_has_water=1
-
site_has_near_water | type:boolean | Šalia vandens tvenkinio | site_has_near_water=1
Duomenų ribojimo, puslapiavimo parametrai:
-
per_page | type:integer, max=250 | Grąžinamų NT objektų kiekis.
-
page | type:integer | Puslapio nr. SQL offset t.y. sql išraiška 'LIMIT 10 OFFSET 10' yra lygi parametrams 'page = 2, per_page = 10'
Duomenų rūšiavimas, rūšiavimo kryptis:
-
sort_by | type: option, default=date | Rūšiuoti pagal:
-
location - vietą
-
area - plotą
-
broker - brokerio vardą,pavardę
-
sale_price - pardavimo kainą
-
rent_price - nuomos kainą
-
square_sale_price - kv.m. pardavimo kainą
-
square_rent_price - k.m. nuomos kainą
-
date - sukūrimo datą
-
edit_time - redagavimo datą
-
floor - aukštą
-
floor_count - aukštų skaičių
-
site_area - sklypo plotą. Tinka tik kai estate_type=house
-
rand - atsitiktine tvarka
-
-
sort_to | type: option, default=desc | Rūšiavimo kryptis:
-
asc
-
desc
-
Spec.parametrai
-
extended_info | type:boolean, default=0 | Išplėstinė objektų informacija
-
description_lang | type:string | Aprašymo kalba (kai kurios agentūros saugo NT objektus keliomis kalbomis) pvz. description_lang=en
-
photo_version | type:option, default=original | Nuotraukos versija. Visos nuotraukų versijos žiūr. į #get_estate_photo_versions
Užklausos pvz:
#50 pigiausi praduodami butai Vilniaus mieste
get_estates(:estate_type => 'flat', :for_sale => 1, :city => 1, :per_page = 50, :sort_by => 'price', :sort_to => 'asc')
#20 naujausių nuomojamų kom.patalpų pasiūlymų, didesnių nei 50 kv.m.
get_estates(:estate_type => 'commercial', :for_rent => 1, :per_page => 20, :sort_by => 'date')
Source: show
# File ruby/dezutes.rb, line 219 def get_estates(*args) send_request("/estates", *args) end
Ofisų sąrašas
Source: show
# File ruby/dezutes.rb, line 401 def get_offices(*args) send_request("/offices", *args) end
Gražinamas konkretus NT projektas, pagal ID
Spec.parametrai
-
photo_version | type:option, default=original | Nuotraukos versija. Grąžinama tik viena pagrindinė projekto nuotrauka. Visos nuotraukų versijos žiūr. į #get_estate_photo_versions
Užklausos pvz:
get_project(76943, {:photo_version => 'index'})
Source: show
# File ruby/dezutes.rb, line 328 def get_project(id, *args) send_request("/projects/#{id}", *args) end
Metodas skirtas NT projektų kiekiui grąžinti
Kiekis grąžinamas pagal 'Duomenų filtravimo parametrus' nurodytus metode #get_projects
Užklausos pvz:
#Bendras NT projektu kiekis
get_project_count
Source: show
# File ruby/dezutes.rb, line 376 def get_project_count(*args) send_request("/projects_count", *args) end
NT objektų sąrašas, kurie priskirti prie konkretaus projekto
Rezultatą galime filtruoti pagal #get_estates metodo parametrus
Užklausos pvz:
#NT projekto objektai, brangesni nei 1 milijonas
get_project_estates(234, {:sale_price_from => 1000000})
Source: show
# File ruby/dezutes.rb, line 351 def get_project_estates(id, *args) send_request("/projects/#{id}/estates", *args) end
NT projektų nuotraukų versijų sąrašas
Source: show
# File ruby/dezutes.rb, line 365 def get_project_photo_versions send_request("/project_photo_versions") end
Visos konkretaus NT projekto nuotraukos
Spec.parametrai
-
photo_versions | type:array of options, default= | Pageidaujamos nuotraukų versijos. Visos nuotraukų versijos žiūr. į #get_project_photo_versions
Užklausos pvz:
get_estate_photos(16252, {:photo_versions => ['site_thumb', 'original']})
Source: show
# File ruby/dezutes.rb, line 339 def get_project_photos(id, *args) send_request("/projects/#{id}/photos", *args) end
Projektų sąrašas Grąžinamą sąrašą galimę filtruoti pagal metodui perduodamus parametrus.
Duomenų filtravimo parametrai:
-
municipality | type:integer | Savialdybė
-
city | type:integer | Miesto ID
-
is_investment | type:boolean(integer: 0 || 1) | Investiciniai projektai
-
is_living | type:boolean(integer: 0 || 1) | Gyvenamajieji projektai
-
is_commercial | type:boolean(integer: 0 || 1) | Komerciniai projektai
Projektas gali buti ir investicinis, ir komercinis, ir gyvenamasis
Užklausos pvz:
#Visi Vilniaus miesto Investiciniai Komerciniai projektai
get_estate_blocks(:city => 1, :is_investment => 1, :is_commercial => 1)
Source: show
# File ruby/dezutes.rb, line 316 def get_projects(*args) send_request("/projects", *args) end
Source: show
# File ruby/dezutes.rb, line 406 def send_request(resource_location, *args) response_type = args.first.is_a?(Symbol) ? args.shift : :xml options = (args.last.is_a?(Hash) ? args.pop : {}).merge!( { :basic_auth => @auth, :api_key => @auth[:password] }) self.class.get(resource_location.concat(".#{response_type}"), options) end