Lotus

OpenRTB API Integration Guide

This document is for DSP partners integrating with Lotus ADX. The endpoint is compatible with OpenRTB 2.5, with JSON request and response payloads.

Endpoint: https://ad.cardbbs.net/api/adx/reqrtb?adunit=xxx

Method: POST

Content-Type: application/json

1. Request Overview

Location Field Type Required Description
Query adunit string Yes Ad placement identifier assigned by Lotus (example: banner_home_001).
Body OpenRTB BidRequest object Yes Standard OpenRTB 2.5 bid request object.

2. Key BidRequest Fields

Field Path Type Required Description
idstringYesUnique request ID.
imparrayYesImpression array, at least one element.
imp[].idstringYesImpression ID.
imp[].bidfloornumberNoBid floor price, in the currency defined by bidfloorcur.
imp[].banner / imp[].video / imp[].nativeobjectYesExactly one media object should be provided.
site or appobjectYesTraffic source context, one of site/app.
deviceobjectRecommendedDevice info such as ua, ip, os, ifa.
userobjectRecommendedUser identifiers and targeting data.
tmaxintegerRecommendedTimeout in milliseconds, recommended 100-300.
atintegerNoAuction type, 1 = first price, 2 = second price.
curarrayNoAccepted currency list, e.g. ["USD"].

3. Request Example

curl -X POST "https://ad.cardbbs.net/api/adx/reqrtb?adunit=banner_home_001" \
  -H "Content-Type: application/json" \
  -d '{
    "id": "req-100001",
    "imp": [
      {
        "id": "1",
        "bidfloor": 0.2,
        "bidfloorcur": "USD",
        "banner": {
          "w": 300,
          "h": 250
        }
      }
    ],
    "site": {
      "id": "site-001",
      "domain": "publisher.example"
    },
    "device": {
      "ua": "Mozilla/5.0",
      "ip": "203.0.113.10",
      "os": "iOS"
    },
    "user": {
      "id": "user-abc"
    },
    "tmax": 120,
    "at": 1,
    "cur": ["USD"]
  }'

4. BidResponse Format

The response follows OpenRTB 2.5 BidResponse format. If there is no valid bid, the server may return HTTP 204 or an empty seatbid.

{
  "id": "req-100001",
  "seatbid": [
    {
      "seat": "dsp-demo",
      "bid": [
        {
          "id": "bid-90001",
          "impid": "1",
          "price": 0.35,
          "adm": "<html>...creative...</html>",
          "crid": "creative-001",
          "adomain": ["advertiser.example"],
          "w": 300,
          "h": 250
        }
      ]
    }
  ],
  "cur": "USD"
}

5. Status Codes and Error Handling

HTTP Status Meaning Description
200SuccessA valid BidResponse is returned.
204No BidNo eligible ad for this request.
400Bad RequestMissing parameters, invalid JSON, or unsupported field values.
401/403UnauthorizedAccount is not authorized or credentials are invalid (if auth is enabled).
500Server ErrorInternal platform error. Retry and contact support if needed.

6. Integration Recommendations