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( *, page: int | None = None,) -> APIObjectrollup = client.listings.all_duplicates(page=1)print(rollup.to_dict())listings.mark_duplicate
Mark listing items as duplicates for a location.
client.listings.mark_duplicate( location_id: str | int, listing_item_ids: list[str],) -> APIObjectresult = 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],) -> APIObjectclient.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,) -> APIObjectresult = 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,) -> APIObjectsite 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 Listings API location.
client.listings.create_gmb( location_id: str | int, connected_account_id: str, *, folder_id: str | None = None,) -> APIObjectresult = client.listings.create_gmb( location_id=16808, connected_account_id="ca-uuid",)