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]
Python
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]
Python
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]
Python
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
Python
rollup = client.listings.all_duplicates(page=1)
print(rollup.to_dict())
 
# Filter by tag
tagged = 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
Python
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
Python
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
Python
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.

Python
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
Python
result = client.listings.create_gmb(
location_id=16808,
connected_account_id="ca-uuid",
)

See also