This repository has been archived by the owner on Oct 6, 2022. It is now read-only.
Releases: mxmCherry/openrtb
Releases · mxmCherry/openrtb
OpenRTB Dynamic Native Ads API Specification Version 1.1
Changes since v9.1.0:
- added
native/{request,response}
subpackages, implementing OpenRTB Dynamic Native Ads API Specification Version 1.1 (#19) - refactored/reorganized tests (internal cosmetics)
Added .Val() helper methods to nilable enum types
Changes since v9.0.0:
- added
.Val()
helper methods to nilable enum types for safe pointer dereferencing - return default value for nil:
v := Video{
StartDelay: nil,
}
println(v.StartDelay.Val()) // 0 (StartDelayPreRoll)
Banner.{W,H} made pointers, pointer helpers added
Typed enums/constants for section "5. Enumerated Lists Specification"
Changes since v7.0.0:
- added typed enums/constants for section "5. Enumerated Lists Specification" and switched corresponding object field types
- added forgotten
Video.Delivery
attribute
Enum/duration fields made pointers
Changes since v6.0.0:
- more fields made pointers to handle omission/zeros properly - mostly enum/duration ones
Device.Connectiontype
renamed toDevice.ConnectionType
Imp.Secure and BidResponse.NBR made pointers
Changes since v5.0.0:
Imp.Secure
attribute made pointer (*int8
) to conform OpenRTB 2.5, "3.2.4 Object: Imp" section, "secure" field description - #11BidResponse.NBR
enum attribute made pointer (*int8
) to conform OpenRTB 2.5, "7.1 No-Bid Signaling" section (0
has special meaning, described in "5.24 No-Bid Reason Codes" section) - #12
Video.Skip made pointer to represent tri-state value (omitted, 0 and 1)
Changes since v4.0.0:
Video.Skip
attribute made pointer (*int8
) to conform OpenRTB 2.5, "7.4 Skippability" section -
see #9
OpenRTB 2.5
Changes since v3.0.0:
- added new object types for OpenRTB 2.5
- added new attributes to existing object types for OpenRTB 2.5
- changed time/duration properties type to
int64
- changed
at
(auction type) attribute type toint64
(wasint8
) - removed
BidRequest.buyerid
property (seems to be just a mistype in OpenRTB 2.3.1, useBidRequest.buyeruid
instead)
Use RawJSON for Ext fields
Changes since v2.0.1:
- changed
Ext
type in all OpenRTB objects frominterface{}
toRawJSON
Proposed in: #8
Pros:
- easier to consume Ext in non-top objects (no need to convert from
map[string]interface{}
or similar types - see encoding/json.Unmarshal) - faster decoding (no need to detect/create complex types)
Cons:
- less convenient encoding (need to encode Ext values first and then set JSON where needed)