Skip to content
This repository has been archived by the owner on Oct 6, 2022. It is now read-only.

Releases: mxmCherry/openrtb

OpenRTB Dynamic Native Ads API Specification Version 1.1

16 Nov 18:51
3f56f5d
Compare
Choose a tag to compare

Changes since v9.1.0:

Added .Val() helper methods to nilable enum types

26 Oct 20:03
Compare
Choose a tag to compare

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

19 Oct 19:26
Compare
Choose a tag to compare

Changes since v8.0.0:

  • Banner.{W,H} fields made pointers - #16
  • {Int8,Uint64}Ptr(n) and ENUM(n).Ptr() helpers added:
Banner {
  W: Uint64Ptr(320),
  H: Uint64Ptr(240),
}
BidResponse {
  NBR: NoBidReasonCodeTechnicalError.Ptr(),
}
Video {
  StartDelay: StartDelay(60).Ptr(),
}

Typed enums/constants for section "5. Enumerated Lists Specification"

01 Oct 09:39
Compare
Choose a tag to compare

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

10 Sep 09:09
Compare
Choose a tag to compare

Changes since v6.0.0:

  • more fields made pointers to handle omission/zeros properly - mostly enum/duration ones
  • Device.Connectiontype renamed to Device.ConnectionType

Imp.Secure and BidResponse.NBR made pointers

17 Aug 16:37
Compare
Choose a tag to compare

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 - #11
  • BidResponse.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)

09 Aug 17:57
Compare
Choose a tag to compare

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

25 Jun 09:17
Compare
Choose a tag to compare

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 to int64 (was int8)
  • removed BidRequest.buyerid property (seems to be just a mistype in OpenRTB 2.3.1, use BidRequest.buyeruid instead)

Use RawJSON for Ext fields

19 Jan 20:14
Compare
Choose a tag to compare

Changes since v2.0.1:

  • changed Ext type in all OpenRTB objects from interface{} to RawJSON

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)

Added tests, deprecated User.BuyerID

30 Jul 09:35
Compare
Choose a tag to compare

Changes since v2.0.0:

  • added JSON marshalling tests (using ginkgo, gomega)
  • deprecated User.BuyerID property in favor of User.BuyerUID [1]

[1] Seems to be a mistype in OpenRTB v2.3: it specifies buyerid in section 3.2.13 Object: User, but uses buyeruid only in examples section 6.3 Bid Requests.