# OfferUp Deal Monitor, Price Drop & Status Tracker ⚡ (`unitbytes/offerup-deal-monitor-scraper`) Actor

Monitor OfferUp for fresh bargains, price drops, used electronics & phones, and batch-check listing status (LISTED vs SOLD) across any US ZIP code. From $0.80/1k.

- **URL**: https://apify.com/unitbytes/offerup-deal-monitor-scraper.md
- **Developed by:** [UnitBytes | Enterprise Web Data](https://apify.com/unitbytes) (community)
- **Categories:** E-commerce, Automation, AI
- **Stats:** 2 total users, 1 monthly users, 100.0% runs succeeded, 0 bookmarks
- **User rating**: No ratings yet

## Pricing

from $0.60 / 1,000 listing discoveries

This Actor is paid per event. You are not charged for the Apify platform usage, but only a fixed price for specific events.
Since this Actor supports Apify Store discounts, the price gets lower the higher subscription plan you have.

Learn more: https://docs.apify.com/actors/running/actors-in-store.md#pay-per-event

## What's an Apify Actor?

An Actor is a serverless cloud program that runs on the Apify platform. It has two run modes.
In Batch mode, an Actor accepts a well-defined JSON input, performs an action which can take anything from a few seconds to a few hours,
and optionally produces a well-defined JSON output, datasets with results, or files in key-value store.
In Standby mode, an Actor provides a web server which can be used as a website, API, or an MCP server.

Apify vocabulary and the platform model are defined once, in the agent quickstart at https://apify.com/agents.md.

## How to integrate an Actor?

If asked about integration, you help developers integrate Actors into their projects.
You adapt to their stack and deliver integrations that are safe, well-documented, and production-ready.

Do not guess an integration path. Every one of them is in the agent quickstart at https://apify.com/agents.md: the Apify MCP server, Agent Skills with the Apify CLI, the JavaScript and Python clients, the REST API, and the account-free path for an agent with no human to sign in. It also carries the rule on stating cost before the first paid run.

For examples already wired to this Actor's own input schema, see the [API](#api) section below.

Each client library has reference documentation the quickstart does not restate: [JavaScript/TypeScript](https://docs.apify.com/api/client/js/docs.md) (`npm install apify-client`) and [Python](https://docs.apify.com/api/client/python/docs.md) (`pip install apify-client`).

# README

## ⚡ OfferUp Deal Monitor, Price Drop & Status Tracker — Fresh Arbitrage Radar & Sold Checker

<p align="center">
  <a href="https://console.apify.com/actors/vekBCattqngzMLpTO?addFromActorId=vekBCattqngzMLpTO" target="_blank">
    <img src="https://raw.githubusercontent.com/unitbytes/.github/main/assets/try-it-for-free.svg" width="240" height="48" alt="Try it for Free">
  </a>
  <br>
  <sub>⚡ <b>1-Click Free Trial:</b> Test live queries using Apify's free monthly credit • No credit card required</sub>
</p>

Automate your **OfferUp bargain hunting, electronics/phone flipping, price drop tracking, and batch item status verification (`LISTED` vs `SOLD`)**.

- 📉 **Automatic Price Drop Calculation** — compares `originalPrice` vs. `price` and outputs exact `priceDropAmount` (`$`) and `priceDropPercent` (`%`) alongside `isFirmPrice` (negotiable vs. firm).
- 📱 **Used Electronics & Phone Flipping Filters** — server-side `conditionFilter` lets you target `for_parts` (cracked/repair arbitrage), `like_new` (open-box flips), or `new` across Cell Phones (`1.2`), Computers (`1.6`), and Video Games (`1.5`), plus `deliveryMethod` (`local` vs `shipping`).
- ✅ **Batch Listing Status Checker (`LISTED` vs `SOLD`)** — pass a list of existing `https://offerup.com/item/detail/<id>` URLs in `startUrls` to verify in seconds whether items are still `LISTED`, marked `SOLD`, or removed (`NOT_FOUND`).

***

<table>
  <tr>
    <td colspan="3" style="padding:10px 14px;background:#2563EB;color:#FFFFFF;font-size:13px;font-weight:700;border-radius:6px 6px 0 0">
      ⚡ UnitBytes · Local Marketplaces, Vehicles, Real Estate & Classifieds Ecosystem
    </td>
  </tr>
  <tr>
    <td style="padding:10px 12px;border:1px solid #E2E8F0;background:#FAFAFA;vertical-align:top;width:33.3%">
      <span style="white-space:nowrap">📱 <b><a href="https://apify.com/unitbytes/offerup-scraper?fpr=939u3w&fp_sid=ecosystem" style="color:#0F172A;text-decoration:none;font-size:13px">OfferUp All-in-One</a></b></span><br><span style="color:#2563EB;font-size:11px;font-weight:600">Local Deals, Motors & Shipping</span><br>
      <span style="color:#64748B;font-size:11px">ZIP radius, 19 vehicle specs, seller leads & price drops</span>
    </td>
    <td style="padding:10px 12px;border:1px solid #E2E8F0;background:#FAFAFA;vertical-align:top;width:33.3%">
      <span style="white-space:nowrap">🏷️ <b><a href="https://apify.com/unitbytes/craigslist-scraper?fpr=939u3w&fp_sid=ecosystem" style="color:#0F172A;text-decoration:none;font-size:13px">Craigslist All-in-One</a></b></span><br><span style="color:#2563EB;font-size:11px;font-weight:600">700+ Cities · All Categories</span><br>
      <span style="color:#64748B;font-size:11px">Cars, housing, jobs, for sale, phones & emails</span>
    </td>
    <td style="padding:10px 12px;border:1px solid #E2E8F0;background:#FAFAFA;vertical-align:top;width:33.3%">
      <span style="white-space:nowrap">🛒 <b><a href="https://apify.com/unitbytes/Facebook-Marketplace-Scraper?fpr=939u3w&fp_sid=ecosystem" style="color:#0F172A;text-decoration:none;font-size:13px">FB Marketplace All-in-One</a></b></span><br><span style="color:#2563EB;font-size:11px;font-weight:600">Cars, Rentals & Local Items</span><br>
      <span style="color:#64748B;font-size:11px">50+ fields, seller profiles, HD photos & bypass 1K limit</span>
    </td>
  </tr>
  <tr>
    <td style="padding:10px 12px;border:1px solid #E2E8F0;background:#FFF4ED;vertical-align:top;width:33.3%">
      <span style="white-space:nowrap">⚡ <b><a href="https://apify.com/unitbytes/offerup-deal-monitor-scraper?fpr=939u3w&fp_sid=ecosystem" style="color:#C2410C;text-decoration:none;font-size:13px">OfferUp Deal & Price Monitor</a></b></span><br><span style="color:#EA580C;font-size:11px;font-weight:700">📍 You are here</span><br>
      <span style="color:#64748B;font-size:11px">Fresh bargains, % price drops & batch LISTED/SOLD check</span>
    </td>
    <td style="padding:10px 12px;border:1px solid #E2E8F0;background:#FAFAFA;vertical-align:top;width:33.3%">
      <span style="white-space:nowrap">🔍 <b><a href="https://apify.com/unitbytes/facebook-marketplace-status-checker?fpr=939u3w&fp_sid=ecosystem" style="color:#0F172A;text-decoration:none;font-size:13px">FB Marketplace Status Checker</a></b></span><br><span style="color:#2563EB;font-size:11px;font-weight:600">Sold, Pending & Price Audit</span><br>
      <span style="color:#64748B;font-size:11px">Bulk check ACTIVE/SOLD/PENDING status & seller catalogs</span>
    </td>
    <td style="padding:10px 12px;border:1px solid #E2E8F0;background:#FAFAFA;vertical-align:top;width:33.3%">
      <span style="white-space:nowrap">🏪 <b><a href="https://apify.com/unitbytes/offerup-seller-inventory-scraper?fpr=939u3w&fp_sid=ecosystem" style="color:#0F172A;text-decoration:none;font-size:13px">OfferUp Seller & Dealer Leads</a></b></span><br><span style="color:#2563EB;font-size:11px;font-weight:600">Storefronts & B2B Contacts</span><br>
      <span style="color:#64748B;font-size:11px">Full /p/&lt;userId&gt; catalog, dealer phones, address & reviews</span>
    </td>
  </tr>
  <tr>
    <td style="padding:10px 12px;border:1px solid #E2E8F0;background:#FAFAFA;vertical-align:top;width:33.3%">
      <span style="white-space:nowrap">🚙 <b><a href="https://apify.com/unitbytes/offerup-vehicles-cars-scraper?fpr=939u3w&fp_sid=ecosystem" style="color:#0F172A;text-decoration:none;font-size:13px">OfferUp Used Cars & VIN</a></b></span><br><span style="color:#2563EB;font-size:11px;font-weight:600">Dealer Specs & History Issues</span><br>
      <span style="color:#64748B;font-size:11px">VIN, MPG, drivetrain & Carfax/AutoCheck issue counts</span>
    </td>
    <td style="padding:10px 12px;border:1px solid #E2E8F0;background:#FAFAFA;vertical-align:top;width:33.3%">
      <span style="white-space:nowrap">🚗 <b><a href="https://apify.com/unitbytes/craigslist-cars-vehicles-scraper?fpr=939u3w&fp_sid=ecosystem" style="color:#0F172A;text-decoration:none;font-size:13px">Craigslist Cars & Vehicles</a></b></span><br><span style="color:#2563EB;font-size:11px;font-weight:600">By Owner (CTO), VIN & Miles</span><br>
      <span style="color:#64748B;font-size:11px">17-digit VIN, clean title, RVs, boats & motorcycles</span>
    </td>
    <td style="padding:10px 12px;border:1px solid #E2E8F0;background:#FAFAFA;vertical-align:top;width:33.3%">
      <span style="white-space:nowrap">🏎️ <b><a href="https://apify.com/unitbytes/facebook-marketplace-vehicle-scraper?fpr=939u3w&fp_sid=ecosystem" style="color:#0F172A;text-decoration:none;font-size:13px">FB Marketplace Vehicles</a></b></span><br><span style="color:#2563EB;font-size:11px;font-weight:600">Cars, Trucks & Motorcycles</span><br>
      <span style="color:#64748B;font-size:11px">Filter by make, model, year, odometer mileage & VIN</span>
    </td>
  </tr>
</table>

***

### 💰 Transparent Pay-Per-Event (PPE) Pricing

| Event / Mode | Free Tier | Bronze Plan | Silver Plan | Gold & Enterprise | What's Included |
| :--- | :---: | :---: | :---: | :---: | :--- |
| **Feed Scan (`listing`)** | **$0.80 / 1k** | **$0.73 / 1k** | **$0.67 / 1k** | **$0.60 / 1k** | Fast feed scan (title, price, condition, location, thumbnail) |
| **Deal & Status Enrichment (`detail`)** | **$2.50 / 1k** | **$2.25 / 1k** | **$2.00 / 1k** | **$1.80 / 1k** | `priceDropAmount`, `priceDropPercent`, `status` (`LISTED`/`SOLD`), `postDate`, Seller Rating, HD Photos |
| **Server Compute & RAM** | **$0.00** | **$0.00** | **$0.00** | **$0.00** | 100% FREE (256MB container) |

***

### 📤 Sample Output Record (Fresh Deal with Price Drop & Status)

```json
{
  "listingId": "9a781d60-e703-3486-9a62-2d713775362c",
  "url": "https://offerup.com/item/detail/9a781d60-e703-3486-9a62-2d713775362c",
  "title": "iPhone 15 Pro 256GB Unlocked",
  "price": 450.0,
  "originalPrice": 550.0,
  "priceDropAmount": 100.0,
  "priceDropPercent": 18.2,
  "isFirmPrice": false,
  "condition": "Open Box / Like New",
  "status": "LISTED",
  "categoryName": "Electronics & Media",
  "subcategoryName": "Cell phones & Accessories",
  "locationName": "Los Angeles, CA",
  "localPickup": true,
  "shippingAvailable": true,
  "sellerName": "Maria",
  "sellerItemsSold": 10
}
```

***

### 🔌 MCP Server Setup: Claude Code, Cursor & AI Agents

```json
{
  "mcpServers": {
    "apify": {
      "type": "http",
      "url": "https://mcp.apify.com/?tools=actors,docs,unitbytes/offerup-deal-monitor-scraper"
    }
  }
}
```

***

### 🌐 Related UnitBytes Deal Monitors, Status Checkers & Marketplace Scrapers

- 📱 **[OfferUp All-in-One Marketplace Scraper](https://apify.com/unitbytes/offerup-scraper?fpr=939u3w\&fp_sid=ecosystem)** — Local deals, nationwide shipping, vehicles, seller profiles & price drops.
- 🚙 **[OfferUp Used Cars, Vehicles & VIN Scraper](https://apify.com/unitbytes/offerup-vehicles-cars-scraper?fpr=939u3w\&fp_sid=ecosystem)** — 19+ automotive specs, 17-digit VINs, MPG & Carfax/AutoCheck issue counts.
- 🏪 **[OfferUp Seller Inventory & Auto Dealer Leads Scraper](https://apify.com/unitbytes/offerup-seller-inventory-scraper?fpr=939u3w\&fp_sid=ecosystem)** — Extract complete `/p/<userId>` storefronts, verified dealer phone numbers, addresses & Google reviews.
- 🔍 **[Facebook Marketplace Details & Status Checker](https://apify.com/unitbytes/facebook-marketplace-status-checker?fpr=939u3w\&fp_sid=ecosystem)** & **[FB Marketplace All-in-One](https://apify.com/unitbytes/Facebook-Marketplace-Scraper?fpr=939u3w\&fp_sid=ecosystem)** — Bulk verify `ACTIVE`/`SOLD`/`PENDING` status, strikethrough price drops & seller catalogs.
- 🏷️ **[Craigslist All-in-One](https://apify.com/unitbytes/craigslist-scraper?fpr=939u3w\&fp_sid=ecosystem)** & **[Craigslist Cars & Vehicles](https://apify.com/unitbytes/craigslist-cars-vehicles-scraper?fpr=939u3w\&fp_sid=ecosystem)** — Real-time delta monitoring (`onlyNewListings`), `listingStatus` (`active`/`deleted`/`expired`) & 700+ cities.
- 🇨🇳 **[1688 Factory Direct Scraper](https://apify.com/unitbytes/1688-scraper?fpr=939u3w\&fp_sid=ecosystem)** & **[Alibaba Wholesale Scraper](https://apify.com/unitbytes/alibaba-scraper?fpr=939u3w\&fp_sid=ecosystem)** — Direct factory wholesale sourcing for e-commerce resellers.

***

### 💬 Support & Feedback

- 💬 Open a ticket in the [Apify Issues Tab](https://apify.com/unitbytes/offerup-deal-monitor-scraper/issues) or email `contact@unitbytes.com`.

# Changelog

This Actor's version history is a separate document: https://apify.com/unitbytes/offerup-deal-monitor-scraper/changelog.md

# Actor input Schema

## `searchQuery` (type: `string`):

Keyword to monitor (e.g., 'iphone 15 pro', 'macbook m3', 'ps5', 'rtx 4090'). Leave blank if checking specific listing URLs in Start URLs below.

## `categoryId` (type: `string`):

OfferUp category to monitor.

## `conditionFilter` (type: `string`):

Server-side condition filter — e.g. 'for_parts' for repair/refurbish arbitrage or 'new'/'like_new' for retail flips.

## `deliveryMethod` (type: `string`):

Filter by Local Pickup ('local'), Nationwide Shipping ('shipping'), or All ('all').

## `minPrice` (type: `integer`):

Minimum price in USD (helps filter out $0/$1 spam listings).

## `maxPrice` (type: `integer`):

Under-$X bargain cap in USD.

## `zipCode` (type: `string`):

5-digit US ZIP code to center the deal radar.

## `radius` (type: `integer`):

Search distance radius around the ZIP code (5 to 500 miles).

## `sortBy` (type: `string`):

Default '-posted' ensures newest listings appear first.

## `startUrls` (type: `array`):

Direct OfferUp item URLs (for LISTED/SOLD status & price drop tracking) or search URLs.

## `maxItems` (type: `integer`):

Maximum number of listings to check or extract.

## `scrapeDetails` (type: `boolean`):

Enriches listings with originalPrice, priceDropAmount, priceDropPercent, postDate, live status (LISTED/SOLD), and seller reputation.

## `proxyConfiguration` (type: `object`):

Apify Residential US proxy configuration.

## Actor input object example

```json
{
  "searchQuery": "iphone 15 pro",
  "categoryId": "all",
  "conditionFilter": "all",
  "deliveryMethod": "all",
  "zipCode": "90001",
  "radius": 50,
  "sortBy": "-posted",
  "startUrls": [],
  "maxItems": 20,
  "scrapeDetails": true,
  "proxyConfiguration": {
    "useApifyProxy": true,
    "apifyProxyGroups": [
      "RESIDENTIAL"
    ],
    "apifyProxyCountry": "US"
  }
}
```

# Actor output Schema

## `results` (type: `string`):

Extracted fresh listings, price drop amounts & percentages, item conditions, and LISTED vs SOLD status.

# API

You can run this Actor programmatically using our API. Below are code examples in JavaScript, Python, and CLI, as well as the OpenAPI specification and MCP server setup.

## JavaScript example

```javascript
import { ApifyClient } from 'apify-client';

// Initialize the ApifyClient with your Apify API token
// Replace the '<YOUR_API_TOKEN>' with your token
const client = new ApifyClient({
    token: '<YOUR_API_TOKEN>',
});

// Prepare Actor input
const input = {
    "searchQuery": "iphone 15 pro",
    "zipCode": "90001",
    "startUrls": [],
    "proxyConfiguration": {
        "useApifyProxy": true,
        "apifyProxyGroups": [
            "RESIDENTIAL"
        ],
        "apifyProxyCountry": "US"
    }
};

// Run the Actor and wait for it to finish
const run = await client.actor("unitbytes/offerup-deal-monitor-scraper").call(input);

// Fetch and print Actor results from the run's dataset (if any)
console.log('Results from dataset');
console.log(`💾 Check your data here: https://console.apify.com/storage/datasets/${run.defaultDatasetId}`);
const { items } = await client.dataset(run.defaultDatasetId).listItems();
items.forEach((item) => {
    console.dir(item);
});

// 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/js/docs

```

## Python example

```python
from apify_client import ApifyClient

# Initialize the ApifyClient with your Apify API token
# Replace '<YOUR_API_TOKEN>' with your token.
client = ApifyClient("<YOUR_API_TOKEN>")

# Prepare the Actor input
run_input = {
    "searchQuery": "iphone 15 pro",
    "zipCode": "90001",
    "startUrls": [],
    "proxyConfiguration": {
        "useApifyProxy": True,
        "apifyProxyGroups": ["RESIDENTIAL"],
        "apifyProxyCountry": "US",
    },
}

# Run the Actor and wait for it to finish
run = client.actor("unitbytes/offerup-deal-monitor-scraper").call(run_input=run_input)

# Fetch and print Actor results from the run's dataset (if there are any)
print(f"💾 Check your data here: https://console.apify.com/storage/datasets/{run.default_dataset_id}")
for item in client.dataset(run.default_dataset_id).iterate_items():
    print(item)

# 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/python/docs/quick-start

```

## CLI example

```bash
echo '{
  "searchQuery": "iphone 15 pro",
  "zipCode": "90001",
  "startUrls": [],
  "proxyConfiguration": {
    "useApifyProxy": true,
    "apifyProxyGroups": [
      "RESIDENTIAL"
    ],
    "apifyProxyCountry": "US"
  }
}' |
apify call unitbytes/offerup-deal-monitor-scraper --silent --output-dataset

```

## MCP server setup

```json
{
    "mcpServers": {
        "apify": {
            "type": "http",
            "url": "https://mcp.apify.com/?tools=fetch-actor-details,unitbytes/offerup-deal-monitor-scraper"
        }
    }
}
```

The hosted server signs you in with OAuth on first connect, so no API token belongs in this config. Clients without OAuth support can send an `Authorization: Bearer <APIFY_API_TOKEN>` header instead, using a token from API & Integrations in Apify Console (https://console.apify.com/settings/integrations).

## OpenAPI specification

Download the OpenAPI definition: https://api.apify.com/v2/actors/vekBCattqngzMLpTO/builds/S7fDuIarfT0rrikhf/openapi.json
