A refresh is the process by which SharpSports updates the data for a bettor and/or bettorAccount. A refresh is an asynchronous process. When a refresh is initiated, you'll receive a corresponding refreshResponse.created webhook event with the appropriate refreshResponse object attached.
{
"id": "RRES_857383a6106c45d59fee894f3bc9b2ae",
"bettorAccount": {
"id": "BACT_e975966941094635a9e7c7c0e2618993",
"bettor": "BTTR_37ee206548754b73856388f9f5f45c36",
"book": {
"id": "BOOK_pPg9ABaPSj2mL6qoMTKR1A",
"name": "BetMGM",
"abbr": "mg"
}
},
"timeCreated": "2023-12-06T18:23:52.380920Z",
"status": 200,
"detail": null,
"requestId": "c7ba611939f84ae5b0fcc42526825129",
"type": "verify",
"betSlips": [
{
"id": "SLIP_4ffcdb155f7e4c77bf64db0fce7e6564",
"bettor": "BTTR_37ee206548754b73856388f9f5f45c36",
"book": {
"id": "BOOK_pPg9ABaPSj2mL6qoMTKR1A",
"name": "BetMGM",
"abbr": "mg"
},
"bettorAccount": "BACT_e975966941094635a9e7c7c0e2618993",
"bookRef": "46862151.175244",
"timePlaced": "2023-12-06T17:22:24Z",
"type": "parlay",
"subtype": null,
"oddsAmerican": 264,
"atRisk": 9406,
"toWin": 24831,
"status": "pending",
"outcome": null,
"refreshResponse": "RRES_857383a6106c45d59fee894f3bc9b2ae",
"incomplete": false,
"netProfit": null,
"dateClosed": null,
"typeSpecial": null,
"bets": [
{
"id": "BET_60e2c8a370064effa52c42a79ba43abb",
"type": "straight",
"event": {
"id": "EVNT_dbdb739914b943bc98010e4d1a07d6b9",
"sportsdataioId": "20020841",
"sportradarId": "e70b481d-001a-4c71-8e1d-ccb5f2603f29",
"oddsjamId": "16903-86230-2023-12-07",
"sport": "Basketball",
"league": "NBA",
"name": "New Orleans Pelicans @ Los Angeles Lakers",
"nameSpecial": null,
"startTime": "2023-12-08T02:00:00Z",
"startDate": "2023-12-08",
"sportId": "SPRT_basketball",
"leagueId": "LGUE_nba",
"contestantAway": {
"id": "TEAM_7ee261c80a394c59a36a965a6e70c2f4",
"fullName": "New Orleans Pelicans"
},
"contestantHome": {
"id": "TEAM_029e01bfa4f04c5abb73938c9778985f",
"fullName": "Los Angeles Lakers"
},
"neutralVenue": true
},
"segment": null,
"proposition": "total",
"segmentDetail": null,
"position": "Under",
"line": 230,
"oddsAmerican": -110,
"status": "pending",
"outcome": null,
"live": false,
"incomplete": false,
"bookDescription": "New Orleans Pelicans at Los Angeles Lakers - Total Points - Under",
"marketSelection": "MRKT_36716db39ce9414ab0a1e67e3418b5f6",
"autoGrade": false,
"segmentId": null,
"propDetails": null,
"sdioMarketId": "1377060",
"sportradarMarketId": "1377060"
},
{
"id": "BET_050fa090189440779e68d29bd97fe099",
"type": "straight",
"event": {
"id": "EVNT_649266101ff94ac59c736b25d0b3d9bc",
"sportsdataioId": "18435",
"sportradarId": "2aaece03-c4c4-4c07-9835-3c523cec2925",
"oddsjamId": "39341-24276-23-51",
"sport": "Football",
"league": "NFL",
"name": "Arizona Cardinals @ Chicago Bears",
"nameSpecial": null,
"startTime": "2023-12-24T21:25:00Z",
"startDate": "2023-12-24",
"sportId": "SPRT_americanfootball",
"leagueId": "LGUE_nfl",
"contestantAway": {
"id": "TEAM_9095865374204017a249dceb3b916636",
"fullName": "Arizona Cardinals"
},
"contestantHome": {
"id": "TEAM_099e8cca6877423d9d21cafb3a2733de",
"fullName": "Chicago Bears"
},
"neutralVenue": null
},
"segment": null,
"proposition": "spread",
"segmentDetail": null,
"position": "Chicago Bears",
"line": -3,
"oddsAmerican": -110,
"status": "pending",
"outcome": null,
"live": false,
"incomplete": false,
"bookDescription": "Arizona Cardinals at Chicago Bears - Spread - Chicago Bears",
"marketSelection": "MRKT_56f31a8376ba48ea8ee9d7ad1f7ea1bc",
"autoGrade": false,
"segmentId": null,
"propDetails": null,
"sdioMarketId": null,
"sportradarMarketId": null
}
],
"adjusted": {
"odds": false,
"line": false,
"atRisk": null
}
},
{
"id": "SLIP_94e8cd0c8334416898119b258072b44a",
"bettor": "BTTR_37ee206548754b73856388f9f5f45c36",
"book": {
"id": "BOOK_pPg9ABaPSj2mL6qoMTKR1A",
"name": "BetMGM",
"abbr": "mg"
},
"bettorAccount": "BACT_e975966941094635a9e7c7c0e2618993",
"bookRef": "20063579.020630855",
"timePlaced": "2023-12-06T17:22:24Z",
"type": "single",
"subtype": null,
"oddsAmerican": null,
"atRisk": 30879,
"toWin": 28071,
"status": "pending",
"outcome": null,
"refreshResponse": "RRES_857383a6106c45d59fee894f3bc9b2ae",
"incomplete": false,
"netProfit": null,
"dateClosed": null,
"typeSpecial": null,
"bets": [
{
"id": "BET_323eff35de364e83bf8278c9ce2c9306",
"type": "straight",
"event": {
"id": "EVNT_649266101ff94ac59c736b25d0b3d9bc",
"sportsdataioId": "18435",
"sportradarId": "2aaece03-c4c4-4c07-9835-3c523cec2925",
"oddsjamId": "39341-24276-23-51",
"sport": "Football",
"league": "NFL",
"name": "Arizona Cardinals @ Chicago Bears",
"nameSpecial": null,
"startTime": "2023-12-24T21:25:00Z",
"startDate": "2023-12-24",
"sportId": "SPRT_americanfootball",
"leagueId": "LGUE_nfl",
"contestantAway": {
"id": "TEAM_9095865374204017a249dceb3b916636",
"fullName": "Arizona Cardinals"
},
"contestantHome": {
"id": "TEAM_099e8cca6877423d9d21cafb3a2733de",
"fullName": "Chicago Bears"
},
"neutralVenue": null
},
"segment": null,
"proposition": "spread",
"segmentDetail": null,
"position": "Chicago Bears",
"line": -3,
"oddsAmerican": -110,
"status": "pending",
"outcome": null,
"live": false,
"incomplete": false,
"bookDescription": "Arizona Cardinals at Chicago Bears - Spread - Chicago Bears",
"marketSelection": "MRKT_56f31a8376ba48ea8ee9d7ad1f7ea1bc",
"autoGrade": false,
"segmentId": null,
"propDetails": null,
"sdioMarketId": null,
"sportradarMarketId": null
}
],
"adjusted": {
"odds": false,
"line": false,
"atRisk": null
}
},
{
"id": "SLIP_7eb6ba00e2b041ad810c58c334b359c4",
"bettor": "BTTR_37ee206548754b73856388f9f5f45c36",
"book": {
"id": "BOOK_pPg9ABaPSj2mL6qoMTKR1A",
"name": "BetMGM",
"abbr": "mg"
},
"bettorAccount": "BACT_e975966941094635a9e7c7c0e2618993",
"bookRef": "36785542.55275183",
"timePlaced": "2023-12-06T17:22:24Z",
"type": "single",
"subtype": null,
"oddsAmerican": null,
"atRisk": 15482,
"toWin": 17803,
"status": "pending",
"outcome": null,
"refreshResponse": "RRES_857383a6106c45d59fee894f3bc9b2ae",
"incomplete": false,
"netProfit": null,
"dateClosed": null,
"typeSpecial": null,
"bets": [
{
"id": "BET_360c050bdc13435183d08ff1ae17007c",
"type": "straight",
"event": {
"id": "EVNT_f1a6473518fa4ff6b5a8613bd6f0136d",
"sportsdataioId": "20020824",
"sportradarId": "54cc11ff-867c-4f50-99aa-2e68b0e89aa5",
"oddsjamId": "17844-19432-2023-12-06",
"sport": "Basketball",
"league": "NBA",
"name": "Oklahoma City Thunder @ Houston Rockets",
"nameSpecial": null,
"startTime": "2023-12-07T01:00:00Z",
"startDate": "2023-12-07",
"sportId": "SPRT_basketball",
"leagueId": "LGUE_nba",
"contestantAway": {
"id": "TEAM_fcd1f885b57e4bd2b5bf131901b8cd60",
"fullName": "Oklahoma City Thunder"
},
"contestantHome": {
"id": "TEAM_076cff7808b04198b822a65b12d5fbd9",
"fullName": "Houston Rockets"
},
"neutralVenue": false
},
"segment": null,
"proposition": "moneyline",
"segmentDetail": null,
"position": "Houston Rockets",
"line": null,
"oddsAmerican": 115,
"status": "pending",
"outcome": null,
"live": false,
"incomplete": false,
"bookDescription": "Oklahoma City Thunder at Houston Rockets - Money Line - Houston Rockets",
"marketSelection": "MRKT_da4f96f6eeee42768e14ff8ae8ee60f9",
"autoGrade": false,
"segmentId": null,
"propDetails": null,
"sdioMarketId": "1375088",
"sportradarMarketId": "1375088"
}
],
"adjusted": {
"odds": false,
"line": false,
"atRisk": null
}
},
{
"id": "SLIP_845a1a2bab224f81995b2670aabebb35",
"bettor": "BTTR_37ee206548754b73856388f9f5f45c36",
"book": {
"id": "BOOK_pPg9ABaPSj2mL6qoMTKR1A",
"name": "BetMGM",
"abbr": "mg"
},
"bettorAccount": "BACT_e975966941094635a9e7c7c0e2618993",
"bookRef": "65988023.9870485",
"timePlaced": "2023-12-06T17:22:24Z",
"type": "single",
"subtype": null,
"oddsAmerican": null,
"atRisk": 91895,
"toWin": 83541,
"status": "pending",
"outcome": null,
"refreshResponse": "RRES_857383a6106c45d59fee894f3bc9b2ae",
"incomplete": false,
"netProfit": null,
"dateClosed": null,
"typeSpecial": null,
"bets": [
{
"id": "BET_a704284dee734df7a956a53f4e47b77c",
"type": "straight",
"event": {
"id": "EVNT_ac9f9bd893d24db38658231f7b3f18b0",
"sportsdataioId": "50014538",
"sportradarId": "914abb89-ae50-454f-bbd3-1e169a22944c",
"oddsjamId": "42755-99396-23-52",
"sport": "Football",
"league": "NCAAF",
"name": "Missouri Tigers @ Ohio State Buckeyes",
"nameSpecial": null,
"startTime": "2023-12-30T01:00:00Z",
"startDate": "2023-12-30",
"sportId": "SPRT_americanfootball",
"leagueId": "LGUE_ncaaf",
"contestantAway": {
"id": "TEAM_1da07266999b4fa58e3136a9ec80f9f9",
"fullName": "Missouri Tigers"
},
"contestantHome": {
"id": "TEAM_f4c5411ea120424d8724827b42f910af",
"fullName": "Ohio State Buckeyes"
},
"neutralVenue": true
},
"segment": null,
"proposition": "spread",
"segmentDetail": null,
"position": "Missouri Tigers",
"line": -1,
"oddsAmerican": -110,
"status": "pending",
"outcome": null,
"live": false,
"incomplete": false,
"bookDescription": "Missouri Tigers at Ohio State Buckeyes - Spread - Missouri Tigers",
"marketSelection": "MRKT_92092f15aae54c8b94d793b5e34f5679",
"autoGrade": false,
"segmentId": null,
"propDetails": null,
"sdioMarketId": null,
"sportradarMarketId": null
}
],
"adjusted": {
"odds": false,
"line": false,
"atRisk": null
}
},
{
"id": "SLIP_1fb7bb4de6954f7f9c8e7a15015c1274",
"bettor": "BTTR_37ee206548754b73856388f9f5f45c36",
"book": {
"id": "BOOK_pPg9ABaPSj2mL6qoMTKR1A",
"name": "BetMGM",
"abbr": "mg"
},
"bettorAccount": "BACT_e975966941094635a9e7c7c0e2618993",
"bookRef": "60957752.98779395",
"timePlaced": "2023-12-06T17:22:24Z",
"type": "single",
"subtype": null,
"oddsAmerican": null,
"atRisk": 7710,
"toWin": 16191,
"status": "pending",
"outcome": null,
"refreshResponse": "RRES_857383a6106c45d59fee894f3bc9b2ae",
"incomplete": false,
"netProfit": null,
"dateClosed": null,
"typeSpecial": null,
"bets": [
{
"id": "BET_76b4e0813f2b4792abeaf198c7bef1bc",
"type": "straight",
"event": {
"id": "EVNT_96c71f32e4334052afcfde301f27f4e5",
"sportsdataioId": "30021010",
"sportradarId": "87db34bc-29da-48b2-b60e-6857d806241b",
"oddsjamId": "13005-69549-2023-12-06",
"sport": "Hockey",
"league": "NHL",
"name": "Dallas Stars @ Florida Panthers",
"nameSpecial": null,
"startTime": "2023-12-07T00:00:00Z",
"startDate": "2023-12-07",
"sportId": "SPRT_icehockey",
"leagueId": "LGUE_nhl",
"contestantAway": {
"id": "TEAM_e9d3f6b8d8414ce2a30c1996c6057a85",
"fullName": "Dallas Stars"
},
"contestantHome": {
"id": "TEAM_d3b2daeb2f804c26af634f8e46a128a9",
"fullName": "Florida Panthers"
},
"neutralVenue": false
},
"segment": null,
"proposition": "spread",
"segmentDetail": null,
"position": "Florida Panthers",
"line": -1.5,
"oddsAmerican": 210,
"status": "pending",
"outcome": null,
"live": false,
"incomplete": false,
"bookDescription": "Dallas Stars at Florida Panthers - Puck Line Handicap - Florida Panthers",
"marketSelection": "MRKT_b04904ab7af247e3a809e3ed1c6b9872",
"autoGrade": false,
"segmentId": null,
"propDetails": null,
"sdioMarketId": "1077858",
"sportradarMarketId": "1077858"
}
],
"adjusted": {
"odds": false,
"line": false,
"atRisk": null
}
}}
Endpoints
๐ ๐ค refreshResponses by bettor
๐๐ฑrefreshResponses by bettorAccount
id (string)
A unique identifier representing the refreshResponseID. Each refreshResponseID will start with the unique character set RRES_
.
bettorAccount (hash)
A object representing the ๐ฑ BettorAccount that was refreshed
. A bettorAccount that has been refreshed must be verified and accessible, so only core information about the bettorAccount (bettor and book) are included in the serialization.
timeCreated (datetime)
A timestamp for the creation of the refreshResponse object.
status (integer)
This status code indicates the result of the refresh request. The possible codes are:
Status Code | Description | Meaning |
---|---|---|
200 | refresh successful | Successfully pulled new data from the bettorAccount |
202 | refresh successful | Successfully pulled new data from the bettorAccount but due to large data volume the ๐ฐ BetSlipsare not included on the object. Store the rresid, and use the ๐ betSlips list endpoint with the refreshResponseId query param to fetch the relevant slips. |
401 | refresh unsuccessful - handled error | This could be due to a password change for this book, an update in the sportsbook terms of service, or activation of additional security measures on the account (such as 2FA) |
403 | refresh not attempted - access for this bettorAccount has been revoked | access |
406 | refresh unsuccessful - incorrect OTP | See the 2FA handling section |
424 | refresh not attempted - book down for maintenance | See the book status definition |
429 | refresh not attempted - rate limiting | Account refreshes must be made at least 60 seconds apart and cannot overlap. See rate limiting for more details. |
500 | refresh unsuccessful - unhandled error | This type of error occurs on less than 2% of refresh requests |
requestId (string)
The id of the refresh request that initiated this refreshResponse.
detail (string)
An error message associated with the status code.
type (string)
Indicates how the refresh was initiated. One of the following:
type | description |
---|---|
manual | initiated from the /refresh endpoint |
verify | initiated from a SharpSports Book Link UI session |
reverify | initiated from the /refresh?reverify=true endpoint |
cadence | initiated from the SharpSports Dashboard refresh cadence |
system | initiated by Sharpsports, either to reverify an account or to update fields on existing bets |
grade | initiated by SharpSports. Includes bets automatically graded by SharpSports grading logic |
betSlips (list)
A list of json formatted betSlip objects updated or created by this refreshResponse.
This attribute represents the state of the betSlips at the time of this RefreshResponse event. To get up to date bet slips you must query the betSlip object directly.