Meaning of Enums

Defines the meaning of enums for various objects in the ProphetX Service API, including Wager, Market, and SportEvent objects.

Summary

There are lots of enums around the status of plays and other objects, and this document’s purpose is to define what each enum means for each object.

Wager Object

This object returns from a couple of endpoints, for example, place_wager, place_multiple_wagers, get_wager_histories, websocket events. This object has four fields of enum types: status, matching_status, winning_status, update_status.

Status

  • inactive: Play request is received, but still in the validation process and not able to be matched or seen by any client yet.
  • open: Play passed validation, and able to be seen by clients and able to be matched by other users.
  • invalid: Play failed validation, and never become available for any user to see. Most common reason is not enough wallet balance during activation.
  • canceled: Play was cancelled by client, and this play did not have any amount matched. If this play was partially matched, after the cancellation, partial amount is cancelled. This play status will still be open, and matching_status will become fully_matched.
  • void: Play was explicitly voided by internal operation team out of regulation requirements or other causes.
  • wiped: Play was wiped automatically once certain event happens, for example, all pre-match plays get wiped once a game transits from pre-match to live.
  • manually_settled: Play was not auto-settled because of data source issue or some existing limitations, and human intervention was needed to settle these play.
  • settled: Auto-settled winning play will have this status. Once wallet balance is updated, status will transition to closed.
  • closed: Final status for auto-settled plays. Auto-settled losing plays will go directly to closed.

Play Flow Examples

  1. For winning auto-settled play: inactive => open => settled => closed
  2. For losing auto-settled plays: inactive => open => closed
  3. For all manually settled plays: inactive => open => manually_settled

Matching Status

  • unmatched: The play is not matched with any other play yet.
  • partially_matched: Only partial amount of the play is matched with other play(s).
  • fully_matched: Full amount of the play is matched with another play(s).

Winning Status

  • lost: Lost and no payout to user’s account.
  • won: Won and payout the stake and profit to user’s account.
  • no_result: Did not have official result for the game, stake is returned to user’s account.
  • tbd: Still waiting for the final result.
  • manually_lost: Automatically process did not receive the final result, and manual intervention happened to set the play to loss.
  • manually_won: Automatically process did not receive the final result, and manual intervention happened to set the play to win.
  • draw: Draw and original stake is returned to user’s account.
  • push: No side wins and original stake is returned to user’s account.

Update Type

  • status: The play info has been changed.
  • matching: New matching bet for this play.

Market Object

This object returns from the get_markets endpoint.

Type

  • moneyline
  • spread
  • total

SportEvent Object

  • sub_type: If it is null, then it is just a normal event. If it is “outrights”, then this is a custom created future/outright event.