TbkDgMaterialRecommendRequest.cs 4.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109
  1. using System;
  2. using System.Collections.Generic;
  3. using Top.Api.Util;
  4. namespace Top.Api.Request
  5. {
  6. /// <summary>
  7. /// TOP API: taobao.tbk.dg.material.recommend
  8. /// </summary>
  9. public class TbkDgMaterialRecommendRequest : BaseTopRequest<Top.Api.Response.TbkDgMaterialRecommendResponse>
  10. {
  11. /// <summary>
  12. /// 推广位id,mm_xxx_xxx_12345678三段式的最后一段数字(登录pub.alimama.com推广管理-推广位管理中查询)
  13. /// </summary>
  14. public Nullable<long> AdzoneId { get; set; }
  15. /// <summary>
  16. /// 智能匹配-设备号加密类型:MD5;使用智能推荐请先签署协议https://pub.alimama.com/fourth/protocol/common.htm?key=hangye_laxin
  17. /// </summary>
  18. public string DeviceEncrypt { get; set; }
  19. /// <summary>
  20. /// 智能匹配-设备号类型:IMEI,或者IDFA,或者UTDID(UTDID不支持MD5加密),或者OAID;使用智能推荐请先签署协议https://pub.alimama.com/fourth/protocol/common.htm?key=hangye_laxin
  21. /// </summary>
  22. public string DeviceType { get; set; }
  23. /// <summary>
  24. /// 智能匹配-设备号加密后的值(MD5加密需32位小写);使用智能推荐请先签署协议https://pub.alimama.com/fourth/protocol/common.htm?key=hangye_laxin
  25. /// </summary>
  26. public string DeviceValue { get; set; }
  27. /// <summary>
  28. /// 选品库收藏夹id,获取收藏夹id参考文档:https://mos.m.taobao.com/union/page_20230109_175050_176?spm=a219t._portal_v2_pages_promo_goods_index_htm.0.0.7c2a75a5H2ER3N
  29. /// </summary>
  30. public string FavoritesId { get; set; }
  31. /// <summary>
  32. /// 淘宝客新商品ID;用于相似商品推荐(注意:使用相似商品推荐material_id=13256必传,并请先签署协议https://pub.alimama.com/fourth/protocol/common.htm?key=hangye_laxin);另关于《淘宝客新商品ID升级》参考白皮书:https://www.yuque.com/taobaolianmengguanfangxiaoer/zmig94/tfyt0pahmlpzu2ud
  33. /// </summary>
  34. public string ItemId { get; set; }
  35. /// <summary>
  36. /// 官方提供的物料Id;可以通过taobao.tbk.optimus.tou.material.ids.get接口获取公开的物料id列表或查看物料id汇总贴:https://market.m.taobao.com/app/qn/toutiao-new/index-pc.html#/detail/10628875?_k=gpov9a
  37. /// </summary>
  38. public Nullable<long> MaterialId { get; set; }
  39. /// <summary>
  40. /// 第几页,默认:1
  41. /// </summary>
  42. public Nullable<long> PageNo { get; set; }
  43. /// <summary>
  44. /// 页大小,默认20,1~100
  45. /// </summary>
  46. public Nullable<long> PageSize { get; set; }
  47. /// <summary>
  48. /// 1-自购省,2-推广赚(代理模式专属ID,代理模式必填,非代理模式不用填写该字段)
  49. /// </summary>
  50. public string PromotionType { get; set; }
  51. /// <summary>
  52. /// 渠道关系ID,仅适用于渠道推广场景
  53. /// </summary>
  54. public Nullable<long> RelationId { get; set; }
  55. /// <summary>
  56. /// 会员运营ID
  57. /// </summary>
  58. public string SpecialId { get; set; }
  59. #region ITopRequest Members
  60. public override string GetApiName()
  61. {
  62. return "taobao.tbk.dg.material.recommend";
  63. }
  64. public override IDictionary<string, string> GetParameters()
  65. {
  66. TopDictionary parameters = new TopDictionary();
  67. parameters.Add("adzone_id", this.AdzoneId);
  68. parameters.Add("device_encrypt", this.DeviceEncrypt);
  69. parameters.Add("device_type", this.DeviceType);
  70. parameters.Add("device_value", this.DeviceValue);
  71. parameters.Add("favorites_id", this.FavoritesId);
  72. parameters.Add("item_id", this.ItemId);
  73. parameters.Add("material_id", this.MaterialId);
  74. parameters.Add("page_no", this.PageNo);
  75. parameters.Add("page_size", this.PageSize);
  76. parameters.Add("promotion_type", this.PromotionType);
  77. parameters.Add("relation_id", this.RelationId);
  78. parameters.Add("special_id", this.SpecialId);
  79. if (this.otherParams != null)
  80. {
  81. parameters.AddAll(this.otherParams);
  82. }
  83. return parameters;
  84. }
  85. public override void Validate()
  86. {
  87. RequestValidator.ValidateRequired("adzone_id", this.AdzoneId);
  88. RequestValidator.ValidateRequired("material_id", this.MaterialId);
  89. }
  90. #endregion
  91. }
  92. }