Listings
Manage premium, voice, and duplicate directory listings via client.listings.
All listings methods live under client.listings. Methods that take a
location_id accept numeric or base64-encoded IDs, see
Location IDs.
listings.premium
Get premium directory listings (Google, Yelp, Facebook, etc.) for a location.
client.listings.premium(location_id: str | int) -> list[APIObject]
listings = client.listings.premium(16808)for listing in listings: site = listing.get("site", "N/A") status = listing.get("syncStatus", "N/A") print(f"{site}: {status}")Common syncStatus values: SYNCED, PENDING, NOT_SYNCED, ERROR.
listings.voice
Get voice assistant listings (Google Assistant, Alexa, Siri).
client.listings.voice(location_id: str | int) -> list[APIObject]
voice = client.listings.voice(16808)print(f"{len(voice)} voice assistant listings")listings.duplicates
Get duplicate listings for a single location.
client.listings.duplicates(location_id: str | int) -> list[APIObject]
dupes = client.listings.duplicates(16808)print(f"Found {len(dupes)} duplicate listings")listings.all_duplicates
Get duplicate listings across all locations, with optional tag filter.
client.listings.all_duplicates(
*,
tag: str | None = None,
page: int | None = None,
) -> APIObject
rollup = client.listings.all_duplicates(page=1)print(rollup.to_dict()) # Filter by tagtagged = client.listings.all_duplicates(tag="brand:acme")listings.mark_duplicate
Mark listing items as duplicates for a location.
client.listings.mark_duplicate(
location_id: str | int,
listing_item_ids: list[str],
) -> APIObject
result = client.listings.mark_duplicate( location_id=16808, listing_item_ids=["item-uuid-1", "item-uuid-2"],)print(result.to_dict())listings.mark_not_duplicate
Clear duplicate status for listing items.
client.listings.mark_not_duplicate(
location_id: str | int,
listing_item_ids: list[str],
) -> APIObject
client.listings.mark_not_duplicate(16808, ["item-uuid-1"])listings.connect
Link a location to a listing from a connected account.
client.listings.connect(
location_id: str | int,
connected_account_listing_id: str,
connected_account_id: str,
) -> APIObject
result = client.listings.connect( location_id=16808, connected_account_listing_id="ca-listing-uuid", connected_account_id="ca-uuid",)listings.disconnect
Disconnect a location from its Google or Facebook listing.
client.listings.disconnect(
location_id: str | int,
site: str,
) -> APIObject
site is case-insensitive; the SDK uppercases it before sending.
client.listings.disconnect(16808, site="google")client.listings.disconnect(16808, site="facebook")listings.create_gmb
Create a Google Business Profile listing for an existing listingsAPI location.
client.listings.create_gmb(
location_id: str | int,
connected_account_id: str,
*,
folder_id: str | None = None,
) -> APIObject
result = client.listings.create_gmb( location_id=16808, connected_account_id="ca-uuid",)