如何挑选典型的交易?
在编写 API 测试脚本之前,我们需要从 TradeMe 中挑选一些典型的交易。
我们选择的这些事务更好地涵盖了不同类型的请求,例如get、post、delete。
这些交易的一部分应该在业务层面相互关联。
API -检索一般类别
-
业务范围选择:获取所有子类别。
-
API 功能:检索全部或部分 Trade Me 类别树。
-
前端页面
-
关键请求字段
-
关键响应字段 - 类别树。
Name String or null 类别的名称。 Number String or null 类别的唯一标识符,例如“0004-0369-6076-”。我们计划将其更改为数字标识符(例如“6076”),因此您应该确保您可以处理这两种格式。 Path String or null 此类别的完整 URL 路径,例如“/Home-living/Beds-bedroom-furniture/Bedside-tables”。 Subcategories Collection of or null 属于该类别的子类别列表。 … … … 更多参考:检索一般类别
-
示例请求
GET https://api.tmsandbox.co.nz/v1/Categories.JSON?depth=1
-
示例响应
{
"Name": "Root",
"Number": "",
"Path": "",
"Subcategories": [
{
"Name": "Trade Me Motors",
"Number": "0001-",
"Path": "/Trade-Me-Motors",
"HasClassifieds": true,
"AreaOfBusiness": 3,
"CanHaveSecondCategory": true,
"CanBeSecondCategory": true,
"IsLeaf": false
},
{
"Name": "Trade Me Property",
"Number": "0350-",
"Path": "/Trade-Me-Property",
"HasClassifieds": true,
"AreaOfBusiness": 2,
"IsLeaf": false
},
...
],
"AreaOfBusiness": 0,
"IsLeaf": false
}
API -检索您的监视列表
-
业务范围选择
链式组合交易
检索您的监视列表(我在这里) ->从您的监视列表中删除列表 ->检索即将关闭的列表 ->将列表添加到您的监视列表
查询监视列表中的项目。
-
API 功能:检索经过身份验证的用户监视列表中的项目列表。
-
前端页面
-
关键请求字段
-
关键响应字段 -经过身份验证的用户的监视列表。
TotalCount Integer 集合中的结果总数。可以大于返回结果的数量。 Page Integer 当前结果页的索引(从 1 开始)。 PageSize Integer 当前页面中的结果数。 List Collection of or null 当前页面中的结果列表。 ListingId 长整数 商家信息的 ID。 BidCount 整数 项目的出价数量。 … … … … 更多参考:检索您的监视列表
-
示例请求
GET https://api.tmsandbox.co.nz/v1/MyTradeMe/Watchlist/All.JSON
-
示例响应
{
"TotalCount": 1,
"Page": 1,
"PageSize": 1,
"List": [
{
"ListingId": 2149294406,
"Title": "11x Assorted T-Handle Hex Allen Keys",
"Category": "5964-5999-6004-9825-",
"StartPrice": 1.0000,
"StartDate": "\/Date(1626749989730)\/",
"EndDate": "\/Date(1626922789730)\/",
"ListingLength": null,
"AsAt": "\/Date(1626855531548)\/",
"CategoryPath": "\/Building-renovation\/Tools\/Hand-tools\/Sets-kits",
"PictureHref": "https:\/\/images.tmsandbox.co.nz\/photoserver\/thumb\/8152697.jpg",
"PhotoId": 8152697,
"RegionId": 16,
"Region": "Canterbury",
"Suburb": "Christchurch City",
"Note": "",
"NoteDate": "\/Date(0)\/",
"CategoryName": "Sets & kits",
"Attributes": [
],
"Subtitle": "SKYLARC’S WINDFLOW TECHNOLOGY ONLINE AUCTION",
"MinimumNextBidAmount": 1.0000,
"IsOnWatchList": true,
"PriceDisplay": "$1.00",
"AdditionalData": {
"BulletPoints": [
],
"Tags": [
]
},
"IsDealer": false,
"IsLeading": false,
"IsOutbid": false,
"IsInCart": false,
"MemberBidShippingOption": 0
}
],
"FoundCategories": [
{
"Count": 1,
"Category": "5964-",
"Name": "Building & renovation",
"CategoryId": 5964
}
]
}
API -从您的监视列表中删除列表
-
业务范围选择
链式组合交易
检索您的监视列表 ->从您的监视列表中删除列表(我在这里) ->检索即将关闭的列表 ->将列表添加到您的监视列表
选择 API - Retrieve your watchlist as pre-request 以获取所有要删除的项目
删除监视列表中的所有项目
-
API 功能:从经过身份验证的用户的监视列表中删除列表。
-
前端页面
-
关键请求字段
-
关键响应字段 - 有关操作是否成功的详细信息。
尝试删除不存在或不在监视列表中的拍卖不会产生错误。
Success | Boolean | 指示操作是否成功。 |
Description | String or null | 错误的描述,如果操作失败。 |
更多参考:从您的监视列表中删除列表
-
示例请求
DELETE https://api.tmsandbox.co.nz/v1/MyTradeMe/WatchList/0000000000.JSON
-
示例响应
{
"Success": true,
"Description": "Success"
}
API -检索即将关闭的列表
-
业务范围选择
链式组合交易
检索您的监视列表 ->从您的监视列表中删除列表 ->检索即将关闭的列表(我在这里) ->将列表添加到您的监视列表
在即将关闭的列表的第一页获取所有项目。
-
API 功能:检索全国或单个地区即将关闭的项目。
-
前端页面
-
关键请求字段
更多参考:检索即将关闭的列表
-
关键响应字段
TotalCount Integer 集合中的结果总数。可以大于返回结果的数量。 TotalCountTruncated Boolean 如果结果总数超过允许的最大值并被截断,则为真。 Page Integer 当前结果页的索引(从 1 开始)。 PageSize Integer 当前页面中的结果数。 List Collection of or null 当前页面中的结果列表。 ListingIdv 长整数 商家信息的 ID。 … … … … 更多参考:检索即将关闭的列表
-
示例请求
GET https://api.tmsandbox.co.nz/v1/Listings/closure.JSON?rows=1000
-
示例响应
{
"TotalCount": 250,
"Page": 1,
"PageSize": 250,
"List": [
{
"ListingId": 2149292446,
"Title": "fox drawing",
"Category": "0339-5487-",
"StartPrice": 0,
"BuyNowPrice": 1.0000,
"StartDate": "/Date(1626323575513)/",
"EndDate": "/Date(1626928375513)/",
"ListingLength": null,
"AsAt": "/Date(1626926636817)/",
"CategoryPath": "/Art/Digital-art",
"Region": "Canterbury",
"Suburb": "Christchurch City",
"HasBuyNow": true,
"NoteDate": "/Date(0)/",
"ReserveState": 3,
"IsBuyNowOnly": true,
"PriceDisplay": "$1.00 per item",
"PromotionId": 1,
"AdditionalData": {
"BulletPoints": [],
"Tags": []
},
"MemberId": 4007247
},
...
]
}
API -将列表添加到您的监视列表
-
业务选择
链式组合交易
检索您的监视列表 ->从您的监视列表中删除列表 ->检索即将关闭的列表 ->将列表添加到您的监视列表(我在这里)
选择 API - 检索即将关闭的列表作为预请求,以获取即将关闭列表的第一页上的所有项目。
将上述项目中的 1 个随机添加到监视列表中。
-
API 功能:将列表添加到经过身份验证的用户的监视列表。
-
前端页面
-
关键请求字段
更多参考:将列表添加到您的监视列表
-
关键响应字段 - 有关操作是否成功的详细信息。
Success Boolean 指示操作是否成功。 Description String or null 错误的描述,如果操作失败。 -
示例请求
POST https://api.tmsandbox.co.nz/v1/MyTradeMe/WatchList/2149292722.JSON
-
示例响应
{
"Success": true,
"Description": "Success"
}
API -检索您赢得的物品
-
业务选择
链式组合交易
检索您赢得的物品(我在这里) ->从您赢得的物品列表中删除购买 ->常规搜索 ->检索单个列表的详细信息 ->使用“立即购买”购买拍卖
-
API 功能:检索经过身份验证的用户的购买清单。
多数量拍卖可以多次购买。
-
前端页面
-
关键请求字段
-
关键响应字段 - 经过身份验证的用户已购买的项目列表。
TotalCount Integer 集合中的结果总数。可以大于返回结果的数量。 Page Integer 当前结果页的索引(从 1 开始)。 PageSize Integer 当前页面中的结果数。 List Collection of or null 当前页面中的结果列表。 ListingId 长整数 商家信息的 ID。 … … … … PurchaseId Integer 标识销售的唯一 ID。 … … … … 更多参考:检索您赢得的物品
-
示例请求
GET https://api.tmsandbox.co.nz/v1/MyTradeMe/Won/All.JSON
-
示例响应
{
"TotalCount": 1,
"Page": 1,
"PageSize": 1,
"List": [
{
"ListingId": 2149289946,
"Title": "Tankard 72",
"Category": "0341-6534-",
"StartPrice": 10.0000,
"StartDate": "/Date(1625598488240)/",
"EndDate": "/Date(1625650049187)/",
"ListingLength": null,
"AsAt": "/Date(1626932384524)/",
"CategoryPath": "/Crafts/Transfers",
"PictureHref": "https://images.tmsandbox.co.nz/photoserver/thumb/4548749.jpg",
"PhotoId": 4548749,
"Seller": {
"MemberId": 4000433,
"Nickname": "junk1b",
"DateAddressVerified": "/Date(1380798000000)/",
"DateJoined": "/Date(1343044800000)/",
"Email": "junk1b@abcde.com",
"UniqueNegative": 5,
"UniquePositive": 16,
"FeedbackCount": 11,
"IsAddressVerified": true
},
"BidCount": 1,
"IsReserveMet": true,
"Note": "",
"NoteDate": "/Date(0)/",
"CategoryName": "Transfers",
"ReserveState": 3,
"Subtitle": "J1B F4d1111",
"Quantity": 1,
"StatusDate": "/Date(0)/",
"AuctionAttribute": "260`TV|3495193540674667286`0",
"BuyerFeedbackPlaced": 0,
"SellerFeedbackPlaced": 0,
"DeliveryId": 0,
"FpoDecisionViaMobile": false,
"HasPaidByCreditCard": false,
"InvoiceId": 0,
"OfferId": 0,
"PaymentInfo": "NZ Bank Deposit",
"Price": 20.0000,
"SelectedShipping": "Buyer to pick-up",
"ShippingPrice": 0,
"ShippingType": 2,
"SoldDate": "/Date(1625650049187)/",
"SoldType": "BUYNOW",
"PaymentInstructions": "",
"PurchaseId": 26180,
"ReferenceNumber": "P26180",
"SubtotalPrice": 20.0000,
"TotalShippingPrice": 0,
"TotalSalePrice": 20.0000,
"TrackedParcels": [],
"TaxSubTotal": 0.00,
"HasPaidByDeferredPayment": false
}
]
}
API -从您赢得的物品列表中删除购买
-
业务选择
链式组合交易
检索您赢得的物品 ->从您赢得的物品列表中删除购买(我在这里) ->常规搜索 ->检索单个列表的详细信息 ->使用“立即购买”购买拍卖
选择 API - ‘Retrieve your won items’ 作为预先请求以获取所有想要删除的赢得的物品
删除获胜项目列表中的所有获胜项目
-
API 功能:从赢得的项目列表中隐藏一个列表。
-
前端页面
-
关键请求字段
-
关键响应字段 - 有关操作是否成功的详细信息。
请注意,此操作仅在操作完成后在赢得的物品列表中仍然存在购买的情况下才会报告失败。在所有其他情况下,此 API 将报告成功(例如,如果购买 ID 无效或购买已被删除,它将报告成功)。
Success | Boolean | 指示操作是否成功。 |
Description | String or null | 错误的描述,如果操作失败。 |
-
示例请求
DELETE https://api.tmsandbox.co.nz/v1/MyTradeMe/Won/26180.JSON
-
示例响应
{
"Success": true,
"Description": "Success"
}
API -常规搜索
-
业务范围选择
链式组合交易
检索您赢得的物品 ->从您赢得的物品列表中删除购买 ->常规搜索(我在这里) ->检索单个列表的详细信息 ->使用“立即购买”购买拍卖
通过搜索功能搜索 500 件商品,并仅从下游交易“检索单个列表的详细信息”的响应中选择具有“HasBuyNow”功能和 BuyNowPrice <= $20 的商品以供使用。
-
API 功能:允许您按类别、关键字或这两者的组合搜索 Trade Me 上的列表。
结果集可以通过各种属性进行过滤,包括“立即购买”、“立即付款”、“商品状况”或“卖家”的可用性。
-
前端页面
-
关键请求字段
page | Integer (optional) | 要返回的结果集的页码,从 1 开始。默认为 1。 |
… | … | … |
rows | Integer (optional) | 每页结果数;也是要返回的最大结果数。对于未经身份验证的请求,最大值为 25,对于经过身份验证的请求,最大值为 500。默认为 25(未认证)或 50(已认证)。 |
… | … | … |
更多参考:常规搜索
-
关键响应字段 - 搜索结果。
TotalCount | Integer | 集合中的结果总数。可以大于返回结果的数量。 | |
TotalCountTruncated | Boolean | 如果结果总数超过允许的最大值并被截断,则为真。 | |
Page | Integer | 当前结果页的索引(从 1 开始)。 | |
PageSize | Integer | 当前页面中的结果数。 | |
List | Collection of or null | 当前页面中的结果列表。 | |
ListingId | 长整数 | 商家信息的 ID。 | |
BuyNowPrice | 数字 | 立即购买价格。 | |
HasBuyNow | 布尔值 | 指示该项目是否有立即购买。 | |
… | … | … | … |
更多参考:常规搜索
-
示例请求
GET https://api.tmsandbox.co.nz/v1/Search/General.JSON?buy=All&rows=500&page=4
-
示例响应
{
"TotalCount": 16479,
"Page": 4,
"PageSize": 500,
"List": [
...
{
"ListingId": 2149294614,
"Title": "Cobra Glassware",
"Category": "0341-0881-4739-",
"StartPrice": 11.0000,
"BuyNowPrice": 33.0000,
...
"HasBuyNow": true,
...
},
...
]
}
API -检索单个列表的详细信息
-
业务范围选择
链式组合交易
检索您赢得的物品 ->从您赢得的物品列表中删除购买 ->常规搜索 ->检索单个列表的详细信息(我在这里) ->使用“立即购买”购买拍卖
从上游交易“从您赢得的物品列表中删除购买 ”中获取具有“立即购买”功能的随机物品 以显示。
从响应中获取“ShippingId “供下游交易“使用立即购买购买拍卖” 以使用。
-
API 功能:检索单个列表的详细信息。
-
前端页面
-
关键请求字段
-
关键响应字段 - 列表的详细信息。
ListingId | Long Integer | 商家信息的 ID。 | |
… | … | … | |
ShippingOptions | Collection of or null | 运输选项列表。 | |
Method | 字符串或空 | 递送方式的名称(例如“NZ Courier”、“Rural Delivery”)。仅当 ShippingType 为自定义时适用。 | |
ShippingId | 长整数 | 运输选项的 ID(在出价或立即购买时使用)。列出项目时不需要。 | |
… | … | … | … |
更多参考:检索单个列表的详细信息
-
示例请求
GET https://api.tmsandbox.co.nz/v1/Listings/2149295093.JSON
-
示例响应
{
"ListingId": 2149295093,
...
"AllowsPickups": 3,
"ShippingOptions": [
{
"Type": 4,
"Price": 4.99,
"Method": "nationwide non-rural",
"ShippingId": 4
},
{
"Type": 4,
"Price": 9.99,
"Method": "rural",
"ShippingId": 5
},
{
"Type": 4,
"Price": 0,
"Method": "test free shipping",
"ShippingId": 6
}
],
...
}
API -使用“立即购买”购买拍卖
-
业务选择
链式组合交易
检索您赢得的物品 ->从您赢得的物品列表中删除购买 ->常规搜索 ->检索单个列表的详细信息 ->使用“立即购买”购买拍卖(我在这里)
从上游交易“常规搜索 ”的响应中获取“ListingId” 作为请求字段之一。
从上游交易“检索单个列表的详细信息 ”的响应中获取“ShippingId” 作为请求字段之一。
-
API 功能:使用“立即购买”购买商品。
-
前端页面 - 商品详情页面
-
前端页面-确认购买页面
-
前端页面 - 购买详情页面
-
前端页面 - Won 列表页面(已购买的项目显示在此页面上)
-
关键请求字段
-
关键响应字段 - Buy Now 请求的详细信息。
Success | Boolean | 指示操作是否成功。 | |
Description | String or null | 错误的描述,如果操作失败。 | |
StatusCode | Enumeration | 立即购买请求的状态。 | |
Success | 0 | 竞标成功。 | |
… | … | … | … |
PurchaseId | Long Integer | 刚刚购买的 ID。 | |
… | … | … | … |
更多参考:使用“立即购买”购买拍卖
-
示例请求
POST https://api.tmsandbox.co.nz/v1/Bidding/BuyNow.JSON
-
示例响应
{
"Success": true,
"Description": "Seller's email owen4@snipesoft.net.nz",
"StatusCode": 0,
"PurchaseId": 26231
}