This endpoint will return the search results from a listing search page and transform it into usable JSON.
require 'net/http'
require 'json'
require 'uri'
uri = URI('https://async.scraperapi.com/structured/redfin/search')
request = Net::HTTP::Post.new(uri, 'Content-Type' => 'application/json')
request.body = {
apiKey: 'API_KEY',
url: 'URL',
country_code: 'COUNTRY_CODE',
tld: 'TLD',
callback: {
type: 'webhook',
url: 'YYYYY'
}
}.to_json
begin
response = Net::HTTP.start(uri.hostname, uri.port, use_ssl: true) do |http|
http.request(request)
end
puts response.body
rescue => e
puts "Error: #{e.message}"
end
require 'net/http'
require 'json'
require 'uri'
uri = URI('https://async.scraperapi.com/structured/redfin/search')
request = Net::HTTP::Post.new(uri, 'Content-Type' => 'application/json')
request.body = {
apiKey: 'API_KEY',
urls: '[URL1','URL2'],
country_code: 'COUNTRY_CODE',
tld: 'TLD',
callback: {
type: 'webhook',
url: 'YYYYY'
}
}.to_json
begin
response = Net::HTTP.start(uri.hostname, uri.port, use_ssl: true) do |http|
http.request(request)
end
puts response.body
rescue => e
puts "Error: #{e.message}"
end
{
"id": "c9ef64da-ed35-4848-a542-d893815a5d02",
"attempts": 0,
"status": "running",
"statusUrl": "https://async.scraperapi.com/jobs/c9ef64da-ed35-4848-a542-d893815a5d02",
"url": "https://www.redfin.com/city/1826/MA/Boston/filter/min-beds=3,min-baths=2",
"supposedToRunAt": "2025-02-17T15:19:56.772Z"
}
[
{
"id": "d5242953-7d1f-4cba-abf7-4d74a9afe9a3",
"attempts": 0,
"status": "running",
"statusUrl": "https://async.scraperapi.com/jobs/d5242953-7d1f-4cba-abf7-4d74a9afe9a3",
"url": "https://www.redfin.com/city/1826/MA/Boston/filter/min-beds=3,min-baths=2"
},
{
"id": "4f23b759-2939-47c1-9821-4e3218bc9d37",
"attempts": 0,
"status": "running",
"statusUrl": "https://async.scraperapi.com/jobs/4f23b759-2939-47c1-9821-4e3218bc9d37",
"url": "https://www.redfin.com/city/10201/NV/Las-Vegas/filter/min-beds=2,min-baths=1"
}
]