Skip to content
Migrated — not yet rewrittenCarried over from the previous help center on 28 August 2026. Content is accurate as published but has not been rewritten to the current article template.

Multi-Step RTB Target Configuration

Location: Targets → RTBs
​Last Updated: 11/6/25


Multi-Step RTB Target Configuration allows you to define chained bidding sequences within a single RTB, where multiple API requests execute in order and each step can reference data returned from previous steps.

This enables flexible ping-pong auctions, real-time validation flows, and advanced decision logic — allowing you to confirm winners or apply routing rules before a call is finalized.


Within one RTB target, you can define step-based logic that executes sequentially:

  • 🔄 Ping-Then-Full Flow
    Send an initial lightweight “ping” request, then follow up with a full payload once a winning route is identified.

  • 🧱 Step-Chained Evaluation
    Define multiple RTB steps that execute in sequence, each dependent on the previous step’s outcome.

  • 🔗 Automatic Variable Chaining
    Fields returned in one step (e.g., BID_ID, SESSION_TOKEN) are automatically available to subsequent steps via response mapping.

  • 🎯 Per-Step Logic
    Assign different payout, duration, or priority rules to each step.


When used inside an RTB Target Group, multi-step behavior follows specific rules:

  • The winning step determines the effective route for the RTB Target Group

  • The runOnRTBGroupWin setting triggers a post-auction call once a winning route is selected

  • This allows confirmation or enrichment calls after auction resolution


Multi-Step RTBs include built-in observability and fault tolerance:

  • 🧾 Expanded Logging
    Step-level responses are recorded to support debugging and analysis.

  • 🛡️ continueOnFailure Support
    If an intermediate step fails, the auction can continue without terminating the flow.

  • 🔁 Backward Compatibility
    Single-step RTB targets continue to work unchanged.


Previously, implementing layered bidding logic required creating and maintaining multiple RTBs — increasing complexity and reducing visibility.

With Multi-Step RTBs, you can manage advanced bidding strategies in one place, which helps you:

  • Optimize call routing dynamically using performance data

  • Run A/B variations across buyer tiers or targeting strategies

  • Improve payout control without duplicating campaigns

  • Reduce configuration overhead and routing errors


  • Two-Step Bid Logic
    Send a ping to gather bids, then send the full payload only to the selected bidder.

  • Dynamic Testing
    Route the same call through multiple buyers and select the best-performing response.

  • Conditional Fallback
    Automatically redirect traffic if response thresholds aren’t met.

  • Tiered Bidding
    Define priority-based sequences for premium and secondary routes.


Navigate to Targets → RTBs, then create a new RTB or open an existing one.


For each step, define:

  • Request URL

  • HTTP method

  • Headers and parameters

Use Send to test each step.


  • Enable Map Response Fields to Variables

  • Click a response field to create a mapping

  • Mapped variables become available in all subsequent steps


  • Add a new step

  • Copy the previous step’s URL if needed

  • Use Edit → Add Parameter to inject mapped variables into the request


5️⃣ Define the Winning Step (RTB Groups Only)

Section titled “5️⃣ Define the Winning Step (RTB Groups Only)”

If the RTB is used in an RTB Target Group, select which step determines the winning route.


Once saved, the RTB will automatically process multi-step logic during execution.


  • Step 1: Call a “ping” endpoint → returns BID_ID

  • Step 2: Call a “pong” endpoint using BID_ID → returns payout and duration

Moja automatically maps the results into your RTB routing and billing flow.