total:

  • use appkey & secrect
  • variance naming rule
  • 提供沙箱环境
  • 使用api gateway
  • 使用rest(但返回结果包裹了 isp.thread-limit:102 -- 内部标准)
  • last but not least : 做基础的api,通过api 构造各自营销策划活动,less is more. DRY.

detail design

taobao.promotion.coupons.get (查询卖家优惠券)

查询卖家已经创建的优惠券,接口返回信息:优惠券ID,面值,创建时间,有效期,使用条件,使用渠道,创建渠道,优惠券总数量

model design:

condition: 订单满多少分才能用这个优惠券,501就是满501分能使用。注意:返回的是“分”,不是“元”

create_channel: 优惠券的创建渠道,自己创建/他人创建

json return :

{
"promotion_coupons_get_response":{
"total_results":200,
"coupons":{
"coupon":[
{
"coupon_id":123456,
"denominations":500,
"creat_time":"2000-01-01 00:00:00",
"end_time":"2000-01-01 00:00:00",
"condition":501,
"create_channel":"自己创建"
}
]
}
}
}

taobao.promotion.limitdiscount.get (限时打折查询)

  limit_discount_id
limit_discount_name
start_time
end_time

taobao.promotion.limitdiscount.detail.get (限时打折详情查询)

限时打折详情查询。查询出指定限时打折的对应商品记录信息。

{
"promotion_limitdiscount_detail_get_response":{
"item_discount_detail_list":{
"limit_discount_detail":[
{
"limit_discount_name":"限时打折1",
"start_time":"2000-01-01 00:00:00",
"end_time":"2000-01-01 00:00:00",
"item_id":4674951,
"item_discount":"6.5",
"limit_num":3
}
]
}
}
}

防御设计:

model design:

limit_num 每人限购数量,1、2、5、10000(不限)

即便是不限,实际也是一个大数目

tmall.promotion.tip.campaign.modify (天猫营销修改活动) & tmall.promotion.tip.campaign.create (天猫营销创建活动接口)

活动数据可以修改:

model design

  campaign_id
start_time
campaign_name //活动名称
desc
free_post //是否包邮
end_time
exclude_area //String [] 不包邮地区
discount_type //活动优惠方式:PERCENT_OFF-打折,DIRECT_DISCOUNT-减钱,FINAL_PRICE-最终价

留意活动的优惠方式

留意请求异常

返回实例:

{
    "error_response":{
        "code":50,
        "msg":"Remote service error",
        "sub_code":"isv.invalid-parameter",
        "sub_msg":"非法参数"
    }
}

错误码有对应的错误描述&解决方案

query parameter

标准的分页 and with model 的具体字段

page_number

