Skip to content

Conversation

@hillslatt
Copy link
Collaborator

No description provided.

Simon Trasler and others added 30 commits July 10, 2023 17:37
The field is listed ambiguously in https://github.com/InteractiveAdvertisingBureau/openrtb/blob/develop/extensions/community_extensions/Protected%20Audience%20Support.md , but the examples in the lower part of the doc show igi being an array of objects, instead of a single object.
Updated bid_response.ext.igi to be repeated.
Similar to #131 , these two are marked as repeated in the specificaiton.

This gets a bit odd as they're also exclusive, which was enforced by the oneof; but oneofs can't be repeated. The exclusive constraint will need to be programatically provided, instead of provided by the protocol.
Similar to #131 and #132 but backwards from previous justifications.

In practice this is a json tree that's not wrapped in a string. The examples in https://github.com/InteractiveAdvertisingBureau/openrtb/blob/develop/extensions/community_extensions/Protected%20Audience%20Support.md show this as a string containing json (which is also valid but more recursive than normal). In practice this is more often passed as a json tree inlined in the document itself.
simontrasler and others added 16 commits April 25, 2025 12:05
[Protobuf] bid_response.ext.(igb|igs): Removed oneof and added repeated
[Protobuf] Fledge igi.pbs as value instead of string
This includes the IAB block (0-499) the prototype block (500-599) and the Google allocated block.
Corrected the upper bound of the extension range being 999 instead of max.

Added Amazon as the 2000 block.
Added a comment block about claiming an extension range.
Whitespace and line length fixes for openrtb.proto.
The great flattening! This outlines many of the nested proto messages into root objects, dramatically reducing the full names of the generated types in some languages.

Objects were flattened until they were directly under:
* BidRequest
* BidResponse
* Transparency
* NativeRequest
* NativeResponse

A few objects were not flattened:
* Ext messages - They would need to be renamed to include the outer object, and they're supposed to be "inside" the parent object.
* BidRequest.EID.UID - The object is small, and moving an object called UID feels real strange to me when that term is massively overloaded. I can outline it if poked.

SupplyChainNode was outlined because it contained the entire wrapper class name in its own name, if it was called Node it would not have been outlined.
[Protobuf] The great flattening!
Fixing a typo: Cotent to Content
@hillslatt hillslatt merged commit 05c2368 into main Nov 3, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants