Audit Logging

Every auction, bid, win, and impression on Praevis is logged. This supports revenue reconciliation, fraud investigation, compliance audits, and dispute resolution.


What is logged

EventFields loggedRetention
Auctionauction_id, timestamp, publisher_id, partner_id, region, bid_floor90 days
Bid (per DSP)dsp_id, bid_price, response_time_ms, outcome (win/loss/no-bid)90 days
Winauction_id, winning_dsp_id, clearing_price_micros, publisher_id90 days
Impressionauction_id, publisher_id, dsp_id, timestamp, revenue_micros90 days
IVT rejectiontimestamp, publisher_id, ip_hash, rejection_layer, reason90 days
API accessendpoint, partner_id, timestamp, response_code30 days
Dashboard loginuser_id, partner_id, timestamp, IP hash30 days

Revenue event guarantee

100% of revenue events are logged. There is no sampling. Every impression that generates revenue has a corresponding audit log entry.

Revenue figures in the dashboard are derived from the same logs used for invoicing — no separate billing database. What you see in the dashboard equals what appears on your invoice (with a ~60-second aggregation delay for live metrics).


Log storage

PeriodStorageAccess
0–90 daysPostgreSQL (hot storage)API + export on request
90 days+Archive (planned: cold storage, 7 years)Export on request

Logs are partitioned by day and region. Queries are scoped to your partner account — you cannot access other partners’ logs.


Accessing your logs

Dashboard

Go to Reports → Audit Log in your dashboard. Filter by:

  • Date range (up to 90 days)
  • Supply source
  • Demand source
  • Event type (auction, impression, win)

Export as CSV for reconciliation.

API

# Publisher-level auction log
GET /api/metrics/publisher/{id}/log?date=2026-02-17&format=csv
X-API-Key: {YOUR_KEY}
 
# DSP-level win log
GET /api/metrics/dsp/{id}/log?date=2026-02-17&format=json

Bulk export request

For historical exports or compliance requests beyond what the API provides:

  • Email [email protected] with your partner ID, date range, and required format (CSV/JSON)
  • Standard turnaround: 3 business days
  • Encrypted delivery via secure link

Reconciliation

Use the audit log to reconcile dashboard revenue against your records:

  1. Export impression log for the period (CSV)
  2. Each row has: auction_id, timestamp, publisher_id, clearing_price_micros
  3. Sum clearing_price_micros, divide by 10,000 → total revenue in cents
  4. Compare with your invoice line items

Discrepancies of <1% are normal (timing differences between log write and aggregation). Discrepancies >1%: contact [email protected] with specific auction IDs.


Data access controls

Who can see logsWhat they see
Partner adminAll logs for their partner account
Supply source userLogs for their supply source only
Demand source userLogs for their demand source only
Praevis supportAll logs (for support purposes)
Third partiesNever — no cross-partner access

All log access is itself logged for compliance.

For GDPR data subject requests requiring log inspection, submit via [email protected]. We can search logs by advertising ID or IP hash (IP addresses are hashed before storage — the raw IP is not retained beyond the auction).