Get Agent Profile
curl --request GET \
--url https://scrapebadger.com/v1/zillow/agent \
--header 'x-api-key: <api-key>'import requests
url = "https://scrapebadger.com/v1/zillow/agent"
headers = {"x-api-key": "<api-key>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {'x-api-key': '<api-key>'}};
fetch('https://scrapebadger.com/v1/zillow/agent', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://scrapebadger.com/v1/zillow/agent",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"x-api-key: <api-key>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://scrapebadger.com/v1/zillow/agent"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("x-api-key", "<api-key>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://scrapebadger.com/v1/zillow/agent")
.header("x-api-key", "<api-key>")
.asString();require 'uri'
require 'net/http'
url = URI("https://scrapebadger.com/v1/zillow/agent")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["x-api-key"] = '<api-key>'
response = http.request(request)
puts response.read_body{
"agent": {
"username": "<string>",
"encoded_zuid": "<string>",
"name": "<string>",
"url": "<string>",
"profile_photo": "<string>",
"phone": "<string>",
"email": "<string>",
"business_name": "<string>",
"business_address": "<string>",
"broker_name": "<string>",
"bio": "<string>",
"rating": 123,
"review_count": 123,
"recent_sales_count": 123,
"total_sales_last_year": 123,
"for_sale_count": 123,
"for_rent_count": 123,
"past_sales_count": 123,
"years_experience": 123,
"is_top_agent": true,
"is_team_lead": true,
"license_number": "<string>",
"license_state": "<string>",
"website_url": "<string>",
"facebook_url": "<string>",
"linkedin_url": "<string>",
"x_url": "<string>",
"video_url": "<string>",
"specialties": [
"<string>"
],
"service_areas": [
"<string>"
],
"languages": [
"<string>"
],
"licenses": [
{
"state": "<string>",
"license_type": "<string>",
"license_number": "<string>",
"status": "<string>",
"expiration": "<string>"
}
],
"professional_information": [
{}
],
"reviews": [
{
"rating": 123,
"comment": "<string>",
"date": "<string>",
"date_utc": 123,
"date_at": "<string>",
"work_description": "<string>",
"reviewer_name": "<string>",
"rebuttal": "<string>",
"sub_ratings": [
{}
]
}
],
"past_sales": [
{
"zpid": "<string>",
"street_address": "<string>",
"city_state_zip": "<string>",
"price": 123,
"sold_date": "<string>",
"sold_date_utc": 123,
"sold_date_at": "<string>",
"bedrooms": 123,
"bathrooms": 123,
"living_area": 123,
"latitude": 123,
"longitude": 123,
"represented": "<string>",
"image_url": "<string>",
"url": "<string>"
}
],
"listings": [
{
"position": 123,
"zpid": "<string>",
"id": "<string>",
"detail_url": "<string>",
"home_type": "<string>",
"home_status": "<string>",
"status_text": "<string>",
"status_type": "<string>",
"marketing_status": "<string>",
"contingent_listing_type": "<string>",
"price": 123,
"price_raw": "<string>",
"currency": "<string>",
"price_change": 123,
"date_price_changed_utc": 123,
"date_price_changed_at": "<string>",
"price_reduction": "<string>",
"flex_field_text": "<string>",
"zestimate": 123,
"rent_zestimate": 123,
"tax_assessed_value": 123,
"beds": 123,
"baths": 123,
"living_area": 123,
"lot_area_value": 123,
"lot_area_unit": "<string>",
"address": "<string>",
"street_address": "<string>",
"unit": "<string>",
"city": "<string>",
"state": "<string>",
"zipcode": "<string>",
"country": "<string>",
"is_undisclosed_address": true,
"latitude": 123,
"longitude": 123,
"broker_name": "<string>",
"provider_listing_id": "<string>",
"days_on_zillow": 123,
"is_zillow_owned": true,
"is_featured": true,
"is_showcase": true,
"is_fsba": true,
"is_new_construction": true,
"is_premier_builder": true,
"is_preforeclosure_auction": true,
"is_non_owner_occupied": true,
"img_src": "<string>",
"has_image": true,
"has_video": true,
"has_3d_model": true,
"has_open_house": true,
"open_house_start": "<string>",
"open_house_end": "<string>",
"photos": [
"<string>"
]
}
],
"scraped_utc": 123,
"scraped_at": "<string>"
}
}Agents
Get Agent Profile
Full detail for a Zillow real-estate professional — profile, reviews, past sales, licenses, and active listings.
GET
/
v1
/
zillow
/
agent
Get Agent Profile
curl --request GET \
--url https://scrapebadger.com/v1/zillow/agent \
--header 'x-api-key: <api-key>'import requests
url = "https://scrapebadger.com/v1/zillow/agent"
headers = {"x-api-key": "<api-key>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {'x-api-key': '<api-key>'}};
fetch('https://scrapebadger.com/v1/zillow/agent', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://scrapebadger.com/v1/zillow/agent",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"x-api-key: <api-key>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://scrapebadger.com/v1/zillow/agent"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("x-api-key", "<api-key>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://scrapebadger.com/v1/zillow/agent")
.header("x-api-key", "<api-key>")
.asString();require 'uri'
require 'net/http'
url = URI("https://scrapebadger.com/v1/zillow/agent")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["x-api-key"] = '<api-key>'
response = http.request(request)
puts response.read_body{
"agent": {
"username": "<string>",
"encoded_zuid": "<string>",
"name": "<string>",
"url": "<string>",
"profile_photo": "<string>",
"phone": "<string>",
"email": "<string>",
"business_name": "<string>",
"business_address": "<string>",
"broker_name": "<string>",
"bio": "<string>",
"rating": 123,
"review_count": 123,
"recent_sales_count": 123,
"total_sales_last_year": 123,
"for_sale_count": 123,
"for_rent_count": 123,
"past_sales_count": 123,
"years_experience": 123,
"is_top_agent": true,
"is_team_lead": true,
"license_number": "<string>",
"license_state": "<string>",
"website_url": "<string>",
"facebook_url": "<string>",
"linkedin_url": "<string>",
"x_url": "<string>",
"video_url": "<string>",
"specialties": [
"<string>"
],
"service_areas": [
"<string>"
],
"languages": [
"<string>"
],
"licenses": [
{
"state": "<string>",
"license_type": "<string>",
"license_number": "<string>",
"status": "<string>",
"expiration": "<string>"
}
],
"professional_information": [
{}
],
"reviews": [
{
"rating": 123,
"comment": "<string>",
"date": "<string>",
"date_utc": 123,
"date_at": "<string>",
"work_description": "<string>",
"reviewer_name": "<string>",
"rebuttal": "<string>",
"sub_ratings": [
{}
]
}
],
"past_sales": [
{
"zpid": "<string>",
"street_address": "<string>",
"city_state_zip": "<string>",
"price": 123,
"sold_date": "<string>",
"sold_date_utc": 123,
"sold_date_at": "<string>",
"bedrooms": 123,
"bathrooms": 123,
"living_area": 123,
"latitude": 123,
"longitude": 123,
"represented": "<string>",
"image_url": "<string>",
"url": "<string>"
}
],
"listings": [
{
"position": 123,
"zpid": "<string>",
"id": "<string>",
"detail_url": "<string>",
"home_type": "<string>",
"home_status": "<string>",
"status_text": "<string>",
"status_type": "<string>",
"marketing_status": "<string>",
"contingent_listing_type": "<string>",
"price": 123,
"price_raw": "<string>",
"currency": "<string>",
"price_change": 123,
"date_price_changed_utc": 123,
"date_price_changed_at": "<string>",
"price_reduction": "<string>",
"flex_field_text": "<string>",
"zestimate": 123,
"rent_zestimate": 123,
"tax_assessed_value": 123,
"beds": 123,
"baths": 123,
"living_area": 123,
"lot_area_value": 123,
"lot_area_unit": "<string>",
"address": "<string>",
"street_address": "<string>",
"unit": "<string>",
"city": "<string>",
"state": "<string>",
"zipcode": "<string>",
"country": "<string>",
"is_undisclosed_address": true,
"latitude": 123,
"longitude": 123,
"broker_name": "<string>",
"provider_listing_id": "<string>",
"days_on_zillow": 123,
"is_zillow_owned": true,
"is_featured": true,
"is_showcase": true,
"is_fsba": true,
"is_new_construction": true,
"is_premier_builder": true,
"is_preforeclosure_auction": true,
"is_non_owner_occupied": true,
"img_src": "<string>",
"has_image": true,
"has_video": true,
"has_3d_model": true,
"has_open_house": true,
"open_house_start": "<string>",
"open_house_end": "<string>",
"photos": [
"<string>"
]
}
],
"scraped_utc": 123,
"scraped_at": "<string>"
}
}Query Parameters
Provide eitherusername or url.
string
Zillow profile username (screen name), e.g.
jane-doe. Taken from a /profile/<username>/ URL.string
Full Zillow
/profile/... URL (alternative to username).Response
The response wraps a singleAgent object under an agent key.
object
Show Agent object
Show Agent object
string
Profile username (nullable).
string
Zillow user id (nullable).
string
Full name (nullable).
string
Profile URL (nullable).
string
Profile photo URL (nullable).
string
Phone (nullable).
string
Email (nullable).
string
Business / brokerage name (nullable).
string
Business address (nullable).
string
Broker name (nullable).
string
Title (nullable).
string
Biography (nullable).
number
Average review rating (nullable).
integer
Number of reviews (nullable).
integer
Recent sales count (nullable).
integer
Total sales in the last year (nullable).
integer
Active for-sale listings count (nullable).
integer
Active for-rent listings count (nullable).
integer
Past sales count (nullable).
integer
Years of experience (nullable).
boolean
Top-agent flag (nullable).
boolean
Team-lead flag (nullable).
string
Primary license number (nullable).
string
Primary license state (nullable).
string
Personal website URL (nullable).
string
Facebook URL (nullable).
string
LinkedIn URL (nullable).
string
X / Twitter URL (nullable).
string
Intro video URL (nullable).
array
Specialty tags (list of strings).
array
Service area names (list of strings).
array
Languages spoken (list of strings).
array
array
Raw professional-information label/value records.
array
Agent reviews.
Show Review object
Show Review object
integer
Star rating (nullable).
string
Review text (nullable).
string
Raw date label (nullable).
number
Date as a Unix timestamp (nullable).
string
Date as an ISO-8601 string (nullable).
string
Work described in the review (nullable).
string
Reviewer name (nullable).
string
Agent’s response to the review (nullable).
array
Category sub-ratings:
{ description, score }.array
Closed transactions.
Show Past sale object
Show Past sale object
string
Property id (nullable).
string
Street line (nullable).
string
City, state, ZIP (nullable).
integer
Sold price (nullable).
string
Raw sold date label (nullable).
number
Sold date as a Unix timestamp (nullable).
string
Sold date as an ISO-8601 string (nullable).
number
Bedrooms (nullable).
number
Bathrooms (nullable).
integer
Interior area (nullable).
number
Latitude (nullable).
number
Longitude (nullable).
string
Side represented:
buyer, seller, or both (nullable).string
Photo URL (nullable).
string
Listing URL (nullable).
number
Scrape time as a Unix timestamp (nullable).
string
Scrape time as an ISO-8601 string (nullable).
Example Response
{
"agent": {
"username": "jane-doe",
"encoded_zuid": "X1-ZU10abcd1234_5xyz9",
"name": "Jane Doe",
"url": "https://www.zillow.com/profile/jane-doe/",
"profile_photo": "https://photos.zillowstatic.com/h/p/jane.jpg",
"phone": "512-555-0100",
"business_name": "Downtown Realty Group",
"title": "Real Estate Agent",
"rating": 4.9,
"review_count": 128,
"recent_sales_count": 34,
"years_experience": 12,
"is_top_agent": true,
"license_number": "0654321",
"license_state": "TX",
"specialties": ["Buyer's Agent", "Listing Agent"],
"service_areas": ["Austin, TX", "Round Rock, TX"],
"languages": ["English", "Spanish"],
"licenses": [
{ "state": "TX", "license_type": "Real Estate Agent", "license_number": "0654321", "status": "Active" }
],
"reviews": [
{ "rating": 5, "comment": "Fantastic to work with!", "reviewer_name": "buyer123", "work_description": "Helped me buy a home", "sub_ratings": [{ "description": "Responsiveness", "score": 5 }] }
],
"past_sales": [
{ "zpid": "29499726", "street_address": "123 Main St", "city_state_zip": "Austin, TX 78701", "price": 455000, "sold_date_at": "2026-03-15T00:00:00Z", "represented": "seller" }
],
"listings": [
{ "position": 1, "zpid": "30112233", "home_status": "FOR_SALE", "price": 525000, "beds": 4, "baths": 3, "city": "Austin", "state": "TX" }
],
"scraped_at": "2026-07-07T12:00:00Z"
}
}
Each agent-profile request costs 5 credits. Failed requests are not charged.
Authorizations
Query Parameters
Zillow profile username (screen name).
Full Zillow /profile/... URL (alternative to username).
Response
200 - application/json
Agent profile
A Zillow real-estate professional profile (from /profile/{username}).
Show child attributes
Show child attributes
⌘I

