Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Binary file added ADS - Acceso directo.lnk
Binary file not shown.
152 changes: 152 additions & 0 deletions dev-docs/bidders/alvads.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,152 @@
---
layout: bidder
title: Alva
description: Prebid Alva Bidder Adapter
pbjs: true
pbs_app_supported: false
biddercode: alvads
media_types: banner, video
gdpr_supported: true
usp_supported: true
coppa_supported: false
---

# Overview

**Module Name:** alvadsBidAdapter
**Module Type:** Bidder
**Maintainer:** [[email protected]](mailto:[email protected])

---

# Description

The **Alva Bid Adapter** allows publishers to connect their banner and video inventory with the Alva demand platform.

- **Bidder Code:** `alvads`
- **Supported Media Types:** `banner`, `video`
- **Protocols:** OpenRTB 2.5 via `POST` (banner and video)
- **Dynamic Endpoints:** The adapter uses a default endpoint, but can be overridden via `params.endpoint`.
- **Price Floors:** Supported via `bid.getFloor()`. If configured, the adapter will send `bidfloor` and `bidfloorcur` per impression.

---
# Parameters

| Parameter | Required | Description |
|------------ |---------------- |------------ |
| publisherId | Yes | Publisher ID assigned by Alva |
| tagid | Banner only | Required for banner impressions |
| bidfloor | No | Optional; adapter supports floors module via `bid.getFloor()` |
| userId | No | Optional; used for user identification |
| endpoint | No | Optional; overrides default endpoint |

---

# Test Parameters

### Banner Example

Check failure on line 47 in dev-docs/bidders/alvads.md

View workflow job for this annotation

GitHub Actions / run markdownlint

Heading levels should only increment by one level at a time

dev-docs/bidders/alvads.md:47 MD001/heading-increment Heading levels should only increment by one level at a time [Expected: h2; Actual: h3] https://github.com/DavidAnson/markdownlint/blob/v0.34.0/doc/md001.md

```javascript
var adUnits = [{
code: 'div-banner',
mediaTypes: {
banner: {
sizes: [[300, 250], [320, 100]]
}
},
bids: [{
bidder: 'alvads',
params: {
publisherId: 'pub-123', // required
tagid: 'tag-456', // required for banner
bidfloor: 0.50, // optional
userId: '+59165352182', // optional
endpoint: 'https://custom-endpoint.com/openrtb' // optional, overrides default
}
}]
}];
```

### Video Example

```javascript
var adUnits = [{
code: 'video-ad',
mediaTypes: {
video: {
context: 'instream',
playerSize: [[640, 360]]
}
},
bids: [{
bidder: 'alvads',
params: {
publisherId: 'pub-123', // required
bidfloor: 0.5, // optional
userId: '+59165352182', // optional
endpoint: 'https://custom-endpoint.com/video' // optional, overrides default
}
}]
}];
```

---

# Request Information

### Banner / Video

Check failure on line 97 in dev-docs/bidders/alvads.md

View workflow job for this annotation

GitHub Actions / run markdownlint

Heading levels should only increment by one level at a time

dev-docs/bidders/alvads.md:97 MD001/heading-increment Heading levels should only increment by one level at a time [Expected: h2; Actual: h3] https://github.com/DavidAnson/markdownlint/blob/v0.34.0/doc/md001.md
- **Default Endpoint:**

Check failure on line 98 in dev-docs/bidders/alvads.md

View workflow job for this annotation

GitHub Actions / run markdownlint

Lists should be surrounded by blank lines

dev-docs/bidders/alvads.md:98 MD032/blanks-around-lists Lists should be surrounded by blank lines [Context: "- **Default Endpoint:**"] https://github.com/DavidAnson/markdownlint/blob/v0.34.0/doc/md032.md
```

Check failure on line 99 in dev-docs/bidders/alvads.md

View workflow job for this annotation

GitHub Actions / run markdownlint

Fenced code blocks should have a language specified

dev-docs/bidders/alvads.md:99 MD040/fenced-code-language Fenced code blocks should have a language specified [Context: "```"] https://github.com/DavidAnson/markdownlint/blob/v0.34.0/doc/md040.md

