Skip to main content

Control Your Listing Visibility

Every listing has a status that controls whether it appears on Venturu. Let’s make it simple.

The Main Statuses

FOR_SALE

Live and searchable
Appears in search results and on the marketplace

UNDER_CONTRACT

Sale in progress
Shows “Under Contract” badge, removed from search

SOLD

Business has sold
Marked as sold, removed from active search

ARCHIVED

Temporarily hidden
Not visible to buyers, but data is preserved

DRAFT

Not yet published
For internal use, completely hidden

REVIEWING_OFFERS

Evaluating offers
Still visible, indicates active negotiations

Quick Reference

StatusVisible to Buyers?In Search?Use When
FOR_SALE✅ Yes✅ YesReady to sell
REVIEWING_OFFERS✅ Yes✅ YesHave offers, still accepting more
PENDING_CONTRACT✅ Yes✅ YesOffer accepted, pending docs
UNDER_CONTRACT✅ Yes✅ YesContract signed, in due diligence
SOLD❌ No❌ NoDeal closed
ARCHIVED❌ No❌ NoTemporarily off market
DRAFT❌ No❌ NoStill preparing

Changing Status

Make a Listing Live

curl -X PUT "https://www.venturu.com/api/partner/v1/listings/LISTING-123" \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "brokerExternalId": "BROKER-789",
    "status": "FOR_SALE",
    "businessType": "Restaurant",
    "location": {
      "city": "Miami",
      "state": "Florida",
      "country": "US",
      "visibility": "SHOW_CITY_STATE"
    }
  }'
Now live! Buyers can find and contact you about this listing.

Mark as Under Contract

curl -X PUT "https://www.venturu.com/api/partner/v1/listings/LISTING-123" \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "brokerExternalId": "BROKER-789",
    "status": "UNDER_CONTRACT"
  }'
Shows “Under Contract” badge. Deal is in progress, NOT removed from active search.

Mark as Sold

curl -X PUT "https://www.venturu.com/api/partner/v1/listings/LISTING-123" \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "brokerExternalId": "BROKER-789",
    "status": "SOLD",
  }'
Congratulations on the sale! The listing is now marked as sold.

Archive (Temporarily Hide)

curl -X PUT "https://www.venturu.com/api/partner/v1/listings/LISTING-123" \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "brokerExternalId": "BROKER-789",
    "status": "ARCHIVED",
    "businessType": "Restaurant",
    "location": {
      "city": "Miami",
      "state": "Florida",
      "country": "US",
      "visibility": "SHOW_CITY_STATE"
    }
  }'
Archived! The listing is hidden but all data is preserved. Change back to FOR_SALE anytime.

Mark as Reviewing Offers

curl -X PUT "https://www.venturu.com/api/partner/v1/listings/LISTING-123" \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "brokerExternalId": "BROKER-789",
    "status": "REVIEWING_OFFERS",
    "businessType": "Restaurant",
    "location": {
      "city": "Miami",
      "state": "Florida",
      "country": "US",
      "visibility": "SHOW_CITY_STATE"
    }
  }'
Still visible and searchable. Shows you’re actively evaluating offers.

Common Workflows

Seller Pulls Listing Off Market

Scenario: Seller decides not to sell right now.
{
  "status": "ARCHIVED"
}

You Have Interested Buyers

Scenario: Multiple offers coming in, still accepting more.
{
  "status": "REVIEWING_OFFERS"
}

Offer Accepted, Pending Paperwork

Scenario: You’ve accepted an offer, waiting on signed contract.
{
  "status": "PENDING_CONTRACT"
}

Contract Signed, In Due Diligence

Scenario: Contract is signed, buyer is doing their research.
{
  "status": "UNDER_CONTRACT"
}

Deal Closes Successfully

Scenario: Transaction complete, business sold!
{
  "status": "SOLD"
}

Deal Falls Through

Scenario: Pending deal didn’t work out, back on market.
{
  "status": "FOR_SALE"
}

Important Notes

DRAFT: For new listings you’re still preparing. Not visible anywhere.FOR_SALE: For ready-to-show listings. Appears in search, gets traffic.
Start with DRAFT, switch to FOR_SALE when ready!
Yes! If a deal falls through, just change status back to FOR_SALE or UNDER_CONTRACT. No data is lost.
ARCHIVED: Was active before, temporarily hidden (like “archiving”)DRAFT: Never been active, still being preparedBoth are hidden from buyers. Use whichever makes sense for your workflow!
The listing is not removed from search. Leads may still come through the direct URL.
REVIEWING_OFFERS: You have offers but haven’t accepted yet. Still accepting new offers.PENDING_CONTRACT: You’ve accepted an offer, waiting for contract to be signed.Both are visible to buyers with appropriate badges.

The Complete Status Flow

Here’s the typical lifecycle of a listing: Solid arrows = normal progression
Dotted arrows = deal fell through, back to market

Status Change Rules

You can change between any statuses at any time. The API doesn’t enforce a specific workflow - use whatever makes sense for your business!
Common transitions:
  • DRAFTFOR_SALE (publish for the first time)
  • FOR_SALEREVIEWING_OFFERS (offers coming in)
  • REVIEWING_OFFERSPENDING_CONTRACT (offer accepted)
  • PENDING_CONTRACTUNDER_CONTRACT (contract signed)
  • UNDER_CONTRACTSOLD (deal closed)
  • UNDER_CONTRACTFOR_SALE (deal fell through)
  • FOR_SALEARCHIVED (seller changed mind)
  • ARCHIVEDFOR_SALE (back on market)

Bulk Status Updates

Need to change many listings at once? Just loop through them:
import requests

listings = ['LISTING-1', 'LISTING-2', 'LISTING-3']

for listing_id in listings:
    response = requests.put(
        f'https://www.venturu.com/api/partner/v1/listings/{listing_id}',
        headers={'Authorization': f'Bearer {API_KEY}'},
        json={
            'brokerExternalId': 'BROKER-789',
            'status': 'ARCHIVED',  # Archive all
            'businessType': 'Restaurant',
            'location': {...}
        }
    )
    print(f'{listing_id}: {response.json()["message"]}')

Best Practices

Keep Data Current

Update status as deals progress. Buyers appreciate accurate information.

Use REVIEWING_OFFERS

Shows momentum and creates urgency for other buyers.

Don't Delete

Use ARCHIVED or SOLD instead of deleting. Preserves history and data.

Monitor Your Listings

Too many FOR_SALE listings? Consider archiving stale ones.

Troubleshooting

Status Not Changing?

Make sure you’re including all required fields in your request:
  • brokerExternalId or broker object
  • businessType
  • location object

Invalid Status Error?

Check the spelling. Valid statuses are:
  • FOR_SALE, REVIEWING_OFFERS, PENDING_CONTRACT, UNDER_CONTRACT, SOLD, ARCHIVED, DRAFT

Listing Still Appearing?

Changes are instant, but:
  • Clear your browser cache
  • Wait ~1 minute for search index to update
  • Check you used the correct externalListingId

Next Steps