-
Notifications
You must be signed in to change notification settings - Fork 27
/
source.go
83 lines (74 loc) · 3.2 KB
/
source.go
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
package openrtb3
import "encoding/json"
// Source object carries data about the source of the transaction including the unique ID of the transaction itself, source authentication information, and the chain of custody.
//
// NOTE: Attributes ds, dsmap, cert, and digest support digitally signed bid requests as defined by the Ads.cert: Signed Bid Requests specification.
// As the Ads.cert specification is still in its BETA state, these attributes should be considered to be in a similar state.
type Source struct {
// Attribute:
// tid
// Type:
// string; recommended
// Definition:
// Transaction ID that must be common across all participants throughout the entire supply chain of this transaction.
// This also applies across all participating exchanges in a header bidding or similar publisher-centric broadcast scenario.
TID string `json:"tid,omitempty"`
// Attribute:
// ts
// Type:
// integer; recommended
// Definition:
// Timestamp when the request originated at the beginning of the supply chain in Unix format (i.e., milliseconds since the epoch).
// This value must be held as immutable throughout subsequent intermediaries.
TS int64 `json:"ts,omitempty"`
// Attribute:
// ds
// Type:
// string; recommended
// Definition:
// Digital signature used to authenticate the origin of this request computed by the publisher or its trusted agent from a digest string composed of a set of immutable attributes found in the bid request.
// Refer to Section “Inventory Authentication” for more details.
DS string `json:"ds,omitempty"`
// Attribute:
// dsmap
// Type:
// string
// Definition:
// An ordered list of identifiers that indicates the attributes used to create the digest.
// This map provides the essential instructions for recreating the digest from the bid request, which is a necessary step in validating the digital signature in the ds attribute.
// Refer to Section “Inventory Authentication” for more details.
DSMap string `json:"dsmap,omitempty"`
// Attribute:
// cert
// Type:
// string; recommended
// Definition:
// File name of the certificate (i.e., the public key) used to generate the digital signature in the ds attribute.
// Refer to Section “Inventory Authentication” for more details.
Cert string `json:"cert,omitempty"`
// Attribute:
// digest
// Type:
// string
// Definition:
// The full digest string that was signed to produce the digital signature.
// Refer to Section “Inventory Authentication” for more details.
// NOTE: This is only intended for debugging purposes as needed.
// It is not intended for normal Production traffic due to the bandwidth impact.
Digest string `json:"digest,omitempty"`
// Attribute:
// pchain
// Type:
// string
// Definition:
// Payment ID chain string containing embedded syntax described in the TAG Payment ID Protocol.
// NOTE: Authentication features in this Source object combined with the “ads.txt” specification may lead to the deprecation of this attribute.
PChain string `json:"pchain,omitempty"`
// Attribute:
// ext
// Type:
// object
// Definition:
// Optional exchange-specific extensions.
Ext json.RawMessage `json:"ext,omitempty"`
}