今年 3 月底,Ticketmaster 在其开发者网站上发布了一套面向公众的应用程序接口(API)、网页控件,并将推出一套移动开发的 SDK 供开发者集成,成功加入了开放 API 的行列。
Ticketmaster 所提供的每个 API 都基于认证模式来分享 apikey,并且在默认情况下一天最多响应 5000 个 API。API 终端启用了跨域资源共享(CORS),用以简化在 Web 页面和应用程序内调用 API。
创建账户非常简单,但是在注册时的初始化账户过程中,需要用到应用的 URL。该注册系统会创建一个初始化的应用程序,并生成“Consumer Key”和“Consumer Secret”以供使用示例代码和交互 API 文档。
交互接口控制台(托管在 Apigee 上)需要一个认证方法并提供自定义令牌接口(查询 string 或 header),或者使用 OAuth2 协议。然而,文档中只提到了使用 apikey 查询 string。
对于不同的接口,在应用内可以 json 的格式进行响应,但是也包括超媒体应用语言(Hypermedia Application Language,HAL)。Ticketmaster 没有使用其他更通用的媒体类型,而是将HAL _links 和_embedded key/values 形成了文档,并且鼓励开发者依据HAL 规范进行使用。
Ticketmaster 提供的接口包括以下六种:
- 发现接口(Discovery API)包括事件、吸引力和地点搜索,同时也包括为特定事件加载细节和图片。
- 商务接口(Commerce API)需为其提供“Event ID”(可通过 Discovery API 检索),它可以返回各种票的价格以及为“areas”和“offers”提供的标识(文档上没有体现该标识的意义和用途)。
- 合作接口(Partner API)提供了构建购票系统的基础支持,包括购物车和支付系统。
- 交易接口(Deals API)和发现接口类似,但是可以为当前事件提供更细致的功能,例如促销和折扣。它可以根据“ Market ID ”过滤出来事件列表。
- 发布接口(Publish API)同样也需要使用“Market ID”,以及发现接口所提供的场馆和景点。该接口利用这些参数将事件数据提交给 Ticketmaster,从而使得发现接口可以获取相关数据。
- 国际发现接口(International Discovery API)在概念上和发现接口类似,但是使用其独有的 JSON 格式(不具有超媒体功能)。该接口还需要(通过邮件)获取一个单独的 API key。
上述接口中的大部分都提供由相关内容生成的本地化界面的功能,以及多语言支持。
开发者应该注意,合作接口、发布接口和国际发现接口可能会有附加条款。
读者可在 Ticketmaster 的科技博客、开发者网站以及开源项目中了解更多关于有关接口以及开发者社区活动的情况。
查看英文原文: Ticketmaster Launches API Suite
感谢徐川对本文的审校。
给InfoQ 中文站投稿或者参与内容翻译工作,请邮件至 editors@cn.infoq.com 。也欢迎大家通过新浪微博( @InfoQ , @丁晓昀),微信(微信号: InfoQChina )关注我们。
评论