# ShopGoodwill Scraper: Active Auctions, Sold Comps & Monitoring (`getascraper/shopgoodwill-scraper`) Actor

Search active ShopGoodwill auctions and source-published sold comps in one run. Combine keyword, seller, category, and item ID sources under one capped limit. Export prices, bids, shipping, and seller detail, plus change-only monitoring for new, repriced, and closing lots. Built for resale sourcing.

- **URL**: https://apify.com/getascraper/shopgoodwill-scraper.md
- **Developed by:** [GetAScraper](https://apify.com/getascraper) (community)
- **Categories:** E-commerce, Lead generation, Automation
- **Features:** Limited permissions
- **Stats:** 26 total users, 6 monthly users, 100.0% runs succeeded, 0 bookmarks
- **User rating**: 5.00 out of 5 stars

## Pricing

from $1.49 / 1,000 item scrapeds

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

## 🔨 ShopGoodwill Scraper: Active Auctions, Sold Comps & Monitoring

<table width="100%" style="display:table;width:100%;border-collapse:separate;border-spacing:0;table-layout:fixed;margin-bottom:0">
<tr>
<td colspan="3" style="padding:10px 14px;background:#78350F;border:none;border-top:3px solid #78350F;border-left:1px solid #FCD34D;border-right:1px solid #FCD34D;color:#FFFFFF;border-radius:10px 10px 0 0">
<span style="color:#FFFFFF;font-size:14px;font-weight:700;letter-spacing:0.5px">ONLINE AUCTIONS SUITE</span>
<span style="color:#FFFFFF;font-size:13px">&nbsp;&nbsp;&bull;&nbsp;&nbsp;Find source-backed inventory, comparable sales, and change signals across related marketplaces.</span>
</td>
</tr>
<tr>
<td style="padding:10px 12px;border:none;border-left:1px solid #FCD34D;border-bottom:1px solid #FCD34D;vertical-align:top;width:33.333%;background:#FFFFFF;color:#1C1917">
<span style="overflow-wrap:break-word;word-break:break-word"><img src="https://apify-image-uploads-prod.s3.us-east-1.amazonaws.com/jNDbFabbVxMhnQNb4-actor-pxqI6cNM61fvyHChd-MPN1JEGlCq-CompressJPEG.Online_img%28512x512%29_%2819%29.jpg" width="20" height="20" style="vertical-align:middle;border-radius:4px">&nbsp;<a href="https://apify.com/getascraper/auctionninja-scraper" style="color:#1C1917;text-decoration:none;font-weight:700;font-size:13px">AuctionNinja Scraper</a></span><br>
<span style="color:#57534E;font-size:11px">Estate-sale and auction listings</span>
</td>
<td style="padding:10px 12px;border:none;border-left:1px solid #FCD34D;border-bottom:1px solid #FCD34D;vertical-align:top;width:33.333%;background:#FFFFFF;color:#1C1917">
<span style="overflow-wrap:break-word;word-break:break-word"><img src="https://apify-image-uploads-prod.s3.us-east-1.amazonaws.com/jNDbFabbVxMhnQNb4-actor-NoYQVN7jitFz0FsUf-eAiNGWhLH6-CompressJPEG.Online_img%28512x512%29_%2821%29.jpg" width="20" height="20" style="vertical-align:middle;border-radius:4px">&nbsp;<a href="https://apify.com/getascraper/hibid-scraper" style="color:#1C1917;text-decoration:none;font-weight:700;font-size:13px">HiBid Scraper</a></span><br>
<span style="color:#57534E;font-size:11px">Auction-house inventory</span>
</td>
<td style="padding:10px 12px;border:none;border-left:1px solid #FCD34D;border-right:1px solid #FCD34D;border-bottom:1px solid #FCD34D;vertical-align:top;width:33.333%;background:#FFFBEB;color:#1C1917">
<span style="overflow-wrap:break-word;word-break:break-word"><img src="https://apify-image-uploads-prod.s3.us-east-1.amazonaws.com/jNDbFabbVxMhnQNb4-actor-lgGWxaF9gqLFLAjjg-Ugkn9lwJ7P-unnamed_%289%29.png" width="20" height="20" style="vertical-align:middle;border-radius:4px">&nbsp;<a href="https://apify.com/getascraper/shopgoodwill-scraper" style="color:#78350F;text-decoration:none;font-weight:700;font-size:13px">ShopGoodwill Scraper</a></span><br>
<span style="color:#78350F;font-size:11px;font-weight:700">&#10148; You are here</span>
</td>
</tr>
</table>
<table width="100%" style="display:table;width:100%;border-collapse:separate;border-spacing:0;margin-top:0;margin-bottom:0">
<tr>
<td style="padding:24px 28px;background:#FFFBEB;border:1px solid #FCD34D;border-top:none;color:#1C1917">
<span style="font-size:23px;font-weight:800;color:#1C1917;line-height:1.3">Know the ShopGoodwill sold price before you bid.</span><br>
<span style="font-size:15px;color:#57534E;line-height:1.6">Compare active listings against recent sold prices, then rerun the same search to get only the lots that are new, repriced, or closing soon.</span>
</td>
</tr>
</table>
<table width="100%" style="display:table;width:100%;border-collapse:separate;border-spacing:0;margin-top:0">
<tr>
<td width="25%" style="padding:14px 12px;background:#FFFFFF;border:1px solid #FCD34D;vertical-align:top;border-top:none;color:#1C1917;border-radius:0 0 0 10px"><span style="font-size:15px;font-weight:800;color:#92400E">💰 Sold comps, not guesses</span><br><span style="font-size:12px;color:#57534E">Compare recent source-published closed-auction prices before you bid.</span></td>
<td width="25%" style="padding:14px 12px;background:#FFFFFF;border:1px solid #FCD34D;border-left:none;vertical-align:top;border-top:none;color:#1C1917"><span style="font-size:15px;font-weight:800;color:#92400E">🎯 One combined scope</span><br><span style="font-size:12px;color:#57534E">Mix keywords, sellers, categories, and item IDs in a single capped run.</span></td>
<td width="25%" style="padding:14px 12px;background:#FFFFFF;border:1px solid #FCD34D;border-left:none;vertical-align:top;border-top:none;color:#1C1917"><span style="font-size:15px;font-weight:800;color:#92400E">🧮 Real landed cost</span><br><span style="font-size:12px;color:#57534E">Shipping, handling, and quantity roll into a true per-unit cost when the source confirms every number.</span></td>
<td width="25%" style="padding:14px 12px;background:#FFFFFF;border:1px solid #FCD34D;border-left:none;vertical-align:top;border-top:none;color:#1C1917;border-radius:0 0 10px 0"><span style="font-size:15px;font-weight:800;color:#92400E">🔔 Change-only monitor</span><br><span style="font-size:12px;color:#57534E">Rerun the same scope and get only new, repriced, or closing lots.</span></td>
</tr>
</table>

Use an initial snapshot to validate a sourcing scope. Then schedule the same scope to return meaningful auction changes only.

### 🔍 What it does

ShopGoodwill Scraper collects source-published active auction listings and recent sold-auction records when the source returns them. Every source in one run is combined under one exact global result cap, then deduplicated by item ID.

Use it to compare prices, bid counts, shipping, end times, category context, and lot details. Detail enrichment adds source-published fields only when they are available. Derived landed cost and price per unit appear only when every required source value exists.

Monitoring mode remembers a stable scope. Later successful runs return only `NEW`, `PRICE_CHANGED`, `BID_CHANGED`, `CLOSING_SOON`, or source-verified `ENDED` events. An item is never marked ended merely because it is missing from a capped or failed search.

### 💡 Who it helps

- "I do not bid until I know what similar lots actually sold for. I pull sold comps before I touch an active listing." Professional resellers building sourcing queues across several searches and regional sellers.
- "A camera body alone tells me nothing. I compare today's bid against last month's sold price for the same model, shipping included." Vintage, camera, jewelry, collectible, and electronics operators comparing acquisition cost with recent sold comps.
- "I watch several regional Goodwill sellers for one keyword. One run, one capped list, no duplicate lots." Reseller-tool builders creating watchlists, inventory research, or valuation workflows.
- "I schedule the same search every morning. I only want what is new or repriced since yesterday, not the whole list again." Market researchers studying source-backed auction supply, bidding, and closing prices.

This Actor does not place bids, buy lots, or provide a historical archive beyond the selected source window and your own monitoring history.

### 🚀 How it works

<table width="100%" style="display:table;width:100%;border-collapse:separate;border-spacing:0">
<tr>
<td width="33%" style="padding:16px 14px;background:#FFFBEB;border:1px solid #FCD34D;border-radius:10px 0 0 10px;vertical-align:top;color:#1C1917"><span style="font-size:12px;font-weight:800;color:#B45309;letter-spacing:1px">STEP 1</span><br><span style="font-size:14px;font-weight:700;color:#1C1917">Set your scope</span><br><span style="font-size:12px;color:#57534E">Combine searches, supported URLs, categories, sellers, or item IDs into one run.</span></td>
<td width="33%" style="padding:16px 14px;background:#FFFBEB;border:1px solid #FCD34D;border-left:none;vertical-align:top;color:#1C1917"><span style="font-size:12px;font-weight:800;color:#B45309;letter-spacing:1px">STEP 2</span><br><span style="font-size:14px;font-weight:700;color:#1C1917">Pull active lots or sold comps</span><br><span style="font-size:12px;color:#57534E">Choose active auctions, recent sold prices, or both, with price and listing filters.</span></td>
<td width="33%" style="padding:16px 14px;background:#FFFBEB;border:1px solid #FCD34D;border-left:none;border-radius:0 10px 10px 0;vertical-align:top;color:#1C1917"><span style="font-size:12px;font-weight:800;color:#B45309;letter-spacing:1px">STEP 3</span><br><span style="font-size:14px;font-weight:700;color:#1C1917">Rerun to catch changes</span><br><span style="font-size:12px;color:#57534E">Reuse the same scope to get only new, repriced, or closing lots next time.</span></td>
</tr>
</table>

### ⚙️ Input

| Field                                             | Type                   | Required | Description                                                                 |
| ------------------------------------------------- | ---------------------- | -------- | --------------------------------------------------------------------------- |
| `searchQueries`                                   | array of text          | No       | Keywords to search. All supplied sources are combined.                      |
| `startUrls`                                       | array of URLs          | No       | Supported ShopGoodwill search, category, seller, or item URLs.              |
| `categoryIds`, `sellerIds`, `itemIds`             | array of integers      | No       | Direct numeric source selectors that can be combined in one run.            |
| `auctionState`                                    | enum                   | No       | Choose active auctions, recent sold comps, or both.                         |
| `closedAuctionDaysBack`                           | integer                | No       | Sold-comps lookback window, from 1 to 90 days.                              |
| `minPrice`, `maxPrice`, `sortBy`                  | number, enum           | No       | Filter source price and choose the source ordering.                         |
| `buyNowOnly`, `pickupOnly`, `oneCentShippingOnly` | boolean                | No       | Keep lots with the selected listing or shipping conditions.                 |
| `searchDescriptions`                              | boolean                | No       | Include listing-description text in source keyword matching when available. |
| `fetchDetails`                                    | boolean                | No       | Request available source-published lot details.                             |
| `maxItems`                                        | integer                | No       | Exact global cap across every supplied source and page.                     |
| `runMode`                                         | enum                   | No       | Choose a one-time snapshot or a change-only auction monitor.                |
| `monitorScope`, `resetState`, `closingSoonMinutes` | text, boolean, integer | No       | Configure a stable monitoring scope and closing-soon threshold.             |
| `proxyConfiguration`                              | proxy                  | No       | Connection settings required for cloud collection.                          |

Supply at least one search query, supported URL, category ID, seller ID, or item ID.

### 📊 Data table

| Field                                                                      | Type                 | Description                                                       |
| -------------------------------------------------------------------------- | -------------------- | ----------------------------------------------------------------- |
| `itemId`, `listingUrl`, `title`                                            | text, URL            | Stable lot identity, direct source link, and source title.        |
| `status`, `auctionState`                                                   | text                 | Normalized active, sold, or ended state from the source response. |
| `currentPrice`, `finalPrice`, `minimumBid`, `startingPrice`, `buyNowPrice` | number               | Source-published auction and direct-purchase prices.              |
| `numBids`, `bidIncrement`, `bidHistory`                                    | number, array        | Source-published bid activity when available.                     |
| `shippingPrice`, `handlingPrice`, `landedCost`, `pricePerUnit`             | number               | Source prices and cautious derived acquisition metrics.           |
| `sellerId`, `sellerName`, `pickupCity`, `pickupState`                      | integer, text        | Source-published seller and pickup context when available.        |
| `categoryName`, `categoryPath`, `quantity`, `weight`                       | text, array, integer | Source category and item context when available.                  |
| `imageURL`, `images`, `description`                                        | URL, array, text     | Source-published lot detail when enrichment succeeds.             |
| `sourceId`, `sourceType`, `sourceLabel`, `sourceUrl`                       | text, URL            | Input-source provenance for multi-source runs.                    |
| `changeType`, `changedFields`, `previousPrice`, `previousNumBids`          | text, array, number  | Meaningful auction changes from monitoring runs.                  |
| `firstSeenAt`, `lastSeenAt`, `scrapedAt`                                   | date and time        | Collection and monitoring provenance.                             |

Unavailable source values are omitted. Failed detail enrichment keeps the verified listing record and does not add an enrichment charge.

### 💰 Pricing

This Actor uses pay-per-event pricing through its primary **Auction lot** event. Each active lot, sold comp, or meaningful monitoring change saved to the default dataset is billed once. Source-published detail fields are included when available with no separate event. Empty runs, unchanged lots, duplicates, invalid rows, and failed enrichment are free. There is no subscription.

### ⭐ Enjoying ShopGoodwill Scraper?

<table width="100%" style="display:table;width:100%;border-collapse:separate;border-spacing:0">
<tr>
<td style="padding:20px 24px 14px;background:#FFFBEB;border:1px solid #FCD34D;border-left:5px solid #B45309;border-radius:10px 10px 0 0;color:#1C1917">
<span style="font-size:20px;letter-spacing:4px">⭐ ⭐ ⭐ ⭐ ⭐</span><br>
<span style="font-size:17px;font-weight:800;color:#1C1917">Bid with real sold-comp context, not a guess.</span><br>
<span style="font-size:14px;color:#57534E">A 5-star rating helps resellers and market researchers find this ShopGoodwill workflow.</span>
</td>
</tr>
<tr>
<td style="padding:0;background:#B45309;border:1px solid #B45309;border-left:5px solid #B45309;border-top:none;border-radius:0 0 10px 10px;text-align:center;color:#FFFFFF">
<a href="https://apify.com/getascraper/shopgoodwill-scraper/reviews" style="display:block;padding:13px 16px;color:#FFFFFF;text-decoration:none;font-weight:800;font-size:15px">★&nbsp;&nbsp;Rate this Actor on Apify</a>
</td>
</tr>
</table>

### ❓ FAQ

**Can I collect recent ShopGoodwill sold comps?** Yes. Choose recent sold comps or both auction states, then set a lookback window supported by the source.

**Can I combine several searches and sellers?** Yes. Every supplied source is processed under one global cap, and duplicate item IDs are saved once.

**Will monitoring bill unchanged auction lots?** No. Monitoring emits and charges only new or meaningful changed records.

**Does this Actor place bids or make purchases?** No. It collects public auction data for sourcing and research. Bidding and purchasing are outside its scope.

### 🔗 Other actors

- [AuctionNinja Scraper](https://apify.com/getascraper/auctionninja-scraper) ↗: Collect estate-sale and auction listings.
- [HiBid Scraper](https://apify.com/getascraper/hibid-scraper) ↗: Collect auction-house inventory and live lot data.
- [Whatnot Scraper](https://apify.com/getascraper/whatnot-scraper) ↗: Collect public live-shopping products and seller data.
- [ThriftBooks Scraper](https://apify.com/getascraper/thriftbooks-scraper) ↗: Research book listings, condition, pricing, and inventory.

# Changelog

This Actor's version history is a separate document: https://apify.com/getascraper/shopgoodwill-scraper/changelog.md

# Actor input Schema

## `searchQueries` (type: `array`):

Search terms such as vintage camera, sterling silver, or Nintendo. All supplied sources are combined and deduplicated.

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

Supported search, category, seller, or item URLs. URLs are added to the other sources rather than replacing them.

## `categoryIds` (type: `array`):

Optional numeric ShopGoodwill category IDs. Combine several categories in one run.

## `sellerIds` (type: `array`):

Optional numeric IDs for regional Goodwill sellers or stores.

## `itemIds` (type: `array`):

Optional ShopGoodwill item IDs for direct item collection.

## `auctionState` (type: `string`):

Choose active listings, recent sold comps, or both when the source supports them.

## `closedAuctionDaysBack` (type: `integer`):

How far back to search when sold comps are selected.

## `minPrice` (type: `number`):

Keep lots at or above this source price.

## `maxPrice` (type: `number`):

Keep lots at or below this source price.

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

Order source results before the global result cap is applied.

## `buyNowOnly` (type: `boolean`):

Keep lots with a source-published Buy It Now option.

## `pickupOnly` (type: `boolean`):

Keep lots marked for local pickup.

## `oneCentShippingOnly` (type: `boolean`):

Keep lots with a source-published shipping price of $0.01.

## `searchDescriptions` (type: `boolean`):

Ask the source to include listing-description text in keyword matching when available.

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

One hard global cap across every search, URL, category, seller, and item source in this run.

## `fetchDetails` (type: `boolean`):

Request available description, image gallery, seller, pickup, shipping, and bid-detail fields for each collected lot.

## `runMode` (type: `string`):

Use monitoring to save and charge only new or meaningful auction changes for the same state key.

## `monitorScope` (type: `string`):

Optional name for this saved monitoring scope. Reuse it for every scheduled run of the same scope.

## `resetState` (type: `boolean`):

Forget previously seen lots for this monitoring scope before the run.

## `closingSoonMinutes` (type: `integer`):

Emit one closing-soon event when an active auction enters this time window.

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

ShopGoodwill requires a working proxy connection for cloud collection.

## Actor input object example

```json
{
  "searchQueries": [
    "vintage camera"
  ],
  "startUrls": [],
  "categoryIds": [],
  "sellerIds": [],
  "itemIds": [],
  "auctionState": "active",
  "closedAuctionDaysBack": 30,
  "sortBy": "endingSoonest",
  "buyNowOnly": false,
  "pickupOnly": false,
  "oneCentShippingOnly": false,
  "searchDescriptions": false,
  "maxItems": 100,
  "fetchDetails": false,
  "runMode": "snapshot",
  "monitorScope": "default",
  "resetState": false,
  "closingSoonMinutes": 60,
  "proxyConfiguration": {
    "useApifyProxy": true,
    "apifyProxyGroups": [
      "BUYPROXIES94952"
    ]
  }
}
```

# Actor output Schema

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

Snapshot records or change-only monitoring events saved to the default dataset.

## `runSummary` (type: `string`):

Counts for source pages, deduplication, enrichment, monitoring changes, retries, and emitted records.

# 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 = {
    "searchQueries": [
        "vintage camera"
    ],
    "startUrls": [],
    "categoryIds": [],
    "sellerIds": [],
    "itemIds": [],
    "auctionState": "active",
    "closedAuctionDaysBack": 30,
    "sortBy": "endingSoonest",
    "buyNowOnly": false,
    "pickupOnly": false,
    "oneCentShippingOnly": false,
    "searchDescriptions": false,
    "maxItems": 100,
    "fetchDetails": false,
    "runMode": "snapshot",
    "monitorScope": "default",
    "resetState": false,
    "closingSoonMinutes": 60,
    "proxyConfiguration": {
        "useApifyProxy": true,
        "apifyProxyGroups": [
            "BUYPROXIES94952"
        ]
    }
};

// Run the Actor and wait for it to finish
const run = await client.actor("getascraper/shopgoodwill-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 = {
    "searchQueries": ["vintage camera"],
    "startUrls": [],
    "categoryIds": [],
    "sellerIds": [],
    "itemIds": [],
    "auctionState": "active",
    "closedAuctionDaysBack": 30,
    "sortBy": "endingSoonest",
    "buyNowOnly": False,
    "pickupOnly": False,
    "oneCentShippingOnly": False,
    "searchDescriptions": False,
    "maxItems": 100,
    "fetchDetails": False,
    "runMode": "snapshot",
    "monitorScope": "default",
    "resetState": False,
    "closingSoonMinutes": 60,
    "proxyConfiguration": {
        "useApifyProxy": True,
        "apifyProxyGroups": ["BUYPROXIES94952"],
    },
}

# Run the Actor and wait for it to finish
run = client.actor("getascraper/shopgoodwill-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 '{
  "searchQueries": [
    "vintage camera"
  ],
  "startUrls": [],
  "categoryIds": [],
  "sellerIds": [],
  "itemIds": [],
  "auctionState": "active",
  "closedAuctionDaysBack": 30,
  "sortBy": "endingSoonest",
  "buyNowOnly": false,
  "pickupOnly": false,
  "oneCentShippingOnly": false,
  "searchDescriptions": false,
  "maxItems": 100,
  "fetchDetails": false,
  "runMode": "snapshot",
  "monitorScope": "default",
  "resetState": false,
  "closingSoonMinutes": 60,
  "proxyConfiguration": {
    "useApifyProxy": true,
    "apifyProxyGroups": [
      "BUYPROXIES94952"
    ]
  }
}' |
apify call getascraper/shopgoodwill-scraper --silent --output-dataset

```

## MCP server setup

```json
{
    "mcpServers": {
        "apify": {
            "type": "http",
            "url": "https://mcp.apify.com/?tools=fetch-actor-details,getascraper/shopgoodwill-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/lgGWxaF9gqLFLAjjg/builds/FRdqQhcIuMVxnbfwO/openapi.json
