eBay marketplaces are now polled through eBay's official Buy > Browse API (client-credentials OAuth2) instead of an Apify scraper actor; Apify still handles Yahoo JP and Mercari. Browse API calls are tracked per day in a new ebay_api_usage table and capped (default 5000, configurable) on eBay's Pacific-time reset clock, so polling halts before the limit is hit. Credentials live in config.toml [ebay] and are overridable via /settings, which also surfaces the day's running call count. Also carries the server.secure_cookies config plumbing (field, accessor, example) consumed by the following commit. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
61 lines
2.5 KiB
Plaintext
61 lines
2.5 KiB
Plaintext
[server]
|
|
port = 8080
|
|
db_path = "./veola.db"
|
|
# Sets the Secure attribute on the session cookie. Leave true for any
|
|
# HTTPS-reachable deployment, including behind a TLS-terminating proxy such as
|
|
# Traefik. Defaults to true if omitted; set false only for local plain-HTTP
|
|
# development on a non-localhost address.
|
|
secure_cookies = true
|
|
|
|
[security]
|
|
# Both must be at least 32 bytes and different from each other.
|
|
# Generate with: openssl rand -hex 32
|
|
session_secret = "change-this-to-a-random-32-byte-string-aaaa"
|
|
encryption_key = "change-this-to-a-different-random-32-byte-string-bb"
|
|
|
|
[apify]
|
|
api_key = ""
|
|
|
|
# Apify proxy configuration. If use_apify_proxy is false (or this whole
|
|
# block is absent), Veola omits proxyConfiguration from actor input entirely
|
|
# and the actor handles its own routing. RESIDENTIAL costs more credits and
|
|
# requires a plan that includes it; AUTO (or empty groups) uses whatever
|
|
# your plan provides.
|
|
[apify.proxy]
|
|
use_apify_proxy = false
|
|
# groups = ["RESIDENTIAL"] # or [] for AUTO
|
|
# country = "US" # ISO-3166-1 alpha-2; match your eBay region
|
|
|
|
# Actor IDs verified on apify.com/store at build time. Pricing varies; check
|
|
# each actor's listing before enabling. Empty values disable that actor.
|
|
[apify.actors]
|
|
active_listings = "automation-lab/ebay-scraper"
|
|
sold_listings = "automation-lab/ebay-sold-scraper"
|
|
price_comparison = "" # set to a verified slug if you want price-comparison overlays
|
|
yahoo_auctions_jp = "meron1122/zenmarket-scraper"
|
|
yahoo_auctions_jp_sold = "" # no known verified sold-listings actor for Yahoo JP
|
|
mercari_jp = "cloud9_ai/mercari-scraper"
|
|
|
|
# eBay's official Buy > Browse API. When client_id and client_secret are set,
|
|
# eBay marketplaces (ebay.com, ebay.co.uk, ...) are polled through this API
|
|
# instead of an Apify scraper actor; Apify still handles Yahoo JP and Mercari.
|
|
# client_id is the App ID and client_secret is the Cert ID from your eBay
|
|
# developer keyset. Both can also be set/overridden at runtime via /settings.
|
|
# environment is "production" (default) or "sandbox".
|
|
# daily_call_limit caps Browse API calls per day on eBay's own quota clock
|
|
# (midnight US Pacific); once hit, eBay polling halts until the next reset.
|
|
# 5000 is the standard Browse API allowance; set a negative value to disable.
|
|
[ebay]
|
|
client_id = ""
|
|
client_secret = ""
|
|
environment = "production"
|
|
daily_call_limit = 5000
|
|
|
|
[ntfy]
|
|
base_url = "https://ntfy.yourdomain.com"
|
|
default_topic = "veola"
|
|
|
|
[scheduler]
|
|
global_poll_interval_minutes = 60
|
|
match_confidence_threshold = 0.6
|