看淘宝营销api 文档有感的更多相关文章

  1. 淘宝对接API

    最近在忙与淘宝做对接的工作,总体感觉淘宝的api文档做的还不错,不仅有沙箱测试环境,而且对于每一个api都可以通过api测试工具生成想要的代码,你完全可以先在测试工具中测试之后再进行代码的编写,这样就 ...

  2. Api 文档管理系统 RAP2 环境搭建

    Api 文档管理系统 RAP2 环境搭建  发表于 2018-03-27 |  分类于 Api |  评论数: 4|  阅读次数: 4704  本文字数: 4.8k |  阅读时长 ≍ 9 分钟 RA ...

  3. PHP对接淘宝客api完成APP引流优惠券

    淘宝客现在对多数人来说已经耳熟能详了,属于CPS(Cost Per Sale),一种网络广告收费标准,以实际销售产品数量来换算广告刊登金额.其他收费标准还有常见的CPC(Cost Per Click ...

  4. 更新日志 - BugHD 全面开放 API 文档

    Hey, 上周 BugHD 全面更新 API 文档,上线一些新的功能,让你可以轻松掌控 Crash ,更方便分享.定位和解决.同时,新版 fir.im 也有所优化,希望你们会喜欢. 具体如下: 开放 ...

  5. 互联网常见Open API文档资源

    原文地址:http://blog.sina.com.cn/s/blog_4d8713560100y272.html 所谓的开放API(OpenAPI)是服务型网站常见的一种应用,网站的服务商将自己的网 ...

  6. 开源的api文档管理系统

    api文档 php 在项目中,需要协同开发,所以会写许多API文档给其他同事,以前都是写一个简单的TXT文本或Word文档,口口相传,这种方式比较老土了,所以,需要有个api管理系统专门来管理这些ap ...

  7. 在ASP.NET Core Web API上使用Swagger提供API文档

    我在开发自己的博客系统(http://daxnet.me)时,给自己的RESTful服务增加了基于Swagger的API文档功能.当设置IISExpress的默认启动路由到Swagger的API文档页 ...

  8. 如何使 WebAPI 自动生成漂亮又实用在线API文档

    1.前言 1.1 SwaggerUI SwaggerUI 是一个简单的Restful API 测试和文档工具.简单.漂亮.易用(官方demo).通过读取JSON 配置显示API. 项目本身仅仅也只依赖 ...

  9. Bullet的学习资源(用Doxygen生成API文档)

    Bullet 全称 Bullet Physics Library,是著名的开源物理引擎(可用于碰撞检测.刚体模拟.可变形体模拟),这里将bullet的学习资源整理一下,希望能帮助入门者少走弯路. 看下 ...

随机推荐

  1. innoDB锁小结

    innodb的锁分两类:lock和latch. 其中latch主要是保证并发线程操作临界资源的正确性,要求时间非常短,所以没有死锁检测机制.latch包括mutex(互斥量)和rwlock(读写锁). ...

  2. easyUI使用datagrid-detailview.js实现二级列表嵌套

    本文为博主原创,转载请注明: 在easyUI中使用datagrid-detailview.js可快速实现二级折叠列表,示例如下: 注意事项: 原本在谷歌浏览器进行示例测试的,url请求对应的json文 ...

  3. 由 UWP 版网易云音乐闪退引发的博文

    今天,不知怎么的.网易云音乐出现了一打开就闪退的情况.百度了好些时候未果,就直接 Windows + i 打开 Windows 设置 > 应用 在应用和功能列表中找到网易云音乐,在展开的 高级选 ...

  4. js运行机制详解:event loop

    总结 阮一峰老师的博客 一.为什么JavaScript是单线程 JavaScript语言的一大特点就是单线程 那么,为什么JavaScript不能有多个线程呢?这样能提高效率啊. JavaScript ...

  5. lib下的Jar包在项目打包的时候提示不能找不到

    maven 使用本地包 lib jar包 依赖一个lib目录 解决方法: <plugin> <groupId>org.apache.maven.plugins</grou ...

  6. Linux ssh下实现免密码登录

    1.Linux 生成密钥 ssh-keygen -t rsa 进入“.ssh”会生成以下几个文件 id_rsa : 生成的私钥文件 id_rsa.pub : 生成的公钥文件 know_hosts : ...

  7. 雷林鹏分享:jQuery EasyUI 数据网格 - 创建页脚摘要

    jQuery EasyUI 数据网格 - 创建页脚摘要 在本教程中,我们将向您展示如何在数据网格(datagrid)页脚显示摘要信息行. 为了显示页脚行,您应该设置 showFooter 属性为 tr ...

  8. MySQL三层循环

    begindeclare i int;  #定义i变量declare j int;  #定义j变量declare k int;  #定义k变量set i=1;set j=1;set k=1;while ...

  9. laravel 实现增 与查

    //调用模型层 <?phpnamespace App;use Illuminate\Support\Facades\DB;use Illuminate\Database\Eloquent\Mod ...

  10. webstorm keys

    {"licenseId":"ThisCrackLicenseId","licenseeName":"xuza",&quo ...