Developer GuideQuick StartsFirst Delegate Strategy in 5 min

First Delegate Strategy in 5 Minutes

No bidder infrastructure needed. Your strategy runs inside Praevis.


Create a demand source with Delegate mode

Go to exchange.praevis.com → Demand → Add Demand Source.

Set Integration type to Delegate. You don’t need an endpoint URL.

Paste a starter strategy

In the Strategy JSON field, paste this and click Save:

{
  "version": "1.0",
  "dsp_id": "YOUR_DSP_ID",
  "default_bid": 0,
  "campaigns": [
    {
      "id": "camp-001",
      "name": "Global CTV — All Genres",
      "active": true,
      "priority": 1,
      "daily_budget": 10.00
    }
  ],
  "rules": [
    {
      "name": "CTV all traffic",
      "conditions": [
        { "field": "device.type", "op": "eq", "value": "3" }
      ],
      "bid": {
        "base_cpm": 2.50
      },
      "campaign_id": "camp-001",
      "priority": 1
    }
  ]
}

This bids $2.50 CPM on all CTV traffic (device type 3).

Strategy JSON updates take effect within 30 seconds — no redeployment needed.

Test in sandbox

Switch to Sandbox mode in the dashboard and fire a test auction.

Use curl to fire a test VAST request that will trigger your strategy:

curl -s "https://rtb.praevis.com/vast?site_id=sandbox-publisher&w=1920&h=1080&ip=1.2.3.4&ua=CTV-Test"

See your strategy match

Go to Demand → your demand source → Performance. A matched bid appears within seconds.

The Matched rule column shows which rule triggered and the bid price.


Strategy JSON reference

FieldDescription
default_bidFallback bid when no rule matches (0 = no bid)
campaigns[].daily_budgetMax daily spend per campaign in USD
rules[].conditionsArray of field/op/value filters
rules[].bid.base_cpmBid in USD CPM
rules[].bid.multipliersBid adjustments (e.g. {"prime_time": 1.4})

Condition operators

opMeaning
eqEquals
inValue is in array
gt / ltGreater / less than
containsString contains

Targetable fields

device.type · device.os · geo.country · content.genre · hour · weekday


What’s next?