Check failure on line 99 in dev-docs/bidders/alvads.md

View workflow job for this annotation

GitHub Actions / run markdownlint

Fenced code blocks should be surrounded by blank lines

dev-docs/bidders/alvads.md:99 MD031/blanks-around-fences Fenced code blocks should be surrounded by blank lines [Context: "```"] https://github.com/DavidAnson/markdownlint/blob/v0.34.0/doc/md031.md
https://helios-ads-qa-core.ssidevops.com/decision/openrtb
```

Check failure on line 101 in dev-docs/bidders/alvads.md

View workflow job for this annotation

GitHub Actions / run markdownlint

Fenced code blocks should be surrounded by blank lines

dev-docs/bidders/alvads.md:101 MD031/blanks-around-fences Fenced code blocks should be surrounded by blank lines [Context: "```"] https://github.com/DavidAnson/markdownlint/blob/v0.34.0/doc/md031.md
- **Method:** `POST`
- **Payload:** OpenRTB 2.5 request containing `site`, `device`, `user`, `regs`, and `imp`.
- **Dynamic Endpoint:** Can be overridden via `bid.params.endpoint`.

---

# Response Information

### Banner

Check failure on line 110 in dev-docs/bidders/alvads.md

View workflow job for this annotation

GitHub Actions / run markdownlint

Heading levels should only increment by one level at a time

dev-docs/bidders/alvads.md:110 MD001/heading-increment Heading levels should only increment by one level at a time [Expected: h2; Actual: h3] https://github.com/DavidAnson/markdownlint/blob/v0.34.0/doc/md001.md
The response is standard OpenRTB with `seatbid`.

```json
{
"id": "response-id",
"seatbid": [{
"bid": [{
"impid": "imp-123",
"price": 0.50,
"adm": "<div>Creative</div>",
"crid": "creative-1",
"w": 320,
"h": 100,
"ext": {
"vast_url": "http://example.com/vast.xml"
},
"adomain": ["example.com"]
}]
}],
"cur": "USD"
}
```

### Interpretation
- If `adm` contains `<VAST>`, the adapter sets `mediaType: 'video'` and includes `vastXml` & `vastUrl`.

Check failure on line 135 in dev-docs/bidders/alvads.md

View workflow job for this annotation

GitHub Actions / run markdownlint

Lists should be surrounded by blank lines

dev-docs/bidders/alvads.md:135 MD032/blanks-around-lists Lists should be surrounded by blank lines [Context: "- If `adm` contains `<VAST>`, ..."] https://github.com/DavidAnson/markdownlint/blob/v0.34.0/doc/md032.md
- Otherwise, `mediaType: 'banner'` and the ad contains the HTML markup.

---

# Additional Details

- **Defaults:**
- `netRevenue = true`

Check failure on line 143 in dev-docs/bidders/alvads.md

View workflow job for this annotation

GitHub Actions / run markdownlint

Unordered list indentation

dev-docs/bidders/alvads.md:143:1 MD007/ul-indent Unordered list indentation [Expected: 2; Actual: 4] https://github.com/DavidAnson/markdownlint/blob/v0.34.0/doc/md007.md
- `ttl = 300`

Check failure on line 144 in dev-docs/bidders/alvads.md

View workflow job for this annotation

GitHub Actions / run markdownlint

Unordered list indentation

dev-docs/bidders/alvads.md:144:1 MD007/ul-indent Unordered list indentation [Expected: 2; Actual: 4] https://github.com/DavidAnson/markdownlint/blob/v0.34.0/doc/md007.md
- Banner fallback size: `320x100`
- Video fallback size: `1280x720`

- **Callbacks:**
- `onTimeout` → logs timeout events
- `onBidWon` → logs winning bids

---