{
	"$schema":"http://json-schema.org/draft-04/schema#",
	"title":"Promotion",
	"type":"object",
	"additionalProperties":true,
	"description":"Analytics-v4 .. Promotion object",
	"properties":{
		"log_context":{
			"$ref":"/resources/schema/analytics/client/v4/LogContext.json",
			"description":"Required Log Context Reference"
		},
		"event_name":{
			"type": "string",
			"enum": ["PROMOTION"]
		},
		"schema_definition":{
			"type": "string",
			"enum": ["Promotion"]
		},
		"promotion_id":{
			"type": "string",
			"description":"A unique id for the promotion"
		},
		"vendor_promotion_id": {
			"type": "string",
			"description":"The promotion id received from vendor"
		},
		"entity_id":{
			"type": "string",
			"description": "The entity where promotion was displayed"
		},
		"category_details": {
			"type": "array",
			"items": {
				"$ref": "/resources/schema/analytics/client/v4/item/GroupDetailItem.json"
			},
			"description": "List of offer category ids and names"
		},
		"brand_details": {
			"type": "array",
			"items": {
				"$ref": "/resources/schema/analytics/client/v4/item/GroupDetailItem.json"
			},
			"description": "List of offer brand ids and names"
		},
		"action": {
			"$ref":"/resources/schema/analytics/client/v4/type/PromotionActionValues.json",
			"description": "The type of user engagement with the promotion"
		},
		"trigger": {
			"$ref":"/resources/schema/analytics/client/v4/type/PromotionTriggerValues.json",
			"description": "The moment or scenario which triggered the promotion event"
		},
		"vendor": {
			"$ref":"/resources/schema/analytics/client/v4/type/PromotionVendorValues.json",
			"description": "The vendor from which promotion details were received."
		},
		"source": {
			"$ref":"/resources/schema/analytics/client/v4/type/PromotionSourceValues.json",
			"description": "The source which generated the promotion based on the moment like search service, prediction service etc."
		},
		"source_id": {
			"type": "string",
			"description": "The id of promotion source. This is the reference_id in the search/prediction response."
		}
	},
	"required":[
		"log_context",
		"event_name",
		"schema_definition",
		"promotion_id",
		"action",
		"trigger"
	]
}