Imp.id
Identifier for this impression, unique within the bid request. Sellers usually number impressions from "1" upward, and every bid echoes the value in Bid.impid. Required in every version.
Field facts
- Path
imp.id- Object
- Imp
- Type
- string
- Requirement
- Required
- Added
- OpenRTB 2.0
- Spec section
- 3.2.4
How it is used
Treat it as an opaque string. It is only unique inside one request, so it cannot serve as a placement key across requests; Imp.tagid does that job.
Example
Where the field sits in a payload, with everything else left out:
{
"id": "req-1",
"imp": [
{
"id": "1"
}
]
}Common mistakes
- Sending the id as a number, such as 1 instead of "1", is a type mismatch for a string field.
- Repeating the same id on two impressions in one request makes every bid on them ambiguous.
- Bidders that answer with their own internal placement id instead of echoing this value produce bids that match no impression. When the validator checks a request and response together it reports openrtb.bid.impid_unknown.
Version history
Added in OpenRTB 2.0, and present in the latest snapshot. The table shows how each version's spec text types the field.
| Versions | Type in the spec | Required | Deprecated |
|---|---|---|---|
| 2.0 to 2.1 | string | Yes | No |
| 2.2 | string, default - impression | Yes | No |
| 2.3 to 2.4 | string | Yes | No |
| 2.5 to 2.6-202606 | string | Yes | No |
Related fields
Other Imp fields
audiobannerbidfloorbidfloorcurclickbrowserdisplaymanagerdisplaymanagerverdtexpextiframebusterinstlmetricnativepmpqtyrefreshrwddsecuressaitagidvideo
For a walkthrough of the whole object, read Bid request anatomy.