betfair
Version:
Betfair JSON API
501 lines (490 loc) • 12.1 kB
Plain Text
===== Logging in to Betfair (interactive) =====
Login OK, 0.404 secs { success: true,
sessionKey: '+KQK2HuoT2X1St0c0y3rtY8gPs4cMPWCBLGIBpViOFY=',
duration: 404,
responseBody:
{ token: '+KQK2HuoT2X1St0c0y3rtY8gPs4cMPWCBLGIBpViOFY=',
product: 'BetfairAPI',
status: 'SUCCESS',
error: '' } }
===== calling listMarketCatalogue... =====
listMarketCatalogue err=null duration=0.312
There are 52 markets
===== select the market... =====
Selected Market marketId="1.125201830", name="Hlavackova/Peng v Pliskova/Pliskova"
Enable emulator for marketId="1.125201830"
===== Invoke listMarketBook... =====
listMarketBook err=null duration=0.079
Request:{
"jsonrpc": "2.0",
"id": 2,
"method": "SportsAPING/v1.0/listMarketBook",
"params": {
"marketIds": [
"1.125201830"
],
"matchProjection": "NO_ROLLUP",
"priceProjection": {
"priceData": [
"EX_BEST_OFFERS",
"EX_TRADED"
]
},
"orderProjection": "ALL"
}
}
Response:{
"jsonrpc": "2.0",
"result": [
{
"marketId": "1.125201830",
"isMarketDataDelayed": false,
"status": "OPEN",
"betDelay": 0,
"bspReconciled": false,
"complete": true,
"inplay": false,
"numberOfWinners": 1,
"numberOfRunners": 2,
"numberOfActiveRunners": 2,
"lastMatchTime": "2016-06-10T11:16:53.372Z",
"totalMatched": 5.39,
"totalAvailable": 944.15,
"crossMatching": true,
"runnersVoidable": false,
"version": 1337153922,
"runners": [
{
"selectionId": 8864979,
"handicap": 0,
"status": "ACTIVE",
"lastPriceTraded": 1.79,
"totalMatched": 3.01,
"ex": {
"availableToBack": [
{
"price": 1.64,
"size": 11.66
},
{
"price": 1.62,
"size": 9.19
},
{
"price": 1.61,
"size": 100
}
],
"availableToLay": [],
"tradedVolume": [
{
"price": 1.79,
"size": 3.01
}
]
},
"orders": [
{
"betId": "69648746700",
"orderType": "LIMIT",
"status": "EXECUTABLE",
"persistenceType": "PERSIST",
"side": "LAY",
"price": 1.02,
"size": 5,
"bspLiability": 0,
"placedDate": "2016-06-10T10:57:24.000Z",
"avgPriceMatched": 0,
"sizeMatched": 0,
"sizeRemaining": 0.5,
"sizeLapsed": 0,
"sizeCancelled": 4.5,
"sizeVoided": 0
}
],
"matches": []
},
{
"selectionId": 6207564,
"handicap": 0,
"status": "ACTIVE",
"lastPriceTraded": 2.28,
"totalMatched": 2.37,
"ex": {
"availableToBack": [
{
"price": 2.26,
"size": 15.64
},
{
"price": 2.2,
"size": 100
},
{
"price": 2.18,
"size": 36.06
}
],
"availableToLay": [],
"tradedVolume": [
{
"price": 2.28,
"size": 2.37
}
]
},
"orders": []
}
]
}
],
"id": 2
}
===== Invoke placeOrders... =====
placeOrders err=null duration=0
Request:{
"jsonrpc": "2.0",
"id": 3,
"method": "SportsAPING/v1.0/placeOrders",
"params": {
"marketId": "1.125201830",
"instructions": [
{
"orderType": "LIMIT",
"selectionId": 8864979,
"side": "LAY",
"limitOrder": {
"price": 1.01,
"size": 5,
"persistenceType": "LAPSE"
}
},
{
"orderType": "LIMIT",
"selectionId": 8864979,
"side": "BACK",
"limitOrder": {
"price": 3,
"size": 5,
"persistenceType": "LAPSE"
}
}
],
"customerRef": "2016-06-10T11:22:03.930Z"
}
}
Response:{
"error": null,
"result": {
"customerRef": "2016-06-10T11:22:03.930Z",
"status": "SUCCESS",
"marketId": "1.125201830",
"id": 2,
"instructionReports": [
{
"status": "SUCCESS",
"instruction": {
"selectionId": 8864979,
"limitOrder": {
"price": 1.01,
"size": 5,
"persistenceType": "LAPSE"
},
"orderType": "LIMIT",
"side": "LAY"
},
"betId": 10000000000,
"placedDate": "2016-06-10T11:22:04.005Z",
"averagePriceMatched": 0,
"sizeMatched": 0,
"isEmulatorBet": true
},
{
"status": "SUCCESS",
"instruction": {
"selectionId": 8864979,
"limitOrder": {
"price": 3,
"size": 5,
"persistenceType": "LAPSE"
},
"orderType": "LIMIT",
"side": "BACK"
},
"betId": 10000000001,
"placedDate": "2016-06-10T11:22:04.005Z",
"averagePriceMatched": 0,
"sizeMatched": 0,
"isEmulatorBet": true
}
]
}
}
===== Invoke listMarketBook... =====
_matchBets betId= 10000000000 LAY:8864979 5.00@1.01
_matchBets betId= 10000000001 BACK:8864979 5.00@3
listMarketBook err=null duration=0.074
Request:{
"jsonrpc": "2.0",
"id": 4,
"method": "SportsAPING/v1.0/listMarketBook",
"params": {
"marketIds": [
"1.125201830"
],
"matchProjection": "NO_ROLLUP",
"priceProjection": {
"priceData": [
"EX_BEST_OFFERS",
"EX_TRADED"
]
},
"orderProjection": "ALL"
}
}
Response:{
"jsonrpc": "2.0",
"result": [
{
"marketId": "1.125201830",
"isMarketDataDelayed": false,
"status": "OPEN",
"betDelay": 0,
"bspReconciled": false,
"complete": true,
"inplay": false,
"numberOfWinners": 1,
"numberOfRunners": 2,
"numberOfActiveRunners": 2,
"lastMatchTime": "2016-06-10T11:16:53.372Z",
"totalMatched": 5.39,
"totalAvailable": 944.15,
"crossMatching": true,
"runnersVoidable": false,
"version": 1337153922,
"runners": [
{
"selectionId": 8864979,
"handicap": 0,
"status": "ACTIVE",
"lastPriceTraded": 1.79,
"totalMatched": 3.01,
"ex": {
"availableToBack": [
{
"price": 1.64,
"size": 11.66
},
{
"price": 1.62,
"size": 9.19
},
{
"price": 1.61,
"size": 100
}
],
"availableToLay": [],
"tradedVolume": [
{
"price": 1.79,
"size": 3.01
}
]
},
"orders": [
{
"betId": "69648746700",
"orderType": "LIMIT",
"status": "EXECUTABLE",
"persistenceType": "PERSIST",
"side": "LAY",
"price": 1.02,
"size": 5,
"bspLiability": 0,
"placedDate": "2016-06-10T10:57:24.000Z",
"avgPriceMatched": 0,
"sizeMatched": 0,
"sizeRemaining": 0.5,
"sizeLapsed": 0,
"sizeCancelled": 4.5,
"sizeVoided": 0
},
{
"betId": 10000000000,
"orderType": "LIMIT",
"status": "EXECUTABLE",
"persistenceType": "LAPSE",
"side": "LAY",
"price": 1.01,
"size": 5,
"bspLiability": 0,
"placedDate": "2016-06-10T11:22:04.005Z",
"avgPriceMatched": 0,
"sizeMatched": 0,
"sizeRemaining": 5,
"sizeLapsed": 0,
"sizeCancelled": 0,
"sizeVoided": 0,
"isEmulatorBet": true
},
{
"betId": 10000000001,
"orderType": "LIMIT",
"status": "EXECUTABLE",
"persistenceType": "LAPSE",
"side": "BACK",
"price": 3,
"size": 5,
"bspLiability": 0,
"placedDate": "2016-06-10T11:22:04.005Z",
"avgPriceMatched": 0,
"sizeMatched": 0,
"sizeRemaining": 5,
"sizeLapsed": 0,
"sizeCancelled": 0,
"sizeVoided": 0,
"isEmulatorBet": true
}
],
"matches": []
},
{
"selectionId": 6207564,
"handicap": 0,
"status": "ACTIVE",
"lastPriceTraded": 2.28,
"totalMatched": 2.37,
"ex": {
"availableToBack": [
{
"price": 2.26,
"size": 15.64
},
{
"price": 2.2,
"size": 100
},
{
"price": 2.18,
"size": 36.06
}
],
"availableToLay": [],
"tradedVolume": [
{
"price": 2.28,
"size": 2.37
}
]
},
"orders": []
}
]
}
],
"id": 4
}
===== Invoke cancelOrders... (PARTIAL CANCEL) =====
cancelOrders err=null duration=0
Request:{
"jsonrpc": "2.0",
"id": 5,
"method": "SportsAPING/v1.0/cancelOrders",
"params": {
"marketId": "1.125201830",
"instructions": [
{
"betId": 10000000000,
"sizeReduction": 4.5
},
{
"betId": 10000000001,
"sizeReduction": 4.5
}
],
"customerRef": "2016-06-10T11:22:04.084Z"
}
}
Response:{
"error": null,
"result": {
"customerRef": "2016-06-10T11:22:04.084Z",
"status": "SUCCESS",
"marketId": "1.125201830",
"instructionReports": [
{
"status": "SUCCESS",
"instruction": {
"betId": 10000000000,
"sizeReduction": 4.5
},
"sizeCancelled": 4.5,
"cancelledDate": "2016-06-10T11:22:04.157Z"
},
{
"status": "SUCCESS",
"instruction": {
"betId": 10000000001,
"sizeReduction": 4.5
},
"sizeCancelled": 4.5,
"cancelledDate": "2016-06-10T11:22:04.158Z"
}
]
}
}
===== Invoke cancelOrders... (FULL CANCEL) =====
cancelOrders err=null duration=0
Request:{
"jsonrpc": "2.0",
"id": 6,
"method": "SportsAPING/v1.0/cancelOrders",
"params": {
"marketId": "1.125201830",
"instructions": [
{
"betId": 10000000000
},
{
"betId": 10000000001
}
],
"customerRef": "2016-06-10T11:22:04.159Z"
}
}
Response:{
"error": null,
"result": {
"customerRef": "2016-06-10T11:22:04.159Z",
"status": "SUCCESS",
"marketId": "1.125201830",
"instructionReports": [
{
"status": "SUCCESS",
"instruction": {
"betId": 10000000000
},
"sizeCancelled": 0.5,
"cancelledDate": "2016-06-10T11:22:04.233Z"
},
{
"status": "SUCCESS",
"instruction": {
"betId": 10000000001
},
"sizeCancelled": 0.5,
"cancelledDate": "2016-06-10T11:22:04.233Z"
}
]
}
}
===== Logging out... =====
Logout OK, 0.072 secs { success: true,
duration: 72,
responseBody:
{ token: '+KQK2HuoT2X1St0c0y3rtY8gPs4cMPWCBLGIBpViOFY=',
product: '',
status: 'SUCCESS',
error: '' } }
Done, err = null