Thrift module: tracker

ModuleServicesData typesConstants
tracker BulkSubmission
BulkSubmissionType
IndividualSubmission
IndividualSubmissionMetadata
SubmissionMetadata
TrackerSubmission

Enumerations

Enumeration: BulkSubmissionType


APPLE_NEWS_RTA1

Data structures

Struct: SubmissionMetadata

KeyFieldTypeDescriptionRequirednessDefault value
1uniqueSubmissionIdstringUnique id associated with this submission. Ophan never makes better than at-least-once delivery promises, so you must ensure that processing two events with the same uniqueRawTrackerSubmissionId has no effect Note that for web submissions, this id is likely passed though as the unqiue event id for the events, but as native mobile submissions may represent multiple events, each event contained within this submission must have a diffrentiated id. required
2receivedDateTimei64The date time (in millis since epoch UTC) at which this submission was received by the tracker. required

Struct: IndividualSubmissionMetadata

KeyFieldTypeDescriptionRequirednessDefault value
1browserIdevent.AssignedIdThe unique id associated with this browser. Currently this is maintained by setting a cookie for web events, or otherwise determined for native apps. optional
2xForwardedForHeaderstringThe full value of the X-Forwarded-For header supplied. We need this for both Web & Native app submissions, because the Slab will use it to establish the IP address of the user, and then use IP address to geo-locate the user optional

Struct: IndividualSubmission

KeyFieldTypeDescriptionRequirednessDefault value
1metadataIndividualSubmissionMetadatarequired
2nativeAppSubmissionnativeapp.NativeAppSubmissionDetail of a Native App submission, as opposed to a Web submission optional
3webSubmissionwebsubmission.WebSubmissionDetail of a Web submission, as opposed to a Native App submission optional

This struct is for submissions that have come from an individual device,
e.g. a single WebSubmission, or a number of submissions from a single Native
App user


Struct: BulkSubmission

KeyFieldTypeDescriptionRequirednessDefault value
1typeBulkSubmissionTyperequired
2submissionDatabinaryrequired

This struct is for submissions that have come from multiple devices,
e.g. a set of submissions sent by Apple News for multiple article view events.


Struct: TrackerSubmission

KeyFieldTypeDescriptionRequirednessDefault value
15metadataSubmissionMetadatarequired
16individualSubmissionIndividualSubmissionoptional
17bulkSubmissionBulkSubmissionoptional

This struct is intended for private consumption inside ophan only.

It represents the raw data collected by the tracker, passed onto The Slab for
enhancement into ophan events.