module Immobilienscout::API::Property

Public Class Methods

create(params) click to toggle source
# File lib/immobilienscout/api/property.rb, line 7
def create(params)
  raise ArgumentError unless params.present?

  execute_post_request(create_url, params)
end
destroy(is24_id) click to toggle source
# File lib/immobilienscout/api/property.rb, line 27
def destroy(is24_id)
  raise ArgumentError unless is24_id.present?

  destroy_url = destroy_url(is24_id)

  execute_delete_request(destroy_url)
end
publish(params) click to toggle source
# File lib/immobilienscout/api/property.rb, line 21
def publish(params)
  raise ArgumentError unless params.present?

  execute_post_request(publish_url, params)
end
show(is24_id) click to toggle source
# File lib/immobilienscout/api/property.rb, line 35
def show(is24_id)
  raise ArgumentError unless is24_id.present?

  show_url = show_url(is24_id)

  execute_get_request(show_url)
end
update(is24_id, params) click to toggle source
# File lib/immobilienscout/api/property.rb, line 13
def update(is24_id, params)
  raise ArgumentError unless params.present?

  update_url = update_url(is24_id)

  execute_put_request(update_url, params)
end

Private Class Methods

create_url() click to toggle source
# File lib/immobilienscout/api/property.rb, line 73
def create_url
  "#{Immobilienscout::Client.api_url}/restapi/api/offer/v1.0/user/me/realestate"
end
destroy_url(is24_id) click to toggle source
# File lib/immobilienscout/api/property.rb, line 85
def destroy_url(is24_id)
  "#{Immobilienscout::Client.api_url}/restapi/api/offer/v1.0/user/me/realestate/#{is24_id}"
end
execute_delete_request(url) click to toggle source
# File lib/immobilienscout/api/property.rb, line 59
def execute_delete_request(url)
  parsed_response = Immobilienscout::Request.new(url).delete
  Immobilienscout::RequestErrorHandler.handle(parsed_response) unless parsed_response.success?

  parsed_response
end
execute_get_request(url) click to toggle source
# File lib/immobilienscout/api/property.rb, line 66
def execute_get_request(url)
  parsed_response = Immobilienscout::Request.new(url).get
  Immobilienscout::RequestErrorHandler.handle(parsed_response) unless parsed_response.success?

  parsed_response
end
execute_post_request(url, params) click to toggle source
# File lib/immobilienscout/api/property.rb, line 45
def execute_post_request(url, params)
  parsed_response = Immobilienscout::Request.new(url, params).post
  Immobilienscout::RequestErrorHandler.handle(parsed_response) unless parsed_response.success?

  parsed_response
end
execute_put_request(url, params) click to toggle source
# File lib/immobilienscout/api/property.rb, line 52
def execute_put_request(url, params)
  parsed_response = Immobilienscout::Request.new(url, params).put
  Immobilienscout::RequestErrorHandler.handle(parsed_response) unless parsed_response.success?

  parsed_response
end
publish_url() click to toggle source
# File lib/immobilienscout/api/property.rb, line 81
def publish_url
  "#{Immobilienscout::Client.api_url}/restapi/api/offer/v1.0/publish"
end
show_url(is24_id) click to toggle source
# File lib/immobilienscout/api/property.rb, line 89
def show_url(is24_id)
  "#{Immobilienscout::Client.api_url}/restapi/api/offer/v1.0/user/me/realestate/#{is24_id}"
end
update_url(is24_id) click to toggle source
# File lib/immobilienscout/api/property.rb, line 77
def update_url(is24_id)
  "#{Immobilienscout::Client.api_url}/restapi/api/offer/v1.0/user/me/realestate/#{is24_id}"
end