- Core
- Go · fasthttp
- Wire contract
- OpenRTB 2.5 / 2.6, inbound and outbound
- Impressions per request
- Exactly one imp
- Auction
- Real-time auction · clearing bounded by floor and winning bid
- Bid ranking
- Norm = price × currency rate × BidRate
- Bid discards
- non-200 · empty · invalid JSON · price at or below zero · below floor
- Auction timeout (tmax)
- 300 to 500 ms · configurable per publisher / zone
- DSP timeout
- 500 ms · late responses discarded
- Currency
- Base currency · rates from the config snapshot at bid time
- Notices
- nurl (server-side) · burl (billable) · lurl (loss)
- Price macros
- AUCTION_PRICE · AUCTION_CURRENCY · AUCTION_ID · AUCTION_LOSS
- Formats
- banner · in-stream and out-stream video · CTV · push · popunder · native
- JS player
- 13.8 KB · zero dependencies · six display formats
- Display formats
- slider · fullpage · inpage · embed · interscroller · floating
- Header bidding
- Prebid adapter · server-to-server feeds
- Video mimes
- mp4 · webm · javascript · 3gpp
- Video protocols
- [2, 3, 5, 6]
- Video duration / bitrate
- 1 to 150 s · 10 to 9000 kbps
- Anti-fraud
- 9 realtime checks per request · shadow or block per endpoint
- Source quality scoring
- Hourly · 0 to 100 · quarantine before ban
- SCO compliance
- source.ext.schain v1.0 on every bid request
- sellers.json roles
- PUBLISHER + INTERMEDIARY (BOTH)
- ads.txt verification
- Scheduled robot · status shown in the publisher console
- Config reload
- Redis snapshot · config:version / config:reload · no restart
- Event pipeline
- Own imp / click pixels → ClickHouse (log_rtb, log_event)
- Reporting
- Hourly marts · placement, creative, rejection reason · CSV export
- Monitoring
- Prometheus + Grafana · per format and per DSP
- Console
- React 19 · 2FA · 10 interface languages including RTL Arabic
- Billing
- Multi-currency double-entry ledger · scheduled payouts with net terms
- Identity and privacy
- First-party DMP segments · GDPR / TCF consent gate · opt-out cookie
- In-app SDK
- Pilot · Unity 2021.3 LTS+ · Android minSdk 21 · no app object emitted yet
- Auth
- IP allow-list + bearer token, agreed at onboarding
- Serving locations
- EU (Amsterdam) + US (Oregon) · dedicated app and db instances, private network