flyzto před 3 týdny
rodič
revize
81ab4ea456
5 změnil soubory, kde provedl 9428 přidání a 2 odebrání
  1. 4706 0
      pinnacle/betsapi.yaml
  2. 15 0
      pinnacle/betsapi_zh.html
  3. 4706 0
      pinnacle/betsapi_zh.yaml
  4. 0 0
      pinnacle/linesapi_zh.html
  5. 1 2
      pinnacle/main.js

+ 4706 - 0
pinnacle/betsapi.yaml

@@ -0,0 +1,4706 @@
+swagger: '2.0'
+info:
+  version: 1.0.0
+  title: Pinnacle888 API - Bets API Reference
+  description:  |
+    All about bets, place bets, get your bet history or current bet status.
+  
+    # Authentication 
+    
+    API uses HTTP Basic access authentication.You need to send Authorization HTTP Request header:  
+    
+    `Authorization: Basic <Base64 value of UTF-8 encoded "username:password">`
+    
+    Example:
+    
+    `Authorization: Basic U03MyOT23YbzMDc6d3c3O1DQ1`
+    
+  x-logo:
+    url: ''
+host: api.pinnacle888.com
+schemes:
+  - https
+security:
+  - basicAuth: []
+paths:
+  /v2/bets/place:
+    post:
+      tags:
+        - Place Bets
+      summary: Place straight bet  - v2
+      description: | 
+           Place straight bet (SPREAD, MONEYLINE, TOTAL_POINTS, TEAM_TOTAL_POINTS).
+      
+           Please note when the status is PENDING_ACCEPTANCE and if the live delay was applied, the response will not have betId. Client would have to call /bets by uniqueRequestId to check the status if the bet was ACCEPTED.
+           
+           For more details please see [How to place a bet on live events?](https://github.com/pinny888/pinny888.github.io/blob/main/FAQs.md#how-to-place-a-bet-on-live-events)
+      operationId: Bets_StraightV2
+      consumes:
+        - application/json
+      produces:
+        - application/json
+      parameters:
+        - in: body
+          name: request
+          description: ''
+          required: true
+          schema:
+            $ref: '#/definitions/PlaceBetRequestV2'
+      responses:
+        '200':
+          description: OK
+          schema:
+            $ref: '#/definitions/PlaceBetResponseV2'
+        '400':
+          description: BadRequest
+          schema:
+            $ref: '#/definitions/ErrorResponse'
+        '401':
+          description: Unauthorized
+          schema:
+            $ref: '#/definitions/ErrorResponse'
+        '403':
+          description: Forbidden
+          schema:
+            $ref: '#/definitions/ErrorResponse'
+        '500':
+          description: InternalServerError
+          schema:
+            $ref: '#/definitions/ErrorResponseWithErrorRef'
+  /v2/bets/parlay:
+    post:
+      tags:
+        - Place Bets
+      summary: Place parlay bet - v2
+      operationId: Bets_ParlayV2
+      consumes:
+        - application/json
+      produces:
+        - application/json
+      parameters:
+        - in: body
+          name: request
+          description: The Parlay request.
+          required: true
+          schema:
+            $ref: '#/definitions/PlaceParlayBetRequest'
+      responses:
+        '200':
+          description: OK
+          schema:
+            $ref: '#/definitions/PlaceParlayBetResponseV2'
+        '400':
+          description: BadRequest
+          schema:
+            $ref: '#/definitions/ErrorResponse'
+        '401':
+          description: Unauthorized
+          schema:
+            $ref: '#/definitions/ErrorResponse'
+        '403':
+          description: Forbidden
+          schema:
+            $ref: '#/definitions/ErrorResponse'
+        '500':
+          description: InternalServerError
+          schema:
+            $ref: '#/definitions/ErrorResponseWithErrorRef'			
+  /v1/bets/teaser:
+    post:
+      tags:
+        - Place Bets
+      summary: Place teaser bet - v1
+      operationId: Bets_Teaser
+      consumes:
+        - application/json
+      produces:
+        - application/json
+      parameters:
+        - in: body
+          name: request
+          description: The PlaceTeaser request.
+          required: true
+          schema:
+            $ref: '#/definitions/PlaceTeaserBetRequest'
+      responses:
+        '200':
+          description: OK
+          schema:
+            $ref: '#/definitions/PlaceTeaserBetResponse'
+        '400':
+          description: BadRequest
+          schema:
+            $ref: '#/definitions/ErrorResponse'
+        '401':
+          description: Unauthorized
+          schema:
+            $ref: '#/definitions/ErrorResponse'
+        '403':
+          description: Forbidden
+          schema:
+            $ref: '#/definitions/ErrorResponse'
+        '500':
+          description: InternalServerError
+          schema:
+            $ref: '#/definitions/ErrorResponseWithErrorRef'
+  /v2/bets/special:
+    post:
+      tags:
+        - Place Bets
+      summary: Place specials bet - v2
+      operationId: Bets_SpecialV2
+      consumes:
+        - application/json
+      produces:
+        - application/json
+      parameters:
+        - in: body
+          name: request
+          description: The SpecialBet request.
+          required: true
+          schema:
+            $ref: '#/definitions/MultiBetRequest[SpecialBetRequest]'
+      responses:
+        '200':
+          description: OK
+          schema:
+            $ref: '#/definitions/MultiBetResponse[SpecialBetResponse]'
+        '400':
+          description: BadRequest
+          schema:
+            $ref: '#/definitions/ErrorResponse'
+        '401':
+          description: Unauthorized
+          schema:
+            $ref: '#/definitions/ErrorResponse'
+        '403':
+          description: Forbidden
+          schema:
+            $ref: '#/definitions/ErrorResponse'
+        '500':
+          description: InternalServerError
+          schema:
+            $ref: '#/definitions/ErrorResponseWithErrorRef'
+  /v4/bets/place:
+    post:
+      tags:
+        - Place Bets
+      summary: Place straight bet  - v4
+      description: | 
+           Place straight bet (SPREAD, MONEYLINE, TOTAL_POINTS, TEAM_TOTAL_POINTS).
+      
+           Please note when the status is PENDING_ACCEPTANCE and if the live delay was applied, the response will not have betId. Client would have to call /bets by uniqueRequestId to check the status if the bet was ACCEPTED.
+           
+           For more details please see [How to place a bet on live events?](https://github.com/pinny888/pinny888.github.io/blob/main/FAQs.md#how-to-place-a-bet-on-live-events)
+      operationId: Bets_StraightV4
+      consumes:
+        - application/json
+      produces:
+        - application/json
+      parameters:
+        - in: body
+          name: request
+          description: ''
+          required: true
+          schema:
+            $ref: '#/definitions/PlaceBetRequestV2'
+      responses:
+        '200':
+          description: OK
+          schema:
+            $ref: '#/definitions/PlaceBetResponseV4'
+        '400':
+          description: BadRequest
+          schema:
+            $ref: '#/definitions/ErrorResponse'
+        '401':
+          description: Unauthorized
+          schema:
+            $ref: '#/definitions/ErrorResponse'
+        '403':
+          description: Forbidden
+          schema:
+            $ref: '#/definitions/ErrorResponse'
+        '500':
+          description: InternalServerError
+          schema:
+            $ref: '#/definitions/ErrorResponseWithErrorRef'
+  /v4/bets/parlay:
+    post:
+      tags:
+        - Place Bets
+      summary: Place parlay bet - v4
+      operationId: Bets_ParlayV4
+      consumes:
+        - application/json
+      produces:
+        - application/json
+      parameters:
+        - in: body
+          name: request
+          description: The Parlay request.
+          required: true
+          schema:
+            $ref: '#/definitions/PlaceParlayBetRequest'
+      responses:
+        '200':
+          description: OK
+          schema:
+            $ref: '#/definitions/PlaceParlayBetResponseV4'
+        '400':
+          description: BadRequest
+          schema:
+            $ref: '#/definitions/ErrorResponse'
+        '401':
+          description: Unauthorized
+          schema:
+            $ref: '#/definitions/ErrorResponse'
+        '403':
+          description: Forbidden
+          schema:
+            $ref: '#/definitions/ErrorResponse'
+        '500':
+          description: InternalServerError
+          schema:
+            $ref: '#/definitions/ErrorResponseWithErrorRef'
+  /v4/bets/teaser:
+    post:
+      tags:
+        - Place Bets
+      summary: Place teaser bet - v4
+      operationId: Bets_TeaserV4
+      consumes:
+        - application/json
+      produces:
+        - application/json
+      parameters:
+        - in: body
+          name: request
+          description: The PlaceTeaser request.
+          required: true
+          schema:
+            $ref: '#/definitions/PlaceTeaserBetRequest'
+      responses:
+        '200':
+          description: OK
+          schema:
+            $ref: '#/definitions/PlaceTeaserBetResponseV4'
+        '400':
+          description: BadRequest
+          schema:
+            $ref: '#/definitions/ErrorResponse'
+        '401':
+          description: Unauthorized
+          schema:
+            $ref: '#/definitions/ErrorResponse'
+        '403':
+          description: Forbidden
+          schema:
+            $ref: '#/definitions/ErrorResponse'
+        '500':
+          description: InternalServerError
+          schema:
+            $ref: '#/definitions/ErrorResponseWithErrorRef'
+  /v4/bets/special:
+    post:
+      tags:
+        - Place Bets
+      summary: Place specials bet - v4
+      operationId: Bets_SpecialV4
+      consumes:
+        - application/json
+      produces:
+        - application/json
+      parameters:
+        - in: body
+          name: request
+          description: The SpecialBet request.
+          required: true
+          schema:
+            $ref: '#/definitions/MultiBetRequest[SpecialBetRequest]'
+      responses:
+        '200':
+          description: OK
+          schema:
+            $ref: '#/definitions/MultiBetResponse[SpecialBetResponseV4]'
+        '400':
+          description: BadRequest
+          schema:
+            $ref: '#/definitions/ErrorResponse'
+        '401':
+          description: Unauthorized
+          schema:
+            $ref: '#/definitions/ErrorResponse'
+        '403':
+          description: Forbidden
+          schema:
+            $ref: '#/definitions/ErrorResponse'
+        '500':
+          description: InternalServerError
+          schema:
+            $ref: '#/definitions/ErrorResponseWithErrorRef'
+  /v3/bets:
+    get:
+      tags:
+        - Get Bets
+      summary: Get Bets - v3
+      description: |
+          Returns bets. 
+          
+          
+          ### Get running bets by time range:
+          ```
+          https://api.pinnacle888.com/v3/bets?betlist=RUNNING&fromDate=2017-11-21T00:00:00Z&toDate=2017-11-29T00:00:00Z
+          ```
+          Running bets are queried by *placedAt* date time
+          
+          
+          ### Get settled bets by time range:
+            
+          ```
+          https://api.pinnacle888.com/v3/bets?betlist=SETTLED&fromDate=2015-12-28T00:00:00Z&toDate=2015-12-29T00:00:00Z
+          ```
+          Settled bets are queried by *settledAt* date time
+          https://api.pinnacle888.com/v3/bets?betlist=SETTLED&fromDate=2017-11-20T00:00:00Z&toDate=2017-11-23T00:00:00Z
+          
+          
+          ### Get settled cancelled bets by time range:
+            
+          ```
+          https://api.pinnacle888.com/v3/bets?betList=SETTLED&fromDate=2018-03-01&toDate=2018-03-28&betStatuses=CANCELLED
+          ```
+          
+
+          ### Get bets by bet ids:
+          
+          ```
+          https://api.pinnacle888.com/v3/bets?betIds=775856112,775856113,775856114
+          ```
+          
+          ### Get bets by uniqueRequestIds:
+          
+          ```
+          https://api.pinnacle888.com/v3/bets?uniqueRequestIds=62335222-dae4-479a-8c05-46440ccdd3bb,42335222-dae4-479a-8c05-46440ccdd3bb
+          ```
+          
+      operationId: Bets_GetBetsByTypeV3
+      consumes: []
+      produces:
+        - application/json
+      parameters:
+        - name: betlist
+          in: query
+          description: 'Type of bet list to return. Not needed when betIds is submitted.'
+          required: false
+          type: string
+          enum:
+            - SETTLED
+            - RUNNING
+            - ALL
+        - name: betStatuses
+          in: query
+          description: 'Type of bet statues to return. This works only in conjustion with betlist, as additional filter.'
+          required: false
+          type: array
+          items:
+            type: string
+            enum:
+            - WON
+            - LOSE 
+            - CANCELLED 
+            - REFUNDED 
+            - NOT_ACCEPTED 
+            - ACCEPTED 
+            - PENDING_ACCEPTANCE
+          collectionFormat: csv
+        - name: fromDate
+          in: query
+          description: |
+            Start date of the requested period. Required when betlist parameter is submitted. Start date can be up to 30 days in the past. Expected format is ISO8601 - can be set to just date or date and time.
+          required: false
+          type: string
+        - name: toDate
+          in: query
+          description: |
+            End date of the requested period. Required when betlist parameter is submitted. Expected format is ISO8601 - can be set to just date or date and time.  toDate value is exclusive, meaning it cannot be equal to fromDate.
+          required: false
+          type: string
+        - name: sortDir
+          in: query
+          description: 'Sort direction by postedAt/settledAt. Respected only when querying by date range.'
+          required: false
+          type: string
+          enum:
+            - ASC
+            - DESC
+          default: ASC
+        - name: pageSize
+          in: query
+          description: 'Page size in case. Max is 1000. Respected only when querying by date range.'
+          required: false
+          type: integer
+          default: 1000 
+        - name: fromRecord
+          in: query
+          description: 'Starting record (inclusive) of the result. Respected only when querying by date range. To fetch next page set it to toRecord+1 '
+          required: false
+          type: integer
+          default: 0  
+        - name: betIds
+          in: query
+          description: 'A comma separated list of bet ids. When betids is submitted, no other parameter is necessary. Maximum is 100 ids. Works for all non settled bets and all bets settled in the last 30 days.'
+          required: false
+          type: array
+          items:
+            type: integer
+            format: int64
+          collectionFormat: csv
+        - name: uniqueRequestIds
+          in: query
+          description: |
+              A comma separated list of uniqueRequestIds to query earlier  placed straight bets. If specified, is treated with highest priority, all other parameters are ignored. Maximum is 10 ids. If client has bet id, preferred way is to use betIds query parameter to check the get the bets. You can use uniqueRequestIds when you do not  have bet id. That’s pretty much in just 2 cases\:
+              
+              1. When you bet on live event with live delay, place bet response in that case does not return bet id, so client can query bet status by uniqueRequestIds.
+              2. In case of any network issues when client is not sure what happened with his place bet request. Empty response means that the bet was not placed. Please check [Deduplication section](https://www.pinnacle.com/de/api/manual#overview) for more details
+              
+              
+              Note that there is a restriction: querying by uniqueRequestIds  is supported for straight and special bets and only up to 30 min from the moment the bet was place. 
+          required: false
+          type: array
+          items:
+            type: string
+          collectionFormat: csv
+        - name: betType
+          in: query
+          description: 'A comma separated list of bet types.'
+          required: false
+          type: array
+          items:
+            type: string
+            enum:
+            - SPREAD
+            - MONEYLINE 
+            - TOTAL_POINTS 
+            - TEAM_TOTAL_POINTS 
+            - SPECIAL 
+            - PARLAY 
+            - TEASER
+            - MANUAL
+          collectionFormat: csv          
+      responses:
+        '200':
+          description: OK
+          schema:
+            $ref: '#/definitions/GetBetsByTypeResponseV3'
+        '400':
+          description: BadRequest
+          schema:
+            $ref: '#/definitions/ErrorResponse'
+        '401':
+          description: Unauthorized
+          schema:
+            $ref: '#/definitions/ErrorResponse'
+        '403':
+          description: Forbidden
+          schema:
+            $ref: '#/definitions/ErrorResponse'
+        '500':
+          description: InternalServerError
+          schema:
+            $ref: '#/definitions/ErrorResponseWithErrorRef'
+               
+  /v3/bets/settled:
+    get:
+      tags:
+        - Get Bets
+      summary: Get Bets Settled - v3
+      description: |
+          Returns bets settled.
+          
+          
+          ### Get settled bets settled by time range:
+            
+          ```
+          https://api.pinnacle888.com/v3/bets/settled?fromDate=2015-12-28T00:00:00Z&toDate=2015-12-29T00:00:00Z
+          ```
+          
+          
+          ### Get bets settled by uniqueRequestIds:
+          
+          ```
+          https://api.pinnacle888.com/v3/bets/settled?uniqueRequestIds=62335222-dae4-479a-8c05-46440ccdd3bb,42335222-dae4-479a-8c05-46440ccdd3bb
+          ```
+          
+      operationId: Bets_GetBetsSettledV3
+      consumes: []
+      produces:
+        - application/json
+      parameters:
+        - name: eventId
+          in: query
+          description: Event identification. Note that there is a restriction that querying by eventId is supported only up to 90 days from the moment the bet was settled.
+          required: false
+          type: integer
+          format: int64
+        - name: specialId
+          in: query
+          description: Id of the special.
+          required: false
+          type: integer
+          format: int64
+        - name: fromDate
+          in: query
+          description: |
+            Start date of the requested period. Required when betlist parameter is submitted. Start date can be up to 30 days in the past. Expected format is ISO8601 - can be set to just date or date and time.
+          required: false
+          type: string
+        - name: toDate
+          in: query
+          description: |
+            End date of the requested period. Required when betlist parameter is submitted. Expected format is ISO8601 - can be set to just date or date and time.  toDate value is exclusive, meaning it cannot be equal to fromDate.
+          required: false
+          type: string
+        - name: sortDir
+          in: query
+          description: 'Sort direction by postedAt/settledAt. Respected only when querying by date range.'
+          required: false
+          type: string
+          enum:
+            - ASC
+            - DESC
+          default: ASC
+        - name: pageSize
+          in: query
+          description: 'Page size in case. Max is 1000. Respected only when querying by date range.'
+          required: false
+          type: integer
+          default: 1000 
+        - name: fromRecord
+          in: query
+          description: 'Starting record (inclusive) of the result. Respected only when querying by date range. To fetch next page set it to toRecord+1 '
+          required: false
+          type: integer
+          default: 0  
+        - name: uniqueRequestIds
+          in: query
+          description: |
+              A comma separated list of uniqueRequestIds to query earlier  placed straight bets. If specified, is treated with highest priority, all other parameters are ignored. Maximum is 10 ids. If client has bet id, preferred way is to use betIds query parameter to check the get the bets. You can use uniqueRequestIds when you do not  have bet id. That’s pretty much in just 2 cases\:
+              
+              1. When you bet on live event with live delay, place bet response in that case does not return bet id, so client can query bet status by uniqueRequestIds.
+              2. In case of any network issues when client is not sure what happened with his place bet request. Empty response means that the bet was not placed. Please check [Deduplication section](https://www.pinnacle.com/de/api/manual#overview) for more details
+              
+              
+              Note that there is a restriction: querying by uniqueRequestIds  is supported only for straight bets and only up to 30 min from the moment the bet was place. 
+          required: false
+          type: array
+          items:
+            type: string
+          collectionFormat: csv
+      responses:
+        '200':
+          description: OK
+          schema:
+            $ref: '#/definitions/GetBetsByTypeResponseV3'
+        '400':
+          description: BadRequest
+          schema:
+            $ref: '#/definitions/ErrorResponse'
+        '401':
+          description: Unauthorized
+          schema:
+            $ref: '#/definitions/ErrorResponse'
+        '403':
+          description: Forbidden
+          schema:
+            $ref: '#/definitions/ErrorResponse'
+        '500':
+          description: InternalServerError
+          schema:
+            $ref: '#/definitions/ErrorResponseWithErrorRef'
+            
+  /v1/regrades/wager-history:
+    get:
+      tags:
+        - Get Bets
+      summary: Get Regrades Wager History - v1
+      description: |
+          Returns historical data related to regrades wagers
+          
+          
+          ### Get regrades wager history by time range:
+            
+          ```
+          https://api.pinnacle888.com/v1/regrades/wager-history?fromDate=2024-04-01T00:00:00Z&toDate=2024-04-27T00:00:00Z
+          ```
+          
+          
+          ### Get regrades wager history by bet ids:
+          
+          ```
+          https://api.pinnacle888.com/v1/regrades/wager-history?betIds=52454247
+          ```
+          
+      operationId: Bets_GetRegradedWagerHistoryV1
+      consumes: []
+      produces:
+        - application/json
+      parameters:
+        - name: betIds
+          in: query
+          description: 'A comma separated list of bet ids. When betIds is submitted, no other parameter is necessary. Maximum is 100 ids. Works for all bets settled in the last 30 days.'
+          required: false
+          type: array
+          items:
+            type: integer
+            format: int64
+          collectionFormat: csv
+        - name: fromDate
+          in: query
+          description: |
+            Start date of the requested period. Required when betIds parameter is not submitted. Start date can be up to 30 days in the past. Expected format is ISO8601 - can be set to just date or date and time.
+          required: false
+          type: string
+        - name: toDate
+          in: query
+          description: |
+            End date of the requested period. Required when betIds parameter is not submitted. Expected format is ISO8601 - can be set to just date or date and time. toDate value is exclusive, meaning it cannot be equal to fromDate.
+            
+          required: false
+          type: string
+        - name: sortDir
+          in: query
+          description: 'Sort direction by postedAt/settledAt. Respected only when querying by date range.'
+          required: false
+          type: string
+          enum:
+            - ASC
+            - DESC
+          default: ASC
+        - name: pageSize
+          in: query
+          description: 'Page size in case. Max is 1000. Respected only when querying by date range.'
+          required: false
+          type: integer
+          default: 1000 
+        - name: fromRecord
+          in: query
+          description: 'Starting record (inclusive) of the result. Respected only when querying by date range. To fetch next page set it to toRecord+1'
+          required: false
+          type: integer
+          default: 0  
+
+      responses:
+        '200':
+          description: OK
+          schema:
+            $ref: '#/definitions/GetRegradedWagerHistoryResponseV1'
+        '400':
+          description: BadRequest
+          schema:
+            $ref: '#/definitions/ErrorResponse'
+        '401':
+          description: Unauthorized
+          schema:
+            $ref: '#/definitions/ErrorResponse'
+        '403':
+          description: Forbidden
+          schema:
+            $ref: '#/definitions/ErrorResponse'
+        '500':
+          description: InternalServerError
+          schema:
+            $ref: '#/definitions/ErrorResponseWithErrorRef'
+  
+  /v1/bets/betting-status:
+    get:
+      tags:
+        - Betting Status
+      summary: Get Betting Status
+      description: 'Returns current betting status. During maintenance windows betting could be disabled , you can call this operation to check the current betting status.'
+      operationId: Bets_GetBettingStatus
+      consumes: []
+      produces:
+        - application/json
+      parameters: []
+      responses:
+        '200':
+          description: OK
+          schema:
+            $ref: '#/definitions/BettingStatusResponse'
+        '401':
+          description: Unauthorized
+          schema:
+            $ref: '#/definitions/ErrorResponse'
+        '403':
+          description: Forbidden
+          schema:
+            $ref: '#/definitions/ErrorResponse'
+        '500':
+          description: InternalServerError
+          schema:
+            $ref: '#/definitions/ErrorResponseWithErrorRef'
+securityDefinitions:
+  basicAuth:
+    type: basic
+definitions:
+  PlaceBetRequestV2:
+    type: object
+    properties:
+      oddsFormat:
+        $ref: '#/definitions/OddsFormat'
+      uniqueRequestId:
+        type: string
+        format: uuid
+        example: D5CC50E4-284D-4D50-8D49-429BDC4F2A48
+        description: This is a Unique ID for PlaceBet requests. This is to support idempotent requests.
+      acceptBetterLine:
+        type: boolean
+        example: true
+        description: Whether or not to accept a bet when there is a line change in favor of the client.
+      stake:
+        type: number
+        format: double
+        example: 10.5
+        description: amount in client’s currency.
+      winRiskStake:
+        type: string
+        example: RISK
+        description: Whether the stake amount is risk or win amount.
+        enum:
+          - WIN
+          - RISK
+      lineId:
+        type: integer
+        format: int64
+        example: 420921914
+        description: Line identification.
+      altLineId:
+        type: integer
+        format: int64
+        example: null
+        x-nullable: true
+        description: Alternate line identification.
+      pitcher1MustStart:
+        type: boolean
+        description: 'Baseball only. Refers to the pitcher for Team1. This applicable only for MONEYLINE bet type, for all other bet types this has to be TRUE.'
+      pitcher2MustStart:
+        type: boolean
+        description: 'Baseball only. Refers to the pitcher for Team2. This applicable only for MONEYLINE bet type, for all other bet types this has to be TRUE.'
+      fillType:
+        type: string
+        description: |
+            NORMAL - bet will be placed on specified stake.  
+            FILLANDKILL - If the stake is over the max limit, bet will be placed on max limit, otherwise it will be placed on specified stake.  
+            FILLMAXLIMIT - bet will be places on max limit, stake amount will be ignored. Please note that maximum limits can change at any moment, which may result in risking more than anticipated. This option is replacement of isMaxStakeBet from v1/bets/place'
+        enum:
+          - NORMAL
+          - FILLANDKILL
+          - FILLMAXLIMIT
+        example: NORMAL
+        default: NORMAL        
+      sportId:
+        type: integer
+        format: int32
+        example: 29
+      eventId:
+        type: integer
+        format: int64
+        example: 757504261
+      periodNumber:
+        type: integer
+        format: int32
+        example: 0
+      betType:
+        type: string
+        example: MONEYLINE
+        description: 'Bet type.'
+        enum:
+          - MONEYLINE
+          - TEAM_TOTAL_POINTS
+          - SPREAD
+          - TOTAL_POINTS
+      team:
+        type: string
+        example: TEAM1
+        description: 'Team type.'
+        enum:
+          - TEAM1
+          - TEAM2
+          - DRAW
+      side:
+        type: string
+        example: null
+        x-nullable: true
+        description: 'Side type.'
+        enum:
+          - OVER
+          - UNDER
+      handicap:
+        type: number
+        format: double
+        example: 1.0
+        description: This is optional parameter for SPREAD, TOTAL_POINTS and TEAM_TOTAL_POINTS bet types.          
+    description: Request to place a bet.    
+  ErrorResponse:
+    type: object
+    properties:
+      code:
+        type: string
+        description: |
+          INVALID_REQUEST_DATA  = Invalid request parameters (http status 400)  
+          SELF_EXCLUSION = Client's account is self-excluded (http status 400)
+          TERMS_AND_CONDITIONS_NOT_ACCEPTED = Terms and Condidtions has not been accepted (http status 400)
+          INVALID_CREDENTIALS = Authorization failed, invalid credentials (http status 401)  
+          INVALID_AUTHORIZATION_HEADER = HTTP Authorization header is missing (http status 401) 
+          ACCOUNT_INACTIVE = Client's account is not active  (http status 403)  
+          NO_API_ACCESS = Account not permitted to access the API  (http status 403) 
+        enum:
+          - INVALID_REQUEST_DATA
+          - SELF_EXCLUSION
+          - TERMS_AND_CONDITIONS_NOT_ACCEPTED
+          - INVALID_CREDENTIALS
+          - INVALID_AUTHORIZATION_HEADER
+          - ACCOUNT_INACTIVE
+          - NO_API_ACCESS
+      message:
+        type: string
+  PlaceBetResponseV2:
+    type: object
+    properties:
+      status:
+        type: string
+        example: ACCEPTED
+        description: Status of the response.
+        enum:
+          - ACCEPTED
+          - PENDING_ACCEPTANCE
+          - PROCESSED_WITH_ERROR
+      errorCode:
+        type: string
+        example: null
+        x-nullable: true
+        description: |
+          If Status is PROCESSED_WITH_ERROR, errorCode will be in the response. 
+          
+          ALL_BETTING_CLOSED = Betting is not allowed at this moment. This may happen during system maintenance,  
+          ALL_LIVE_BETTING_CLOSED = Live betting is not allowed at this moment. This may happen during system maintenance,  
+          ABOVE_EVENT_MAX = Bet cannot be placed because client exceeded allowed maximum of risk on a line,  
+          ABOVE_MAX_BET_AMOUNT = Stake is above allowed maximum amount,   
+          BELOW_MIN_BET_AMOUNT = Stake is below allowed minimum amount,  
+          BLOCKED_BETTING = Betting is suspended for the client,  
+          BLOCKED_CLIENT = Client is no longer active,   
+          INSUFFICIENT_FUNDS = Bet is submitted by a client with insufficient funds,  
+          INVALID_COUNTRY = Client country is not allowed for betting,  
+          INVALID_EVENT = Invalid eventid,  
+          INVALID_ODDS_FORMAT = If a bet was submitted with the odds format that is not allowed for the client,  
+          LINE_CHANGED = Bet is submitted on a line that has changed,  
+          LISTED_PITCHERS_SELECTION_ERROR = If bet was submitted with pitcher1MustStart and/or pitcher2MustStart parameters in Place Bet request with values that are not allowed,  
+          OFFLINE_EVENT = Bet is submitted on a event that is offline or the submitted line is not offered at the moment due to points/handicap change or the submitted bet type is just not offered at the moment,  
+          PAST_CUTOFFTIME = Bet is submitted on a game after the betting cutoff time,  
+          RED_CARDS_CHANGED = Bet is submitted on a live soccer event with changed red card count,  
+          SCORE_CHANGED = Bet is submitted on a live soccer event with changed score,             
+          DUPLICATE_UNIQUE_REQUEST_ID = Request with the same uniqueRequestId was already processed. Please set the new value if you still want the request to be processed,  
+          INCOMPLETE_CUSTOMER_BETTING_PROFILE = System configuration issue,  
+          INVALID_CUSTOMER_PROFILE = System configuration issue,  
+          LIMITS_CONFIGURATION_ISSUE = System configuration issue,  
+          RESPONSIBLE_BETTING_LOSS_LIMIT_EXCEEDED = Client has reached his total loss limit,  
+          RESPONSIBLE_BETTING_RISK_LIMIT_EXCEEDED = Client has reached his total risk limit,  
+          RESUBMIT_REQUEST = Unable to process the request but the request itself is valid. This happens more often on the live betting in situations when there is more than one place bet request at the same on the same line. When this happens, we don't keep the place bet request on the server until we know if we can accept or reject the bet, but instead we return the error. It's very likely that the line will change after that. To reduce a chance of getting RESUBMIT_REQUEST client can try to place a bet as fast as possible,  
+          SYSTEM_ERROR_3 = Unexpected error,  
+          LICENCE_RESTRICTION_LIVE_BETTING_BLOCKED - Live betting blocked due to licence restrictions,  
+          INVALID_HANDICAP = Invalid handicap,  
+          BETTING_SUSPENDED = Due to anomalous market circumstances bets are not currently being accepted on this line. Try again with next LineId.
+        enum:
+          - ALL_BETTING_CLOSED
+          - ALL_LIVE_BETTING_CLOSED
+          - ABOVE_EVENT_MAX
+          - ABOVE_MAX_BET_AMOUNT
+          - BELOW_MIN_BET_AMOUNT
+          - BLOCKED_BETTING
+          - BLOCKED_CLIENT
+          - INSUFFICIENT_FUNDS
+          - INVALID_COUNTRY
+          - INVALID_EVENT
+          - INVALID_ODDS_FORMAT
+          - LINE_CHANGED
+          - LISTED_PITCHERS_SELECTION_ERROR
+          - OFFLINE_EVENT
+          - PAST_CUTOFFTIME
+          - RED_CARDS_CHANGED
+          - SCORE_CHANGED          
+          - DUPLICATE_UNIQUE_REQUEST_ID
+          - INCOMPLETE_CUSTOMER_BETTING_PROFILE
+          - INVALID_CUSTOMER_PROFILE
+          - LIMITS_CONFIGURATION_ISSUE
+          - RESPONSIBLE_BETTING_LOSS_LIMIT_EXCEEDED
+          - RESPONSIBLE_BETTING_RISK_LIMIT_EXCEEDED
+          - RESUBMIT_REQUEST
+          - SYSTEM_ERROR_3
+          - LICENCE_RESTRICTION_LIVE_BETTING_BLOCKED
+          - INVALID_HANDICAP
+          - BETTING_SUSPENDED
+      uniqueRequestId:
+        type: string
+        example: D5CC50E4-284D-4D50-8D49-429BDC4F2A48
+        description: Echo of the uniqueRequestId from the request.
+      straightBet:
+        $ref: '#/definitions/StraightBet'
+    description: ''
+  PlaceBetResponseV4:
+    type: object
+    properties:
+      status:
+        type: string
+        example: ACCEPTED
+        description: Status of the response.
+        enum:
+          - ACCEPTED
+          - PENDING_ACCEPTANCE
+          - PROCESSED_WITH_ERROR
+      errorCode:
+        type: string
+        example: null
+        x-nullable: true
+        description: |
+          If Status is PROCESSED_WITH_ERROR, errorCode will be in the response. 
+          
+          ALL_BETTING_CLOSED = Betting is not allowed at this moment. This may happen during system maintenance,  
+          ALL_LIVE_BETTING_CLOSED = Live betting is not allowed at this moment. This may happen during system maintenance,  
+          ABOVE_EVENT_MAX = Bet cannot be placed because client exceeded allowed maximum of risk on a line,  
+          ABOVE_MAX_BET_AMOUNT = Stake is above allowed maximum amount,   
+          BELOW_MIN_BET_AMOUNT = Stake is below allowed minimum amount,  
+          BLOCKED_BETTING = Betting is suspended for the client,  
+          BLOCKED_CLIENT = Client is no longer active,   
+          INSUFFICIENT_FUNDS = Bet is submitted by a client with insufficient funds,  
+          INVALID_COUNTRY = Client country is not allowed for betting,  
+          INVALID_EVENT = Invalid eventid,  
+          INVALID_ODDS_FORMAT = If a bet was submitted with the odds format that is not allowed for the client,  
+          LINE_CHANGED = Bet is submitted on a line that has changed,  
+          LISTED_PITCHERS_SELECTION_ERROR = If bet was submitted with pitcher1MustStart and/or pitcher2MustStart parameters in Place Bet request with values that are not allowed,  
+          OFFLINE_EVENT = Bet is submitted on a event that is offline or the submitted line is not offered at the moment due to points/handicap change or the submitted bet type is just not offered at the moment,  
+          PAST_CUTOFFTIME = Bet is submitted on a game after the betting cutoff time,  
+          RED_CARDS_CHANGED = Bet is submitted on a live soccer event with changed red card count,  
+          SCORE_CHANGED = Bet is submitted on a live soccer event with changed score,             
+          DUPLICATE_UNIQUE_REQUEST_ID = Request with the same uniqueRequestId was already processed. Please set the new value if you still want the request to be processed,  
+          INCOMPLETE_CUSTOMER_BETTING_PROFILE = System configuration issue,  
+          INVALID_CUSTOMER_PROFILE = System configuration issue,  
+          LIMITS_CONFIGURATION_ISSUE = System configuration issue,  
+          RESPONSIBLE_BETTING_LOSS_LIMIT_EXCEEDED = Client has reached his total loss limit,  
+          RESPONSIBLE_BETTING_RISK_LIMIT_EXCEEDED = Client has reached his total risk limit,  
+          RESUBMIT_REQUEST = Unable to process the request but the request itself is valid. This happens more often on the live betting in situations when there is more than one place bet request at the same on the same line. When this happens, we don't keep the place bet request on the server until we know if we can accept or reject the bet, but instead we return the error. It's very likely that the line will change after that. To reduce a chance of getting RESUBMIT_REQUEST client can try to place a bet as fast as possible,  
+          SYSTEM_ERROR_3 = Unexpected error,  
+          LICENCE_RESTRICTION_LIVE_BETTING_BLOCKED - Live betting blocked due to licence restrictions,  
+          INVALID_HANDICAP = Invalid handicap,  
+          BETTING_SUSPENDED = Due to anomalous market circumstances bets are not currently being accepted on this line. Try again with next LineId.
+        enum:
+          - ALL_BETTING_CLOSED
+          - ALL_LIVE_BETTING_CLOSED
+          - ABOVE_EVENT_MAX
+          - ABOVE_MAX_BET_AMOUNT
+          - BELOW_MIN_BET_AMOUNT
+          - BLOCKED_BETTING
+          - BLOCKED_CLIENT
+          - INSUFFICIENT_FUNDS
+          - INVALID_COUNTRY
+          - INVALID_EVENT
+          - INVALID_ODDS_FORMAT
+          - LINE_CHANGED
+          - LISTED_PITCHERS_SELECTION_ERROR
+          - OFFLINE_EVENT
+          - PAST_CUTOFFTIME
+          - RED_CARDS_CHANGED
+          - SCORE_CHANGED          
+          - DUPLICATE_UNIQUE_REQUEST_ID
+          - INCOMPLETE_CUSTOMER_BETTING_PROFILE
+          - INVALID_CUSTOMER_PROFILE
+          - LIMITS_CONFIGURATION_ISSUE
+          - RESPONSIBLE_BETTING_LOSS_LIMIT_EXCEEDED
+          - RESPONSIBLE_BETTING_RISK_LIMIT_EXCEEDED
+          - RESUBMIT_REQUEST
+          - SYSTEM_ERROR_3
+          - LICENCE_RESTRICTION_LIVE_BETTING_BLOCKED
+          - INVALID_HANDICAP
+          - BETTING_SUSPENDED
+      uniqueRequestId:
+        type: string
+        example: D5CC50E4-284D-4D50-8D49-429BDC4F2A48
+        description: Echo of the uniqueRequestId from the request.
+      betId:
+        type: integer
+        format: int64
+        example: 759629245
+        description: Bet identification
+      win:
+        type: number
+        format: double
+        example: 5.5
+        description: Win amount.
+      risk:
+        type: number
+        format: double
+        example: 10.5
+        description: Risk amount.
+      price:
+        type: number
+        format: double
+        example: 2.5
+        description: Price
+      points:
+        type: number
+        format: double
+        example: 1
+        description: points
+  StraightBet:
+    type: object
+    required:
+      - betId
+      - betStatus
+      - betType
+      - oddsFormat
+      - placedAt
+      - risk
+      - updateSequence
+      - wagerNumber
+      - win
+    properties:
+      betId:
+        type: integer
+        format: int64
+        example: 759629245
+        description: Bet identification
+      wagerNumber:
+        type: integer
+        format: int32
+        example: 1
+        description: 'Wager identification. All bets placed thru the API will have value 1. Website Classic view supports multiple contest(special) bets placement in the same bet slip in that case the bet would have appropriate wager number, as well as all round robin parlay bets.'
+      placedAt:
+        type: string
+        format: date-time
+        example: '2017-09-05T01:32:59Z'
+        description: Date time when the bet was placed.
+      betStatus:
+        type: string
+        example: ACCEPTED
+        description: |
+          Bet Status.  
+          
+          ACCEPTED = Bet was accepted,  
+          CANCELLED = Bet is cancelled as per Pinnacle betting rules,  
+          LOSE = The bet is settled as lose,  
+          PENDING_ACCEPTANCE = This status is reserved only for live bets. If a live bet is placed during danger zone or live delay is applied, it will be in PENDING_ACCEPTANCE , otherwise in ACCEPTED status. From this status bet can go to ACCEPTED or NOT_ACCEPTED status,  
+          REFUNDED = When an event is cancelled or when the bet is settled as push, the bet will have REFUNDED status,  
+          NOT_ACCEPTED = Bet was not accepted. Bet can be in this status only if it was previously in PENDING_ACCEPTANCE status,  
+          WON = The bet is settled as won 
+        enum:
+          - ACCEPTED
+          - CANCELLED
+          - LOSE
+          - PENDING_ACCEPTANCE
+          - REFUNDED
+          - NOT_ACCEPTED
+          - WON
+      betType:
+        type: string
+        example: MONEYLINE
+        description: 'Bet type.'
+        enum:
+          - MONEYLINE
+          - TEAM_TOTAL_POINTS
+          - SPREAD
+          - TOTAL_POINTS
+          - SPECIAL
+          - PARLAY
+          - TEASER
+          - MANUAL
+      win:
+        type: number
+        format: double
+        example: 1
+        description: Win amount.
+      risk:
+        type: number
+        format: double
+        example: 1.5
+        description: Risk amount.
+      winLoss:
+        type: number
+        format: double
+        example: null
+        x-nullable: true
+        description: Win-Loss for settled bets.
+      oddsFormat:
+        $ref: '#/definitions/OddsFormat'
+      customerCommission:
+        type: number
+        format: double
+        example: null
+        x-nullable: true
+        description: Client’s commission on the bet.
+      cancellationReason:
+        $ref: '#/definitions/CancellationReason'
+      updateSequence:
+        type: integer
+        format: int64
+        example: 111548915
+        description: Update Sequence
+      sportId:
+        type: integer
+        format: int32
+        example: 29
+        description: ''
+      leagueId:
+        type: integer
+        format: int32
+        example: 2462
+        description: ''
+      eventId:
+        type: integer
+        format: int64
+        example: 757064557
+        description: ''
+      handicap:
+        type: number
+        format: double
+        example: null
+        x-nullable: true
+        description: ''
+      price:
+        type: number
+        format: double
+        example: -155
+        description: ''
+      teamName:
+        type: string
+        example: Crvena Zvezda
+        description: ''
+      side:
+        type: string
+        example: null
+        x-nullable: true
+        description: 'Side type.'
+        enum:
+          - OVER
+          - UNDER
+      pitcher1:
+        type: string
+        example: null
+        x-nullable: true
+        description: 'Pitcher name of team1. Only for bets on baseball.'
+      pitcher2:
+        type: string
+        example: null
+        x-nullable: true
+        description: 'Pitcher name of team2. Only for bets on baseball.'
+      pitcher1MustStart:
+        type: string
+        enum:
+          - TRUE
+          - FALSE
+        example: null
+        x-nullable: true
+        description: 'Whether the team1 pitcher must start. Only for bets on baseball.'
+      pitcher2MustStart:
+        type: string
+        enum:
+          - TRUE
+          - FALSE
+        example: null
+        x-nullable: true
+        description: 'Whether the team1 pitcher must start. Only for bets on baseball.'
+      team1:
+        type: string
+        example: Crvena Zvezda
+        description: ''
+      team2:
+        type: string
+        example: Partizan
+        description: ''
+      periodNumber:
+        type: integer
+        format: int32
+        example: 0
+        description: ''
+      team1Score:
+        type: number
+        format: double
+        example: null
+        x-nullable: true
+        description: 'Team 1 score that the bet was placed on, only for live bets.'
+      team2Score:
+        type: number
+        format: double
+        example: null
+        x-nullable: true
+        description: 'Team 2 score that the bet was placed, only for live bets.'
+      ftTeam1Score:
+        type: number
+        format: double
+        example: null
+        x-nullable: true
+        description: 'Full time team 1 score, only for settled bets.'
+      ftTeam2Score:
+        type: number
+        format: double
+        example: null
+        x-nullable: true
+        description: 'Full time team 2 score, only for settled bets.'
+      pTeam1Score:
+        type: number
+        format: double
+        example: null
+        x-nullable: true
+        description: '.End of period team 1 score, only for settled bets. If the bet was placed on Game period (periodNumber =0) , this will be null . '
+      pTeam2Score:
+        type: number
+        format: double
+        example: null
+        x-nullable: true
+        description: 'End of period team 2 score, only for settled bets. If the bet was placed on Game period (periodNumber =0) , this will be null'
+      isLive:
+        type: string
+        enum:
+          - TRUE
+          - FALSE
+        example: "FALSE"
+        description: Whether the bet is on live event
+    description: ''
+  StraightBetV3:
+      type: object
+      required:
+        - betId
+        - betStatus
+        - betStatus2
+        - betType
+        - oddsFormat
+        - placedAt
+        - risk
+        - updateSequence
+        - wagerNumber
+        - win
+      properties:
+        betId:
+          type: integer
+          format: int64
+          example: 759629245
+          description: Bet identification
+        wagerNumber:
+          type: integer
+          format: int32
+          example: 1
+          description: 'Wager identification. All bets placed thru the API will have value 1. Website Classic view supports multiple contest(special) bets placement in the same bet slip in that case the bet would have appropriate wager number, as well as all round robin parlay bets.'
+        placedAt:
+          type: string
+          format: date-time
+          example: '2017-09-05T01:32:59Z'
+          description: Date time when the bet was placed.
+        betStatus:
+          type: string
+          example: ACCEPTED
+          description: |
+            Bet Status.  
+            
+            ACCEPTED = Bet was accepted,  
+            CANCELLED = Bet is cancelled as per Pinnacle betting rules,  
+            LOSE = The bet is settled as lose,  
+            PENDING_ACCEPTANCE = This status is reserved only for live bets. If a live bet is placed during danger zone or live delay is applied, it will be in PENDING_ACCEPTANCE , otherwise in ACCEPTED status. From this status bet can go to ACCEPTED or NOT_ACCEPTED status,  
+            REFUNDED = When an event is cancelled or when the bet is settled as push, the bet will have REFUNDED status,  
+            NOT_ACCEPTED = Bet was not accepted. Bet can be in this status only if it was previously in PENDING_ACCEPTANCE status,  
+            WON = The bet is settled as won,  
+            REJECTED = Bet is rejected
+          enum:
+            - ACCEPTED
+            - CANCELLED
+            - LOSE
+            - PENDING_ACCEPTANCE
+            - REFUNDED
+            - NOT_ACCEPTED
+            - WON
+            - REJECTED
+        betStatus2:
+          type: string
+          example: ACCEPTED
+          description: |
+            Bet Status.  
+            
+            ACCEPTED = Bet was accepted,  
+            CANCELLED = Bet is cancelled as per Pinnacle betting rules,  
+            LOST = The bet is settled as lose,  
+            PENDING_ACCEPTANCE = This status is reserved only for live bets. If a live bet is placed during danger zone or live delay is applied, it will be in PENDING_ACCEPTANCE , otherwise in ACCEPTED status. From this status bet can go to ACCEPTED or NOT_ACCEPTED status,  
+            REFUNDED = When an event is cancelled or when the bet is settled as push, the bet will have REFUNDED status,  
+            NOT_ACCEPTED = Bet was not accepted. Bet can be in this status only if it was previously in PENDING_ACCEPTANCE status,  
+            WON = The bet is settled as won,  
+            REJECTED = Bet is rejected,  
+            HALF_WON_HALF_PUSHED = The bet is settled as half won half pushed. Only for asian handicap bets,  
+            HALF_LOST_HALF_PUSHED = The bet is settled as half lost half pushed. Only for asian handicap bets
+          enum:
+            - ACCEPTED
+            - CANCELLED
+            - LOST
+            - PENDING_ACCEPTANCE
+            - REFUNDED
+            - NOT_ACCEPTED
+            - WON
+            - REJECTED
+            - HALF_WON_HALF_PUSHED
+            - HALF_LOST_HALF_PUSHED
+        betType:
+          type: string
+          example: MONEYLINE
+          description: 'Bet type.'
+          enum:
+            - MONEYLINE
+            - TEAM_TOTAL_POINTS
+            - SPREAD
+            - TOTAL_POINTS
+            - SPECIAL
+            - PARLAY
+            - TEASER
+            - MANUAL
+        win:
+          type: number
+          format: double
+          example: 1
+          description: Win amount.
+        risk:
+          type: number
+          format: double
+          example: 1.5
+          description: Risk amount.
+        winLoss:
+          type: number
+          format: double
+          example: null
+          x-nullable: true
+          description: Win-Loss for settled bets.
+        oddsFormat:
+          $ref: '#/definitions/OddsFormat'
+        customerCommission:
+          type: number
+          format: double
+          example: null
+          x-nullable: true
+          description: Client’s commission on the bet.
+        cancellationReason:
+          $ref: '#/definitions/CancellationReason'
+        updateSequence:
+          type: integer
+          format: int64
+          example: 111548915
+          description: Update Sequence
+        sportId:
+          type: integer
+          format: int32
+          example: 29
+          description: ''
+        leagueId:
+          type: integer
+          format: int32
+          example: 2462
+          description: ''
+        eventId:
+          type: integer
+          format: int64
+          example: 757064557
+          description: ''
+        handicap:
+          type: number
+          format: double
+          example: null
+          x-nullable: true
+          description: ''
+        price:
+          type: number
+          format: double
+          example: -155
+          description: ''
+        teamName:
+          type: string
+          example: Crvena Zvezda
+          description: ''
+        side:
+          type: string
+          example: null
+          x-nullable: true
+          description: 'Side type.'
+          enum:
+            - OVER
+            - UNDER
+        pitcher1:
+          type: string
+          example: null
+          x-nullable: true
+          description: 'Pitcher name of team1. Only for bets on baseball.'
+        pitcher2:
+          type: string
+          example: null
+          x-nullable: true
+          description: 'Pitcher name of team2. Only for bets on baseball.'
+        pitcher1MustStart:
+          type: boolean
+          example: false
+          description: 'Baseball only. Refers to the pitcher for Team1.  This applicable only for MONEYLINE bet type, for all other bet types this has to be TRUE.'  
+          x-nullable: true
+        pitcher2MustStart:
+          type: boolean
+          example: false
+          description: 'Baseball only. Refers to the pitcher for Team2.  This applicable only for MONEYLINE bet type, for all other bet types this has to be TRUE.'  
+          x-nullable: true  
+        team1:
+          type: string
+          example: Crvena Zvezda
+          description: ''
+        team2:
+          type: string
+          example: Partizan
+          description: ''
+        periodNumber:
+          type: integer
+          format: int32
+          example: 0
+          description: ''
+        team1Score:
+          type: number
+          format: double
+          example: null
+          x-nullable: true
+          description: 'Team 1 on the period that the bet was placed on at the moment of placing a bet, only for live bets.'
+        team2Score:
+          type: number
+          format: double
+          example: null
+          x-nullable: true
+          description: 'Team 2 on the period that the bet was placed on at the moment of placing a bet, only for live bets.'
+        ftTeam1Score:
+          type: number
+          format: double
+          example: null
+          x-nullable: true
+          description: 'Full time team 1 score, only for settled bets.'
+        ftTeam2Score:
+          type: number
+          format: double
+          example: null
+          x-nullable: true
+          description: 'Full time team 2 score, only for settled bets.'
+        pTeam1Score:
+          type: number
+          format: double
+          example: null
+          x-nullable: true
+          description: '.End of period team 1 score, only for settled bets. If the bet was placed on Game period (periodNumber =0), this will be null . '
+        pTeam2Score:
+          type: number
+          format: double
+          example: null
+          x-nullable: true
+          description: 'End of period team 2 score, only for settled bets. If the bet was placed on Game period (periodNumber =0), this will be null'
+        isLive:
+          type: boolean
+          example: false
+          description: Whether the bet is on live event
+        eventStartTime:
+          type: string 
+          format: date-time
+          example: 2017-10-05T01:32:59Z
+          x-nullable: false
+          description: 'Date time when the event starts.'
+        resultingUnit:
+          type: string
+          description: 'Specifies based on what the event is being resulted, e.g. Corners, Bookings , Regular'          
+      description: ''    
+  StraightBetRegradedWagerHistoryV1:
+      type: object
+      required:
+        - betId
+        - betStatus
+        - betStatus2
+        - betType
+        - oddsFormat
+        - placedAt
+        - risk
+        - updateSequence
+        - wagerNumber
+        - win
+      properties:
+        betId:
+          type: integer
+          format: int64
+          example: 759629245
+          description: Bet identification
+        originalBetId:
+          type: integer
+          format: int64
+          example: 759629321
+          description: Original bet identification
+        wagerNumber:
+          type: integer
+          format: int32
+          example: 1
+          description: 'Wager identification. All bets placed thru the API will have value 1. Website Classic view supports multiple contest(special) bets placement in the same bet slip in that case the bet would have appropriate wager number, as well as all round robin parlay bets.'
+        placedAt:
+          type: string
+          format: date-time
+          example: '2017-09-05T01:32:59Z'
+          description: Date time when the bet was placed.
+        betStatus:
+          type: string
+          example: ACCEPTED
+          description: |
+            Bet Status.  
+            
+            ACCEPTED = Bet was accepted,  
+            CANCELLED = Bet is cancelled as per Pinnacle betting rules,  
+            LOSE = The bet is settled as lose,  
+            PENDING_ACCEPTANCE = This status is reserved only for live bets. If a live bet is placed during danger zone or live delay is applied, it will be in PENDING_ACCEPTANCE , otherwise in ACCEPTED status. From this status bet can go to ACCEPTED or NOT_ACCEPTED status,  
+            REFUNDED = When an event is cancelled or when the bet is settled as push, the bet will have REFUNDED status,  
+            NOT_ACCEPTED = Bet was not accepted. Bet can be in this status only if it was previously in PENDING_ACCEPTANCE status,  
+            WON = The bet is settled as won,  
+            REJECTED = Bet is rejected
+          enum:
+            - ACCEPTED
+            - CANCELLED
+            - LOSE
+            - PENDING_ACCEPTANCE
+            - REFUNDED
+            - NOT_ACCEPTED
+            - WON
+            - REJECTED
+        betStatus2:
+          type: string
+          example: ACCEPTED
+          description: |
+            Bet Status.  
+            
+            ACCEPTED = Bet was accepted,  
+            CANCELLED = Bet is cancelled as per Pinnacle betting rules,  
+            LOST = The bet is settled as lose,  
+            PENDING_ACCEPTANCE = This status is reserved only for live bets. If a live bet is placed during danger zone or live delay is applied, it will be in PENDING_ACCEPTANCE , otherwise in ACCEPTED status. From this status bet can go to ACCEPTED or NOT_ACCEPTED status,  
+            REFUNDED = When an event is cancelled or when the bet is settled as push, the bet will have REFUNDED status,  
+            NOT_ACCEPTED = Bet was not accepted. Bet can be in this status only if it was previously in PENDING_ACCEPTANCE status,  
+            WON = The bet is settled as won,  
+            REJECTED = Bet is rejected,  
+            HALF_WON_HALF_PUSHED = The bet is settled as half won half pushed. Only for asian handicap bets,  
+            HALF_LOST_HALF_PUSHED = The bet is settled as half lost half pushed. Only for asian handicap bets
+          enum:
+            - ACCEPTED
+            - CANCELLED
+            - LOST
+            - PENDING_ACCEPTANCE
+            - REFUNDED
+            - NOT_ACCEPTED
+            - WON
+            - REJECTED
+            - HALF_WON_HALF_PUSHED
+            - HALF_LOST_HALF_PUSHED
+        betType:
+          type: string
+          example: MONEYLINE
+          description: 'Bet type.'
+          enum:
+            - MONEYLINE
+            - TEAM_TOTAL_POINTS
+            - SPREAD
+            - TOTAL_POINTS
+            - SPECIAL
+            - PARLAY
+            - TEASER
+            - MANUAL
+        win:
+          type: number
+          format: double
+          example: 1
+          description: Win amount.
+        risk:
+          type: number
+          format: double
+          example: 1.5
+          description: Risk amount.
+        winLoss:
+          type: number
+          format: double
+          example: null
+          x-nullable: true
+          description: Win-Loss for settled bets.
+        oddsFormat:
+          $ref: '#/definitions/OddsFormat'
+        customerCommission:
+          type: number
+          format: double
+          example: null
+          x-nullable: true
+          description: Client’s commission on the bet.
+        cancellationReason:
+          $ref: '#/definitions/CancellationReason'
+        updateSequence:
+          type: integer
+          format: int64
+          example: 111548915
+          description: Update Sequence
+        sportId:
+          type: integer
+          format: int32
+          example: 29
+          description: ''
+        leagueId:
+          type: integer
+          format: int32
+          example: 2462
+          description: ''
+        leagueName:
+          type: string
+          example: Spain - Copa del Rey
+          description: ''
+        eventId:
+          type: integer
+          format: int64
+          example: 757064557
+          description: ''
+        handicap:
+          type: number
+          format: double
+          example: null
+          x-nullable: true
+          description: ''
+        price:
+          type: number
+          format: double
+          example: -155
+          description: ''
+        teamName:
+          type: string
+          example: Crvena Zvezda
+          description: ''
+        side:
+          type: string
+          example: null
+          x-nullable: true
+          description: 'Side type.'
+          enum:
+            - OVER
+            - UNDER
+        pitcher1:
+          type: string
+          example: null
+          x-nullable: true
+          description: 'Pitcher name of team1. Only for bets on baseball.'
+        pitcher2:
+          type: string
+          example: null
+          x-nullable: true
+          description: 'Pitcher name of team2. Only for bets on baseball.'
+        pitcher1MustStart:
+          type: boolean
+          example: false
+          description: 'Baseball only. Refers to the pitcher for Team1.  This applicable only for MONEYLINE bet type, for all other bet types this has to be TRUE.'  
+          x-nullable: true
+        pitcher2MustStart:
+          type: boolean
+          example: false
+          description: 'Baseball only. Refers to the pitcher for Team2.  This applicable only for MONEYLINE bet type, for all other bet types this has to be TRUE.'  
+          x-nullable: true  
+        team1:
+          type: string
+          example: Crvena Zvezda
+          description: ''
+        team2:
+          type: string
+          example: Partizan
+          description: ''
+        periodNumber:
+          type: integer
+          format: int32
+          example: 0
+          description: ''
+        team1Score:
+          type: number
+          format: double
+          example: null
+          x-nullable: true
+          description: 'Team 1 on the period that the bet was placed on at the moment of placing a bet, only for live bets.'
+        team2Score:
+          type: number
+          format: double
+          example: null
+          x-nullable: true
+          description: 'Team 2 on the period that the bet was placed on at the moment of placing a bet, only for live bets.'
+        ftTeam1Score:
+          type: number
+          format: double
+          example: null
+          x-nullable: true
+          description: 'Full time team 1 score, only for settled bets.'
+        ftTeam2Score:
+          type: number
+          format: double
+          example: null
+          x-nullable: true
+          description: 'Full time team 2 score, only for settled bets.'
+        pTeam1Score:
+          type: number
+          format: double
+          example: null
+          x-nullable: true
+          description: '.End of period team 1 score, only for settled bets. If the bet was placed on Game period (periodNumber =0), this will be null . '
+        pTeam2Score:
+          type: number
+          format: double
+          example: null
+          x-nullable: true
+          description: 'End of period team 2 score, only for settled bets. If the bet was placed on Game period (periodNumber =0), this will be null'
+        isLive:
+          type: boolean
+          example: false
+          description: Whether the bet is on live event
+        eventStartTime:
+          type: string 
+          format: date-time
+          example: 2017-10-05T01:32:59Z
+          x-nullable: false
+          description: 'Date time when the event starts.'
+        resultingUnit:
+          type: string
+          description: 'Specifies based on what the event is being resulted, e.g. Corners, Bookings , Regular'          
+      description: '' 
+  CancellationReason:
+    type: object
+    required:
+      - code
+    properties:
+      code:
+        type: string
+        example: FBS_CW_227
+      details:
+          $ref: '#/definitions/CancellationDetails'
+    description: |  
+                Possible keys \:  
+                * correctTeam1Id
+                * correctTeam2Id
+                * correctListedPitcher1
+                * correctListedPitcher2
+                * correctSpread
+                * correctTotalPoints
+                * correctTeam1TotalPoints
+                * correctTeam2TotalPoints
+                * correctTeam1Score
+                * correctTeam2Score
+                * correctTeam1TennisSetsScore
+                * correctTeam2TennisSetsScore
+  CancellationDetails:
+    type: array
+    items:
+      - $ref: "#/definitions/CancellationDetailsItem"
+    example:  [
+                    {
+                        "key": "correctSpread",
+                        "value": "-1.5"
+                    }
+                ]
+  CancellationDetailsItem:
+    type: object
+    properties:
+      key:
+        type: string
+        example: correctSpread  
+      value:
+        type: string  
+        example: "1.5"    
+  ErrorResponseWithErrorRef:
+    type: object
+    properties:
+      ref:
+        type: string
+        example: f5d9ba85-cc97-47a9-ad92-ea57d0ea2cc0
+      code:
+        type: string
+        example: UNEXPECTED_ERROR
+      message:
+        type: string
+        example: Internal error
+  PlaceParlayBetRequest:
+    type: object
+    properties:
+      uniqueRequestId:
+        type: string
+        format: uuid
+        example: A9EB2EB1-13A5-4600-9F1B-4859379CDEC4
+        description: This unique id of the place bet requests. This is to support idempotent requests.
+      acceptBetterLine:
+        type: boolean
+        example: true
+        description: Whether or not to accept a bet when there is a line change in favor of the client.
+      riskAmount:
+        type: number
+        format: double
+        example: 10.5
+        description: 'Amount in client’s currency. It is always risk amount when placing Parlay bets NOTE: If round robin options is used this amount will apply for all parlays so actual amount wagered will be riskAmount X number of Parlays.'
+      oddsFormat:
+        $ref: '#/definitions/OddsFormat'
+      legs:
+        type: array
+        description: Collection of parlay legs.
+        items:
+          $ref: '#/definitions/ParlayLegRequest'
+      roundRobinOptions:
+        type: array
+        description: ''
+        items:
+          type: string
+          enum:
+            - Parlay
+            - TwoLegRoundRobin
+            - ThreeLegRoundRobin
+            - FourLegRoundRobin
+            - FiveLegRoundRobin
+            - SixLegRoundRobin
+            - SevenLegRoundRobin
+            - EightLegRoundRobin
+    description: Request to place a bet
+  ParlayLegRequest:
+    type: object
+    properties:
+      uniqueLegId:
+        type: string
+        example: CFAD8ACF-E410-437C-8F0F-33611F565981
+        description: Unique id of the leg. It's used to identify and match legs in the response.
+      lineId:
+        type: integer
+        format: int64
+        example: 419715968
+        description: Line identification.
+      altLineId:
+        type: integer
+        format: int64
+        example: null
+        x-nullable: true
+        description: Alternate line identification.
+      pitcher1MustStart:
+        type: boolean
+        example: false
+        description: 'Baseball only. Refers to the pitcher for Team1.  This applicable only for MONEYLINE bet type, for all other bet types this has to be TRUE.'
+      pitcher2MustStart:
+        type: boolean
+        example: false
+        description: 'Baseball only. Refers to the pitcher for Team2. This applicable only for MONEYLINE bet type, for all other bet types this has to be TRUE.'
+      sportId:
+        type: integer
+        format: int32
+        example: 29
+        description: Sport identification.
+      eventId:
+        type: integer
+        format: int64
+        example: 758023991
+        description: Event identification.
+      periodNumber:
+        type: integer
+        format: int32
+        example: 0
+        description: 'This represents the period of the match. For example, for soccer we have: 0 -  Game, 1 - 1st Half and 2 - 2nd Half'
+      legBetType:
+        type: string
+        example: MONELYLINE
+        description: 'Only SPREAD, MONEYLINE, TOTAL_POINTS and TEAM_TOTAL_POINTS are supported.'
+        enum:
+          - MONEYLINE
+          - SPREAD
+          - TOTAL_POINTS
+          - TEAM_TOTAL_POINTS
+      team:
+        type: string
+        example: TEAM1
+        description: Chosen team type. This is needed only for SPREAD and MONEYLINE bet types.
+      side:
+        type: string
+        example: null
+        x-nullable: true
+        description: 'Chosen side type. This is needed only for TOTAL_POINTS bet type.'
+        enum:
+          - OVER
+          - UNDER
+    description: ''
+  PlaceParlayBetResponseV2:
+    type: object
+    properties:
+      status:
+        type: string
+        example: ACCEPTED
+        description: Status of the response.
+        enum:
+          - ACCEPTED
+          - PENDING_ACCEPTANCE
+          - PROCESSED_WITH_ERROR
+      errorCode:
+        type: string
+        example: null
+        x-nullable: true
+        description: | 
+          When Status is PROCESSED_WITH_ERROR, provides a code indicating the specific problem.
+          
+          
+          ABOVE_MAX_BET_AMOUNT = Stake is above allowed maximum amount,  
+          ALL_BETTING_CLOSED = Betting is not allowed at this moment,  
+          BELOW_MIN_BET_AMOUNT = Stake is below allowed minimum amount,  
+          BLOCKED_BETTING = Betting is suspended for the client,   
+          BLOCKED_CLIENT = Client is no longer active,  
+          INSUFFICIENT_FUNDS = Bet is submitted by a client with insufficient funds,  
+          INVALID_COUNTRY = Client country is not allowed for betting,  
+          INVALID_LEGS = One or more legs are invalid,  
+          INVALID_ODDS_FORMAT = If a bet was submitted with the odds format that is not allowed for the client,  
+          INVALID_ROUND_ROBIN_OPTIONS = Round robin options are invalid (i.e. does not match with number of legs),  
+          ROUND_ROBIN_DISALLOWED = Round robin is disallowed for one of the leagues,  
+          TOO_MANY_LEGS = Maximum of 10 legs can be specified,  
+          TOO_FEW_LEGS = At least 2 legs are required for Parlay,  
+          RESPONSIBLE_BETTING_LOSS_LIMIT_EXCEEDED = Client has reached his total loss limit,  
+          RESPONSIBLE_BETTING_RISK_LIMIT_EXCEEDED = Client has reached his total risk limit,  
+          INVALID_REQUEST = Request has invalid parameters,  
+          DUPLICATE_UNIQUE_REQUEST_ID = Request with the same uniqueRequestId was already processed. Please set the new value if you still want the request to be processed,  
+          SYSTEM_ERROR_3 = Unexpected error 
+        enum:
+          - ABOVE_MAX_BET_AMOUNT
+          - ALL_BETTING_CLOSED
+          - BELOW_MIN_BET_AMOUNT
+          - BLOCKED_BETTING
+          - BLOCKED_CLIENT
+          - INSUFFICIENT_FUNDS
+          - INVALID_COUNTRY
+          - INVALID_LEGS
+          - INVALID_ODDS_FORMAT
+          - INVALID_ROUND_ROBIN_OPTIONS
+          - ROUND_ROBIN_DISALLOWED
+          - TOO_MANY_LEGS
+          - TOO_FEW_LEGS
+          - RESPONSIBLE_BETTING_RISK_LIMIT_EXCEEDED
+          - RESPONSIBLE_BETTING_LOSS_LIMIT_EXCEEDED
+          - INVALID_REQUEST
+          - DUPLICATE_UNIQUE_REQUEST_ID
+          - SYSTEM_ERROR_3
+      betId:
+        type: integer
+        format: int64
+        example: 759629245
+        description: Id of a newly created bet.
+      uniqueRequestId:
+        type: string
+        format: uuid
+        example: D5CC50E4-284D-4D50-8D49-429BDC4F2A48
+        description: Unique identifier provided in the request.
+      roundRobinOptionWithOdds:
+        type: array
+        description: Provides array with all acceptable Round Robin options with parlay odds for that option.
+        items:
+          $ref: '#/definitions/RoundRobinOptionWithOdds'
+      maxRiskStake:
+        type: number
+        format: double
+        description: Maximum stake amount
+      minRiskStake:
+        type: number
+        format: double
+        description: Minimum stake amount
+      validLegs:
+        type: array
+        description: Collection of valid legs (format described below). Can be empty if no valid legs found.
+        items:
+          $ref: '#/definitions/ParlayLegResponse'
+      invalidLegs:
+        type: array
+        description: The collection of legs that resulted in error (format described below). Can be empty if no invalid legs found.
+        items:
+          $ref: '#/definitions/ParlayLegResponse'
+      parlayBet:
+        $ref: '#/definitions/ParlayBetV2'		
+    description: ''	
+  PlaceParlayBetResponseV4:
+    type: object
+    properties:
+      status:
+        type: string
+        example: ACCEPTED
+        description: Status of the response.
+        enum:
+          - ACCEPTED
+          - PENDING_ACCEPTANCE
+          - PROCESSED_WITH_ERROR
+      errorCode:
+        type: string
+        example: null
+        x-nullable: true
+        description: | 
+          When Status is PROCESSED_WITH_ERROR, provides a code indicating the specific problem.
+          
+          
+          ABOVE_MAX_BET_AMOUNT = Stake is above allowed maximum amount,  
+          ALL_BETTING_CLOSED = Betting is not allowed at this moment,  
+          BELOW_MIN_BET_AMOUNT = Stake is below allowed minimum amount,  
+          BLOCKED_BETTING = Betting is suspended for the client,   
+          BLOCKED_CLIENT = Client is no longer active,  
+          INSUFFICIENT_FUNDS = Bet is submitted by a client with insufficient funds,  
+          INVALID_COUNTRY = Client country is not allowed for betting,  
+          INVALID_LEGS = One or more legs are invalid,  
+          INVALID_ODDS_FORMAT = If a bet was submitted with the odds format that is not allowed for the client,  
+          INVALID_ROUND_ROBIN_OPTIONS = Round robin options are invalid (i.e. does not match with number of legs),  
+          ROUND_ROBIN_DISALLOWED = Round robin is disallowed for one of the leagues,  
+          TOO_MANY_LEGS = Maximum of 10 legs can be specified,  
+          TOO_FEW_LEGS = At least 2 legs are required for Parlay,  
+          RESPONSIBLE_BETTING_LOSS_LIMIT_EXCEEDED = Client has reached his total loss limit,  
+          RESPONSIBLE_BETTING_RISK_LIMIT_EXCEEDED = Client has reached his total risk limit,  
+          INVALID_REQUEST = Request has invalid parameters,  
+          DUPLICATE_UNIQUE_REQUEST_ID = Request with the same uniqueRequestId was already processed. Please set the new value if you still want the request to be processed,  
+          SYSTEM_ERROR_3 = Unexpected error 
+        enum:
+          - ABOVE_MAX_BET_AMOUNT
+          - ALL_BETTING_CLOSED
+          - BELOW_MIN_BET_AMOUNT
+          - BLOCKED_BETTING
+          - BLOCKED_CLIENT
+          - INSUFFICIENT_FUNDS
+          - INVALID_COUNTRY
+          - INVALID_LEGS
+          - INVALID_ODDS_FORMAT
+          - INVALID_ROUND_ROBIN_OPTIONS
+          - ROUND_ROBIN_DISALLOWED
+          - TOO_MANY_LEGS
+          - TOO_FEW_LEGS
+          - RESPONSIBLE_BETTING_RISK_LIMIT_EXCEEDED
+          - RESPONSIBLE_BETTING_LOSS_LIMIT_EXCEEDED
+          - INVALID_REQUEST
+          - DUPLICATE_UNIQUE_REQUEST_ID
+          - SYSTEM_ERROR_3
+      betId:
+        type: integer
+        format: int64
+        example: 759629245
+        description: Id of a newly created bet.
+      uniqueRequestId:
+        type: string
+        format: uuid
+        example: D5CC50E4-284D-4D50-8D49-429BDC4F2A48
+        description: Unique identifier provided in the request.
+      roundRobinOptionWithOdds:
+        type: array
+        description: Provides array with all acceptable Round Robin options with parlay odds for that option.
+        items:
+          $ref: '#/definitions/RoundRobinOptionWithOdds'
+      validLegs:
+        type: array
+        description: Collection of valid legs (format described below). Can be empty if no valid legs found.
+        items:
+          $ref: '#/definitions/ParlayLegResponseV4'
+      invalidLegs:
+        type: array
+        description: The collection of legs that resulted in error (format described below). Can be empty if no invalid legs found.
+        items:
+          $ref: '#/definitions/ParlayLegResponseV4'
+      wagers:
+        type: array
+        description: The collection of returning wagers
+        items:
+          $ref: '#/definitions/ParlayWagerV4Response'
+    description: ''
+  ParlayWagerV4Response:
+    type: object
+    properties:
+      wagerNumber:
+        type: number
+        format: int32
+        example: 1
+        description: Wager number.
+      win:
+        type: number
+        format: double
+        example: 5.5
+        description: Win amount.
+      risk:
+        type: number
+        format: double
+        example: 10.5
+        description: Risk amount.
+      price:
+        type: number
+        format: double
+        example: 7.1
+        description: Price amount.
+      legIds:
+        type: array
+        example: ["A9EB2EB1-13A5-4600-9F1B-4859379CDEC4", "CFAD8ACF-E410-437C-8F0F-33611F565981"]
+        description: Collection of leg ids of the wager.
+        items:
+          type: string
+          format: uuid
+          example: A9EB2EB1-13A5-4600-9F1B-4859379CDEC4
+
+  RoundRobinOptionWithOdds:
+    type: object
+    properties:
+      roundRobinOption:
+        type: string
+        example: Parlay
+        description: ''
+        enum:
+          - Parlay
+          - TwoLegRoundRobin
+          - ThreeLegRoundRobin
+          - FourLegRoundRobin
+          - FiveLegRoundRobin
+          - SixLegRoundRobin
+          - SevenLegRoundRobin
+          - EightLegRoundRobin
+      odds:
+        type: number
+        format: double
+        example: 682
+        description: Parlay odds for this option.
+      unroundedDecimalOdds:
+        type: number
+        format: double
+        example: 7.8231
+        description: Unrounded parlay odds in decimal format to be used for calculations only
+    description: ''
+  ParlayLegResponse:
+    type: object
+    properties:
+      status:
+        type: string
+        example: VALID
+        description: Status of the request.
+        enum:
+          - PROCESSED_WITH_ERROR
+          - VALID
+      errorCode:
+        type: string
+        example: null
+        x-nullable: true
+        description: |
+            When Status is PROCESSED_WITH_ERROR, provides a code indicating the specific problem.
+            
+            CANNOT_PARLAY_LIVE_GAME = The wager is placed on Live game,  
+            CORRELATED = The leg is correlated with another one,  
+            EVENT_NO_LONGER_AVAILABLE_FOR_BETTING = The event is no longer offered,  
+            EVENT_NOT_OFFERED_FOR_PARLAY = The event is not offered for parlaying,  
+            INVALID_EVENT = Live betting is not allowed at this moment,  
+            INVALID_LEG_BET_TYPE = Leg bet type is not accepted for parlaying. Accepted values are SPREAD, MONEYLINE, TOTAL_POINTS,  
+            INVALID_PARLAY_BET = The leg did not validated due to error on Parlay Bet. Check the error PlaceParlayBet response for error details,  
+            LINE_CHANGED = Bet is submitted on a line that has changed,  
+            LINE_DOES_NOT_BELONG_TO_EVENT = LineId does not match the EventId specified in the request,  
+            LISTED_PITCHERS_SELECTION_ERROR = If bet was submitted with pitcher1MustStart and/or pitcher2MustStart parameters with values that are not allowed,  
+            ODDS_NO_LONGER_OFFERED_FOR_PARLAY_1 = Due to line change odds are not offered for parlaying,   
+            ODDS_NO_LONGER_OFFERED_FOR_PARLAY_2 = Due to line change odds are not offered for parlaying,   
+            ODDS_NO_LONGER_OFFERED_FOR_PARLAY_3 = Due to line change odds are not offered for parlaying,   
+            OFFLINE_EVENT = Bet is submitted on an event that is offline or with incorrect lineId,  
+            PAST_CUTOFFTIME = Bet is submitted on a game after the betting cutoff time,   
+            SYSTEM_ERROR_1 = Unexpected error,  
+            SYSTEM_ERROR_2 = Unexpected error,  
+            SYSTEM_ERROR_3 = Unexpected error,  
+            LINE_IS_NOT_AVAILABLE = Line is not available for the specified Parlay Leg,  
+            BETTING_SUSPENDED = Due to anomalous market circumstances bets are not currently being accepted on this line. Try again with next LineId.
+            
+        enum:
+          - CANNOT_PARLAY_LIVE_GAME
+          - CORRELATED
+          - EVENT_NO_LONGER_AVAILABLE_FOR_BETTING
+          - EVENT_NOT_OFFERED_FOR_PARLAY
+          - INVALID_EVENT
+          - INVALID_LEG_BET_TYPE
+          - INVALID_PARLAY_BET
+          - LINE_CHANGED
+          - LINE_DOES_NOT_BELONG_TO_EVENT
+          - LISTED_PITCHERS_SELECTION_ERROR
+          - ODDS_NO_LONGER_OFFERED_FOR_PARLAY_1
+          - ODDS_NO_LONGER_OFFERED_FOR_PARLAY_2
+          - ODDS_NO_LONGER_OFFERED_FOR_PARLAY_3
+          - OFFLINE_EVENT
+          - PAST_CUTOFFTIME
+          - SYSTEM_ERROR_1
+          - SYSTEM_ERROR_2
+          - SYSTEM_ERROR_3
+          - LINE_IS_NOT_AVAILABLE
+          - BETTING_SUSPENDED
+      legId:
+        type: string
+        format: uuid
+        example: 10924E23-A2FE-4317-BFFD-80504675F554
+        description: Echo of the legId from the request.
+      lineId:
+        type: integer
+        format: int64
+        example: 419715968
+        description: Line identification that bet was placed on.
+      altLineId:
+        type: integer
+        format: int64
+        example: null
+        x-nullable: true
+        description: 'If bet was accepted on alternate line, the altLineId will be returned.'
+      price:
+        type: number
+        format: double
+        example: 167
+        description: Price that the bet was placed on.
+      correlatedLegs:
+        type: array
+        description: If errorCode is CORRELATED will contain legIds of all correlated legs.
+        items:
+          type: string
+          format: uuid
+          example: 10924E23-A2FE-4317-BFFD-80504675F554
+    description: ''
+  ParlayLegResponseV4:
+    type: object
+    properties:
+      status:
+        type: string
+        example: VALID
+        description: Status of the request.
+        enum:
+          - PROCESSED_WITH_ERROR
+          - VALID
+      errorCode:
+        type: string
+        example: null
+        x-nullable: true
+        description: |
+            When Status is PROCESSED_WITH_ERROR, provides a code indicating the specific problem.
+            
+            CANNOT_PARLAY_LIVE_GAME = The wager is placed on Live game,  
+            CORRELATED = The leg is correlated with another one,  
+            EVENT_NO_LONGER_AVAILABLE_FOR_BETTING = The event is no longer offered,  
+            EVENT_NOT_OFFERED_FOR_PARLAY = The event is not offered for parlaying,  
+            INVALID_EVENT = Live betting is not allowed at this moment,  
+            INVALID_LEG_BET_TYPE = Leg bet type is not accepted for parlaying. Accepted values are SPREAD, MONEYLINE, TOTAL_POINTS,  
+            INVALID_PARLAY_BET = The leg did not validated due to error on Parlay Bet. Check the error PlaceParlayBet response for error details,  
+            LINE_CHANGED = Bet is submitted on a line that has changed,  
+            LINE_DOES_NOT_BELONG_TO_EVENT = LineId does not match the EventId specified in the request,  
+            LISTED_PITCHERS_SELECTION_ERROR = If bet was submitted with pitcher1MustStart and/or pitcher2MustStart parameters with values that are not allowed,  
+            ODDS_NO_LONGER_OFFERED_FOR_PARLAY_1 = Due to line change odds are not offered for parlaying,   
+            ODDS_NO_LONGER_OFFERED_FOR_PARLAY_2 = Due to line change odds are not offered for parlaying,   
+            ODDS_NO_LONGER_OFFERED_FOR_PARLAY_3 = Due to line change odds are not offered for parlaying,   
+            OFFLINE_EVENT = Bet is submitted on an event that is offline or with incorrect lineId,  
+            PAST_CUTOFFTIME = Bet is submitted on a game after the betting cutoff time,   
+            SYSTEM_ERROR_1 = Unexpected error,  
+            SYSTEM_ERROR_2 = Unexpected error,  
+            SYSTEM_ERROR_3 = Unexpected error,  
+            LINE_IS_NOT_AVAILABLE = Line is not available for the specified Parlay Leg,  
+            BETTING_SUSPENDED = Due to anomalous market circumstances bets are not currently being accepted on this line. Try again with next LineId.
+            
+        enum:
+          - CANNOT_PARLAY_LIVE_GAME
+          - CORRELATED
+          - EVENT_NO_LONGER_AVAILABLE_FOR_BETTING
+          - EVENT_NOT_OFFERED_FOR_PARLAY
+          - INVALID_EVENT
+          - INVALID_LEG_BET_TYPE
+          - INVALID_PARLAY_BET
+          - LINE_CHANGED
+          - LINE_DOES_NOT_BELONG_TO_EVENT
+          - LISTED_PITCHERS_SELECTION_ERROR
+          - ODDS_NO_LONGER_OFFERED_FOR_PARLAY_1
+          - ODDS_NO_LONGER_OFFERED_FOR_PARLAY_2
+          - ODDS_NO_LONGER_OFFERED_FOR_PARLAY_3
+          - OFFLINE_EVENT
+          - PAST_CUTOFFTIME
+          - SYSTEM_ERROR_1
+          - SYSTEM_ERROR_2
+          - SYSTEM_ERROR_3
+          - LINE_IS_NOT_AVAILABLE
+          - BETTING_SUSPENDED
+      legId:
+        type: string
+        format: uuid
+        example: 10924E23-A2FE-4317-BFFD-80504675F554
+        description: Echo of the legId from the request.
+      lineId:
+        type: integer
+        format: int64
+        example: 419715968
+        description: Line identification that bet was placed on.
+      altLineId:
+        type: integer
+        format: int64
+        example: null
+        x-nullable: true
+        description: 'If bet was accepted on alternate line, the altLineId will be returned.'
+      price:
+        type: number
+        format: double
+        example: 167
+        description: Price that the bet was placed on.
+      points:
+        type: number
+        format: double
+        example: 1
+        description: points
+      correlatedLegs:
+        type: array
+        description: If errorCode is CORRELATED will contain legIds of all correlated legs.
+        items:
+          type: string
+          format: uuid
+          example: 10924E23-A2FE-4317-BFFD-80504675F554
+    description: ''
+  ParlayBetV2:
+    type: object
+    required:
+      - betId
+      - betStatus
+      - betStatus2
+      - betType
+      - legs
+      - oddsFormat
+      - placedAt
+      - risk
+      - updateSequence
+      - wagerNumber
+      - win
+    properties:
+      betId:
+        type: integer
+        format: int64
+        example: 760404490
+        description: Bet identification
+      uniqueRequestId:
+        type: string
+        format: uuid
+        example: 10924E23-A2FE-4317-BFFD-80504675F554
+        description: Unique Request Id
+      wagerNumber:
+        type: integer
+        format: int32
+        example: 1
+        description: 'Wager identification. All bets placed thru the API will have value 1. Website Classic view supports multiple contest(special) bets placement in the same bet slip in that case the bet would have appropriate wager number, as well as all round robin parlay bets.'
+      placedAt:
+        type: string
+        format: date-time
+        example: '2017-09-08T00:55:11Z'
+        description: Date time when the bet was placed.
+      betStatus:
+        type: string
+        example: ACCEPTED
+        description: |
+          Bet Status. 
+          
+          ACCEPTED = Bet was accepted,  
+          CANCELLED = Bet is cancelled as per Pinnacle betting rules,  
+          LOSE = The bet is settled as lose,  
+          PENDING_ACCEPTANCE = This status is reserved only for live bets. If a live bet is placed during danger zone or live delay is applied, it will be in PENDING_ACCEPTANCE , otherwise in ACCEPTED status. From this status bet can go to ACCEPTED or REJECTED status,  
+          REFUNDED = When an event is cancelled or when the bet is settled as push, the bet will have REFUNDED status,  
+          NOT_ACCEPTED = Bet was not accepted. Bet can be in this status only if it was previously in PENDING_ACCEPTANCE status,  
+          WON = The bet is settled as won
+        enum:
+          - ACCEPTED
+          - CANCELLED
+          - LOSE
+          - PENDING_ACCEPTANCE
+          - REFUNDED
+          - NOT_ACCEPTED
+          - WON
+      betStatus2:
+        type: string
+        example: ACCEPTED
+        description: |
+          Bet Status. 
+          
+          ACCEPTED = Bet was accepted,  
+          CANCELLED = Bet is cancelled as per Pinnacle betting rules,  
+          LOST = The bet is settled as lose,  
+          PENDING_ACCEPTANCE = This status is reserved only for live bets. If a live bet is placed during danger zone or live delay is applied, it will be in PENDING_ACCEPTANCE , otherwise in ACCEPTED status. From this status bet can go to ACCEPTED or REJECTED status,  
+          REFUNDED = When an event is cancelled or when the bet is settled as push, the bet will have REFUNDED status,  
+          NOT_ACCEPTED = Bet was not accepted. Bet can be in this status only if it was previously in PENDING_ACCEPTANCE status,  
+          WON = The bet is settled as won,  
+          PARTIAL_WON  - If gross payout is greater than the  stake. Only for parlays with the asian handicap legs,  
+          PARTIAL_LOST  - If gross payout is less or equal to the stake. Only for parlays with the asian handicap legs                    
+        enum:
+          - ACCEPTED
+          - CANCELLED
+          - LOST
+          - PENDING_ACCEPTANCE
+          - REFUNDED
+          - NOT_ACCEPTED
+          - WON          
+          - PARTIAL_WON
+          - PARTIAL_LOST          
+      betType:
+        type: string
+        default: PARLAY
+        example: PARLAY
+      win:
+        type: number
+        format: double
+        example: 6.82
+        description: Win amount.
+      risk:
+        type: number
+        format: double
+        example: 1
+        description: Risk amount.
+      winLoss:
+        type: number
+        format: double
+        example: null
+        x-nullable: true
+        description: Win-Loss for settled bets.
+      oddsFormat:
+        $ref: '#/definitions/OddsFormat'
+      customerCommission:
+        type: number
+        format: double
+        example: null
+        x-nullable: true
+        description: Client’s commission on the bet.
+      cancellationReason:
+        $ref: '#/definitions/CancellationReason'
+      updateSequence:
+        type: integer
+        format: int64
+        example: 112839436
+        description: Update Sequence
+      legs:
+        type: array
+        description: ''
+        items:
+          $ref: '#/definitions/ParlayLegV2'
+      price:
+        type: number
+        format: double
+        example: 682
+        description: ''
+      finalPrice:
+        type: number
+        format: double
+        example: 0
+        description: Only for settled parlay. Final price may differ in case leg was cancelled or half won
+    description: ''  
+  ParlayBetRegradedWagerHistoryV1:
+    type: object
+    required:
+      - betId
+      - betStatus
+      - betStatus2
+      - betType
+      - legs
+      - oddsFormat
+      - placedAt
+      - risk
+      - updateSequence
+      - wagerNumber
+      - win
+    properties:
+      betId:
+        type: integer
+        format: int64
+        example: 760404490
+        description: Bet identification
+      originalBetId:
+        type: integer
+        format: int64
+        example: 760404432
+        description: Original Bet identification
+      uniqueRequestId:
+        type: string
+        format: uuid
+        example: 10924E23-A2FE-4317-BFFD-80504675F554
+        description: Unique Request Id
+      wagerNumber:
+        type: integer
+        format: int32
+        example: 1
+        description: 'Wager identification. All bets placed thru the API will have value 1. Website Classic view supports multiple contest(special) bets placement in the same bet slip in that case the bet would have appropriate wager number, as well as all round robin parlay bets.'
+      placedAt:
+        type: string
+        format: date-time
+        example: '2017-09-08T00:55:11Z'
+        description: Date time when the bet was placed.
+      betStatus:
+        type: string
+        example: ACCEPTED
+        description: |
+          Bet Status. 
+          
+          ACCEPTED = Bet was accepted,  
+          CANCELLED = Bet is cancelled as per Pinnacle betting rules,  
+          LOSE = The bet is settled as lose,  
+          PENDING_ACCEPTANCE = This status is reserved only for live bets. If a live bet is placed during danger zone or live delay is applied, it will be in PENDING_ACCEPTANCE , otherwise in ACCEPTED status. From this status bet can go to ACCEPTED or REJECTED status,  
+          REFUNDED = When an event is cancelled or when the bet is settled as push, the bet will have REFUNDED status,  
+          NOT_ACCEPTED = Bet was not accepted. Bet can be in this status only if it was previously in PENDING_ACCEPTANCE status,  
+          WON = The bet is settled as won
+        enum:
+          - ACCEPTED
+          - CANCELLED
+          - LOSE
+          - PENDING_ACCEPTANCE
+          - REFUNDED
+          - NOT_ACCEPTED
+          - WON
+      betStatus2:
+        type: string
+        example: ACCEPTED
+        description: |
+          Bet Status. 
+          
+          ACCEPTED = Bet was accepted,  
+          CANCELLED = Bet is cancelled as per Pinnacle betting rules,  
+          LOST = The bet is settled as lose,  
+          PENDING_ACCEPTANCE = This status is reserved only for live bets. If a live bet is placed during danger zone or live delay is applied, it will be in PENDING_ACCEPTANCE , otherwise in ACCEPTED status. From this status bet can go to ACCEPTED or REJECTED status,  
+          REFUNDED = When an event is cancelled or when the bet is settled as push, the bet will have REFUNDED status,  
+          NOT_ACCEPTED = Bet was not accepted. Bet can be in this status only if it was previously in PENDING_ACCEPTANCE status,  
+          WON = The bet is settled as won,  
+          PARTIAL_WON  - If gross payout is greater than the  stake. Only for parlays with the asian handicap legs,  
+          PARTIAL_LOST  - If gross payout is less or equal to the stake. Only for parlays with the asian handicap legs                    
+        enum:
+          - ACCEPTED
+          - CANCELLED
+          - LOST
+          - PENDING_ACCEPTANCE
+          - REFUNDED
+          - NOT_ACCEPTED
+          - WON          
+          - PARTIAL_WON
+          - PARTIAL_LOST          
+      betType:
+        type: string
+        default: PARLAY
+        example: PARLAY
+      win:
+        type: number
+        format: double
+        example: 6.82
+        description: Win amount.
+      risk:
+        type: number
+        format: double
+        example: 1
+        description: Risk amount.
+      winLoss:
+        type: number
+        format: double
+        example: null
+        x-nullable: true
+        description: Win-Loss for settled bets.
+      oddsFormat:
+        $ref: '#/definitions/OddsFormat'
+      customerCommission:
+        type: number
+        format: double
+        example: null
+        x-nullable: true
+        description: Client’s commission on the bet.
+      cancellationReason:
+        $ref: '#/definitions/CancellationReason'
+      updateSequence:
+        type: integer
+        format: int64
+        example: 112839436
+        description: Update Sequence
+      legs:
+        type: array
+        description: ''
+        items:
+          $ref: '#/definitions/ParlayLegRegradedWagerHistoryV1'
+      price:
+        type: number
+        format: double
+        example: 682
+        description: ''
+      finalPrice:
+        type: number
+        format: double
+        example: 0
+        description: Only for settled parlay. Final price may differ in case leg was cancelled or half won
+    description: ''
+  ParlayLegV2:
+    type: object
+    properties:
+      sportId:
+        type: integer
+        format: int32
+        example: 29
+        description: ''
+      legBetType:
+        type: string
+        example: MONEYLINE
+        description: 'Parlay leg type.'
+        enum:
+          - MONEYLINE
+          - SPREAD
+          - TOTAL_POINTS
+          - TEAM_TOTAL_POINTS
+      legBetStatus:
+        type: string
+        description: | 
+          Parlay Leg status.
+          CANCELLED = The leg is canceled- the stake on this leg will be transferred to the next one. In this case the leg will be ignored when calculating the winLoss,  
+          LOSE = The leg is a loss or a push-lose. When Push-lose happens, the half of the stake on the leg will be pushed to the next leg, and the other half will be a lose. This can happen only when the leg is placed on a quarter points handicap,  
+          PUSH = The leg is a push - the stake on this leg will be transferred to the next one. In this case the leg will be ignored when calculating the winLoss,  
+          REFUNDED = The leg is refunded - the stake on this leg will be transferred to the next one. In this case the leg will be ignored when calculating the winLoss,  
+          WON = The leg is a won or a push-won. When Push-won happens, the half of the stake on the leg will be pushed to the next leg, and the other half is won. This can happen only when the leg is placed on a quarter points handicap 
+        enum:
+          - CANCELLED
+          - LOSE
+          - PUSH
+          - REFUNDED
+          - WON
+          - ACCEPTED
+      legBetStatus2:
+        type: string
+        description: | 
+          Parlay Leg status.
+          CANCELLED = The leg is canceled- the stake on this leg will be transferred to the next one. In this case the leg will be ignored when calculating the winLoss,  
+          LOST = The leg is a loss or a push-lose. When Push-lose happens, the half of the stake on the leg will be pushed to the next leg, and the other half will be a lose. This can happen only when the leg is placed on a quarter points handicap,  
+          PUSHED = The leg is a push - the stake on this leg will be transferred to the next one. In this case the leg will be ignored when calculating the winLoss,  
+          REFUNDED = The leg is refunded - the stake on this leg will be transferred to the next one. In this case the leg will be ignored when calculating the winLoss,  
+          WON = The leg is a won or a push-won. When Push-won happens, the half of the stake on the leg will be pushed to the next leg, and the other half is won. This can happen only when the leg is placed on a quarter points handicap,  
+          HALF_WON_HALF_PUSHED = The bet is settled as half won half pushed. Only for asian handicap legs,  
+          HALF_LOST_HALF_PUSHED = The bet is settled as half lost half pushed. Only for asian handicap legs
+        enum:
+          - CANCELLED
+          - LOST
+          - PUSHED
+          - REFUNDED
+          - WON
+          - ACCEPTED
+          - HALF_WON_HALF_PUSHED
+          - HALF_LOST_HALF_PUSHED
+      leagueId:
+        type: integer
+        format: int32
+        example: 1766
+        description: ''
+      eventId:
+        type: integer
+        format: int64
+        example: 758024079
+        description: ''
+      eventStartTime:
+        type: string
+        format: date-time
+        example: '2017-10-07T21:00:00Z'
+        description: 'Date time when the event starts'
+      handicap:
+        type: number
+        format: double
+        example: null
+        x-nullable: true
+        description: ''
+      price:
+        type: number
+        format: double
+        example: 193
+        description: ''
+      teamName:
+        type: string
+        example: Adelaide United
+        description: ''
+      side:
+        type: string
+        example: null
+        x-nullable: true
+        description: 'Side type.'
+        enum:
+          - OVER
+          - UNDER
+      pitcher1:
+        type: string
+        example: null
+        x-nullable: true
+        description: ''
+      pitcher2:
+        type: string
+        example: null
+        x-nullable: true
+        description: ''
+      pitcher1MustStart:
+        type: boolean
+        example: false
+        description: ''
+      pitcher2MustStart:
+        type: boolean
+        example: false
+        description: ''
+      team1:
+        type: string
+        description: Wellington Phoenix
+      team2:
+        type: string
+        description: Adelaide United
+      periodNumber:
+        type: integer
+        format: int32
+        example: 0
+        description: ''
+      ftTeam1Score:
+        type: number
+        format: double
+        example: null
+        x-nullable: true
+        description: Full time team 1 score
+      ftTeam2Score:
+        type: number
+        format: double
+        example: null
+        x-nullable: true
+        description: Full time team 2 score
+      pTeam1Score:
+        type: number
+        format: double
+        example: null
+        x-nullable: true
+        description: 'End of period team 1 score. If the bet was placed on Game period (periodNumber =0) , this will be null'
+      pTeam2Score:
+        type: number
+        format: double
+        example: null
+        x-nullable: true
+        description: 'End of period team 2 score. If the bet was placed on Game period (periodNumber =0) , this will be null'
+      cancellationReason:
+        $ref: '#/definitions/CancellationReason'
+      resultingUnit:
+        type: string
+        description: Specifies based on what the event is being resulted, e.g. Corners, Bookings , Regular        
+    description: ''   
+  ParlayLegRegradedWagerHistoryV1:
+    type: object
+    properties:
+      sportId:
+        type: integer
+        format: int32
+        example: 29
+        description: ''
+      legBetType:
+        type: string
+        example: MONEYLINE
+        description: 'Parlay leg type.'
+        enum:
+          - MONEYLINE
+          - SPREAD
+          - TOTAL_POINTS
+          - TEAM_TOTAL_POINTS
+      legBetStatus:
+        type: string
+        description: | 
+          Parlay Leg status.
+          CANCELLED = The leg is canceled- the stake on this leg will be transferred to the next one. In this case the leg will be ignored when calculating the winLoss,  
+          LOSE = The leg is a loss or a push-lose. When Push-lose happens, the half of the stake on the leg will be pushed to the next leg, and the other half will be a lose. This can happen only when the leg is placed on a quarter points handicap,  
+          PUSH = The leg is a push - the stake on this leg will be transferred to the next one. In this case the leg will be ignored when calculating the winLoss,  
+          REFUNDED = The leg is refunded - the stake on this leg will be transferred to the next one. In this case the leg will be ignored when calculating the winLoss,  
+          WON = The leg is a won or a push-won. When Push-won happens, the half of the stake on the leg will be pushed to the next leg, and the other half is won. This can happen only when the leg is placed on a quarter points handicap 
+        enum:
+          - CANCELLED
+          - LOSE
+          - PUSH
+          - REFUNDED
+          - WON
+          - ACCEPTED
+      legBetStatus2:
+        type: string
+        description: | 
+          Parlay Leg status.
+          CANCELLED = The leg is canceled- the stake on this leg will be transferred to the next one. In this case the leg will be ignored when calculating the winLoss,  
+          LOST = The leg is a loss or a push-lose. When Push-lose happens, the half of the stake on the leg will be pushed to the next leg, and the other half will be a lose. This can happen only when the leg is placed on a quarter points handicap,  
+          PUSHED = The leg is a push - the stake on this leg will be transferred to the next one. In this case the leg will be ignored when calculating the winLoss,  
+          REFUNDED = The leg is refunded - the stake on this leg will be transferred to the next one. In this case the leg will be ignored when calculating the winLoss,  
+          WON = The leg is a won or a push-won. When Push-won happens, the half of the stake on the leg will be pushed to the next leg, and the other half is won. This can happen only when the leg is placed on a quarter points handicap,  
+          HALF_WON_HALF_PUSHED = The bet is settled as half won half pushed. Only for asian handicap legs,  
+          HALF_LOST_HALF_PUSHED = The bet is settled as half lost half pushed. Only for asian handicap legs
+        enum:
+          - CANCELLED
+          - LOST
+          - PUSHED
+          - REFUNDED
+          - WON
+          - ACCEPTED
+          - HALF_WON_HALF_PUSHED
+          - HALF_LOST_HALF_PUSHED
+      leagueId:
+        type: integer
+        format: int32
+        example: 1766
+        description: ''
+      leagueName:
+        type: string
+        example: Australia - A League
+        description: ''
+      eventId:
+        type: integer
+        format: int64
+        example: 758024079
+        description: ''
+      eventStartTime:
+        type: string
+        format: date-time
+        example: '2017-10-07T21:00:00Z'
+        description: 'Date time when the event starts'
+      handicap:
+        type: number
+        format: double
+        example: null
+        x-nullable: true
+        description: ''
+      price:
+        type: number
+        format: double
+        example: 193
+        description: ''
+      teamName:
+        type: string
+        example: Adelaide United
+        description: ''
+      side:
+        type: string
+        example: null
+        x-nullable: true
+        description: 'Side type.'
+        enum:
+          - OVER
+          - UNDER
+      pitcher1:
+        type: string
+        example: null
+        x-nullable: true
+        description: ''
+      pitcher2:
+        type: string
+        example: null
+        x-nullable: true
+        description: ''
+      pitcher1MustStart:
+        type: boolean
+        example: false
+        description: ''
+      pitcher2MustStart:
+        type: boolean
+        example: false
+        description: ''
+      team1:
+        type: string
+        description: Wellington Phoenix
+      team2:
+        type: string
+        description: Adelaide United
+      periodNumber:
+        type: integer
+        format: int32
+        example: 0
+        description: ''
+      ftTeam1Score:
+        type: number
+        format: double
+        example: null
+        x-nullable: true
+        description: Full time team 1 score
+      ftTeam2Score:
+        type: number
+        format: double
+        example: null
+        x-nullable: true
+        description: Full time team 2 score
+      pTeam1Score:
+        type: number
+        format: double
+        example: null
+        x-nullable: true
+        description: 'End of period team 1 score. If the bet was placed on Game period (periodNumber =0) , this will be null'
+      pTeam2Score:
+        type: number
+        format: double
+        example: null
+        x-nullable: true
+        description: 'End of period team 2 score. If the bet was placed on Game period (periodNumber =0) , this will be null'
+      cancellationReason:
+        $ref: '#/definitions/CancellationReason'
+      resultingUnit:
+        type: string
+        description: Specifies based on what the event is being resulted, e.g. Corners, Bookings , Regular        
+    description: ''
+  PlaceTeaserBetRequest:
+    type: object
+    properties:
+      uniqueRequestId:
+        type: string
+        format: uuid
+        example: 10924E23-A2FE-4317-BFFD-80504675F554
+        description: Client generated GUID for uniquely identifying the bet.
+      teaserId:
+        type: integer
+        format: int32
+        description: Unique identifier. Teaser details can be retrieved from a call to Get Teaser Groups endpoint.
+      oddsFormat:
+        $ref: '#/definitions/OddsFormat'
+      winRiskStake:
+        type: string
+        description: Whether the stake amount is risk or win amount.
+      stake:
+        type: number
+        format: double
+        description: amount in client’s currency.
+      legs:
+        type: array
+        description: Collection of legs.
+        items:
+          $ref: '#/definitions/TeaserBetLeg'
+    description: ''
+  TeaserBetLeg:
+    type: object
+    properties:
+      legId:
+        type: string
+        format: int64
+        example: 10924E23-A2FE-4317-BFFD-80504675F554
+        description: Client generated GUID for uniquely identifying the leg.
+      betType:
+        type: string
+        example: SPREAD
+        description: 'Leg bet type can be SPREAD or TOTAL_POINTS '
+        enum:
+          - SPREAD
+          - TOTAL_POINTS
+      lineId:
+        type: integer
+        format: int64
+        description: Unique identifier.
+      eventId:
+        type: integer
+        format: int64
+        description: Unique identifier.
+      team:
+        type: string
+        description: Team being bet on for a spread line.
+      side:
+        type: string
+        description: 'Chosen side type. This is needed only for TOTAL_POINTS bet type.'
+        enum:
+          - OVER
+          - UNDER
+    description: ''
+  PlaceTeaserBetResponse:
+    type: object
+    properties:
+      status:
+        type: string
+        description: Status of the request.
+      errorCode:
+        type: string
+        description: |
+          When Status is PROCESSED_WITH_ERROR, provides a code indicating the specific problem.
+          
+          ABOVE_MAX_BET_AMOUNT = Bet is above the maximum allowed,  
+          ALL_BETTING_CLOSED = The wagering is disabled in the system (not related to a customer),  
+          BELOW_MIN_BET_AMOUNT = Bet is below the minimum allowed,  
+          BLOCKED_BETTING = Betting is suspended for the client,  
+          BLOCKED_CLIENT = Customer is inactive in the system,  
+          DOUBLE_HIT = The website submitted the same bet more than once,  
+          DUPLICATE_CLIENT_REFERENCE_ID = The teaser unique id and/or one of the leg unique id are the same,  
+          INCOMPLETE_CUSTOMER_BETTING_PROFILE = The customer does not exist,  
+          INSUFFICIENT_FUNDS = The risk amount is above the customer’s available balance,  
+          INVALID_COUNTRY = Current location is proscribed,  
+          INVALID_CUSTOMER_PROFILE = Either the customer does not exist OR the customer business rules are not verified,  
+          INVALID_LEGS = One or more legs are not verified,  
+          INVALID_REQUEST = Teaser request is not valid,  
+          ODDS_FORMAT_MISMATCH = Agent customer’s odds format differs from wager request odds format,  
+          RESUBMIT_REQUEST = The ticket hast to be resubmitted,  
+          TEASER_DOES_NOT_EXIST = Teaser does not exist in the system,  
+          SAME_EVENT_ONLY_REQUIRED = Legs required to be for the same game only. Specified in the Teaser Specifications,  
+          SYSTEM_ERROR_1 = System error,  
+          SYSTEM_ERROR_2 = System error,  
+          SYSTEM_ERROR_3 = System error,  
+          TOO_FEW_LEGS = Legs count is below Min Picks specified in the Teaser Specifications,  
+          TOO_MANY_LEGS = Legs count is above Max Picks specified in the Teaser Specifications,
+          DUPLICATE_UNIQUE_REQUEST_ID = Request with the same uniqueRequestId was already processed. Please set the new value if you still want the request to be processed,  
+          RESPONSIBLE_BETTING_LOSS_LIMIT_EXCEEDED = Client has reached his total loss limit,  
+          RESPONSIBLE_BETTING_RISK_LIMIT_EXCEEDED = Client has reached his total risk limit
+
+        enum:
+          - ABOVE_MAX_BET_AMOUNT
+          - ALL_BETTING_CLOSED
+          - BELOW_MIN_BET_AMOUNT
+          - BLOCKED_BETTING
+          - BLOCKED_CLIENT
+          - DOUBLE_HIT
+          - DUPLICATE_CLIENT_REFERENCE_ID
+          - INCOMPLETE_CUSTOMER_BETTING_PROFILE
+          - INSUFFICIENT_FUNDS
+          - INVALID_COUNTRY
+          - INVALID_CUSTOMER_PROFILE
+          - INVALID_LEGS
+          - INVALID_REQUEST
+          - ODDS_FORMAT_MISMATCH
+          - RESUBMIT_REQUEST
+          - TEASER_DOES_NOT_EXIST
+          - SAME_EVENT_ONLY_REQUIRED
+          - SYSTEM_ERROR_1
+          - SYSTEM_ERROR_2
+          - SYSTEM_ERROR_3
+          - TOO_FEW_LEGS
+          - TOO_MANY_LEGS
+          - DUPLICATE_UNIQUE_REQUEST_ID
+          - RESPONSIBLE_BETTING_LOSS_LIMIT_EXCEEDED
+          - RESPONSIBLE_BETTING_RISK_LIMIT_EXCEEDED
+      betId:
+        type: integer
+        format: int64
+        description: Id of a newly created bet.
+      uniqueRequestId:
+        type: string
+        format: uuid
+        example: 10924E23-A2FE-4317-BFFD-80504675F554
+        description: Unique identifier provided in the request.
+      price:
+        type: number
+        format: double
+        description: Price for the bet.
+      riskAmount:
+        type: number
+        format: double
+        description: Amount wagered.
+      winAmount:
+        type: number
+        format: double
+        description: Potential winnings.
+      winRiskStake:
+        type: string
+        description: Whether the stake amount is risk or win amount.
+      invalidLegs:
+        type: array
+        description: 'A collection of invalid legs, if any.'
+        items:
+          $ref: '#/definitions/PlaceTeaserBetLegResponse'
+      validLegs:
+        type: array
+        description: 'A collection of valid legs, if any.'
+        items:
+          $ref: '#/definitions/PlaceTeaserBetLegResponse'
+      teaserBet:
+        $ref: '#/definitions/TeaserBet'
+        description: 'Present if bet was accepted'
+  PlaceTeaserBetResponseV4:
+    type: object
+    properties:
+      status:
+        type: string
+        description: Status of the request.
+      errorCode:
+        type: string
+        description: |
+          When Status is PROCESSED_WITH_ERROR, provides a code indicating the specific problem.
+          
+          ABOVE_MAX_BET_AMOUNT = Bet is above the maximum allowed,  
+          ALL_BETTING_CLOSED = The wagering is disabled in the system (not related to a customer),  
+          BELOW_MIN_BET_AMOUNT = Bet is below the minimum allowed,  
+          BLOCKED_BETTING = Betting is suspended for the client,  
+          BLOCKED_CLIENT = Customer is inactive in the system,  
+          DOUBLE_HIT = The website submitted the same bet more than once,  
+          DUPLICATE_CLIENT_REFERENCE_ID = The teaser unique id and/or one of the leg unique id are the same,  
+          INCOMPLETE_CUSTOMER_BETTING_PROFILE = The customer does not exist,  
+          INSUFFICIENT_FUNDS = The risk amount is above the customer’s available balance,  
+          INVALID_COUNTRY = Current location is proscribed,  
+          INVALID_CUSTOMER_PROFILE = Either the customer does not exist OR the customer business rules are not verified,  
+          INVALID_LEGS = One or more legs are not verified,  
+          INVALID_REQUEST = Teaser request is not valid,  
+          ODDS_FORMAT_MISMATCH = Agent customer’s odds format differs from wager request odds format,  
+          RESUBMIT_REQUEST = The ticket hast to be resubmitted,  
+          TEASER_DOES_NOT_EXIST = Teaser does not exist in the system,  
+          SAME_EVENT_ONLY_REQUIRED = Legs required to be for the same game only. Specified in the Teaser Specifications,  
+          SYSTEM_ERROR_1 = System error,  
+          SYSTEM_ERROR_2 = System error,  
+          SYSTEM_ERROR_3 = System error,  
+          TOO_FEW_LEGS = Legs count is below Min Picks specified in the Teaser Specifications,  
+          TOO_MANY_LEGS = Legs count is above Max Picks specified in the Teaser Specifications,
+          DUPLICATE_UNIQUE_REQUEST_ID = Request with the same uniqueRequestId was already processed. Please set the new value if you still want the request to be processed,  
+          RESPONSIBLE_BETTING_LOSS_LIMIT_EXCEEDED = Client has reached his total loss limit,  
+          RESPONSIBLE_BETTING_RISK_LIMIT_EXCEEDED = Client has reached his total risk limit
+
+        enum:
+          - ABOVE_MAX_BET_AMOUNT
+          - ALL_BETTING_CLOSED
+          - BELOW_MIN_BET_AMOUNT
+          - BLOCKED_BETTING
+          - BLOCKED_CLIENT
+          - DOUBLE_HIT
+          - DUPLICATE_CLIENT_REFERENCE_ID
+          - INCOMPLETE_CUSTOMER_BETTING_PROFILE
+          - INSUFFICIENT_FUNDS
+          - INVALID_COUNTRY
+          - INVALID_CUSTOMER_PROFILE
+          - INVALID_LEGS
+          - INVALID_REQUEST
+          - ODDS_FORMAT_MISMATCH
+          - RESUBMIT_REQUEST
+          - TEASER_DOES_NOT_EXIST
+          - SAME_EVENT_ONLY_REQUIRED
+          - SYSTEM_ERROR_1
+          - SYSTEM_ERROR_2
+          - SYSTEM_ERROR_3
+          - TOO_FEW_LEGS
+          - TOO_MANY_LEGS
+          - DUPLICATE_UNIQUE_REQUEST_ID
+          - RESPONSIBLE_BETTING_LOSS_LIMIT_EXCEEDED
+          - RESPONSIBLE_BETTING_RISK_LIMIT_EXCEEDED
+      betId:
+        type: integer
+        format: int64
+        description: Id of a newly created bet.
+      uniqueRequestId:
+        type: string
+        format: uuid
+        example: 10924E23-A2FE-4317-BFFD-80504675F554
+        description: Unique identifier provided in the request.
+      price:
+        type: number
+        format: double
+        description: Price for the bet.
+      risk:
+        type: number
+        format: double
+        description: Amount wagered.
+      win:
+        type: number
+        format: double
+        description: Potential winnings.
+      winRiskStake:
+        type: string
+        description: Whether the stake amount is risk or win amount.
+      invalidLegs:
+        type: array
+        description: 'A collection of invalid legs, if any.'
+        items:
+          $ref: '#/definitions/PlaceTeaserBetLegResponse'
+      validLegs:
+        type: array
+        description: 'A collection of valid legs, if any.'
+        items:
+          $ref: '#/definitions/PlaceTeaserBetLegResponse'
+  PlaceTeaserBetLegResponse:
+    type: object
+    properties:
+      status:
+        type: string
+        description: Status of the request.
+      errorCode:
+        type: string
+        description: |
+          When Status is PROCESSED_WITH_ERROR, provides a code indicating the specific problem.
+          
+          CANNOT_TEASER_LIVE_GAME = Teaser is not allowed on a live game,   
+          CHECK_TEASER_ERROR = The teaser is invalid, check the teaser error for more details,  
+          INVALID_EVENT = The game is not found in the system,  
+          INVALID_LEG_BET = The wager is not verified,  
+          INVALID_LEG_BET_TYPE = Wager type is not “teasable”, can be either Spread or Total,  
+          LINE_CHANGED = Wager is placed on a line that has changed,  
+          LINE_DOES_NOT_BELONG_TO_EVENT = There was no game found for the wager,  
+          OFFLINE_EVENT = Either the game is offline OR there was no game found for the wager,  
+          PAST_CUTOFFTIME = Wager is placed on a game after the cutoff time,  
+          POINTS_ARE_NOT_ADJUSTED = The teaser points were not adjusted,  
+          SYSTEM_ERROR_1 = System error,  
+          SYSTEM_ERROR_2 = System error,  
+          WAGER_DATA_MISSING = Wager is denied due to insufficient information available for validation,  
+          LINE_IS_NOT_AVAILABLE = Line is not available for the specified Teaser Leg,  
+          BETTING_SUSPENDED = Due to anomalous market circumstances bets are not currently being accepted on this line. Try again with next LineId.
+        enum:
+          - CANNOT_TEASER_LIVE_GAME
+          - CHECK_TEASER_ERROR
+          - INVALID_EVENT
+          - INVALID_LEG_BET
+          - INVALID_LEG_BET_TYPE
+          - LINE_CHANGED
+          - LINE_DOES_NOT_BELONG_TO_EVENT
+          - OFFLINE_EVENT
+          - PAST_CUTOFFTIME
+          - POINTS_ARE_NOT_ADJUSTED
+          - SYSTEM_ERROR_1
+          - SYSTEM_ERROR_2
+          - WAGER_DATA_MISSING
+          - LINE_IS_NOT_AVAILABLE
+          - BETTING_SUSPENDED
+      legId:
+        type: string
+        format: uuid
+        example: A9EB2EB1-13A5-4600-9F1B-4859379CDEC4
+        description: Echo of the legId from the request.
+      lineId:
+        type: integer
+        format: int64
+        description: Line identification that bet was placed on.
+      points:
+        type: number
+        format: double
+        description: Number of points.
+    description: ''
+  'MultiBetRequest[SpecialBetRequest]':
+    type: object
+    properties:
+      bets:
+        type: array
+        description: The individual bets.
+        items:
+          $ref: '#/definitions/SpecialBetRequest'
+    description: ''
+  SpecialBetRequest:
+    type: object
+    properties:
+      uniqueRequestId:
+        type: string
+        format: uuid
+        example: 10924E23-A2FE-4317-BFFD-80504675F554
+        description: This unique id of the place bet requests. This is to support idempotent requests.
+      acceptBetterLine:
+        type: boolean
+        example: true
+        description: Whether or not to accept a bet when there is a line change in favor of the client.
+      oddsFormat:
+        $ref: '#/definitions/OddsFormat'
+      stake:
+        type: number
+        format: double
+        example: 10.5
+        description: amount in client’s currency.
+      winRiskStake:
+        type: string
+        example: RISK
+        description: Whether the stake amount is risk or win amount.
+        enum:
+          - WIN
+          - RISK
+      lineId:
+        type: integer
+        format: int64
+        example: 51024304
+        description: Line identification.
+      specialId:
+        type: integer
+        format: int64
+        example: 726394409
+        description: Special identification.
+      contestantId:
+        type: integer
+        format: int64
+        example: 726394411
+        description: Contestant identification.
+    description: ''
+  'MultiBetResponse[SpecialBetResponse]':
+    type: object
+    properties:
+      bets:
+        type: array
+        description: The individual bets.
+        items:
+          $ref: '#/definitions/SpecialBetResponse'
+    description: ''
+  'MultiBetResponse[SpecialBetResponseV4]':
+    type: object
+    properties:
+      bets:
+        type: array
+        description: The individual bets.
+        items:
+          $ref: '#/definitions/SpecialBetResponseV4'
+    description: ''
+  SpecialBetResponse:
+    type: object
+    properties:
+      status:
+        type: string
+        example: ACCEPTED
+        description: Status of the request.
+        enum:
+          - ACCEPTED
+          - PROCESSED_WITH_ERROR
+      errorCode:
+        type: string
+        example: null
+        x-nullable: true
+        description: |
+          When Status is PROCESSED_WITH_ERROR, provides a code indicating the specific problem.
+          
+          ALL_BETTING_CLOSED = Betting is not allowed at this moment. This may happen during system maintenance.  
+           ABOVE_MAX_BET_AMOUNT = Stake is above allowed maximum amount,  
+           BELOW_MIN_BET_AMOUNT = Stake is below allowed minimum amount,  
+           BLOCKED_BETTING = Betting is suspended for the client,  
+           BLOCKED_CLIENT = Client is no longer active,  
+           CONTEST_NOT_FOUND = Incorrect contest id provided or contest is no longer available,  
+           DUPLICATE_UNIQUE_REQUEST_ID = UniqueRequestId must be unique for each bet,  
+           INCOMPLETE_CUSTOMER_BETTING_PROFILE = Customer profile could not be loaded,   
+           INSUFFICIENT_FUNDS = Bet is submitted by a client with insufficient funds,  
+           INVALID_COUNTRY = Client country is not allowed for betting,  
+           INVALID_REQUEST = Special bet request is not valid,  
+           LINE_CHANGED = Bet is submitted on a line that has changed,  
+           PAST_CUTOFFTIME = Bet is submitted on a game after the betting cutoff time,  
+           RESPONSIBLE_BETTING_LOSS_LIMIT_EXCEEDED = Self-imposed loss limit exceeded,  
+           RESPONSIBLE_BETTING_RISK_LIMIT_EXCEEDED = Self-imposed risk limit exceeded,  
+           RESUBMIT_REQUEST = The ticket hast to be resubmitted,  
+           SYSTEM_ERROR_1 = Unexpected error,  
+           SYSTEM_ERROR_2 = Unexpected error,  
+           UNIQUE_REQUEST_ID_REQUIRED = UniqueRequestId is missing,  
+           BETTING_SUSPENDED = Due to anomalous market circumstances bets are not currently being accepted on this line. Try again with next LineId,  
+           INVALID_CUSTOMER_PROFILE
+        enum:
+          - ALL_BETTING_CLOSED
+          - ABOVE_MAX_BET_AMOUNT
+          - BELOW_MIN_BET_AMOUNT
+          - BLOCKED_BETTING
+          - BLOCKED_CLIENT
+          - CONTEST_NOT_FOUND
+          - DUPLICATE_UNIQUE_REQUEST_ID
+          - INCOMPLETE_CUSTOMER_BETTING_PROFILE
+          - INSUFFICIENT_FUNDS
+          - INVALID_COUNTRY
+          - INVALID_REQUEST
+          - LINE_CHANGED
+          - PAST_CUTOFFTIME
+          - RESPONSIBLE_BETTING_LOSS_LIMIT_EXCEEDED
+          - RESPONSIBLE_BETTING_RISK_LIMIT_EXCEEDED
+          - RESUBMIT_REQUEST
+          - SYSTEM_ERROR_1
+          - SYSTEM_ERROR_2
+          - UNIQUE_REQUEST_ID_REQUIRED
+          - BETTING_SUSPENDED
+          - INVALID_CUSTOMER_PROFILE
+      betId:
+        type: integer
+        format: int64
+        example: 760745142
+        description: Id of a newly created bet.
+      uniqueRequestId:
+        type: string
+        format: uuid
+        example: 10924E23-A2FE-4317-BFFD-80504675F554
+        description: Unique identifier provided in the request.
+      betterLineWasAccepted:
+        type: boolean
+        example: false
+        description: Whether or not the bet was accepted on the line that changed in favour of client. This can be true only if acceptBetterLine in the Place Bet request is set to TRUE.
+      specialBet:
+        $ref: '#/definitions/SpecialBetV2'
+    description: ''
+  SpecialBetResponseV4:
+    type: object
+    properties:
+      status:
+        type: string
+        example: ACCEPTED
+        description: Status of the request.
+        enum:
+          - ACCEPTED
+          - PROCESSED_WITH_ERROR
+      errorCode:
+        type: string
+        example: null
+        x-nullable: true
+        description: |
+          When Status is PROCESSED_WITH_ERROR, provides a code indicating the specific problem.
+          
+          ALL_BETTING_CLOSED = Betting is not allowed at this moment. This may happen during system maintenance.  
+           ABOVE_MAX_BET_AMOUNT = Stake is above allowed maximum amount,  
+           BELOW_MIN_BET_AMOUNT = Stake is below allowed minimum amount,  
+           BLOCKED_BETTING = Betting is suspended for the client,  
+           BLOCKED_CLIENT = Client is no longer active,  
+           CONTEST_NOT_FOUND = Incorrect contest id provided or contest is no longer available,  
+           DUPLICATE_UNIQUE_REQUEST_ID = UniqueRequestId must be unique for each bet,  
+           INCOMPLETE_CUSTOMER_BETTING_PROFILE = Customer profile could not be loaded,   
+           INSUFFICIENT_FUNDS = Bet is submitted by a client with insufficient funds,  
+           INVALID_COUNTRY = Client country is not allowed for betting,  
+           INVALID_REQUEST = Special bet request is not valid,  
+           LINE_CHANGED = Bet is submitted on a line that has changed,  
+           PAST_CUTOFFTIME = Bet is submitted on a game after the betting cutoff time,  
+           RESPONSIBLE_BETTING_LOSS_LIMIT_EXCEEDED = Self-imposed loss limit exceeded,  
+           RESPONSIBLE_BETTING_RISK_LIMIT_EXCEEDED = Self-imposed risk limit exceeded,  
+           RESUBMIT_REQUEST = The ticket hast to be resubmitted,  
+           SYSTEM_ERROR_1 = Unexpected error,  
+           SYSTEM_ERROR_2 = Unexpected error,  
+           UNIQUE_REQUEST_ID_REQUIRED = UniqueRequestId is missing,  
+           BETTING_SUSPENDED = Due to anomalous market circumstances bets are not currently being accepted on this line. Try again with next LineId,  
+           INVALID_CUSTOMER_PROFILE
+        enum:
+          - ALL_BETTING_CLOSED
+          - ABOVE_MAX_BET_AMOUNT
+          - BELOW_MIN_BET_AMOUNT
+          - BLOCKED_BETTING
+          - BLOCKED_CLIENT
+          - CONTEST_NOT_FOUND
+          - DUPLICATE_UNIQUE_REQUEST_ID
+          - INCOMPLETE_CUSTOMER_BETTING_PROFILE
+          - INSUFFICIENT_FUNDS
+          - INVALID_COUNTRY
+          - INVALID_REQUEST
+          - LINE_CHANGED
+          - PAST_CUTOFFTIME
+          - RESPONSIBLE_BETTING_LOSS_LIMIT_EXCEEDED
+          - RESPONSIBLE_BETTING_RISK_LIMIT_EXCEEDED
+          - RESUBMIT_REQUEST
+          - SYSTEM_ERROR_1
+          - SYSTEM_ERROR_2
+          - UNIQUE_REQUEST_ID_REQUIRED
+          - BETTING_SUSPENDED
+          - INVALID_CUSTOMER_PROFILE
+      betId:
+        type: integer
+        format: int64
+        example: 760745142
+        description: Id of a newly created bet.
+      uniqueRequestId:
+        type: string
+        format: uuid
+        example: 10924E23-A2FE-4317-BFFD-80504675F554
+        description: Unique identifier provided in the request.
+      betterLineWasAccepted:
+        type: boolean
+        example: false
+        description: Whether or not the bet was accepted on the line that changed in favour of client. This can be true only if acceptBetterLine in the Place Bet request is set to TRUE.
+      win:
+        type: number
+        format: double
+        example: 1
+        description: Win amount.
+      risk:
+        type: number
+        format: double
+        example: 1.51
+        description: Risk amount.
+      price:
+        type: number
+        format: double
+        example: 1.51
+        description: Price amount.
+    description: ''
+  SpecialBet:
+    type: object
+    required:
+      - betId
+      - betStatus
+      - betType
+      - contestantId
+      - contestantName
+      - leagueId
+      - oddsFormat
+      - placedAt
+      - price
+      - risk
+      - specialId
+      - specialName
+      - sportId
+      - updateSequence
+      - wagerNumber
+      - win
+    properties:
+      betId:
+        type: integer
+        format: int64
+        example: 760748770
+        description: Bet identification
+      uniqueRequestId:
+        type: string
+        format: uuid
+        example: 10924E23-A2FE-4317-BFFD-80504675F554
+        description: Unique Request Id
+      wagerNumber:
+        type: integer
+        format: int32
+        example: 1
+        description: 'Wager identification. All bets placed thru the API will have value 1. Website Classic view supports multiple contest(special) bets placement in the same bet slip in that case the bet would have appropriate wager number, as well as all round robin parlay bets.'
+      placedAt:
+        type: string
+        format: date-time
+        example: '2017-09-09T01:49:43Z'
+        description: Date time when the bet was placed.
+      settledAt:
+        type: string
+        format: date-time
+        example: '2017-09-05T01:32:59Z'
+        description: Date time when the bet was settled.
+      betStatus:
+        type: string
+        example: ACCEPTED
+        description: | 
+          Bet Status. 
+          ACCEPTED = Bet was accepted, 
+          CANCELLED = Bet is cancelled as per Pinnacle betting rules, 
+          LOSE = The bet is settled as lose,
+          REFUNDED = When an event is cancelled or when the bet is settled as push, the bet will have REFUNDED status, 
+          WON = The bet is settled as won 
+        enum:
+          - ACCEPTED
+          - CANCELLED
+          - LOSE
+          - REFUNDED
+          - WON
+      betType:
+        type: string
+        default: SPECIAL
+        example: SPECIAL
+      win:
+        type: number
+        format: double
+        example: 1
+        description: Win amount.
+      risk:
+        type: number
+        format: double
+        example: 1.51
+        description: Risk amount.
+      winLoss:
+        type: number
+        format: double
+        example: null
+        x-nullable: true
+        description: Win-Loss for settled bets.
+      oddsFormat:
+        $ref: '#/definitions/OddsFormat'
+      customerCommission:
+        type: number
+        format: double
+        example: null
+        x-nullable: true
+        description: Client’s commission on the bet.
+      cancellationReason:
+        $ref: '#/definitions/CancellationReason'
+      updateSequence:
+        type: integer
+        format: int64
+        example: 113214135
+        description: Update Sequence. It gets updated when the bet status change.
+      specialId:
+        type: integer
+        format: int64
+        example: 726397620
+        description: ''
+      specialName:
+        type: string
+        example: Denver Broncos Regular Season Wins?
+        description: ''
+      contestantId:
+        type: integer
+        format: int64
+        example: 726397622
+        description: ''
+      contestantName:
+        type: string
+        example: Under
+        description: ''
+      price:
+        type: number
+        format: double
+        example: -151
+        description: ''
+      handicap:
+        type: number
+        format: double
+        example: 8.5
+        description: ''
+      units:
+        type: string
+        example: Regular Season Wins
+        description: ''
+      sportId:
+        type: integer
+        format: int32
+        example: 15
+        description: ''
+      leagueId:
+        type: integer
+        format: int32
+        example: 889
+        description: ''
+      eventId:
+        type: integer
+        format: int64
+        example: null
+        x-nullable: true
+        description: Populated if bet was placed on a special linked to the event.
+      periodNumber:
+        type: integer
+        format: int32
+        example: null
+        x-nullable: true
+        description: Populated if bet was placed on a special linked to the event.
+      team1:
+        type: string
+        example: null
+        x-nullable: true
+        description: Populated if bet was placed on a special linked to the event.
+      team2:
+        type: string
+        example: null
+        x-nullable: true
+        description: Populated if bet was placed on a special linked to the event.
+    description: ''
+  SpecialBetV2:
+    type: object
+    required:
+      - betId
+      - betStatus
+      - betType
+      - contestantId
+      - contestantName
+      - leagueId
+      - oddsFormat
+      - placedAt
+      - price
+      - risk
+      - specialId
+      - specialName
+      - sportId
+      - updateSequence
+      - wagerNumber
+      - win
+    properties:
+      betId:
+        type: integer
+        format: int64
+        example: 760748770
+        description: Bet identification
+      uniqueRequestId:
+        type: string
+        format: uuid
+        example: 10924E23-A2FE-4317-BFFD-80504675F554
+        description: Unique Request Id
+      wagerNumber:
+        type: integer
+        format: int32
+        example: 1
+        description: 'Wager identification. All bets placed thru the API will have value 1. Website Classic view supports multiple contest(special) bets placement in the same bet slip in that case the bet would have appropriate wager number, as well as all round robin parlay bets.'
+      placedAt:
+        type: string
+        format: date-time
+        example: '2017-09-09T01:49:43Z'
+        description: Date time when the bet was placed.
+      betStatus:
+        type: string
+        example: ACCEPTED
+        description: | 
+          Bet Status. 
+          ACCEPTED = Bet was accepted, 
+          CANCELLED = Bet is cancelled as per Pinnacle betting rules, 
+          LOSE = The bet is settled as lose,
+          REFUNDED = When an event is cancelled or when the bet is settled as push, the bet will have REFUNDED status, 
+          WON = The bet is settled as won 
+        enum:
+          - ACCEPTED
+          - CANCELLED
+          - LOSE
+          - REFUNDED
+          - WON
+      betType:
+        type: string
+        default: SPECIAL
+        example: SPECIAL
+      win:
+        type: number
+        format: double
+        example: 1
+        description: Win amount.
+      risk:
+        type: number
+        format: double
+        example: 1.51
+        description: Risk amount.
+      winLoss:
+        type: number
+        format: double
+        example: null
+        x-nullable: true
+        description: Win-Loss for settled bets.
+      oddsFormat:
+        $ref: '#/definitions/OddsFormat'
+      customerCommission:
+        type: number
+        format: double
+        example: null
+        x-nullable: true
+        description: Client’s commission on the bet.
+      cancellationReason:
+        $ref: '#/definitions/CancellationReason'
+      updateSequence:
+        type: integer
+        format: int64
+        example: 113214135
+        description: Update Sequence. It gets updated when the bet status change.
+      specialId:
+        type: integer
+        format: int64
+        example: 726397620
+        description: ''
+      specialName:
+        type: string
+        example: Denver Broncos Regular Season Wins?
+        description: ''
+      contestantId:
+        type: integer
+        format: int64
+        example: 726397622
+        description: ''
+      contestantName:
+        type: string
+        example: Under
+        description: ''
+      price:
+        type: number
+        format: double
+        example: -151
+        description: ''
+      handicap:
+        type: number
+        format: double
+        example: 8.5
+        description: ''
+      units:
+        type: string
+        example: Regular Season Wins
+        description: ''
+      sportId:
+        type: integer
+        format: int32
+        example: 15
+        description: ''
+      leagueId:
+        type: integer
+        format: int32
+        example: 889
+        description: ''
+      eventId:
+        type: integer
+        format: int64
+        example: null
+        x-nullable: true
+        description: Populated if bet was placed on a special linked to the event.
+      periodNumber:
+        type: integer
+        format: int32
+        example: null
+        x-nullable: true
+        description: Populated if bet was placed on a special linked to the event.
+      team1:
+        type: string
+        example: null
+        x-nullable: true
+        description: Populated if bet was placed on a special linked to the event.
+      team2:
+        type: string
+        example: null
+        x-nullable: true
+        description: Populated if bet was placed on a special linked to the event.
+      eventStartTime:
+        type: string
+        format: date-time
+        description: Date time when the event starts.
+      resultingUnit:
+        type: string
+        description: Specifies based on what the event is being resulted, e.g. Corners, Bookings , Regular.                
+    description: ''    
+  SpecialBetV3:
+    type: object
+    required:
+      - betId
+      - betStatus
+      - betType
+      - contestantId
+      - contestantName
+      - leagueId
+      - oddsFormat
+      - placedAt
+      - price
+      - risk
+      - specialId
+      - specialName
+      - sportId
+      - updateSequence
+      - wagerNumber
+      - win
+    properties:
+      betId:
+        type: integer
+        format: int64
+        example: 760748770
+        description: Bet identification
+      uniqueRequestId:
+        type: string
+        format: uuid
+        example: 10924E23-A2FE-4317-BFFD-80504675F554
+        description: Unique Request Id
+      wagerNumber:
+        type: integer
+        format: int32
+        example: 1
+        description: 'Wager identification. All bets placed thru the API will have value 1. Website Classic view supports multiple contest(special) bets placement in the same bet slip in that case the bet would have appropriate wager number, as well as all round robin parlay bets.'
+      placedAt:
+        type: string
+        format: date-time
+        example: '2017-09-09T01:49:43Z'
+        description: Date time when the bet was placed.
+      betStatus:
+        type: string
+        example: ACCEPTED
+        description: | 
+          Bet Status. 
+          ACCEPTED = Bet was accepted, 
+          CANCELLED = Bet is cancelled as per Pinnacle betting rules, 
+          LOSE = The bet is settled as lose,
+          REFUNDED = When an event is cancelled or when the bet is settled as push, the bet will have REFUNDED status, 
+          WON = The bet is settled as won 
+        enum:
+          - ACCEPTED
+          - CANCELLED
+          - LOSE
+          - REFUNDED
+          - WON
+      betType:
+        type: string
+        default: SPECIAL
+        example: SPECIAL
+      win:
+        type: number
+        format: double
+        example: 1
+        description: Win amount.
+      risk:
+        type: number
+        format: double
+        example: 1.51
+        description: Risk amount.
+      winLoss:
+        type: number
+        format: double
+        example: null
+        x-nullable: true
+        description: Win-Loss for settled bets.
+      oddsFormat:
+        $ref: '#/definitions/OddsFormat'
+      customerCommission:
+        type: number
+        format: double
+        example: null
+        x-nullable: true
+        description: Client’s commission on the bet.
+      cancellationReason:
+        $ref: '#/definitions/CancellationReason'
+      updateSequence:
+        type: integer
+        format: int64
+        example: 113214135
+        description: Update Sequence. It gets updated when the bet status change.
+      specialId:
+        type: integer
+        format: int64
+        example: 726397620
+        description: ''
+      specialName:
+        type: string
+        example: Denver Broncos Regular Season Wins?
+        description: ''
+      contestantId:
+        type: integer
+        format: int64
+        example: 726397622
+        description: ''
+      contestantName:
+        type: string
+        example: Under
+        description: ''
+      price:
+        type: number
+        format: double
+        example: -151
+        description: ''
+      handicap:
+        type: number
+        format: double
+        example: 8.5
+        description: ''
+      units:
+        type: string
+        example: Regular Season Wins
+        description: ''
+      sportId:
+        type: integer
+        format: int32
+        example: 15
+        description: ''
+      leagueId:
+        type: integer
+        format: int32
+        example: 889
+        description: ''
+      eventId:
+        type: integer
+        format: int64
+        example: null
+        x-nullable: true
+        description: Populated if bet was placed on a special linked to the event.
+      periodNumber:
+        type: integer
+        format: int32
+        example: null
+        x-nullable: true
+        description: Populated if bet was placed on a special linked to the event.
+      team1:
+        type: string
+        example: null
+        x-nullable: true
+        description: Populated if bet was placed on a special linked to the event.
+      team2:
+        type: string
+        example: null
+        x-nullable: true
+        description: Populated if bet was placed on a special linked to the event.
+      eventStartTime:
+        type: string 
+        format: date-time
+        example: 2017-10-05T01:32:59Z
+        x-nullable: false
+        description: Date time when the event starts.
+      resultingUnit:
+        type: string 
+        x-nullable: false
+        description: Specifies based on what the event is being resulted, e.g. Corners, Bookings , Regular.        
+    description: ''    
+  SpecialBetRegradedWagerHistoryV1:
+    type: object
+    required:
+      - betId
+      - betStatus
+      - betType
+      - contestantId
+      - contestantName
+      - leagueId
+      - oddsFormat
+      - placedAt
+      - price
+      - risk
+      - specialId
+      - specialName
+      - sportId
+      - updateSequence
+      - wagerNumber
+      - win
+    properties:
+      betId:
+        type: integer
+        format: int64
+        example: 760748770
+        description: Bet identification
+      originalBetId:
+        type: integer
+        format: int64
+        example: 760748743
+        description: Original bet identification
+      uniqueRequestId:
+        type: string
+        format: uuid
+        example: 10924E23-A2FE-4317-BFFD-80504675F554
+        description: Unique Request Id
+      wagerNumber:
+        type: integer
+        format: int32
+        example: 1
+        description: 'Wager identification. All bets placed thru the API will have value 1. Website Classic view supports multiple contest(special) bets placement in the same bet slip in that case the bet would have appropriate wager number, as well as all round robin parlay bets.'
+      placedAt:
+        type: string
+        format: date-time
+        example: '2017-09-09T01:49:43Z'
+        description: Date time when the bet was placed.
+      betStatus:
+        type: string
+        example: ACCEPTED
+        description: | 
+          Bet Status. 
+          ACCEPTED = Bet was accepted, 
+          CANCELLED = Bet is cancelled as per Pinnacle betting rules, 
+          LOSE = The bet is settled as lose,
+          REFUNDED = When an event is cancelled or when the bet is settled as push, the bet will have REFUNDED status, 
+          WON = The bet is settled as won 
+        enum:
+          - ACCEPTED
+          - CANCELLED
+          - LOSE
+          - REFUNDED
+          - WON
+      betType:
+        type: string
+        default: SPECIAL
+        example: SPECIAL
+      win:
+        type: number
+        format: double
+        example: 1
+        description: Win amount.
+      risk:
+        type: number
+        format: double
+        example: 1.51
+        description: Risk amount.
+      winLoss:
+        type: number
+        format: double
+        example: null
+        x-nullable: true
+        description: Win-Loss for settled bets.
+      oddsFormat:
+        $ref: '#/definitions/OddsFormat'
+      customerCommission:
+        type: number
+        format: double
+        example: null
+        x-nullable: true
+        description: Client’s commission on the bet.
+      cancellationReason:
+        $ref: '#/definitions/CancellationReason'
+      updateSequence:
+        type: integer
+        format: int64
+        example: 113214135
+        description: Update Sequence. It gets updated when the bet status change.
+      specialId:
+        type: integer
+        format: int64
+        example: 726397620
+        description: ''
+      specialName:
+        type: string
+        example: Denver Broncos Regular Season Wins?
+        description: ''
+      contestantId:
+        type: integer
+        format: int64
+        example: 726397622
+        description: ''
+      contestantName:
+        type: string
+        example: Under
+        description: ''
+      price:
+        type: number
+        format: double
+        example: -151
+        description: ''
+      handicap:
+        type: number
+        format: double
+        example: 8.5
+        description: ''
+      units:
+        type: string
+        example: Regular Season Wins
+        description: ''
+      sportId:
+        type: integer
+        format: int32
+        example: 15
+        description: ''
+      leagueId:
+        type: integer
+        format: int32
+        example: 889
+        description: ''
+      eventId:
+        type: integer
+        format: int64
+        example: null
+        x-nullable: true
+        description: Populated if bet was placed on a special linked to the event.
+      periodNumber:
+        type: integer
+        format: int32
+        example: null
+        x-nullable: true
+        description: Populated if bet was placed on a special linked to the event.
+      team1:
+        type: string
+        example: null
+        x-nullable: true
+        description: Populated if bet was placed on a special linked to the event.
+      team2:
+        type: string
+        example: null
+        x-nullable: true
+        description: Populated if bet was placed on a special linked to the event.
+      eventStartTime:
+        type: string 
+        format: date-time
+        example: 2017-10-05T01:32:59Z
+        x-nullable: false
+        description: Date time when the event starts.
+      resultingUnit:
+        type: string 
+        x-nullable: false
+        description: Specifies based on what the event is being resulted, e.g. Corners, Bookings , Regular.        
+    description: ''    
+  GetBetsByTypeResponseV3:
+    type: object
+    properties:
+      moreAvailable:
+        type: boolean 
+        description: Whether there are more pages available.
+      pageSize:
+        type: integer 
+        description: Page size. Default is 1000.
+        example: 1000
+      fromRecord:
+        type: integer 
+        description: Starting record number of the result set. Records start at zero
+      toRecord:
+        type: integer 
+        description: Ending record number of the result set. 
+      straightBets:
+        type: array
+        description: A collection of placed straight bets.
+        items:
+          $ref: '#/definitions/StraightBetV3'
+      parlayBets:
+        type: array
+        description: A collection of placed parlay bets.
+        items:
+          $ref: '#/definitions/ParlayBetV2'
+      teaserBets:
+        type: array
+        description: A collection of placed teaser bets.
+        items:
+          $ref: '#/definitions/TeaserBet'
+      specialBets:
+        type: array
+        description: A collection of placed special bets.
+        items:
+          $ref: '#/definitions/SpecialBetV3'
+      manualBets:
+        type: array
+        description: A collection of placed manual bets.
+        items:
+          $ref: '#/definitions/ManualBet'
+    description: ''  
+  GetRegradedWagerHistoryResponseV1:
+    type: object
+    properties:
+      moreAvailable:
+        type: boolean 
+        description: Whether there are more pages available.
+      pageSize:
+        type: integer 
+        description: Page size. Default is 1000.
+        example: 1000
+      fromRecord:
+        type: integer 
+        description: Starting record number of the result set. Records start at zero
+      toRecord:
+        type: integer 
+        description: Ending record number of the result set. 
+      straightBets:
+        type: array
+        description: A collection of placed straight bets.
+        items:
+          $ref: '#/definitions/StraightBetRegradedWagerHistoryV1'
+      parlayBets:
+        type: array
+        description: A collection of placed parlay bets.
+        items:
+          $ref: '#/definitions/ParlayBetRegradedWagerHistoryV1'
+      teaserBets:
+        type: array
+        description: A collection of placed teaser bets.
+        items:
+          $ref: '#/definitions/TeaserBetRegradedWagerHistoryV1'
+      specialBets:
+        type: array
+        description: A collection of placed special bets.
+        items:
+          $ref: '#/definitions/SpecialBetRegradedWagerHistoryV1'
+      manualBets:
+        type: array
+        description: A collection of placed manual bets.
+        items:
+          $ref: '#/definitions/ManualBetRegradedWagerHistoryV1'
+    description: '' 
+  TeaserBet:
+    type: object
+    required:
+      - betId
+      - betStatus
+      - betType
+      - isSameEventOnly
+      - legs
+      - maxPicks
+      - minPicks
+      - oddsFormat
+      - placedAt
+      - risk
+      - teaserName
+      - updateSequence
+      - wagerNumber
+      - win
+    properties:
+      betId:
+        type: integer
+        format: int64
+        description: Bet identification
+      uniqueRequestId:
+        type: string
+        format: uuid
+        example: 10924E23-A2FE-4317-BFFD-80504675F554
+        description: Unique Request Id
+      wagerNumber:
+        type: integer
+        format: int32
+        description: 'Wager identification. All bets placed thru the API will have value 1. Website Classic view supports multiple contest(special) bets placement in the same bet slip in that case the bet would have appropriate wager number, as well as all round robin parlay bets.'
+      placedAt:
+        type: string
+        format: date-time
+        description: Date time when the bet was placed.
+      betStatus:
+        type: string
+        description: | 
+            Bet Status. 
+            
+            ACCEPTED = Bet was accepted,  
+            CANCELLED = Bet is cancelled as per Pinnacle betting rules,  
+            LOSE = The bet is settled as lose,  
+            REFUNDED = When an event is cancelled or when the bet is settled as push, the bet will have REFUNDED status,  
+            WON = The bet is settled as won 
+        enum:
+          - ACCEPTED
+          - CANCELLED
+          - LOSE
+          - REFUNDED
+          - WON
+      betType:
+        type: string
+        default: TEASER
+        example: TEASER
+      win:
+        type: number
+        format: double
+        description: Win amount.
+      risk:
+        type: number
+        format: double
+        description: Risk amount.
+      winLoss:
+        type: number
+        format: double
+        description: Win-Loss for settled bets.
+      oddsFormat:
+        $ref: '#/definitions/OddsFormat'
+      customerCommission:
+        type: number
+        format: double
+        description: Client’s commission on the bet.
+      cancellationReason:
+        $ref: '#/definitions/CancellationReason'
+      updateSequence:
+        type: integer
+        format: int64
+        description: Update Sequence
+      teaserName:
+        type: string
+        description: ''
+      isSameEventOnly:
+        type: boolean
+        description: ''
+      minPicks:
+        type: number
+        format: double
+        description: ''
+      maxPicks:
+        type: number
+        format: double
+        description: ''
+      price:
+        type: number
+        format: double
+        example: 682
+        description: 'Populated for all teaser bets and will be the original price at the time of the placement.'
+      finalPrice:
+        type: number
+        format: double
+        example: 0
+        description: Only for settled parlay. Final price may differ in case leg was cancelled or half won. 
+      teaserId:
+        type: number
+        format: int32
+        example: 0
+        description: Reference to the teaser id. 
+      teaserGroupId:
+        type: number
+        format: int32
+        example: 0
+        description: Reference to the teaser group id.         
+      legs:
+        type: array
+        description: ''
+        items:
+          $ref: '#/definitions/TeaserLeg'
+    description: ''
+  TeaserBetRegradedWagerHistoryV1:
+    type: object
+    required:
+      - betId
+      - betStatus
+      - betType
+      - isSameEventOnly
+      - legs
+      - maxPicks
+      - minPicks
+      - oddsFormat
+      - placedAt
+      - risk
+      - teaserName
+      - updateSequence
+      - wagerNumber
+      - win
+    properties:
+      betId:
+        type: integer
+        format: int64
+        description: Bet identification
+      originalBetId:
+        type: integer
+        format: int64
+        description: Original bet identification
+      uniqueRequestId:
+        type: string
+        format: uuid
+        example: 10924E23-A2FE-4317-BFFD-80504675F554
+        description: Unique Request Id
+      wagerNumber:
+        type: integer
+        format: int32
+        description: 'Wager identification. All bets placed thru the API will have value 1. Website Classic view supports multiple contest(special) bets placement in the same bet slip in that case the bet would have appropriate wager number, as well as all round robin parlay bets.'
+      placedAt:
+        type: string
+        format: date-time
+        description: Date time when the bet was placed.
+      betStatus:
+        type: string
+        description: | 
+            Bet Status. 
+            
+            ACCEPTED = Bet was accepted,  
+            CANCELLED = Bet is cancelled as per Pinnacle betting rules,  
+            LOSE = The bet is settled as lose,  
+            REFUNDED = When an event is cancelled or when the bet is settled as push, the bet will have REFUNDED status,  
+            WON = The bet is settled as won 
+        enum:
+          - ACCEPTED
+          - CANCELLED
+          - LOSE
+          - REFUNDED
+          - WON
+      betType:
+        type: string
+        default: TEASER
+        example: TEASER
+      win:
+        type: number
+        format: double
+        description: Win amount.
+      risk:
+        type: number
+        format: double
+        description: Risk amount.
+      winLoss:
+        type: number
+        format: double
+        description: Win-Loss for settled bets.
+      oddsFormat:
+        $ref: '#/definitions/OddsFormat'
+      customerCommission:
+        type: number
+        format: double
+        description: Client’s commission on the bet.
+      cancellationReason:
+        $ref: '#/definitions/CancellationReason'
+      updateSequence:
+        type: integer
+        format: int64
+        description: Update Sequence
+      teaserName:
+        type: string
+        description: ''
+      isSameEventOnly:
+        type: boolean
+        description: ''
+      minPicks:
+        type: number
+        format: double
+        description: ''
+      maxPicks:
+        type: number
+        format: double
+        description: ''
+      price:
+        type: number
+        format: double
+        example: 682
+        description: 'Populated for all teaser bets and will be the original price at the time of the placement.'
+      finalPrice:
+        type: number
+        format: double
+        example: 0
+        description: Only for settled parlay. Final price may differ in case leg was cancelled or half won. 
+      teaserId:
+        type: number
+        format: int32
+        example: 0
+        description: Reference to the teaser id. 
+      teaserGroupId:
+        type: number
+        format: int32
+        example: 0
+        description: Reference to the teaser group id.         
+      legs:
+        type: array
+        description: ''
+        items:
+          $ref: '#/definitions/TeaserLeg'
+    description: ''
+  ManualBet:
+    type: object
+    required:
+      - betId
+      - betStatus
+      - betType
+      - description
+      - placedAt
+      - risk
+      - updateSequence
+      - wagerNumber
+      - win
+    properties:
+      betId:
+        type: integer
+        format: int64
+        example: 760063588
+        description: Bet identification
+      wagerNumber:
+        type: integer
+        format: int32
+        example: 1
+        description: 'Wager identification. All bets placed thru the API will have value 1. Website Classic view supports multiple contest(special) bets placement in the same bet slip in that case the bet would have appropriate wager number, as well as all round robin parlay bets.'
+      placedAt:
+        type: string
+        format: date-time
+        example: '2017-09-06T14:56:27Z'
+        description: Date time when the bet was placed.
+      betStatus:
+        type: string
+        description: |
+          Bet Status. 
+          
+          ACCEPTED = Bet was accepted,  
+          CANCELLED = Bet is cancelled as per Pinnacle betting rules,  
+          LOSE = The bet is settled as lose,  
+          REFUNDED = When an event is cancelled or when the bet is settled as push, the bet will have REFUNDED status,  
+          WON = The bet is settled as won 
+        enum:
+          - ACCEPTED
+          - CANCELLED
+          - LOSE
+          - REFUNDED
+          - WON
+      betType:
+        type: string
+        default: MANUAL
+        example: MANUAL
+      win:
+        type: number
+        format: double
+        example: 15000
+        description: Win amount.
+      risk:
+        type: number
+        format: double
+        example: 500
+        description: Risk amount.
+      winLoss:
+        type: number
+        format: double
+        description: Win-Loss for settled bets.
+      updateSequence:
+        type: integer
+        format: int64
+        example: 112472310
+        description: Update Sequence
+      description:
+        type: string
+        example: Soccer Props - Partizan vs Crvena Zvezda - Partizan @ +3000
+        description: Manual bet description.
+      referenceBetId:
+        type: integer
+        format: int64
+        example: null
+        x-nullable: true
+        description: Referenced original bet id.
+    description: ''
+  ManualBetRegradedWagerHistoryV1:
+    type: object
+    required:
+      - betId
+      - betStatus
+      - betType
+      - description
+      - placedAt
+      - risk
+      - updateSequence
+      - wagerNumber
+      - win
+    properties:
+      betId:
+        type: integer
+        format: int64
+        example: 760063588
+        description: Bet identification
+      originalBetId:
+        type: integer
+        format: int64
+        example: 760063543
+        description: Original bet identification
+      wagerNumber:
+        type: integer
+        format: int32
+        example: 1
+        description: 'Wager identification. All bets placed thru the API will have value 1. Website Classic view supports multiple contest(special) bets placement in the same bet slip in that case the bet would have appropriate wager number, as well as all round robin parlay bets.'
+      placedAt:
+        type: string
+        format: date-time
+        example: '2017-09-06T14:56:27Z'
+        description: Date time when the bet was placed.
+      betStatus:
+        type: string
+        description: |
+          Bet Status. 
+          
+          ACCEPTED = Bet was accepted,  
+          CANCELLED = Bet is cancelled as per Pinnacle betting rules,  
+          LOSE = The bet is settled as lose,  
+          REFUNDED = When an event is cancelled or when the bet is settled as push, the bet will have REFUNDED status,  
+          WON = The bet is settled as won 
+        enum:
+          - ACCEPTED
+          - CANCELLED
+          - LOSE
+          - REFUNDED
+          - WON
+      betType:
+        type: string
+        default: MANUAL
+        example: MANUAL
+      win:
+        type: number
+        format: double
+        example: 15000
+        description: Win amount.
+      risk:
+        type: number
+        format: double
+        example: 500
+        description: Risk amount.
+      winLoss:
+        type: number
+        format: double
+        description: Win-Loss for settled bets.
+      updateSequence:
+        type: integer
+        format: int64
+        example: 112472310
+        description: Update Sequence
+      description:
+        type: string
+        example: Soccer Props - Partizan vs Crvena Zvezda - Partizan @ +3000
+        description: Manual bet description.
+      referenceBetId:
+        type: integer
+        format: int64
+        example: null
+        x-nullable: true
+        description: Referenced original bet id.
+    description: ''
+  TeaserLeg:
+    type: object
+    properties:
+      sportId:
+        type: integer
+        format: int32
+        description: ''
+      legBetType:
+        type: string
+        description: 'Teaser leg type.'
+        enum:
+          - SPREAD
+          - TOTAL_POINTS
+      legBetStatus:
+        type: string
+        description: |
+          CANCELLED = The leg is canceled- the stake on this leg will be transferred to the next one. In this case the leg will be ignored when calculating the winLoss,  
+          LOSE = The leg is a loss or a push-lose. When Push-lose happens, the half of the stake on the leg will be pushed to the next leg, and the other half will be a lose. This can happen only when the leg is placed on a quarter points handicap,  
+          PUSH = The leg is a push - the stake on this leg will be transferred to the next one. In this case the leg will be ignored when calculating the winLoss,  
+          REFUNDED = The leg is refunded - the stake on this leg will be transferred to the next one. In this case the leg will be ignored when calculating the winLoss,  
+          WON = The leg is a won or a push-won. When Push-won happens, the half of the stake on the leg will be pushed to the next leg, and the other half is won. This can happen only when the leg is placed on a quarter points handicap  
+        enum:
+          - CANCELLED
+          - LOSE
+          - PUSH
+          - REFUNDED
+          - WON
+      leagueId:
+        type: integer
+        format: int32
+        description: ''
+      eventId:
+        type: integer
+        format: int64
+        description: ''
+      eventStartTime:
+        type: string
+        format: date-time
+        example: '2017-10-05T01:32:59Z'
+        description: 'Date time when the event starts.'
+      handicap:
+        type: number
+        format: double
+        description: ''
+      teamName:
+        type: string
+        description: ''
+      side:
+        type: string
+        description: 'Side type.'
+        enum:
+          - OVER
+          - UNDER
+      team1:
+        type: string
+        description: ''
+      team2:
+        type: string
+        description: ''
+      periodNumber:
+        type: integer
+        format: int32
+        description: ''
+      resultingUnit:
+        type: string
+        description: 'Specifies based on what the event is being resulted, e.g. Corners, Bookings , Regular'        
+    description: ''
+  OddsFormat:
+    type: string
+    description: |
+      Bet odds format.  
+      AMERICAN = American odds format,  
+      DECIMAL = Decimal (European) odds format,  
+      HONGKONG = Hong Kong odds format,  
+      INDONESIAN = Indonesian odds format,  
+      MALAY = Malaysian odds format 
+    enum:
+      - AMERICAN
+      - DECIMAL
+      - HONGKONG
+      - INDONESIAN
+      - MALAY  
+    example: DECIMAL
+  BettingStatusResponse:
+    type: object
+    required:
+      - status
+    properties:
+      status:
+        type: string
+        description: |
+          Betting status.
+        enum:
+          - ALL_BETTING_ENABLED
+          - ALL_LIVE_BETTING_CLOSED
+          - ALL_BETTING_CLOSED
+    description: ''

Rozdílová data souboru nebyla zobrazena, protože soubor je příliš velký
+ 15 - 0
pinnacle/betsapi_zh.html


+ 4706 - 0
pinnacle/betsapi_zh.yaml

@@ -0,0 +1,4706 @@
+swagger: '2.0'
+info:
+  version: 1.0.0
+  title: Pinnacle888 API - 投注 API 参考(Bets API)
+  description:  |
+    关于投注的一切:下单、查询投注历史或当前投注状态。
+
+    # 认证
+
+    API 使用 HTTP Basic 访问认证。需在请求头中发送 Authorization:
+
+    `Authorization: Basic <UTF-8 编码的 "用户名:密码" 的 Base64 值>`
+
+    示例:
+
+    `Authorization: Basic U03MyOT23YbzMDc6d3c3O1DQ1`
+
+  x-logo:
+    url: ''
+host: api.pinnacle888.com
+schemes:
+  - https
+security:
+  - basicAuth: []
+paths:
+  /v2/bets/place:
+    post:
+      tags:
+        - 下单投注
+      summary: 下单选式投注 - v2
+      description: |
+           下单选式投注(让分 SPREAD、独赢 MONEYLINE、总分 TOTAL_POINTS、队伍总分 TEAM_TOTAL_POINTS)。
+
+           请注意:当状态为 PENDING_ACCEPTANCE 且应用了滚球延迟时,响应中不会包含 betId。客户端需通过 uniqueRequestId 调用 /bets 来查询投注是否已被 ACCEPTED。
+
+           详见 [如何在滚球赛事上下注?](https://github.com/pinny888/pinny888.github.io/blob/main/FAQs.md#how-to-place-a-bet-on-live-events)
+      operationId: Bets_StraightV2
+      consumes:
+        - application/json
+      produces:
+        - application/json
+      parameters:
+        - in: body
+          name: request
+          description: ''
+          required: true
+          schema:
+            $ref: '#/definitions/PlaceBetRequestV2'
+      responses:
+        '200':
+          description: 成功
+          schema:
+            $ref: '#/definitions/PlaceBetResponseV2'
+        '400':
+          description: 请求错误
+          schema:
+            $ref: '#/definitions/ErrorResponse'
+        '401':
+          description: 未授权
+          schema:
+            $ref: '#/definitions/ErrorResponse'
+        '403':
+          description: 禁止访问
+          schema:
+            $ref: '#/definitions/ErrorResponse'
+        '500':
+          description: 服务器内部错误
+          schema:
+            $ref: '#/definitions/ErrorResponseWithErrorRef'
+  /v2/bets/parlay:
+    post:
+      tags:
+        - 下单投注
+      summary: 下串关投注 - v2
+      operationId: Bets_ParlayV2
+      consumes:
+        - application/json
+      produces:
+        - application/json
+      parameters:
+        - in: body
+          name: request
+          description: 串关投注请求体。
+          required: true
+          schema:
+            $ref: '#/definitions/PlaceParlayBetRequest'
+      responses:
+        '200':
+          description: 成功
+          schema:
+            $ref: '#/definitions/PlaceParlayBetResponseV2'
+        '400':
+          description: 请求错误
+          schema:
+            $ref: '#/definitions/ErrorResponse'
+        '401':
+          description: 未授权
+          schema:
+            $ref: '#/definitions/ErrorResponse'
+        '403':
+          description: 禁止访问
+          schema:
+            $ref: '#/definitions/ErrorResponse'
+        '500':
+          description: 服务器内部错误
+          schema:
+            $ref: '#/definitions/ErrorResponseWithErrorRef'
+  /v1/bets/teaser:
+    post:
+      tags:
+        - 下单投注
+      summary: 下过关投注(Teaser)- v1
+      operationId: Bets_Teaser
+      consumes:
+        - application/json
+      produces:
+        - application/json
+      parameters:
+        - in: body
+          name: request
+          description: 过关投注(PlaceTeaser)请求体。
+          required: true
+          schema:
+            $ref: '#/definitions/PlaceTeaserBetRequest'
+      responses:
+        '200':
+          description: 成功
+          schema:
+            $ref: '#/definitions/PlaceTeaserBetResponse'
+        '400':
+          description: 请求错误
+          schema:
+            $ref: '#/definitions/ErrorResponse'
+        '401':
+          description: 未授权
+          schema:
+            $ref: '#/definitions/ErrorResponse'
+        '403':
+          description: 禁止访问
+          schema:
+            $ref: '#/definitions/ErrorResponse'
+        '500':
+          description: 服务器内部错误
+          schema:
+            $ref: '#/definitions/ErrorResponseWithErrorRef'
+  /v2/bets/special:
+    post:
+      tags:
+        - 下单投注
+      summary: 下特殊投注 - v2
+      operationId: Bets_SpecialV2
+      consumes:
+        - application/json
+      produces:
+        - application/json
+      parameters:
+        - in: body
+          name: request
+          description: 特殊投注请求体。
+          required: true
+          schema:
+            $ref: '#/definitions/MultiBetRequest[SpecialBetRequest]'
+      responses:
+        '200':
+          description: 成功
+          schema:
+            $ref: '#/definitions/MultiBetResponse[SpecialBetResponse]'
+        '400':
+          description: 请求错误
+          schema:
+            $ref: '#/definitions/ErrorResponse'
+        '401':
+          description: 未授权
+          schema:
+            $ref: '#/definitions/ErrorResponse'
+        '403':
+          description: 禁止访问
+          schema:
+            $ref: '#/definitions/ErrorResponse'
+        '500':
+          description: 服务器内部错误
+          schema:
+            $ref: '#/definitions/ErrorResponseWithErrorRef'
+  /v4/bets/place:
+    post:
+      tags:
+        - 下单投注
+      summary: 下单选式投注 - v4
+      description: |
+           Place straight bet (SPREAD, MONEYLINE, TOTAL_POINTS, TEAM_TOTAL_POINTS).
+
+           Please note when the status is PENDING_ACCEPTANCE and if the live delay was applied, the response will not have betId. Client would have to call /bets by uniqueRequestId to check the status if the bet was ACCEPTED.
+
+           For more details please see [How to place a bet on live events?](https://github.com/pinny888/pinny888.github.io/blob/main/FAQs.md#how-to-place-a-bet-on-live-events)
+      operationId: Bets_StraightV4
+      consumes:
+        - application/json
+      produces:
+        - application/json
+      parameters:
+        - in: body
+          name: request
+          description: ''
+          required: true
+          schema:
+            $ref: '#/definitions/PlaceBetRequestV2'
+      responses:
+        '200':
+          description: 成功
+          schema:
+            $ref: '#/definitions/PlaceBetResponseV4'
+        '400':
+          description: 请求错误
+          schema:
+            $ref: '#/definitions/ErrorResponse'
+        '401':
+          description: 未授权
+          schema:
+            $ref: '#/definitions/ErrorResponse'
+        '403':
+          description: 禁止访问
+          schema:
+            $ref: '#/definitions/ErrorResponse'
+        '500':
+          description: 服务器内部错误
+          schema:
+            $ref: '#/definitions/ErrorResponseWithErrorRef'
+  /v4/bets/parlay:
+    post:
+      tags:
+        - 下单投注
+      summary: 下串关投注 - v4
+      operationId: Bets_ParlayV4
+      consumes:
+        - application/json
+      produces:
+        - application/json
+      parameters:
+        - in: body
+          name: request
+          description: 串关投注请求体。
+          required: true
+          schema:
+            $ref: '#/definitions/PlaceParlayBetRequest'
+      responses:
+        '200':
+          description: 成功
+          schema:
+            $ref: '#/definitions/PlaceParlayBetResponseV4'
+        '400':
+          description: 请求错误
+          schema:
+            $ref: '#/definitions/ErrorResponse'
+        '401':
+          description: 未授权
+          schema:
+            $ref: '#/definitions/ErrorResponse'
+        '403':
+          description: 禁止访问
+          schema:
+            $ref: '#/definitions/ErrorResponse'
+        '500':
+          description: 服务器内部错误
+          schema:
+            $ref: '#/definitions/ErrorResponseWithErrorRef'
+  /v4/bets/teaser:
+    post:
+      tags:
+        - 下单投注
+      summary: 下过关投注(Teaser)- v4
+      operationId: Bets_TeaserV4
+      consumes:
+        - application/json
+      produces:
+        - application/json
+      parameters:
+        - in: body
+          name: request
+          description: 过关投注(PlaceTeaser)请求体。
+          required: true
+          schema:
+            $ref: '#/definitions/PlaceTeaserBetRequest'
+      responses:
+        '200':
+          description: 成功
+          schema:
+            $ref: '#/definitions/PlaceTeaserBetResponseV4'
+        '400':
+          description: 请求错误
+          schema:
+            $ref: '#/definitions/ErrorResponse'
+        '401':
+          description: 未授权
+          schema:
+            $ref: '#/definitions/ErrorResponse'
+        '403':
+          description: 禁止访问
+          schema:
+            $ref: '#/definitions/ErrorResponse'
+        '500':
+          description: 服务器内部错误
+          schema:
+            $ref: '#/definitions/ErrorResponseWithErrorRef'
+  /v4/bets/special:
+    post:
+      tags:
+        - 下单投注
+      summary: 下特殊投注 - v4
+      operationId: Bets_SpecialV4
+      consumes:
+        - application/json
+      produces:
+        - application/json
+      parameters:
+        - in: body
+          name: request
+          description: 特殊投注请求体。
+          required: true
+          schema:
+            $ref: '#/definitions/MultiBetRequest[SpecialBetRequest]'
+      responses:
+        '200':
+          description: 成功
+          schema:
+            $ref: '#/definitions/MultiBetResponse[SpecialBetResponseV4]'
+        '400':
+          description: 请求错误
+          schema:
+            $ref: '#/definitions/ErrorResponse'
+        '401':
+          description: 未授权
+          schema:
+            $ref: '#/definitions/ErrorResponse'
+        '403':
+          description: 禁止访问
+          schema:
+            $ref: '#/definitions/ErrorResponse'
+        '500':
+          description: 服务器内部错误
+          schema:
+            $ref: '#/definitions/ErrorResponseWithErrorRef'
+  /v3/bets:
+    get:
+      tags:
+        - 查询投注
+      summary: 查询投注 - v3
+      description: |
+          返回投注列表。
+
+
+          ### 按时间范围查询进行中投注:
+          ```
+          https://api.pinnacle888.com/v3/bets?betlist=RUNNING&fromDate=2017-11-21T00:00:00Z&toDate=2017-11-29T00:00:00Z
+          ```
+          进行中投注按 *placedAt* 时间查询。
+
+
+          ### 按时间范围查询已结算投注:
+
+          ```
+          https://api.pinnacle888.com/v3/bets?betlist=SETTLED&fromDate=2015-12-28T00:00:00Z&toDate=2015-12-29T00:00:00Z
+          ```
+          已结算投注按 *settledAt* 时间查询。
+          https://api.pinnacle888.com/v3/bets?betlist=SETTLED&fromDate=2017-11-20T00:00:00Z&toDate=2017-11-23T00:00:00Z
+
+
+          ### 按时间范围查询已结算的已取消投注:
+
+          ```
+          https://api.pinnacle888.com/v3/bets?betList=SETTLED&fromDate=2018-03-01&toDate=2018-03-28&betStatuses=CANCELLED
+          ```
+
+
+          ### 按投注 ID 查询:
+
+          ```
+          https://api.pinnacle888.com/v3/bets?betIds=775856112,775856113,775856114
+          ```
+
+          ### 按 uniqueRequestIds 查询:
+
+          ```
+          https://api.pinnacle888.com/v3/bets?uniqueRequestIds=62335222-dae4-479a-8c05-46440ccdd3bb,42335222-dae4-479a-8c05-46440ccdd3bb
+          ```
+
+      operationId: Bets_GetBetsByTypeV3
+      consumes: []
+      produces:
+        - application/json
+      parameters:
+        - name: betlist
+          in: query
+          description: '返回的投注列表类型。当提交 betIds 时不需要此参数。'
+          required: false
+          type: string
+          enum:
+            - SETTLED
+            - RUNNING
+            - ALL
+        - name: betStatuses
+          in: query
+          description: '返回的投注状态类型。仅在与 betlist 一起使用时生效,作为附加筛选条件。'
+          required: false
+          type: array
+          items:
+            type: string
+            enum:
+            - WON
+            - LOSE
+            - CANCELLED
+            - REFUNDED
+            - NOT_ACCEPTED
+            - ACCEPTED
+            - PENDING_ACCEPTANCE
+          collectionFormat: csv
+        - name: fromDate
+          in: query
+          description: |
+            查询时间段的开始日期。当提交 betlist 参数时必填。开始日期最多可追溯 30 天。格式为 ISO8601,可仅填日期或日期时间。
+          required: false
+          type: string
+        - name: toDate
+          in: query
+          description: |
+            查询时间段的结束日期。当提交 betlist 参数时必填。格式为 ISO8601,可仅填日期或日期时间。toDate 为不包含边界,即不能等于 fromDate。
+          required: false
+          type: string
+        - name: sortDir
+          in: query
+          description: '按 postedAt/settledAt 的排序方向。仅在使用日期范围查询时生效。'
+          required: false
+          type: string
+          enum:
+            - ASC
+            - DESC
+          default: ASC
+        - name: pageSize
+          in: query
+          description: '每页条数,最大 1000。仅在使用日期范围查询时生效。'
+          required: false
+          type: integer
+          default: 1000
+        - name: fromRecord
+          in: query
+          description: '结果起始记录(含)。仅在使用日期范围查询时生效。获取下一页时设为 toRecord+1。'
+          required: false
+          type: integer
+          default: 0
+        - name: betIds
+          in: query
+          description: '逗号分隔的投注 ID 列表。提交 betIds 时无需其他参数。最多 100 个 ID。适用于所有未结算投注及最近 30 天内结算的投注。'
+          required: false
+          type: array
+          items:
+            type: integer
+            format: int64
+          collectionFormat: csv
+        - name: uniqueRequestIds
+          in: query
+          description: |
+              逗号分隔的 uniqueRequestIds 列表,用于查询之前下的选式投注。若指定则优先级最高,其他参数均被忽略。最多 10 个 ID。若有 betId 建议用 betIds 查询;无 betId 时使用 uniqueRequestIds。主要有两种情况:
+
+              1. 在带滚球延迟的滚球赛事上下注时,下单响应不返回 betId,客户端可用 uniqueRequestIds 查询投注状态。
+              2. 网络异常导致客户端不确定下单请求结果时。空响应表示投注未成功。详见 [去重说明](https://www.pinnacle.com/de/api/manual#overview)
+
+
+              注意:按 uniqueRequestIds 查询仅支持选式投注和特殊投注,且仅限投注下单后 30 分钟内。
+          required: false
+          type: array
+          items:
+            type: string
+          collectionFormat: csv
+        - name: betType
+          in: query
+          description: '逗号分隔的投注类型列表。'
+          required: false
+          type: array
+          items:
+            type: string
+            enum:
+            - SPREAD
+            - MONEYLINE
+            - TOTAL_POINTS
+            - TEAM_TOTAL_POINTS
+            - SPECIAL
+            - PARLAY
+            - TEASER
+            - MANUAL
+          collectionFormat: csv
+      responses:
+        '200':
+          description: 成功
+          schema:
+            $ref: '#/definitions/GetBetsByTypeResponseV3'
+        '400':
+          description: 请求错误
+          schema:
+            $ref: '#/definitions/ErrorResponse'
+        '401':
+          description: 未授权
+          schema:
+            $ref: '#/definitions/ErrorResponse'
+        '403':
+          description: 禁止访问
+          schema:
+            $ref: '#/definitions/ErrorResponse'
+        '500':
+          description: 服务器内部错误
+          schema:
+            $ref: '#/definitions/ErrorResponseWithErrorRef'
+
+  /v3/bets/settled:
+    get:
+      tags:
+        - 查询投注
+      summary: 查询已结算投注 - v3
+      description: |
+          返回已结算的投注列表。
+
+
+          ### 按时间范围查询已结算投注:
+
+          ```
+          https://api.pinnacle888.com/v3/bets/settled?fromDate=2015-12-28T00:00:00Z&toDate=2015-12-29T00:00:00Z
+          ```
+
+
+          ### 按 uniqueRequestIds 查询已结算投注:
+
+          ```
+          https://api.pinnacle888.com/v3/bets/settled?uniqueRequestIds=62335222-dae4-479a-8c05-46440ccdd3bb,42335222-dae4-479a-8c05-46440ccdd3bb
+          ```
+
+      operationId: Bets_GetBetsSettledV3
+      consumes: []
+      produces:
+        - application/json
+      parameters:
+        - name: eventId
+          in: query
+          description: 赛事标识。注意:按 eventId 查询仅支持投注结算后 90 天内。
+          required: false
+          type: integer
+          format: int64
+        - name: specialId
+          in: query
+          description: 特殊盘口 ID。
+          required: false
+          type: integer
+          format: int64
+        - name: fromDate
+          in: query
+          description: |
+            查询时间段的开始日期。当提交 betlist 参数时必填。开始日期最多可追溯 30 天。格式为 ISO8601,可仅填日期或日期时间。
+          required: false
+          type: string
+        - name: toDate
+          in: query
+          description: |
+            查询时间段的结束日期。当提交 betlist 参数时必填。格式为 ISO8601,可仅填日期或日期时间。toDate 为不包含边界,即不能等于 fromDate。
+          required: false
+          type: string
+        - name: sortDir
+          in: query
+          description: '按 postedAt/settledAt 的排序方向。仅在使用日期范围查询时生效。'
+          required: false
+          type: string
+          enum:
+            - ASC
+            - DESC
+          default: ASC
+        - name: pageSize
+          in: query
+          description: '每页条数,最大 1000。仅在使用日期范围查询时生效。'
+          required: false
+          type: integer
+          default: 1000
+        - name: fromRecord
+          in: query
+          description: '结果起始记录(含)。仅在使用日期范围查询时生效。获取下一页时设为 toRecord+1。'
+          required: false
+          type: integer
+          default: 0
+        - name: uniqueRequestIds
+          in: query
+          description: |
+              逗号分隔的 uniqueRequestIds 列表,用于查询之前下的选式投注。若指定则优先级最高,其他参数均被忽略。最多 10 个 ID。若有 betId 建议用 betIds 查询;无 betId 时使用 uniqueRequestIds。主要有两种情况:
+
+              1. 在带滚球延迟的滚球赛事上下注时,下单响应不返回 betId,客户端可用 uniqueRequestIds 查询投注状态。
+              2. 网络异常导致客户端不确定下单请求结果时。空响应表示投注未成功。详见 [去重说明](https://www.pinnacle.com/de/api/manual#overview)
+
+
+              注意:按 uniqueRequestIds 查询仅支持选式投注,且仅限投注下单后 30 分钟内。
+          required: false
+          type: array
+          items:
+            type: string
+          collectionFormat: csv
+      responses:
+        '200':
+          description: 成功
+          schema:
+            $ref: '#/definitions/GetBetsByTypeResponseV3'
+        '400':
+          description: 请求错误
+          schema:
+            $ref: '#/definitions/ErrorResponse'
+        '401':
+          description: 未授权
+          schema:
+            $ref: '#/definitions/ErrorResponse'
+        '403':
+          description: 禁止访问
+          schema:
+            $ref: '#/definitions/ErrorResponse'
+        '500':
+          description: 服务器内部错误
+          schema:
+            $ref: '#/definitions/ErrorResponseWithErrorRef'
+
+  /v1/regrades/wager-history:
+    get:
+      tags:
+        - 查询投注
+      summary: 查询改分投注历史 - v1
+      description: |
+          返回与改分投注相关的历史数据。
+
+
+          ### 按时间范围查询改分投注历史:
+
+          ```
+          https://api.pinnacle888.com/v1/regrades/wager-history?fromDate=2024-04-01T00:00:00Z&toDate=2024-04-27T00:00:00Z
+          ```
+
+
+          ### 按投注 ID 查询改分投注历史:
+
+          ```
+          https://api.pinnacle888.com/v1/regrades/wager-history?betIds=52454247
+          ```
+
+      operationId: Bets_GetRegradedWagerHistoryV1
+      consumes: []
+      produces:
+        - application/json
+      parameters:
+        - name: betIds
+          in: query
+          description: '逗号分隔的投注 ID 列表。提交 betIds 时无需其他参数。最多 100 个 ID。适用于最近 30 天内结算的所有投注。'
+          required: false
+          type: array
+          items:
+            type: integer
+            format: int64
+          collectionFormat: csv
+        - name: fromDate
+          in: query
+          description: |
+            查询时间段的开始日期。未提交 betIds 时必填。开始日期最多可追溯 30 天。格式为 ISO8601,可仅填日期或日期时间。
+          required: false
+          type: string
+        - name: toDate
+          in: query
+          description: |
+            查询时间段的结束日期。未提交 betIds 时必填。格式为 ISO8601,可仅填日期或日期时间。toDate 为不包含边界,即不能等于 fromDate。
+
+          required: false
+          type: string
+        - name: sortDir
+          in: query
+          description: '按 postedAt/settledAt 的排序方向。仅在使用日期范围查询时生效。'
+          required: false
+          type: string
+          enum:
+            - ASC
+            - DESC
+          default: ASC
+        - name: pageSize
+          in: query
+          description: '每页条数,最大 1000。仅在使用日期范围查询时生效。'
+          required: false
+          type: integer
+          default: 1000
+        - name: fromRecord
+          in: query
+          description: '结果起始记录(含)。仅在使用日期范围查询时生效。获取下一页时设为 toRecord+1。'
+          required: false
+          type: integer
+          default: 0
+
+      responses:
+        '200':
+          description: 成功
+          schema:
+            $ref: '#/definitions/GetRegradedWagerHistoryResponseV1'
+        '400':
+          description: 请求错误
+          schema:
+            $ref: '#/definitions/ErrorResponse'
+        '401':
+          description: 未授权
+          schema:
+            $ref: '#/definitions/ErrorResponse'
+        '403':
+          description: 禁止访问
+          schema:
+            $ref: '#/definitions/ErrorResponse'
+        '500':
+          description: 服务器内部错误
+          schema:
+            $ref: '#/definitions/ErrorResponseWithErrorRef'
+
+  /v1/bets/betting-status:
+    get:
+      tags:
+        - 投注状态
+      summary: 查询投注状态
+      description: '返回当前投注状态。维护期间可能关闭投注,可调用此接口检查当前投注是否可用。'
+      operationId: Bets_GetBettingStatus
+      consumes: []
+      produces:
+        - application/json
+      parameters: []
+      responses:
+        '200':
+          description: 成功
+          schema:
+            $ref: '#/definitions/BettingStatusResponse'
+        '401':
+          description: 未授权
+          schema:
+            $ref: '#/definitions/ErrorResponse'
+        '403':
+          description: 禁止访问
+          schema:
+            $ref: '#/definitions/ErrorResponse'
+        '500':
+          description: 服务器内部错误
+          schema:
+            $ref: '#/definitions/ErrorResponseWithErrorRef'
+securityDefinitions:
+  basicAuth:
+    type: basic
+definitions:
+  PlaceBetRequestV2:
+    type: object
+    properties:
+      oddsFormat:
+        $ref: '#/definitions/OddsFormat'
+      uniqueRequestId:
+        type: string
+        format: uuid
+        example: D5CC50E4-284D-4D50-8D49-429BDC4F2A48
+        description: 下单请求的唯一 ID,用于支持幂等请求。
+      acceptBetterLine:
+        type: boolean
+        example: true
+        description: 当盘口变化对客户有利时是否接受该投注。
+      stake:
+        type: number
+        format: double
+        example: 10.5
+        description: amount in client’s currency.
+      winRiskStake:
+        type: string
+        example: RISK
+        description: 投注金额是风险金额还是盈利金额。
+        enum:
+          - WIN
+          - RISK
+      lineId:
+        type: integer
+        format: int64
+        example: 420921914
+        description: 盘口标识。
+      altLineId:
+        type: integer
+        format: int64
+        example: null
+        x-nullable: true
+        description: 备用盘口标识。
+      pitcher1MustStart:
+        type: boolean
+        description: '仅棒球。指主队(Team1)先发投手。仅 MONEYLINE 投注类型可设,其他类型须为 TRUE。'
+      pitcher2MustStart:
+        type: boolean
+        description: '仅棒球。指客队(Team2)先发投手。仅 MONEYLINE 投注类型可设,其他类型须为 TRUE。'
+      fillType:
+        type: string
+        description: |
+            NORMAL - 按指定金额下注。
+            FILLANDKILL - 若金额超过最大限额则按最大限额下注,否则按指定金额下注。
+            FILLMAXLIMIT - 按最大限额下注,忽略指定金额。注意最大限额可能随时变动,可能导致风险高于预期。此选项替代 v1/bets/place 的 isMaxStakeBet。
+        enum:
+          - NORMAL
+          - FILLANDKILL
+          - FILLMAXLIMIT
+        example: NORMAL
+        default: NORMAL
+      sportId:
+        type: integer
+        format: int32
+        example: 29
+      eventId:
+        type: integer
+        format: int64
+        example: 757504261
+      periodNumber:
+        type: integer
+        format: int32
+        example: 0
+      betType:
+        type: string
+        example: MONEYLINE
+        description: '投注类型。'
+        enum:
+          - MONEYLINE
+          - TEAM_TOTAL_POINTS
+          - SPREAD
+          - TOTAL_POINTS
+      team:
+        type: string
+        example: TEAM1
+        description: '队伍类型。'
+        enum:
+          - TEAM1
+          - TEAM2
+          - DRAW
+      side:
+        type: string
+        example: null
+        x-nullable: true
+        description: '方向类型(大/小)。'
+        enum:
+          - OVER
+          - UNDER
+      handicap:
+        type: number
+        format: double
+        example: 1.0
+        description: SPREAD、TOTAL_POINTS、TEAM_TOTAL_POINTS 类型的可选参数。
+    description: 下单请求体。
+  ErrorResponse:
+    type: object
+    properties:
+      code:
+        type: string
+        description: |
+          INVALID_REQUEST_DATA = 请求参数无效 (HTTP 400)
+          SELF_EXCLUSION = 客户账户已自我排除 (HTTP 400)
+          TERMS_AND_CONDITIONS_NOT_ACCEPTED = 未接受条款与条件 (HTTP 400)
+          INVALID_CREDENTIALS = 认证失败,凭据无效 (HTTP 401)
+          INVALID_AUTHORIZATION_HEADER = 缺少 HTTP Authorization 头 (HTTP 401)
+          ACCOUNT_INACTIVE = 客户账户未激活 (HTTP 403)
+          NO_API_ACCESS = 账户无权访问 API (HTTP 403)
+        enum:
+          - INVALID_REQUEST_DATA
+          - SELF_EXCLUSION
+          - TERMS_AND_CONDITIONS_NOT_ACCEPTED
+          - INVALID_CREDENTIALS
+          - INVALID_AUTHORIZATION_HEADER
+          - ACCOUNT_INACTIVE
+          - NO_API_ACCESS
+      message:
+        type: string
+  PlaceBetResponseV2:
+    type: object
+    properties:
+      status:
+        type: string
+        example: ACCEPTED
+        description: 响应状态。
+        enum:
+          - ACCEPTED
+          - PENDING_ACCEPTANCE
+          - PROCESSED_WITH_ERROR
+      errorCode:
+        type: string
+        example: null
+        x-nullable: true
+        description: |
+          当 Status 为 PROCESSED_WITH_ERROR 时,响应中会包含 errorCode。
+
+          ALL_BETTING_CLOSED = 当前不允许投注,可能处于系统维护期间。
+          ALL_LIVE_BETTING_CLOSED = 当前不允许滚球投注,可能处于系统维护期间。
+          ABOVE_EVENT_MAX = 客户在该盘口上的风险已超允许上限,无法下注。
+          ABOVE_MAX_BET_AMOUNT = 投注金额超过允许的最大金额。
+          BELOW_MIN_BET_AMOUNT = 投注金额低于允许的最小金额。
+          BLOCKED_BETTING = 该客户投注已被暂停。
+          BLOCKED_CLIENT = 客户已不再活跃。
+          INSUFFICIENT_FUNDS = 客户余额不足。
+          INVALID_COUNTRY = 客户所在国家/地区不允许投注。
+          INVALID_EVENT = 赛事 ID 无效。
+          INVALID_ODDS_FORMAT = 使用了该客户不允许的赔率格式。
+          LINE_CHANGED = 投注的盘口已发生变化。
+          LISTED_PITCHERS_SELECTION_ERROR = 下单请求中 pitcher1MustStart 和/或 pitcher2MustStart 的值不允许。
+          OFFLINE_EVENT = 赛事已离线,或当前盘口/赔率/投注类型已不再提供。
+          PAST_CUTOFFTIME = 已过该场投注截止时间。
+          RED_CARDS_CHANGED = 滚球足球赛事红牌数已变化。
+          SCORE_CHANGED = 滚球足球赛事比分已变化。
+          DUPLICATE_UNIQUE_REQUEST_ID = 相同 uniqueRequestId 的请求已处理过,若需重新处理请使用新的 uniqueRequestId。
+          INCOMPLETE_CUSTOMER_BETTING_PROFILE = 系统配置问题。
+          INVALID_CUSTOMER_PROFILE = 系统配置问题。
+          LIMITS_CONFIGURATION_ISSUE = 系统配置问题。
+          RESPONSIBLE_BETTING_LOSS_LIMIT_EXCEEDED = 客户已达总亏损限额。
+          RESPONSIBLE_BETTING_RISK_LIMIT_EXCEEDED = 客户已达总风险限额。
+          RESUBMIT_REQUEST = 请求有效但无法处理,常见于滚球时同一盘口有多笔下单。此时不保留请求,直接返回错误;盘口可能随后变化。可尽快重新下单以降低 RESUBMIT_REQUEST 概率。
+          SYSTEM_ERROR_3 = 未预期错误。
+          LICENCE_RESTRICTION_LIVE_BETTING_BLOCKED = 因牌照限制滚球投注被关闭。
+          INVALID_HANDICAP = 盘口无效。
+          BETTING_SUSPENDED = 因市场异常该盘口暂不接受投注,请使用下一个 LineId 重试。
+        enum:
+          - ALL_BETTING_CLOSED
+          - ALL_LIVE_BETTING_CLOSED
+          - ABOVE_EVENT_MAX
+          - ABOVE_MAX_BET_AMOUNT
+          - BELOW_MIN_BET_AMOUNT
+          - BLOCKED_BETTING
+          - BLOCKED_CLIENT
+          - INSUFFICIENT_FUNDS
+          - INVALID_COUNTRY
+          - INVALID_EVENT
+          - INVALID_ODDS_FORMAT
+          - LINE_CHANGED
+          - LISTED_PITCHERS_SELECTION_ERROR
+          - OFFLINE_EVENT
+          - PAST_CUTOFFTIME
+          - RED_CARDS_CHANGED
+          - SCORE_CHANGED
+          - DUPLICATE_UNIQUE_REQUEST_ID
+          - INCOMPLETE_CUSTOMER_BETTING_PROFILE
+          - INVALID_CUSTOMER_PROFILE
+          - LIMITS_CONFIGURATION_ISSUE
+          - RESPONSIBLE_BETTING_LOSS_LIMIT_EXCEEDED
+          - RESPONSIBLE_BETTING_RISK_LIMIT_EXCEEDED
+          - RESUBMIT_REQUEST
+          - SYSTEM_ERROR_3
+          - LICENCE_RESTRICTION_LIVE_BETTING_BLOCKED
+          - INVALID_HANDICAP
+          - BETTING_SUSPENDED
+      uniqueRequestId:
+        type: string
+        example: D5CC50E4-284D-4D50-8D49-429BDC4F2A48
+        description: 请求中的 uniqueRequestId 回显。
+      straightBet:
+        $ref: '#/definitions/StraightBet'
+    description: ''
+  PlaceBetResponseV4:
+    type: object
+    properties:
+      status:
+        type: string
+        example: ACCEPTED
+        description: 响应状态。
+        enum:
+          - ACCEPTED
+          - PENDING_ACCEPTANCE
+          - PROCESSED_WITH_ERROR
+      errorCode:
+        type: string
+        example: null
+        x-nullable: true
+        description: |
+          当 Status 为 PROCESSED_WITH_ERROR 时,响应中会包含 errorCode。
+
+          ALL_BETTING_CLOSED = 当前不允许投注,可能处于系统维护期间。
+          ALL_LIVE_BETTING_CLOSED = 当前不允许滚球投注,可能处于系统维护期间。
+          ABOVE_EVENT_MAX = 客户在该盘口上的风险已超允许上限,无法下注。
+          ABOVE_MAX_BET_AMOUNT = 投注金额超过允许的最大金额。
+          BELOW_MIN_BET_AMOUNT = 投注金额低于允许的最小金额。
+          BLOCKED_BETTING = 该客户投注已被暂停。
+          BLOCKED_CLIENT = 客户已不再活跃。
+          INSUFFICIENT_FUNDS = 客户余额不足。
+          INVALID_COUNTRY = 客户所在国家/地区不允许投注。
+          INVALID_EVENT = 赛事 ID 无效。
+          INVALID_ODDS_FORMAT = 使用了该客户不允许的赔率格式。
+          LINE_CHANGED = 投注的盘口已发生变化。
+          LISTED_PITCHERS_SELECTION_ERROR = 下单请求中 pitcher1MustStart 和/或 pitcher2MustStart 的值不允许。
+          OFFLINE_EVENT = 赛事已离线,或当前盘口/赔率/投注类型已不再提供。
+          PAST_CUTOFFTIME = 已过该场投注截止时间。
+          RED_CARDS_CHANGED = 滚球足球赛事红牌数已变化。
+          SCORE_CHANGED = 滚球足球赛事比分已变化。
+          DUPLICATE_UNIQUE_REQUEST_ID = 相同 uniqueRequestId 的请求已处理过,若需重新处理请使用新的 uniqueRequestId。
+          INCOMPLETE_CUSTOMER_BETTING_PROFILE = 系统配置问题。
+          INVALID_CUSTOMER_PROFILE = 系统配置问题。
+          LIMITS_CONFIGURATION_ISSUE = 系统配置问题。
+          RESPONSIBLE_BETTING_LOSS_LIMIT_EXCEEDED = 客户已达总亏损限额。
+          RESPONSIBLE_BETTING_RISK_LIMIT_EXCEEDED = 客户已达总风险限额。
+          RESUBMIT_REQUEST = 请求有效但无法处理,常见于滚球时同一盘口有多笔下单。此时不保留请求,直接返回错误;盘口可能随后变化。可尽快重新下单以降低 RESUBMIT_REQUEST 概率。
+          SYSTEM_ERROR_3 = 未预期错误。
+          LICENCE_RESTRICTION_LIVE_BETTING_BLOCKED = 因牌照限制滚球投注被关闭。
+          INVALID_HANDICAP = 盘口无效。
+          BETTING_SUSPENDED = 因市场异常该盘口暂不接受投注,请使用下一个 LineId 重试。
+        enum:
+          - ALL_BETTING_CLOSED
+          - ALL_LIVE_BETTING_CLOSED
+          - ABOVE_EVENT_MAX
+          - ABOVE_MAX_BET_AMOUNT
+          - BELOW_MIN_BET_AMOUNT
+          - BLOCKED_BETTING
+          - BLOCKED_CLIENT
+          - INSUFFICIENT_FUNDS
+          - INVALID_COUNTRY
+          - INVALID_EVENT
+          - INVALID_ODDS_FORMAT
+          - LINE_CHANGED
+          - LISTED_PITCHERS_SELECTION_ERROR
+          - OFFLINE_EVENT
+          - PAST_CUTOFFTIME
+          - RED_CARDS_CHANGED
+          - SCORE_CHANGED
+          - DUPLICATE_UNIQUE_REQUEST_ID
+          - INCOMPLETE_CUSTOMER_BETTING_PROFILE
+          - INVALID_CUSTOMER_PROFILE
+          - LIMITS_CONFIGURATION_ISSUE
+          - RESPONSIBLE_BETTING_LOSS_LIMIT_EXCEEDED
+          - RESPONSIBLE_BETTING_RISK_LIMIT_EXCEEDED
+          - RESUBMIT_REQUEST
+          - SYSTEM_ERROR_3
+          - LICENCE_RESTRICTION_LIVE_BETTING_BLOCKED
+          - INVALID_HANDICAP
+          - BETTING_SUSPENDED
+      uniqueRequestId:
+        type: string
+        example: D5CC50E4-284D-4D50-8D49-429BDC4F2A48
+        description: 请求中的 uniqueRequestId 回显。
+      betId:
+        type: integer
+        format: int64
+        example: 759629245
+        description: 投注标识
+      win:
+        type: number
+        format: double
+        example: 5.5
+        description: 盈利金额。
+      risk:
+        type: number
+        format: double
+        example: 10.5
+        description: 风险金额。
+      price:
+        type: number
+        format: double
+        example: 2.5
+        description: 赔率
+      points:
+        type: number
+        format: double
+        example: 1
+        description: 分数/盘口值
+  StraightBet:
+    type: object
+    required:
+      - betId
+      - betStatus
+      - betType
+      - oddsFormat
+      - placedAt
+      - risk
+      - updateSequence
+      - wagerNumber
+      - win
+    properties:
+      betId:
+        type: integer
+        format: int64
+        example: 759629245
+        description: 投注标识
+      wagerNumber:
+        type: integer
+        format: int32
+        example: 1
+        description: '注单标识。通过 API 下的所有投注该值为 1。网站经典视图支持同一注单内多笔竞猜/特殊投注及轮转串关,此时会有对应注单号。'
+      placedAt:
+        type: string
+        format: date-time
+        example: '2017-09-05T01:32:59Z'
+        description: 投注下单时间。
+      betStatus:
+        type: string
+        example: ACCEPTED
+        description: |
+          投注状态。
+
+          ACCEPTED = 投注已接受。
+          CANCELLED = 按 Pinnacle 规则取消。
+          LOSE = 已结算为输。
+          PENDING_ACCEPTANCE = 仅用于滚球:在危险区或应用滚球延迟时下的单会先为此状态,否则为 ACCEPTED。可转为 ACCEPTED 或 NOT_ACCEPTED。
+          REFUNDED = 赛事取消或投注结算为平局时退款。
+          NOT_ACCEPTED = 未接受。仅当此前为 PENDING_ACCEPTANCE 时可能为此状态。
+          WON = 已结算为赢。
+        enum:
+          - ACCEPTED
+          - CANCELLED
+          - LOSE
+          - PENDING_ACCEPTANCE
+          - REFUNDED
+          - NOT_ACCEPTED
+          - WON
+      betType:
+        type: string
+        example: MONEYLINE
+        description: '投注类型。'
+        enum:
+          - MONEYLINE
+          - TEAM_TOTAL_POINTS
+          - SPREAD
+          - TOTAL_POINTS
+          - SPECIAL
+          - PARLAY
+          - TEASER
+          - MANUAL
+      win:
+        type: number
+        format: double
+        example: 1
+        description: 盈利金额。
+      risk:
+        type: number
+        format: double
+        example: 1.5
+        description: 风险金额。
+      winLoss:
+        type: number
+        format: double
+        example: null
+        x-nullable: true
+        description: 已结算投注的盈亏。
+      oddsFormat:
+        $ref: '#/definitions/OddsFormat'
+      customerCommission:
+        type: number
+        format: double
+        example: null
+        x-nullable: true
+        description: Client’s commission on the bet.
+      cancellationReason:
+        $ref: '#/definitions/CancellationReason'
+      updateSequence:
+        type: integer
+        format: int64
+        example: 111548915
+        description: 更新序列号
+      sportId:
+        type: integer
+        format: int32
+        example: 29
+        description: ''
+      leagueId:
+        type: integer
+        format: int32
+        example: 2462
+        description: ''
+      eventId:
+        type: integer
+        format: int64
+        example: 757064557
+        description: ''
+      handicap:
+        type: number
+        format: double
+        example: null
+        x-nullable: true
+        description: ''
+      price:
+        type: number
+        format: double
+        example: -155
+        description: ''
+      teamName:
+        type: string
+        example: Crvena Zvezda
+        description: ''
+      side:
+        type: string
+        example: null
+        x-nullable: true
+        description: '方向类型(大/小)。'
+        enum:
+          - OVER
+          - UNDER
+      pitcher1:
+        type: string
+        example: null
+        x-nullable: true
+        description: '主队(team1)先发投手姓名。仅棒球。'
+      pitcher2:
+        type: string
+        example: null
+        x-nullable: true
+        description: '客队(team2)先发投手姓名。仅棒球。'
+      pitcher1MustStart:
+        type: string
+        enum:
+          - TRUE
+          - FALSE
+        example: null
+        x-nullable: true
+        description: '主队投手是否必须先发。仅棒球。'
+      pitcher2MustStart:
+        type: string
+        enum:
+          - TRUE
+          - FALSE
+        example: null
+        x-nullable: true
+        description: '主队投手是否必须先发。仅棒球。'
+      team1:
+        type: string
+        example: Crvena Zvezda
+        description: ''
+      team2:
+        type: string
+        example: Partizan
+        description: ''
+      periodNumber:
+        type: integer
+        format: int32
+        example: 0
+        description: ''
+      team1Score:
+        type: number
+        format: double
+        example: null
+        x-nullable: true
+        description: '下注时的主队比分,仅滚球。'
+      team2Score:
+        type: number
+        format: double
+        example: null
+        x-nullable: true
+        description: '下注时的客队比分,仅滚球。'
+      ftTeam1Score:
+        type: number
+        format: double
+        example: null
+        x-nullable: true
+        description: '全场主队比分,仅已结算投注。'
+      ftTeam2Score:
+        type: number
+        format: double
+        example: null
+        x-nullable: true
+        description: '全场客队比分,仅已结算投注。'
+      pTeam1Score:
+        type: number
+        format: double
+        example: null
+        x-nullable: true
+        description: '节末主队比分,仅已结算投注。若投注为全场(periodNumber=0)则为 null。'
+      pTeam2Score:
+        type: number
+        format: double
+        example: null
+        x-nullable: true
+        description: '节末客队比分,仅已结算投注。若投注为全场(periodNumber=0)则为 null。'
+      isLive:
+        type: string
+        enum:
+          - TRUE
+          - FALSE
+        example: "FALSE"
+        description: 是否为滚球赛事投注
+    description: ''
+  StraightBetV3:
+      type: object
+      required:
+        - betId
+        - betStatus
+        - betStatus2
+        - betType
+        - oddsFormat
+        - placedAt
+        - risk
+        - updateSequence
+        - wagerNumber
+        - win
+      properties:
+        betId:
+          type: integer
+          format: int64
+          example: 759629245
+          description: 投注标识
+        wagerNumber:
+          type: integer
+          format: int32
+          example: 1
+          description: '注单标识。通过 API 下的所有投注该值为 1。网站经典视图支持同一注单内多笔竞猜/特殊投注及轮转串关,此时会有对应注单号。'
+        placedAt:
+          type: string
+          format: date-time
+          example: '2017-09-05T01:32:59Z'
+          description: 投注下单时间。
+        betStatus:
+          type: string
+          example: ACCEPTED
+          description: |
+            Bet Status.
+
+            ACCEPTED = 投注已接受。
+            CANCELLED = 按 Pinnacle 规则取消。
+            LOSE = 已结算为输。
+            PENDING_ACCEPTANCE = 仅用于滚球:在危险区或应用滚球延迟时下的单会先为此状态,否则为 ACCEPTED。可转为 ACCEPTED 或 NOT_ACCEPTED。
+            REFUNDED = 赛事取消或投注结算为平局时退款。
+            NOT_ACCEPTED = 未接受。仅当此前为 PENDING_ACCEPTANCE 时可能为此状态。
+            WON = 已结算为赢。
+            REJECTED = 投注被拒绝
+          enum:
+            - ACCEPTED
+            - CANCELLED
+            - LOSE
+            - PENDING_ACCEPTANCE
+            - REFUNDED
+            - NOT_ACCEPTED
+            - WON
+            - REJECTED
+        betStatus2:
+          type: string
+          example: ACCEPTED
+          description: |
+            投注状态。
+
+            ACCEPTED = 投注已接受。
+            CANCELLED = 按 Pinnacle 规则取消。
+            LOST = 已结算为输。
+            PENDING_ACCEPTANCE = 仅用于滚球:在危险区或应用滚球延迟时下的单会先为此状态,否则为 ACCEPTED。可转为 ACCEPTED 或 NOT_ACCEPTED。
+            REFUNDED = 赛事取消或投注结算为平局时退款。
+            NOT_ACCEPTED = 未接受。仅当此前为 PENDING_ACCEPTANCE 时可能为此状态。
+            WON = 已结算为赢。
+            REJECTED = 投注被拒绝。
+            HALF_WON_HALF_PUSHED = 半赢半走。仅亚洲让分盘。
+            HALF_LOST_HALF_PUSHED = 半输半走。仅亚洲让分盘。
+          enum:
+            - ACCEPTED
+            - CANCELLED
+            - LOST
+            - PENDING_ACCEPTANCE
+            - REFUNDED
+            - NOT_ACCEPTED
+            - WON
+            - REJECTED
+            - HALF_WON_HALF_PUSHED
+            - HALF_LOST_HALF_PUSHED
+        betType:
+          type: string
+          example: MONEYLINE
+          description: '投注类型。'
+          enum:
+            - MONEYLINE
+            - TEAM_TOTAL_POINTS
+            - SPREAD
+            - TOTAL_POINTS
+            - SPECIAL
+            - PARLAY
+            - TEASER
+            - MANUAL
+        win:
+          type: number
+          format: double
+          example: 1
+          description: 盈利金额。
+        risk:
+          type: number
+          format: double
+          example: 1.5
+          description: 风险金额。
+        winLoss:
+          type: number
+          format: double
+          example: null
+          x-nullable: true
+          description: 已结算投注的盈亏。
+        oddsFormat:
+          $ref: '#/definitions/OddsFormat'
+        customerCommission:
+          type: number
+          format: double
+          example: null
+          x-nullable: true
+          description: Client’s commission on the bet.
+        cancellationReason:
+          $ref: '#/definitions/CancellationReason'
+        updateSequence:
+          type: integer
+          format: int64
+          example: 111548915
+          description: 更新序列号
+        sportId:
+          type: integer
+          format: int32
+          example: 29
+          description: ''
+        leagueId:
+          type: integer
+          format: int32
+          example: 2462
+          description: ''
+        eventId:
+          type: integer
+          format: int64
+          example: 757064557
+          description: ''
+        handicap:
+          type: number
+          format: double
+          example: null
+          x-nullable: true
+          description: ''
+        price:
+          type: number
+          format: double
+          example: -155
+          description: ''
+        teamName:
+          type: string
+          example: Crvena Zvezda
+          description: ''
+        side:
+          type: string
+          example: null
+          x-nullable: true
+          description: '方向类型(大/小)。'
+          enum:
+            - OVER
+            - UNDER
+        pitcher1:
+          type: string
+          example: null
+          x-nullable: true
+          description: '主队(team1)先发投手姓名。仅棒球。'
+        pitcher2:
+          type: string
+          example: null
+          x-nullable: true
+          description: '客队(team2)先发投手姓名。仅棒球。'
+        pitcher1MustStart:
+          type: boolean
+          example: false
+          description: '仅棒球。指主队先发投手。仅 MONEYLINE 可设,其他类型须为 TRUE。'
+          x-nullable: true
+        pitcher2MustStart:
+          type: boolean
+          example: false
+          description: '仅棒球。指客队先发投手。仅 MONEYLINE 可设,其他类型须为 TRUE。'
+          x-nullable: true
+        team1:
+          type: string
+          example: Crvena Zvezda
+          description: ''
+        team2:
+          type: string
+          example: Partizan
+          description: ''
+        periodNumber:
+          type: integer
+          format: int32
+          example: 0
+          description: ''
+        team1Score:
+          type: number
+          format: double
+          example: null
+          x-nullable: true
+          description: '下注时该节主队比分,仅滚球。'
+        team2Score:
+          type: number
+          format: double
+          example: null
+          x-nullable: true
+          description: '下注时该节客队比分,仅滚球。'
+        ftTeam1Score:
+          type: number
+          format: double
+          example: null
+          x-nullable: true
+          description: '全场主队比分,仅已结算投注。'
+        ftTeam2Score:
+          type: number
+          format: double
+          example: null
+          x-nullable: true
+          description: '全场客队比分,仅已结算投注。'
+        pTeam1Score:
+          type: number
+          format: double
+          example: null
+          x-nullable: true
+          description: '.End of period team 1 score, only for settled bets. If the bet was placed on Game period (periodNumber =0), this will be null . '
+        pTeam2Score:
+          type: number
+          format: double
+          example: null
+          x-nullable: true
+          description: 'End of period team 2 score, only for settled bets. If the bet was placed on Game period (periodNumber =0), this will be null'
+        isLive:
+          type: boolean
+          example: false
+          description: 是否为滚球赛事投注
+        eventStartTime:
+          type: string
+          format: date-time
+          example: 2017-10-05T01:32:59Z
+          x-nullable: false
+          description: '赛事开始时间。'
+        resultingUnit:
+          type: string
+          description: '赛事结算依据,如角球、黄牌、常规等'
+      description: ''
+  StraightBetRegradedWagerHistoryV1:
+      type: object
+      required:
+        - betId
+        - betStatus
+        - betStatus2
+        - betType
+        - oddsFormat
+        - placedAt
+        - risk
+        - updateSequence
+        - wagerNumber
+        - win
+      properties:
+        betId:
+          type: integer
+          format: int64
+          example: 759629245
+          description: 投注标识
+        originalBetId:
+          type: integer
+          format: int64
+          example: 759629321
+          description: 原始投注标识
+        wagerNumber:
+          type: integer
+          format: int32
+          example: 1
+          description: '注单标识。通过 API 下的所有投注该值为 1。网站经典视图支持同一注单内多笔竞猜/特殊投注及轮转串关,此时会有对应注单号。'
+        placedAt:
+          type: string
+          format: date-time
+          example: '2017-09-05T01:32:59Z'
+          description: 投注下单时间。
+        betStatus:
+          type: string
+          example: ACCEPTED
+          description: |
+            Bet Status.
+
+            ACCEPTED = 投注已接受。
+            CANCELLED = 按 Pinnacle 规则取消。
+            LOSE = 已结算为输。
+            PENDING_ACCEPTANCE = 仅用于滚球:在危险区或应用滚球延迟时下的单会先为此状态,否则为 ACCEPTED。可转为 ACCEPTED 或 NOT_ACCEPTED。
+            REFUNDED = 赛事取消或投注结算为平局时退款。
+            NOT_ACCEPTED = 未接受。仅当此前为 PENDING_ACCEPTANCE 时可能为此状态。
+            WON = 已结算为赢。
+            REJECTED = 投注被拒绝
+          enum:
+            - ACCEPTED
+            - CANCELLED
+            - LOSE
+            - PENDING_ACCEPTANCE
+            - REFUNDED
+            - NOT_ACCEPTED
+            - WON
+            - REJECTED
+        betStatus2:
+          type: string
+          example: ACCEPTED
+          description: |
+            投注状态。
+
+            ACCEPTED = 投注已接受。
+            CANCELLED = 按 Pinnacle 规则取消。
+            LOST = 已结算为输。
+            PENDING_ACCEPTANCE = 仅用于滚球:在危险区或应用滚球延迟时下的单会先为此状态,否则为 ACCEPTED。可转为 ACCEPTED 或 NOT_ACCEPTED。
+            REFUNDED = 赛事取消或投注结算为平局时退款。
+            NOT_ACCEPTED = 未接受。仅当此前为 PENDING_ACCEPTANCE 时可能为此状态。
+            WON = 已结算为赢。
+            REJECTED = 投注被拒绝。
+            HALF_WON_HALF_PUSHED = 半赢半走。仅亚洲让分盘。
+            HALF_LOST_HALF_PUSHED = 半输半走。仅亚洲让分盘。
+          enum:
+            - ACCEPTED
+            - CANCELLED
+            - LOST
+            - PENDING_ACCEPTANCE
+            - REFUNDED
+            - NOT_ACCEPTED
+            - WON
+            - REJECTED
+            - HALF_WON_HALF_PUSHED
+            - HALF_LOST_HALF_PUSHED
+        betType:
+          type: string
+          example: MONEYLINE
+          description: '投注类型。'
+          enum:
+            - MONEYLINE
+            - TEAM_TOTAL_POINTS
+            - SPREAD
+            - TOTAL_POINTS
+            - SPECIAL
+            - PARLAY
+            - TEASER
+            - MANUAL
+        win:
+          type: number
+          format: double
+          example: 1
+          description: 盈利金额。
+        risk:
+          type: number
+          format: double
+          example: 1.5
+          description: 风险金额。
+        winLoss:
+          type: number
+          format: double
+          example: null
+          x-nullable: true
+          description: 已结算投注的盈亏。
+        oddsFormat:
+          $ref: '#/definitions/OddsFormat'
+        customerCommission:
+          type: number
+          format: double
+          example: null
+          x-nullable: true
+          description: Client’s commission on the bet.
+        cancellationReason:
+          $ref: '#/definitions/CancellationReason'
+        updateSequence:
+          type: integer
+          format: int64
+          example: 111548915
+          description: 更新序列号
+        sportId:
+          type: integer
+          format: int32
+          example: 29
+          description: ''
+        leagueId:
+          type: integer
+          format: int32
+          example: 2462
+          description: ''
+        leagueName:
+          type: string
+          example: Spain - Copa del Rey
+          description: ''
+        eventId:
+          type: integer
+          format: int64
+          example: 757064557
+          description: ''
+        handicap:
+          type: number
+          format: double
+          example: null
+          x-nullable: true
+          description: ''
+        price:
+          type: number
+          format: double
+          example: -155
+          description: ''
+        teamName:
+          type: string
+          example: Crvena Zvezda
+          description: ''
+        side:
+          type: string
+          example: null
+          x-nullable: true
+          description: '方向类型(大/小)。'
+          enum:
+            - OVER
+            - UNDER
+        pitcher1:
+          type: string
+          example: null
+          x-nullable: true
+          description: '主队(team1)先发投手姓名。仅棒球。'
+        pitcher2:
+          type: string
+          example: null
+          x-nullable: true
+          description: '客队(team2)先发投手姓名。仅棒球。'
+        pitcher1MustStart:
+          type: boolean
+          example: false
+          description: '仅棒球。指主队先发投手。仅 MONEYLINE 可设,其他类型须为 TRUE。'
+          x-nullable: true
+        pitcher2MustStart:
+          type: boolean
+          example: false
+          description: '仅棒球。指客队先发投手。仅 MONEYLINE 可设,其他类型须为 TRUE。'
+          x-nullable: true
+        team1:
+          type: string
+          example: Crvena Zvezda
+          description: ''
+        team2:
+          type: string
+          example: Partizan
+          description: ''
+        periodNumber:
+          type: integer
+          format: int32
+          example: 0
+          description: ''
+        team1Score:
+          type: number
+          format: double
+          example: null
+          x-nullable: true
+          description: '下注时该节主队比分,仅滚球。'
+        team2Score:
+          type: number
+          format: double
+          example: null
+          x-nullable: true
+          description: '下注时该节客队比分,仅滚球。'
+        ftTeam1Score:
+          type: number
+          format: double
+          example: null
+          x-nullable: true
+          description: '全场主队比分,仅已结算投注。'
+        ftTeam2Score:
+          type: number
+          format: double
+          example: null
+          x-nullable: true
+          description: '全场客队比分,仅已结算投注。'
+        pTeam1Score:
+          type: number
+          format: double
+          example: null
+          x-nullable: true
+          description: '.End of period team 1 score, only for settled bets. If the bet was placed on Game period (periodNumber =0), this will be null . '
+        pTeam2Score:
+          type: number
+          format: double
+          example: null
+          x-nullable: true
+          description: 'End of period team 2 score, only for settled bets. If the bet was placed on Game period (periodNumber =0), this will be null'
+        isLive:
+          type: boolean
+          example: false
+          description: 是否为滚球赛事投注
+        eventStartTime:
+          type: string
+          format: date-time
+          example: 2017-10-05T01:32:59Z
+          x-nullable: false
+          description: '赛事开始时间。'
+        resultingUnit:
+          type: string
+          description: '赛事结算依据,如角球、黄牌、常规等'
+      description: ''
+  CancellationReason:
+    type: object
+    required:
+      - code
+    properties:
+      code:
+        type: string
+        example: FBS_CW_227
+      details:
+          $ref: '#/definitions/CancellationDetails'
+    description: |
+                Possible keys \:
+                * correctTeam1Id
+                * correctTeam2Id
+                * correctListedPitcher1
+                * correctListedPitcher2
+                * correctSpread
+                * correctTotalPoints
+                * correctTeam1TotalPoints
+                * correctTeam2TotalPoints
+                * correctTeam1Score
+                * correctTeam2Score
+                * correctTeam1TennisSetsScore
+                * correctTeam2TennisSetsScore
+  CancellationDetails:
+    type: array
+    items:
+      - $ref: "#/definitions/CancellationDetailsItem"
+    example:  [
+                    {
+                        "key": "correctSpread",
+                        "value": "-1.5"
+                    }
+                ]
+  CancellationDetailsItem:
+    type: object
+    properties:
+      key:
+        type: string
+        example: correctSpread
+      value:
+        type: string
+        example: "1.5"
+  ErrorResponseWithErrorRef:
+    type: object
+    properties:
+      ref:
+        type: string
+        example: f5d9ba85-cc97-47a9-ad92-ea57d0ea2cc0
+      code:
+        type: string
+        example: UNEXPECTED_ERROR
+      message:
+        type: string
+        example: Internal error
+  PlaceParlayBetRequest:
+    type: object
+    properties:
+      uniqueRequestId:
+        type: string
+        format: uuid
+        example: A9EB2EB1-13A5-4600-9F1B-4859379CDEC4
+        description: This unique id of the place bet requests. This is to support idempotent requests.
+      acceptBetterLine:
+        type: boolean
+        example: true
+        description: 当盘口变化对客户有利时是否接受该投注。
+      riskAmount:
+        type: number
+        format: double
+        example: 10.5
+        description: 'Amount in client’s currency. It is always risk amount when placing Parlay bets NOTE: If round robin options is used this amount will apply for all parlays so actual amount wagered will be riskAmount X number of Parlays.'
+      oddsFormat:
+        $ref: '#/definitions/OddsFormat'
+      legs:
+        type: array
+        description: Collection of parlay legs.
+        items:
+          $ref: '#/definitions/ParlayLegRequest'
+      roundRobinOptions:
+        type: array
+        description: ''
+        items:
+          type: string
+          enum:
+            - Parlay
+            - TwoLegRoundRobin
+            - ThreeLegRoundRobin
+            - FourLegRoundRobin
+            - FiveLegRoundRobin
+            - SixLegRoundRobin
+            - SevenLegRoundRobin
+            - EightLegRoundRobin
+    description: Request to place a bet
+  ParlayLegRequest:
+    type: object
+    properties:
+      uniqueLegId:
+        type: string
+        example: CFAD8ACF-E410-437C-8F0F-33611F565981
+        description: Unique id of the leg. It's used to identify and match legs in the response.
+      lineId:
+        type: integer
+        format: int64
+        example: 419715968
+        description: 盘口标识。
+      altLineId:
+        type: integer
+        format: int64
+        example: null
+        x-nullable: true
+        description: 备用盘口标识。
+      pitcher1MustStart:
+        type: boolean
+        example: false
+        description: 'Baseball only. Refers to the pitcher for Team1.  This applicable only for MONEYLINE bet type, for all other bet types this has to be TRUE.'
+      pitcher2MustStart:
+        type: boolean
+        example: false
+        description: '仅棒球。指客队(Team2)先发投手。仅 MONEYLINE 投注类型可设,其他类型须为 TRUE。'
+      sportId:
+        type: integer
+        format: int32
+        example: 29
+        description: Sport identification.
+      eventId:
+        type: integer
+        format: int64
+        example: 758023991
+        description: Event identification.
+      periodNumber:
+        type: integer
+        format: int32
+        example: 0
+        description: 'This represents the period of the match. For example, for soccer we have: 0 -  Game, 1 - 1st Half and 2 - 2nd Half'
+      legBetType:
+        type: string
+        example: MONELYLINE
+        description: 'Only SPREAD, MONEYLINE, TOTAL_POINTS and TEAM_TOTAL_POINTS are supported.'
+        enum:
+          - MONEYLINE
+          - SPREAD
+          - TOTAL_POINTS
+          - TEAM_TOTAL_POINTS
+      team:
+        type: string
+        example: TEAM1
+        description: Chosen team type. This is needed only for SPREAD and MONEYLINE bet types.
+      side:
+        type: string
+        example: null
+        x-nullable: true
+        description: 'Chosen side type. This is needed only for TOTAL_POINTS bet type.'
+        enum:
+          - OVER
+          - UNDER
+    description: ''
+  PlaceParlayBetResponseV2:
+    type: object
+    properties:
+      status:
+        type: string
+        example: ACCEPTED
+        description: 响应状态。
+        enum:
+          - ACCEPTED
+          - PENDING_ACCEPTANCE
+          - PROCESSED_WITH_ERROR
+      errorCode:
+        type: string
+        example: null
+        x-nullable: true
+        description: |
+          When Status is PROCESSED_WITH_ERROR, provides a code indicating the specific problem.
+
+
+          ABOVE_MAX_BET_AMOUNT = Stake is above allowed maximum amount,
+          ALL_BETTING_CLOSED = Betting is not allowed at this moment,
+          BELOW_MIN_BET_AMOUNT = Stake is below allowed minimum amount,
+          BLOCKED_BETTING = Betting is suspended for the client,
+          BLOCKED_CLIENT = Client is no longer active,
+          INSUFFICIENT_FUNDS = Bet is submitted by a client with insufficient funds,
+          INVALID_COUNTRY = Client country is not allowed for betting,
+          INVALID_LEGS = One or more legs are invalid,
+          INVALID_ODDS_FORMAT = If a bet was submitted with the odds format that is not allowed for the client,
+          INVALID_ROUND_ROBIN_OPTIONS = Round robin options are invalid (i.e. does not match with number of legs),
+          ROUND_ROBIN_DISALLOWED = Round robin is disallowed for one of the leagues,
+          TOO_MANY_LEGS = Maximum of 10 legs can be specified,
+          TOO_FEW_LEGS = At least 2 legs are required for Parlay,
+          RESPONSIBLE_BETTING_LOSS_LIMIT_EXCEEDED = Client has reached his total loss limit,
+          RESPONSIBLE_BETTING_RISK_LIMIT_EXCEEDED = Client has reached his total risk limit,
+          INVALID_REQUEST = Request has invalid parameters,
+          DUPLICATE_UNIQUE_REQUEST_ID = Request with the same uniqueRequestId was already processed. Please set the new value if you still want the request to be processed,
+          SYSTEM_ERROR_3 = Unexpected error
+        enum:
+          - ABOVE_MAX_BET_AMOUNT
+          - ALL_BETTING_CLOSED
+          - BELOW_MIN_BET_AMOUNT
+          - BLOCKED_BETTING
+          - BLOCKED_CLIENT
+          - INSUFFICIENT_FUNDS
+          - INVALID_COUNTRY
+          - INVALID_LEGS
+          - INVALID_ODDS_FORMAT
+          - INVALID_ROUND_ROBIN_OPTIONS
+          - ROUND_ROBIN_DISALLOWED
+          - TOO_MANY_LEGS
+          - TOO_FEW_LEGS
+          - RESPONSIBLE_BETTING_RISK_LIMIT_EXCEEDED
+          - RESPONSIBLE_BETTING_LOSS_LIMIT_EXCEEDED
+          - INVALID_REQUEST
+          - DUPLICATE_UNIQUE_REQUEST_ID
+          - SYSTEM_ERROR_3
+      betId:
+        type: integer
+        format: int64
+        example: 759629245
+        description: Id of a newly created bet.
+      uniqueRequestId:
+        type: string
+        format: uuid
+        example: D5CC50E4-284D-4D50-8D49-429BDC4F2A48
+        description: Unique identifier provided in the request.
+      roundRobinOptionWithOdds:
+        type: array
+        description: Provides array with all acceptable Round Robin options with parlay odds for that option.
+        items:
+          $ref: '#/definitions/RoundRobinOptionWithOdds'
+      maxRiskStake:
+        type: number
+        format: double
+        description: Maximum stake amount
+      minRiskStake:
+        type: number
+        format: double
+        description: Minimum stake amount
+      validLegs:
+        type: array
+        description: Collection of valid legs (format described below). Can be empty if no valid legs found.
+        items:
+          $ref: '#/definitions/ParlayLegResponse'
+      invalidLegs:
+        type: array
+        description: The collection of legs that resulted in error (format described below). Can be empty if no invalid legs found.
+        items:
+          $ref: '#/definitions/ParlayLegResponse'
+      parlayBet:
+        $ref: '#/definitions/ParlayBetV2'
+    description: ''
+  PlaceParlayBetResponseV4:
+    type: object
+    properties:
+      status:
+        type: string
+        example: ACCEPTED
+        description: 响应状态。
+        enum:
+          - ACCEPTED
+          - PENDING_ACCEPTANCE
+          - PROCESSED_WITH_ERROR
+      errorCode:
+        type: string
+        example: null
+        x-nullable: true
+        description: |
+          When Status is PROCESSED_WITH_ERROR, provides a code indicating the specific problem.
+
+
+          ABOVE_MAX_BET_AMOUNT = Stake is above allowed maximum amount,
+          ALL_BETTING_CLOSED = Betting is not allowed at this moment,
+          BELOW_MIN_BET_AMOUNT = Stake is below allowed minimum amount,
+          BLOCKED_BETTING = Betting is suspended for the client,
+          BLOCKED_CLIENT = Client is no longer active,
+          INSUFFICIENT_FUNDS = Bet is submitted by a client with insufficient funds,
+          INVALID_COUNTRY = Client country is not allowed for betting,
+          INVALID_LEGS = One or more legs are invalid,
+          INVALID_ODDS_FORMAT = If a bet was submitted with the odds format that is not allowed for the client,
+          INVALID_ROUND_ROBIN_OPTIONS = Round robin options are invalid (i.e. does not match with number of legs),
+          ROUND_ROBIN_DISALLOWED = Round robin is disallowed for one of the leagues,
+          TOO_MANY_LEGS = Maximum of 10 legs can be specified,
+          TOO_FEW_LEGS = At least 2 legs are required for Parlay,
+          RESPONSIBLE_BETTING_LOSS_LIMIT_EXCEEDED = Client has reached his total loss limit,
+          RESPONSIBLE_BETTING_RISK_LIMIT_EXCEEDED = Client has reached his total risk limit,
+          INVALID_REQUEST = Request has invalid parameters,
+          DUPLICATE_UNIQUE_REQUEST_ID = Request with the same uniqueRequestId was already processed. Please set the new value if you still want the request to be processed,
+          SYSTEM_ERROR_3 = Unexpected error
+        enum:
+          - ABOVE_MAX_BET_AMOUNT
+          - ALL_BETTING_CLOSED
+          - BELOW_MIN_BET_AMOUNT
+          - BLOCKED_BETTING
+          - BLOCKED_CLIENT
+          - INSUFFICIENT_FUNDS
+          - INVALID_COUNTRY
+          - INVALID_LEGS
+          - INVALID_ODDS_FORMAT
+          - INVALID_ROUND_ROBIN_OPTIONS
+          - ROUND_ROBIN_DISALLOWED
+          - TOO_MANY_LEGS
+          - TOO_FEW_LEGS
+          - RESPONSIBLE_BETTING_RISK_LIMIT_EXCEEDED
+          - RESPONSIBLE_BETTING_LOSS_LIMIT_EXCEEDED
+          - INVALID_REQUEST
+          - DUPLICATE_UNIQUE_REQUEST_ID
+          - SYSTEM_ERROR_3
+      betId:
+        type: integer
+        format: int64
+        example: 759629245
+        description: Id of a newly created bet.
+      uniqueRequestId:
+        type: string
+        format: uuid
+        example: D5CC50E4-284D-4D50-8D49-429BDC4F2A48
+        description: Unique identifier provided in the request.
+      roundRobinOptionWithOdds:
+        type: array
+        description: Provides array with all acceptable Round Robin options with parlay odds for that option.
+        items:
+          $ref: '#/definitions/RoundRobinOptionWithOdds'
+      validLegs:
+        type: array
+        description: Collection of valid legs (format described below). Can be empty if no valid legs found.
+        items:
+          $ref: '#/definitions/ParlayLegResponseV4'
+      invalidLegs:
+        type: array
+        description: The collection of legs that resulted in error (format described below). Can be empty if no invalid legs found.
+        items:
+          $ref: '#/definitions/ParlayLegResponseV4'
+      wagers:
+        type: array
+        description: The collection of returning wagers
+        items:
+          $ref: '#/definitions/ParlayWagerV4Response'
+    description: ''
+  ParlayWagerV4Response:
+    type: object
+    properties:
+      wagerNumber:
+        type: number
+        format: int32
+        example: 1
+        description: Wager number.
+      win:
+        type: number
+        format: double
+        example: 5.5
+        description: 盈利金额。
+      risk:
+        type: number
+        format: double
+        example: 10.5
+        description: 风险金额。
+      price:
+        type: number
+        format: double
+        example: 7.1
+        description: 赔率 amount.
+      legIds:
+        type: array
+        example: ["A9EB2EB1-13A5-4600-9F1B-4859379CDEC4", "CFAD8ACF-E410-437C-8F0F-33611F565981"]
+        description: Collection of leg ids of the wager.
+        items:
+          type: string
+          format: uuid
+          example: A9EB2EB1-13A5-4600-9F1B-4859379CDEC4
+
+  RoundRobinOptionWithOdds:
+    type: object
+    properties:
+      roundRobinOption:
+        type: string
+        example: Parlay
+        description: ''
+        enum:
+          - Parlay
+          - TwoLegRoundRobin
+          - ThreeLegRoundRobin
+          - FourLegRoundRobin
+          - FiveLegRoundRobin
+          - SixLegRoundRobin
+          - SevenLegRoundRobin
+          - EightLegRoundRobin
+      odds:
+        type: number
+        format: double
+        example: 682
+        description: Parlay odds for this option.
+      unroundedDecimalOdds:
+        type: number
+        format: double
+        example: 7.8231
+        description: Unrounded parlay odds in decimal format to be used for calculations only
+    description: ''
+  ParlayLegResponse:
+    type: object
+    properties:
+      status:
+        type: string
+        example: VALID
+        description: Status of the request.
+        enum:
+          - PROCESSED_WITH_ERROR
+          - VALID
+      errorCode:
+        type: string
+        example: null
+        x-nullable: true
+        description: |
+            When Status is PROCESSED_WITH_ERROR, provides a code indicating the specific problem.
+
+            CANNOT_PARLAY_LIVE_GAME = The wager is placed on Live game,
+            CORRELATED = The leg is correlated with another one,
+            EVENT_NO_LONGER_AVAILABLE_FOR_BETTING = The event is no longer offered,
+            EVENT_NOT_OFFERED_FOR_PARLAY = The event is not offered for parlaying,
+            INVALID_EVENT = Live betting is not allowed at this moment,
+            INVALID_LEG_BET_TYPE = Leg bet type is not accepted for parlaying. Accepted values are SPREAD, MONEYLINE, TOTAL_POINTS,
+            INVALID_PARLAY_BET = The leg did not validated due to error on Parlay Bet. Check the error PlaceParlayBet response for error details,
+            LINE_CHANGED = Bet is submitted on a line that has changed,
+            LINE_DOES_NOT_BELONG_TO_EVENT = LineId does not match the EventId specified in the request,
+            LISTED_PITCHERS_SELECTION_ERROR = If bet was submitted with pitcher1MustStart and/or pitcher2MustStart parameters with values that are not allowed,
+            ODDS_NO_LONGER_OFFERED_FOR_PARLAY_1 = Due to line change odds are not offered for parlaying,
+            ODDS_NO_LONGER_OFFERED_FOR_PARLAY_2 = Due to line change odds are not offered for parlaying,
+            ODDS_NO_LONGER_OFFERED_FOR_PARLAY_3 = Due to line change odds are not offered for parlaying,
+            OFFLINE_EVENT = Bet is submitted on an event that is offline or with incorrect lineId,
+            PAST_CUTOFFTIME = Bet is submitted on a game after the betting cutoff time,
+            SYSTEM_ERROR_1 = Unexpected error,
+            SYSTEM_ERROR_2 = Unexpected error,
+            SYSTEM_ERROR_3 = Unexpected error,
+            LINE_IS_NOT_AVAILABLE = Line is not available for the specified Parlay Leg,
+            BETTING_SUSPENDED = Due to anomalous market circumstances bets are not currently being accepted on this line. Try again with next LineId.
+
+        enum:
+          - CANNOT_PARLAY_LIVE_GAME
+          - CORRELATED
+          - EVENT_NO_LONGER_AVAILABLE_FOR_BETTING
+          - EVENT_NOT_OFFERED_FOR_PARLAY
+          - INVALID_EVENT
+          - INVALID_LEG_BET_TYPE
+          - INVALID_PARLAY_BET
+          - LINE_CHANGED
+          - LINE_DOES_NOT_BELONG_TO_EVENT
+          - LISTED_PITCHERS_SELECTION_ERROR
+          - ODDS_NO_LONGER_OFFERED_FOR_PARLAY_1
+          - ODDS_NO_LONGER_OFFERED_FOR_PARLAY_2
+          - ODDS_NO_LONGER_OFFERED_FOR_PARLAY_3
+          - OFFLINE_EVENT
+          - PAST_CUTOFFTIME
+          - SYSTEM_ERROR_1
+          - SYSTEM_ERROR_2
+          - SYSTEM_ERROR_3
+          - LINE_IS_NOT_AVAILABLE
+          - BETTING_SUSPENDED
+      legId:
+        type: string
+        format: uuid
+        example: 10924E23-A2FE-4317-BFFD-80504675F554
+        description: Echo of the legId from the request.
+      lineId:
+        type: integer
+        format: int64
+        example: 419715968
+        description: Line identification that bet was placed on.
+      altLineId:
+        type: integer
+        format: int64
+        example: null
+        x-nullable: true
+        description: 'If bet was accepted on alternate line, the altLineId will be returned.'
+      price:
+        type: number
+        format: double
+        example: 167
+        description: 赔率 that the bet was placed on.
+      correlatedLegs:
+        type: array
+        description: If errorCode is CORRELATED will contain legIds of all correlated legs.
+        items:
+          type: string
+          format: uuid
+          example: 10924E23-A2FE-4317-BFFD-80504675F554
+    description: ''
+  ParlayLegResponseV4:
+    type: object
+    properties:
+      status:
+        type: string
+        example: VALID
+        description: Status of the request.
+        enum:
+          - PROCESSED_WITH_ERROR
+          - VALID
+      errorCode:
+        type: string
+        example: null
+        x-nullable: true
+        description: |
+            When Status is PROCESSED_WITH_ERROR, provides a code indicating the specific problem.
+
+            CANNOT_PARLAY_LIVE_GAME = The wager is placed on Live game,
+            CORRELATED = The leg is correlated with another one,
+            EVENT_NO_LONGER_AVAILABLE_FOR_BETTING = The event is no longer offered,
+            EVENT_NOT_OFFERED_FOR_PARLAY = The event is not offered for parlaying,
+            INVALID_EVENT = Live betting is not allowed at this moment,
+            INVALID_LEG_BET_TYPE = Leg bet type is not accepted for parlaying. Accepted values are SPREAD, MONEYLINE, TOTAL_POINTS,
+            INVALID_PARLAY_BET = The leg did not validated due to error on Parlay Bet. Check the error PlaceParlayBet response for error details,
+            LINE_CHANGED = Bet is submitted on a line that has changed,
+            LINE_DOES_NOT_BELONG_TO_EVENT = LineId does not match the EventId specified in the request,
+            LISTED_PITCHERS_SELECTION_ERROR = If bet was submitted with pitcher1MustStart and/or pitcher2MustStart parameters with values that are not allowed,
+            ODDS_NO_LONGER_OFFERED_FOR_PARLAY_1 = Due to line change odds are not offered for parlaying,
+            ODDS_NO_LONGER_OFFERED_FOR_PARLAY_2 = Due to line change odds are not offered for parlaying,
+            ODDS_NO_LONGER_OFFERED_FOR_PARLAY_3 = Due to line change odds are not offered for parlaying,
+            OFFLINE_EVENT = Bet is submitted on an event that is offline or with incorrect lineId,
+            PAST_CUTOFFTIME = Bet is submitted on a game after the betting cutoff time,
+            SYSTEM_ERROR_1 = Unexpected error,
+            SYSTEM_ERROR_2 = Unexpected error,
+            SYSTEM_ERROR_3 = Unexpected error,
+            LINE_IS_NOT_AVAILABLE = Line is not available for the specified Parlay Leg,
+            BETTING_SUSPENDED = Due to anomalous market circumstances bets are not currently being accepted on this line. Try again with next LineId.
+
+        enum:
+          - CANNOT_PARLAY_LIVE_GAME
+          - CORRELATED
+          - EVENT_NO_LONGER_AVAILABLE_FOR_BETTING
+          - EVENT_NOT_OFFERED_FOR_PARLAY
+          - INVALID_EVENT
+          - INVALID_LEG_BET_TYPE
+          - INVALID_PARLAY_BET
+          - LINE_CHANGED
+          - LINE_DOES_NOT_BELONG_TO_EVENT
+          - LISTED_PITCHERS_SELECTION_ERROR
+          - ODDS_NO_LONGER_OFFERED_FOR_PARLAY_1
+          - ODDS_NO_LONGER_OFFERED_FOR_PARLAY_2
+          - ODDS_NO_LONGER_OFFERED_FOR_PARLAY_3
+          - OFFLINE_EVENT
+          - PAST_CUTOFFTIME
+          - SYSTEM_ERROR_1
+          - SYSTEM_ERROR_2
+          - SYSTEM_ERROR_3
+          - LINE_IS_NOT_AVAILABLE
+          - BETTING_SUSPENDED
+      legId:
+        type: string
+        format: uuid
+        example: 10924E23-A2FE-4317-BFFD-80504675F554
+        description: Echo of the legId from the request.
+      lineId:
+        type: integer
+        format: int64
+        example: 419715968
+        description: Line identification that bet was placed on.
+      altLineId:
+        type: integer
+        format: int64
+        example: null
+        x-nullable: true
+        description: 'If bet was accepted on alternate line, the altLineId will be returned.'
+      price:
+        type: number
+        format: double
+        example: 167
+        description: 赔率 that the bet was placed on.
+      points:
+        type: number
+        format: double
+        example: 1
+        description: 分数/盘口值
+      correlatedLegs:
+        type: array
+        description: If errorCode is CORRELATED will contain legIds of all correlated legs.
+        items:
+          type: string
+          format: uuid
+          example: 10924E23-A2FE-4317-BFFD-80504675F554
+    description: ''
+  ParlayBetV2:
+    type: object
+    required:
+      - betId
+      - betStatus
+      - betStatus2
+      - betType
+      - legs
+      - oddsFormat
+      - placedAt
+      - risk
+      - updateSequence
+      - wagerNumber
+      - win
+    properties:
+      betId:
+        type: integer
+        format: int64
+        example: 760404490
+        description: 投注标识
+      uniqueRequestId:
+        type: string
+        format: uuid
+        example: 10924E23-A2FE-4317-BFFD-80504675F554
+        description: Unique Request Id
+      wagerNumber:
+        type: integer
+        format: int32
+        example: 1
+        description: '注单标识。通过 API 下的所有投注该值为 1。网站经典视图支持同一注单内多笔竞猜/特殊投注及轮转串关,此时会有对应注单号。'
+      placedAt:
+        type: string
+        format: date-time
+        example: '2017-09-08T00:55:11Z'
+        description: 投注下单时间。
+      betStatus:
+        type: string
+        example: ACCEPTED
+        description: |
+          Bet Status.
+
+          ACCEPTED = 投注已接受。
+          CANCELLED = 按 Pinnacle 规则取消。
+          LOSE = 已结算为输。
+          PENDING_ACCEPTANCE = 仅用于滚球:在危险区或应用滚球延迟时下的单会先为此状态,否则为 ACCEPTED。可转为 ACCEPTED 或 REJECTED。
+          REFUNDED = 赛事取消或投注结算为平局时退款。
+          NOT_ACCEPTED = 未接受。仅当此前为 PENDING_ACCEPTANCE 时可能为此状态。
+          WON = 已结算为赢。
+        enum:
+          - ACCEPTED
+          - CANCELLED
+          - LOSE
+          - PENDING_ACCEPTANCE
+          - REFUNDED
+          - NOT_ACCEPTED
+          - WON
+      betStatus2:
+        type: string
+        example: ACCEPTED
+        description: |
+          Bet Status.
+
+          ACCEPTED = Bet was accepted,
+          CANCELLED = Bet is cancelled as per Pinnacle betting rules,
+          LOST = The bet is settled as lose,
+          PENDING_ACCEPTANCE = 仅用于滚球:在危险区或应用滚球延迟时下的单会先为此状态,否则为 ACCEPTED。可转为 ACCEPTED 或 REJECTED。
+          REFUNDED = 赛事取消或投注结算为平局时退款。
+          NOT_ACCEPTED = 未接受。仅当此前为 PENDING_ACCEPTANCE 时可能为此状态。
+          WON = 已结算为赢。,
+          PARTIAL_WON = 总派彩大于投注额。仅含亚洲让分盘的串关。
+          PARTIAL_LOST = 总派彩小于或等于投注额。仅含亚洲让分盘的串关。
+        enum:
+          - ACCEPTED
+          - CANCELLED
+          - LOST
+          - PENDING_ACCEPTANCE
+          - REFUNDED
+          - NOT_ACCEPTED
+          - WON
+          - PARTIAL_WON
+          - PARTIAL_LOST
+      betType:
+        type: string
+        default: PARLAY
+        example: PARLAY
+      win:
+        type: number
+        format: double
+        example: 6.82
+        description: 盈利金额。
+      risk:
+        type: number
+        format: double
+        example: 1
+        description: 风险金额。
+      winLoss:
+        type: number
+        format: double
+        example: null
+        x-nullable: true
+        description: 已结算投注的盈亏。
+      oddsFormat:
+        $ref: '#/definitions/OddsFormat'
+      customerCommission:
+        type: number
+        format: double
+        example: null
+        x-nullable: true
+        description: Client’s commission on the bet.
+      cancellationReason:
+        $ref: '#/definitions/CancellationReason'
+      updateSequence:
+        type: integer
+        format: int64
+        example: 112839436
+        description: 更新序列号
+      legs:
+        type: array
+        description: ''
+        items:
+          $ref: '#/definitions/ParlayLegV2'
+      price:
+        type: number
+        format: double
+        example: 682
+        description: ''
+      finalPrice:
+        type: number
+        format: double
+        example: 0
+        description: Only for settled parlay. Final price may differ in case leg was cancelled or half won
+    description: ''
+  ParlayBetRegradedWagerHistoryV1:
+    type: object
+    required:
+      - betId
+      - betStatus
+      - betStatus2
+      - betType
+      - legs
+      - oddsFormat
+      - placedAt
+      - risk
+      - updateSequence
+      - wagerNumber
+      - win
+    properties:
+      betId:
+        type: integer
+        format: int64
+        example: 760404490
+        description: 投注标识
+      originalBetId:
+        type: integer
+        format: int64
+        example: 760404432
+        description: Original Bet identification
+      uniqueRequestId:
+        type: string
+        format: uuid
+        example: 10924E23-A2FE-4317-BFFD-80504675F554
+        description: Unique Request Id
+      wagerNumber:
+        type: integer
+        format: int32
+        example: 1
+        description: '注单标识。通过 API 下的所有投注该值为 1。网站经典视图支持同一注单内多笔竞猜/特殊投注及轮转串关,此时会有对应注单号。'
+      placedAt:
+        type: string
+        format: date-time
+        example: '2017-09-08T00:55:11Z'
+        description: 投注下单时间。
+      betStatus:
+        type: string
+        example: ACCEPTED
+        description: |
+          Bet Status.
+
+          ACCEPTED = 投注已接受。
+          CANCELLED = 按 Pinnacle 规则取消。
+          LOSE = 已结算为输。
+          PENDING_ACCEPTANCE = 仅用于滚球:在危险区或应用滚球延迟时下的单会先为此状态,否则为 ACCEPTED。可转为 ACCEPTED 或 REJECTED。
+          REFUNDED = 赛事取消或投注结算为平局时退款。
+          NOT_ACCEPTED = 未接受。仅当此前为 PENDING_ACCEPTANCE 时可能为此状态。
+          WON = 已结算为赢。
+        enum:
+          - ACCEPTED
+          - CANCELLED
+          - LOSE
+          - PENDING_ACCEPTANCE
+          - REFUNDED
+          - NOT_ACCEPTED
+          - WON
+      betStatus2:
+        type: string
+        example: ACCEPTED
+        description: |
+          Bet Status.
+
+          ACCEPTED = Bet was accepted,
+          CANCELLED = Bet is cancelled as per Pinnacle betting rules,
+          LOST = The bet is settled as lose,
+          PENDING_ACCEPTANCE = 仅用于滚球:在危险区或应用滚球延迟时下的单会先为此状态,否则为 ACCEPTED。可转为 ACCEPTED 或 REJECTED。
+          REFUNDED = 赛事取消或投注结算为平局时退款。
+          NOT_ACCEPTED = 未接受。仅当此前为 PENDING_ACCEPTANCE 时可能为此状态。
+          WON = 已结算为赢。,
+          PARTIAL_WON = 总派彩大于投注额。仅含亚洲让分盘的串关。
+          PARTIAL_LOST = 总派彩小于或等于投注额。仅含亚洲让分盘的串关。
+        enum:
+          - ACCEPTED
+          - CANCELLED
+          - LOST
+          - PENDING_ACCEPTANCE
+          - REFUNDED
+          - NOT_ACCEPTED
+          - WON
+          - PARTIAL_WON
+          - PARTIAL_LOST
+      betType:
+        type: string
+        default: PARLAY
+        example: PARLAY
+      win:
+        type: number
+        format: double
+        example: 6.82
+        description: 盈利金额。
+      risk:
+        type: number
+        format: double
+        example: 1
+        description: 风险金额。
+      winLoss:
+        type: number
+        format: double
+        example: null
+        x-nullable: true
+        description: 已结算投注的盈亏。
+      oddsFormat:
+        $ref: '#/definitions/OddsFormat'
+      customerCommission:
+        type: number
+        format: double
+        example: null
+        x-nullable: true
+        description: Client’s commission on the bet.
+      cancellationReason:
+        $ref: '#/definitions/CancellationReason'
+      updateSequence:
+        type: integer
+        format: int64
+        example: 112839436
+        description: 更新序列号
+      legs:
+        type: array
+        description: ''
+        items:
+          $ref: '#/definitions/ParlayLegRegradedWagerHistoryV1'
+      price:
+        type: number
+        format: double
+        example: 682
+        description: ''
+      finalPrice:
+        type: number
+        format: double
+        example: 0
+        description: Only for settled parlay. Final price may differ in case leg was cancelled or half won
+    description: ''
+  ParlayLegV2:
+    type: object
+    properties:
+      sportId:
+        type: integer
+        format: int32
+        example: 29
+        description: ''
+      legBetType:
+        type: string
+        example: MONEYLINE
+        description: 'Parlay leg type.'
+        enum:
+          - MONEYLINE
+          - SPREAD
+          - TOTAL_POINTS
+          - TEAM_TOTAL_POINTS
+      legBetStatus:
+        type: string
+        description: |
+          Parlay Leg status.
+          CANCELLED = The leg is canceled- the stake on this leg will be transferred to the next one. In this case the leg will be ignored when calculating the winLoss,
+          LOSE = The leg is a loss or a push-lose. When Push-lose happens, the half of the stake on the leg will be pushed to the next leg, and the other half will be a lose. This can happen only when the leg is placed on a quarter points handicap,
+          PUSH = The leg is a push - the stake on this leg will be transferred to the next one. In this case the leg will be ignored when calculating the winLoss,
+          REFUNDED = The leg is refunded - the stake on this leg will be transferred to the next one. In this case the leg will be ignored when calculating the winLoss,
+          WON = The leg is a won or a push-won. When Push-won happens, the half of the stake on the leg will be pushed to the next leg, and the other half is won. This can happen only when the leg is placed on a quarter points handicap
+        enum:
+          - CANCELLED
+          - LOSE
+          - PUSH
+          - REFUNDED
+          - WON
+          - ACCEPTED
+      legBetStatus2:
+        type: string
+        description: |
+          Parlay Leg status.
+          CANCELLED = The leg is canceled- the stake on this leg will be transferred to the next one. In this case the leg will be ignored when calculating the winLoss,
+          LOST = The leg is a loss or a push-lose. When Push-lose happens, the half of the stake on the leg will be pushed to the next leg, and the other half will be a lose. This can happen only when the leg is placed on a quarter points handicap,
+          PUSHED = The leg is a push - the stake on this leg will be transferred to the next one. In this case the leg will be ignored when calculating the winLoss,
+          REFUNDED = The leg is refunded - the stake on this leg will be transferred to the next one. In this case the leg will be ignored when calculating the winLoss,
+          WON = The leg is a won or a push-won. When Push-won happens, the half of the stake on the leg will be pushed to the next leg, and the other half is won. This can happen only when the leg is placed on a quarter points handicap,
+          HALF_WON_HALF_PUSHED = The bet is settled as half won half pushed. Only for asian handicap legs,
+          HALF_LOST_HALF_PUSHED = The bet is settled as half lost half pushed. Only for asian handicap legs
+        enum:
+          - CANCELLED
+          - LOST
+          - PUSHED
+          - REFUNDED
+          - WON
+          - ACCEPTED
+          - HALF_WON_HALF_PUSHED
+          - HALF_LOST_HALF_PUSHED
+      leagueId:
+        type: integer
+        format: int32
+        example: 1766
+        description: ''
+      eventId:
+        type: integer
+        format: int64
+        example: 758024079
+        description: ''
+      eventStartTime:
+        type: string
+        format: date-time
+        example: '2017-10-07T21:00:00Z'
+        description: 'Date time when the event starts'
+      handicap:
+        type: number
+        format: double
+        example: null
+        x-nullable: true
+        description: ''
+      price:
+        type: number
+        format: double
+        example: 193
+        description: ''
+      teamName:
+        type: string
+        example: Adelaide United
+        description: ''
+      side:
+        type: string
+        example: null
+        x-nullable: true
+        description: '方向类型(大/小)。'
+        enum:
+          - OVER
+          - UNDER
+      pitcher1:
+        type: string
+        example: null
+        x-nullable: true
+        description: ''
+      pitcher2:
+        type: string
+        example: null
+        x-nullable: true
+        description: ''
+      pitcher1MustStart:
+        type: boolean
+        example: false
+        description: ''
+      pitcher2MustStart:
+        type: boolean
+        example: false
+        description: ''
+      team1:
+        type: string
+        description: Wellington Phoenix
+      team2:
+        type: string
+        description: Adelaide United
+      periodNumber:
+        type: integer
+        format: int32
+        example: 0
+        description: ''
+      ftTeam1Score:
+        type: number
+        format: double
+        example: null
+        x-nullable: true
+        description: Full time team 1 score
+      ftTeam2Score:
+        type: number
+        format: double
+        example: null
+        x-nullable: true
+        description: Full time team 2 score
+      pTeam1Score:
+        type: number
+        format: double
+        example: null
+        x-nullable: true
+        description: 'End of period team 1 score. If the bet was placed on Game period (periodNumber =0) , this will be null'
+      pTeam2Score:
+        type: number
+        format: double
+        example: null
+        x-nullable: true
+        description: 'End of period team 2 score. If the bet was placed on Game period (periodNumber =0) , this will be null'
+      cancellationReason:
+        $ref: '#/definitions/CancellationReason'
+      resultingUnit:
+        type: string
+        description: Specifies based on what the event is being resulted, e.g. Corners, Bookings , Regular
+    description: ''
+  ParlayLegRegradedWagerHistoryV1:
+    type: object
+    properties:
+      sportId:
+        type: integer
+        format: int32
+        example: 29
+        description: ''
+      legBetType:
+        type: string
+        example: MONEYLINE
+        description: 'Parlay leg type.'
+        enum:
+          - MONEYLINE
+          - SPREAD
+          - TOTAL_POINTS
+          - TEAM_TOTAL_POINTS
+      legBetStatus:
+        type: string
+        description: |
+          Parlay Leg status.
+          CANCELLED = The leg is canceled- the stake on this leg will be transferred to the next one. In this case the leg will be ignored when calculating the winLoss,
+          LOSE = The leg is a loss or a push-lose. When Push-lose happens, the half of the stake on the leg will be pushed to the next leg, and the other half will be a lose. This can happen only when the leg is placed on a quarter points handicap,
+          PUSH = The leg is a push - the stake on this leg will be transferred to the next one. In this case the leg will be ignored when calculating the winLoss,
+          REFUNDED = The leg is refunded - the stake on this leg will be transferred to the next one. In this case the leg will be ignored when calculating the winLoss,
+          WON = The leg is a won or a push-won. When Push-won happens, the half of the stake on the leg will be pushed to the next leg, and the other half is won. This can happen only when the leg is placed on a quarter points handicap
+        enum:
+          - CANCELLED
+          - LOSE
+          - PUSH
+          - REFUNDED
+          - WON
+          - ACCEPTED
+      legBetStatus2:
+        type: string
+        description: |
+          Parlay Leg status.
+          CANCELLED = The leg is canceled- the stake on this leg will be transferred to the next one. In this case the leg will be ignored when calculating the winLoss,
+          LOST = The leg is a loss or a push-lose. When Push-lose happens, the half of the stake on the leg will be pushed to the next leg, and the other half will be a lose. This can happen only when the leg is placed on a quarter points handicap,
+          PUSHED = The leg is a push - the stake on this leg will be transferred to the next one. In this case the leg will be ignored when calculating the winLoss,
+          REFUNDED = The leg is refunded - the stake on this leg will be transferred to the next one. In this case the leg will be ignored when calculating the winLoss,
+          WON = The leg is a won or a push-won. When Push-won happens, the half of the stake on the leg will be pushed to the next leg, and the other half is won. This can happen only when the leg is placed on a quarter points handicap,
+          HALF_WON_HALF_PUSHED = The bet is settled as half won half pushed. Only for asian handicap legs,
+          HALF_LOST_HALF_PUSHED = The bet is settled as half lost half pushed. Only for asian handicap legs
+        enum:
+          - CANCELLED
+          - LOST
+          - PUSHED
+          - REFUNDED
+          - WON
+          - ACCEPTED
+          - HALF_WON_HALF_PUSHED
+          - HALF_LOST_HALF_PUSHED
+      leagueId:
+        type: integer
+        format: int32
+        example: 1766
+        description: ''
+      leagueName:
+        type: string
+        example: Australia - A League
+        description: ''
+      eventId:
+        type: integer
+        format: int64
+        example: 758024079
+        description: ''
+      eventStartTime:
+        type: string
+        format: date-time
+        example: '2017-10-07T21:00:00Z'
+        description: 'Date time when the event starts'
+      handicap:
+        type: number
+        format: double
+        example: null
+        x-nullable: true
+        description: ''
+      price:
+        type: number
+        format: double
+        example: 193
+        description: ''
+      teamName:
+        type: string
+        example: Adelaide United
+        description: ''
+      side:
+        type: string
+        example: null
+        x-nullable: true
+        description: '方向类型(大/小)。'
+        enum:
+          - OVER
+          - UNDER
+      pitcher1:
+        type: string
+        example: null
+        x-nullable: true
+        description: ''
+      pitcher2:
+        type: string
+        example: null
+        x-nullable: true
+        description: ''
+      pitcher1MustStart:
+        type: boolean
+        example: false
+        description: ''
+      pitcher2MustStart:
+        type: boolean
+        example: false
+        description: ''
+      team1:
+        type: string
+        description: Wellington Phoenix
+      team2:
+        type: string
+        description: Adelaide United
+      periodNumber:
+        type: integer
+        format: int32
+        example: 0
+        description: ''
+      ftTeam1Score:
+        type: number
+        format: double
+        example: null
+        x-nullable: true
+        description: Full time team 1 score
+      ftTeam2Score:
+        type: number
+        format: double
+        example: null
+        x-nullable: true
+        description: Full time team 2 score
+      pTeam1Score:
+        type: number
+        format: double
+        example: null
+        x-nullable: true
+        description: 'End of period team 1 score. If the bet was placed on Game period (periodNumber =0) , this will be null'
+      pTeam2Score:
+        type: number
+        format: double
+        example: null
+        x-nullable: true
+        description: 'End of period team 2 score. If the bet was placed on Game period (periodNumber =0) , this will be null'
+      cancellationReason:
+        $ref: '#/definitions/CancellationReason'
+      resultingUnit:
+        type: string
+        description: Specifies based on what the event is being resulted, e.g. Corners, Bookings , Regular
+    description: ''
+  PlaceTeaserBetRequest:
+    type: object
+    properties:
+      uniqueRequestId:
+        type: string
+        format: uuid
+        example: 10924E23-A2FE-4317-BFFD-80504675F554
+        description: Client generated GUID for uniquely identifying the bet.
+      teaserId:
+        type: integer
+        format: int32
+        description: Unique identifier. Teaser details can be retrieved from a call to Get Teaser Groups endpoint.
+      oddsFormat:
+        $ref: '#/definitions/OddsFormat'
+      winRiskStake:
+        type: string
+        description: 投注金额是风险金额还是盈利金额。
+      stake:
+        type: number
+        format: double
+        description: amount in client’s currency.
+      legs:
+        type: array
+        description: Collection of legs.
+        items:
+          $ref: '#/definitions/TeaserBetLeg'
+    description: ''
+  TeaserBetLeg:
+    type: object
+    properties:
+      legId:
+        type: string
+        format: int64
+        example: 10924E23-A2FE-4317-BFFD-80504675F554
+        description: Client generated GUID for uniquely identifying the leg.
+      betType:
+        type: string
+        example: SPREAD
+        description: 'Leg bet type can be SPREAD or TOTAL_POINTS '
+        enum:
+          - SPREAD
+          - TOTAL_POINTS
+      lineId:
+        type: integer
+        format: int64
+        description: Unique identifier.
+      eventId:
+        type: integer
+        format: int64
+        description: Unique identifier.
+      team:
+        type: string
+        description: Team being bet on for a spread line.
+      side:
+        type: string
+        description: 'Chosen side type. This is needed only for TOTAL_POINTS bet type.'
+        enum:
+          - OVER
+          - UNDER
+    description: ''
+  PlaceTeaserBetResponse:
+    type: object
+    properties:
+      status:
+        type: string
+        description: Status of the request.
+      errorCode:
+        type: string
+        description: |
+          When Status is PROCESSED_WITH_ERROR, provides a code indicating the specific problem.
+
+          ABOVE_MAX_BET_AMOUNT = Bet is above the maximum allowed,
+          ALL_BETTING_CLOSED = The wagering is disabled in the system (not related to a customer),
+          BELOW_MIN_BET_AMOUNT = Bet is below the minimum allowed,
+          BLOCKED_BETTING = Betting is suspended for the client,
+          BLOCKED_CLIENT = Customer is inactive in the system,
+          DOUBLE_HIT = The website submitted the same bet more than once,
+          DUPLICATE_CLIENT_REFERENCE_ID = The teaser unique id and/or one of the leg unique id are the same,
+          INCOMPLETE_CUSTOMER_BETTING_PROFILE = The customer does not exist,
+          INSUFFICIENT_FUNDS = The risk amount is above the customer’s available balance,
+          INVALID_COUNTRY = Current location is proscribed,
+          INVALID_CUSTOMER_PROFILE = Either the customer does not exist OR the customer business rules are not verified,
+          INVALID_LEGS = One or more legs are not verified,
+          INVALID_REQUEST = Teaser request is not valid,
+          ODDS_FORMAT_MISMATCH = Agent customer’s odds format differs from wager request odds format,
+          RESUBMIT_REQUEST = The ticket hast to be resubmitted,
+          TEASER_DOES_NOT_EXIST = Teaser does not exist in the system,
+          SAME_EVENT_ONLY_REQUIRED = Legs required to be for the same game only. Specified in the Teaser Specifications,
+          SYSTEM_ERROR_1 = System error,
+          SYSTEM_ERROR_2 = System error,
+          SYSTEM_ERROR_3 = System error,
+          TOO_FEW_LEGS = Legs count is below Min Picks specified in the Teaser Specifications,
+          TOO_MANY_LEGS = Legs count is above Max Picks specified in the Teaser Specifications,
+          DUPLICATE_UNIQUE_REQUEST_ID = Request with the same uniqueRequestId was already processed. Please set the new value if you still want the request to be processed,
+          RESPONSIBLE_BETTING_LOSS_LIMIT_EXCEEDED = Client has reached his total loss limit,
+          RESPONSIBLE_BETTING_RISK_LIMIT_EXCEEDED = Client has reached his total risk limit
+
+        enum:
+          - ABOVE_MAX_BET_AMOUNT
+          - ALL_BETTING_CLOSED
+          - BELOW_MIN_BET_AMOUNT
+          - BLOCKED_BETTING
+          - BLOCKED_CLIENT
+          - DOUBLE_HIT
+          - DUPLICATE_CLIENT_REFERENCE_ID
+          - INCOMPLETE_CUSTOMER_BETTING_PROFILE
+          - INSUFFICIENT_FUNDS
+          - INVALID_COUNTRY
+          - INVALID_CUSTOMER_PROFILE
+          - INVALID_LEGS
+          - INVALID_REQUEST
+          - ODDS_FORMAT_MISMATCH
+          - RESUBMIT_REQUEST
+          - TEASER_DOES_NOT_EXIST
+          - SAME_EVENT_ONLY_REQUIRED
+          - SYSTEM_ERROR_1
+          - SYSTEM_ERROR_2
+          - SYSTEM_ERROR_3
+          - TOO_FEW_LEGS
+          - TOO_MANY_LEGS
+          - DUPLICATE_UNIQUE_REQUEST_ID
+          - RESPONSIBLE_BETTING_LOSS_LIMIT_EXCEEDED
+          - RESPONSIBLE_BETTING_RISK_LIMIT_EXCEEDED
+      betId:
+        type: integer
+        format: int64
+        description: Id of a newly created bet.
+      uniqueRequestId:
+        type: string
+        format: uuid
+        example: 10924E23-A2FE-4317-BFFD-80504675F554
+        description: Unique identifier provided in the request.
+      price:
+        type: number
+        format: double
+        description: 赔率 for the bet.
+      riskAmount:
+        type: number
+        format: double
+        description: Amount wagered.
+      winAmount:
+        type: number
+        format: double
+        description: Potential winnings.
+      winRiskStake:
+        type: string
+        description: 投注金额是风险金额还是盈利金额。
+      invalidLegs:
+        type: array
+        description: 'A collection of invalid legs, if any.'
+        items:
+          $ref: '#/definitions/PlaceTeaserBetLegResponse'
+      validLegs:
+        type: array
+        description: 'A collection of valid legs, if any.'
+        items:
+          $ref: '#/definitions/PlaceTeaserBetLegResponse'
+      teaserBet:
+        $ref: '#/definitions/TeaserBet'
+        description: 'Present if bet was accepted'
+  PlaceTeaserBetResponseV4:
+    type: object
+    properties:
+      status:
+        type: string
+        description: Status of the request.
+      errorCode:
+        type: string
+        description: |
+          When Status is PROCESSED_WITH_ERROR, provides a code indicating the specific problem.
+
+          ABOVE_MAX_BET_AMOUNT = Bet is above the maximum allowed,
+          ALL_BETTING_CLOSED = The wagering is disabled in the system (not related to a customer),
+          BELOW_MIN_BET_AMOUNT = Bet is below the minimum allowed,
+          BLOCKED_BETTING = Betting is suspended for the client,
+          BLOCKED_CLIENT = Customer is inactive in the system,
+          DOUBLE_HIT = The website submitted the same bet more than once,
+          DUPLICATE_CLIENT_REFERENCE_ID = The teaser unique id and/or one of the leg unique id are the same,
+          INCOMPLETE_CUSTOMER_BETTING_PROFILE = The customer does not exist,
+          INSUFFICIENT_FUNDS = The risk amount is above the customer’s available balance,
+          INVALID_COUNTRY = Current location is proscribed,
+          INVALID_CUSTOMER_PROFILE = Either the customer does not exist OR the customer business rules are not verified,
+          INVALID_LEGS = One or more legs are not verified,
+          INVALID_REQUEST = Teaser request is not valid,
+          ODDS_FORMAT_MISMATCH = Agent customer’s odds format differs from wager request odds format,
+          RESUBMIT_REQUEST = The ticket hast to be resubmitted,
+          TEASER_DOES_NOT_EXIST = Teaser does not exist in the system,
+          SAME_EVENT_ONLY_REQUIRED = Legs required to be for the same game only. Specified in the Teaser Specifications,
+          SYSTEM_ERROR_1 = System error,
+          SYSTEM_ERROR_2 = System error,
+          SYSTEM_ERROR_3 = System error,
+          TOO_FEW_LEGS = Legs count is below Min Picks specified in the Teaser Specifications,
+          TOO_MANY_LEGS = Legs count is above Max Picks specified in the Teaser Specifications,
+          DUPLICATE_UNIQUE_REQUEST_ID = Request with the same uniqueRequestId was already processed. Please set the new value if you still want the request to be processed,
+          RESPONSIBLE_BETTING_LOSS_LIMIT_EXCEEDED = Client has reached his total loss limit,
+          RESPONSIBLE_BETTING_RISK_LIMIT_EXCEEDED = Client has reached his total risk limit
+
+        enum:
+          - ABOVE_MAX_BET_AMOUNT
+          - ALL_BETTING_CLOSED
+          - BELOW_MIN_BET_AMOUNT
+          - BLOCKED_BETTING
+          - BLOCKED_CLIENT
+          - DOUBLE_HIT
+          - DUPLICATE_CLIENT_REFERENCE_ID
+          - INCOMPLETE_CUSTOMER_BETTING_PROFILE
+          - INSUFFICIENT_FUNDS
+          - INVALID_COUNTRY
+          - INVALID_CUSTOMER_PROFILE
+          - INVALID_LEGS
+          - INVALID_REQUEST
+          - ODDS_FORMAT_MISMATCH
+          - RESUBMIT_REQUEST
+          - TEASER_DOES_NOT_EXIST
+          - SAME_EVENT_ONLY_REQUIRED
+          - SYSTEM_ERROR_1
+          - SYSTEM_ERROR_2
+          - SYSTEM_ERROR_3
+          - TOO_FEW_LEGS
+          - TOO_MANY_LEGS
+          - DUPLICATE_UNIQUE_REQUEST_ID
+          - RESPONSIBLE_BETTING_LOSS_LIMIT_EXCEEDED
+          - RESPONSIBLE_BETTING_RISK_LIMIT_EXCEEDED
+      betId:
+        type: integer
+        format: int64
+        description: Id of a newly created bet.
+      uniqueRequestId:
+        type: string
+        format: uuid
+        example: 10924E23-A2FE-4317-BFFD-80504675F554
+        description: Unique identifier provided in the request.
+      price:
+        type: number
+        format: double
+        description: 赔率 for the bet.
+      risk:
+        type: number
+        format: double
+        description: Amount wagered.
+      win:
+        type: number
+        format: double
+        description: Potential winnings.
+      winRiskStake:
+        type: string
+        description: 投注金额是风险金额还是盈利金额。
+      invalidLegs:
+        type: array
+        description: 'A collection of invalid legs, if any.'
+        items:
+          $ref: '#/definitions/PlaceTeaserBetLegResponse'
+      validLegs:
+        type: array
+        description: 'A collection of valid legs, if any.'
+        items:
+          $ref: '#/definitions/PlaceTeaserBetLegResponse'
+  PlaceTeaserBetLegResponse:
+    type: object
+    properties:
+      status:
+        type: string
+        description: Status of the request.
+      errorCode:
+        type: string
+        description: |
+          When Status is PROCESSED_WITH_ERROR, provides a code indicating the specific problem.
+
+          CANNOT_TEASER_LIVE_GAME = Teaser is not allowed on a live game,
+          CHECK_TEASER_ERROR = The teaser is invalid, check the teaser error for more details,
+          INVALID_EVENT = The game is not found in the system,
+          INVALID_LEG_BET = The wager is not verified,
+          INVALID_LEG_BET_TYPE = Wager type is not “teasable”, can be either Spread or Total,
+          LINE_CHANGED = Wager is placed on a line that has changed,
+          LINE_DOES_NOT_BELONG_TO_EVENT = There was no game found for the wager,
+          OFFLINE_EVENT = Either the game is offline OR there was no game found for the wager,
+          PAST_CUTOFFTIME = Wager is placed on a game after the cutoff time,
+          POINTS_ARE_NOT_ADJUSTED = The teaser points were not adjusted,
+          SYSTEM_ERROR_1 = System error,
+          SYSTEM_ERROR_2 = System error,
+          WAGER_DATA_MISSING = Wager is denied due to insufficient information available for validation,
+          LINE_IS_NOT_AVAILABLE = Line is not available for the specified Teaser Leg,
+          BETTING_SUSPENDED = Due to anomalous market circumstances bets are not currently being accepted on this line. Try again with next LineId.
+        enum:
+          - CANNOT_TEASER_LIVE_GAME
+          - CHECK_TEASER_ERROR
+          - INVALID_EVENT
+          - INVALID_LEG_BET
+          - INVALID_LEG_BET_TYPE
+          - LINE_CHANGED
+          - LINE_DOES_NOT_BELONG_TO_EVENT
+          - OFFLINE_EVENT
+          - PAST_CUTOFFTIME
+          - POINTS_ARE_NOT_ADJUSTED
+          - SYSTEM_ERROR_1
+          - SYSTEM_ERROR_2
+          - WAGER_DATA_MISSING
+          - LINE_IS_NOT_AVAILABLE
+          - BETTING_SUSPENDED
+      legId:
+        type: string
+        format: uuid
+        example: A9EB2EB1-13A5-4600-9F1B-4859379CDEC4
+        description: Echo of the legId from the request.
+      lineId:
+        type: integer
+        format: int64
+        description: Line identification that bet was placed on.
+      points:
+        type: number
+        format: double
+        description: Number of points.
+    description: ''
+  'MultiBetRequest[SpecialBetRequest]':
+    type: object
+    properties:
+      bets:
+        type: array
+        description: The individual bets.
+        items:
+          $ref: '#/definitions/SpecialBetRequest'
+    description: ''
+  SpecialBetRequest:
+    type: object
+    properties:
+      uniqueRequestId:
+        type: string
+        format: uuid
+        example: 10924E23-A2FE-4317-BFFD-80504675F554
+        description: This unique id of the place bet requests. This is to support idempotent requests.
+      acceptBetterLine:
+        type: boolean
+        example: true
+        description: 当盘口变化对客户有利时是否接受该投注。
+      oddsFormat:
+        $ref: '#/definitions/OddsFormat'
+      stake:
+        type: number
+        format: double
+        example: 10.5
+        description: amount in client’s currency.
+      winRiskStake:
+        type: string
+        example: RISK
+        description: 投注金额是风险金额还是盈利金额。
+        enum:
+          - WIN
+          - RISK
+      lineId:
+        type: integer
+        format: int64
+        example: 51024304
+        description: 盘口标识。
+      specialId:
+        type: integer
+        format: int64
+        example: 726394409
+        description: Special identification.
+      contestantId:
+        type: integer
+        format: int64
+        example: 726394411
+        description: Contestant identification.
+    description: ''
+  'MultiBetResponse[SpecialBetResponse]':
+    type: object
+    properties:
+      bets:
+        type: array
+        description: The individual bets.
+        items:
+          $ref: '#/definitions/SpecialBetResponse'
+    description: ''
+  'MultiBetResponse[SpecialBetResponseV4]':
+    type: object
+    properties:
+      bets:
+        type: array
+        description: The individual bets.
+        items:
+          $ref: '#/definitions/SpecialBetResponseV4'
+    description: ''
+  SpecialBetResponse:
+    type: object
+    properties:
+      status:
+        type: string
+        example: ACCEPTED
+        description: Status of the request.
+        enum:
+          - ACCEPTED
+          - PROCESSED_WITH_ERROR
+      errorCode:
+        type: string
+        example: null
+        x-nullable: true
+        description: |
+          When Status is PROCESSED_WITH_ERROR, provides a code indicating the specific problem.
+
+          ALL_BETTING_CLOSED = Betting is not allowed at this moment. This may happen during system maintenance.
+           ABOVE_MAX_BET_AMOUNT = Stake is above allowed maximum amount,
+           BELOW_MIN_BET_AMOUNT = Stake is below allowed minimum amount,
+           BLOCKED_BETTING = Betting is suspended for the client,
+           BLOCKED_CLIENT = Client is no longer active,
+           CONTEST_NOT_FOUND = Incorrect contest id provided or contest is no longer available,
+           DUPLICATE_UNIQUE_REQUEST_ID = UniqueRequestId must be unique for each bet,
+           INCOMPLETE_CUSTOMER_BETTING_PROFILE = Customer profile could not be loaded,
+           INSUFFICIENT_FUNDS = Bet is submitted by a client with insufficient funds,
+           INVALID_COUNTRY = Client country is not allowed for betting,
+           INVALID_REQUEST = Special bet request is not valid,
+           LINE_CHANGED = Bet is submitted on a line that has changed,
+           PAST_CUTOFFTIME = Bet is submitted on a game after the betting cutoff time,
+           RESPONSIBLE_BETTING_LOSS_LIMIT_EXCEEDED = Self-imposed loss limit exceeded,
+           RESPONSIBLE_BETTING_RISK_LIMIT_EXCEEDED = Self-imposed risk limit exceeded,
+           RESUBMIT_REQUEST = The ticket hast to be resubmitted,
+           SYSTEM_ERROR_1 = Unexpected error,
+           SYSTEM_ERROR_2 = Unexpected error,
+           UNIQUE_REQUEST_ID_REQUIRED = UniqueRequestId is missing,
+           BETTING_SUSPENDED = Due to anomalous market circumstances bets are not currently being accepted on this line. Try again with next LineId,
+           INVALID_CUSTOMER_PROFILE
+        enum:
+          - ALL_BETTING_CLOSED
+          - ABOVE_MAX_BET_AMOUNT
+          - BELOW_MIN_BET_AMOUNT
+          - BLOCKED_BETTING
+          - BLOCKED_CLIENT
+          - CONTEST_NOT_FOUND
+          - DUPLICATE_UNIQUE_REQUEST_ID
+          - INCOMPLETE_CUSTOMER_BETTING_PROFILE
+          - INSUFFICIENT_FUNDS
+          - INVALID_COUNTRY
+          - INVALID_REQUEST
+          - LINE_CHANGED
+          - PAST_CUTOFFTIME
+          - RESPONSIBLE_BETTING_LOSS_LIMIT_EXCEEDED
+          - RESPONSIBLE_BETTING_RISK_LIMIT_EXCEEDED
+          - RESUBMIT_REQUEST
+          - SYSTEM_ERROR_1
+          - SYSTEM_ERROR_2
+          - UNIQUE_REQUEST_ID_REQUIRED
+          - BETTING_SUSPENDED
+          - INVALID_CUSTOMER_PROFILE
+      betId:
+        type: integer
+        format: int64
+        example: 760745142
+        description: Id of a newly created bet.
+      uniqueRequestId:
+        type: string
+        format: uuid
+        example: 10924E23-A2FE-4317-BFFD-80504675F554
+        description: Unique identifier provided in the request.
+      betterLineWasAccepted:
+        type: boolean
+        example: false
+        description: Whether or not the bet was accepted on the line that changed in favour of client. This can be true only if acceptBetterLine in the Place Bet request is set to TRUE.
+      specialBet:
+        $ref: '#/definitions/SpecialBetV2'
+    description: ''
+  SpecialBetResponseV4:
+    type: object
+    properties:
+      status:
+        type: string
+        example: ACCEPTED
+        description: Status of the request.
+        enum:
+          - ACCEPTED
+          - PROCESSED_WITH_ERROR
+      errorCode:
+        type: string
+        example: null
+        x-nullable: true
+        description: |
+          When Status is PROCESSED_WITH_ERROR, provides a code indicating the specific problem.
+
+          ALL_BETTING_CLOSED = Betting is not allowed at this moment. This may happen during system maintenance.
+           ABOVE_MAX_BET_AMOUNT = Stake is above allowed maximum amount,
+           BELOW_MIN_BET_AMOUNT = Stake is below allowed minimum amount,
+           BLOCKED_BETTING = Betting is suspended for the client,
+           BLOCKED_CLIENT = Client is no longer active,
+           CONTEST_NOT_FOUND = Incorrect contest id provided or contest is no longer available,
+           DUPLICATE_UNIQUE_REQUEST_ID = UniqueRequestId must be unique for each bet,
+           INCOMPLETE_CUSTOMER_BETTING_PROFILE = Customer profile could not be loaded,
+           INSUFFICIENT_FUNDS = Bet is submitted by a client with insufficient funds,
+           INVALID_COUNTRY = Client country is not allowed for betting,
+           INVALID_REQUEST = Special bet request is not valid,
+           LINE_CHANGED = Bet is submitted on a line that has changed,
+           PAST_CUTOFFTIME = Bet is submitted on a game after the betting cutoff time,
+           RESPONSIBLE_BETTING_LOSS_LIMIT_EXCEEDED = Self-imposed loss limit exceeded,
+           RESPONSIBLE_BETTING_RISK_LIMIT_EXCEEDED = Self-imposed risk limit exceeded,
+           RESUBMIT_REQUEST = The ticket hast to be resubmitted,
+           SYSTEM_ERROR_1 = Unexpected error,
+           SYSTEM_ERROR_2 = Unexpected error,
+           UNIQUE_REQUEST_ID_REQUIRED = UniqueRequestId is missing,
+           BETTING_SUSPENDED = Due to anomalous market circumstances bets are not currently being accepted on this line. Try again with next LineId,
+           INVALID_CUSTOMER_PROFILE
+        enum:
+          - ALL_BETTING_CLOSED
+          - ABOVE_MAX_BET_AMOUNT
+          - BELOW_MIN_BET_AMOUNT
+          - BLOCKED_BETTING
+          - BLOCKED_CLIENT
+          - CONTEST_NOT_FOUND
+          - DUPLICATE_UNIQUE_REQUEST_ID
+          - INCOMPLETE_CUSTOMER_BETTING_PROFILE
+          - INSUFFICIENT_FUNDS
+          - INVALID_COUNTRY
+          - INVALID_REQUEST
+          - LINE_CHANGED
+          - PAST_CUTOFFTIME
+          - RESPONSIBLE_BETTING_LOSS_LIMIT_EXCEEDED
+          - RESPONSIBLE_BETTING_RISK_LIMIT_EXCEEDED
+          - RESUBMIT_REQUEST
+          - SYSTEM_ERROR_1
+          - SYSTEM_ERROR_2
+          - UNIQUE_REQUEST_ID_REQUIRED
+          - BETTING_SUSPENDED
+          - INVALID_CUSTOMER_PROFILE
+      betId:
+        type: integer
+        format: int64
+        example: 760745142
+        description: Id of a newly created bet.
+      uniqueRequestId:
+        type: string
+        format: uuid
+        example: 10924E23-A2FE-4317-BFFD-80504675F554
+        description: Unique identifier provided in the request.
+      betterLineWasAccepted:
+        type: boolean
+        example: false
+        description: Whether or not the bet was accepted on the line that changed in favour of client. This can be true only if acceptBetterLine in the Place Bet request is set to TRUE.
+      win:
+        type: number
+        format: double
+        example: 1
+        description: 盈利金额。
+      risk:
+        type: number
+        format: double
+        example: 1.51
+        description: 风险金额。
+      price:
+        type: number
+        format: double
+        example: 1.51
+        description: 赔率 amount.
+    description: ''
+  SpecialBet:
+    type: object
+    required:
+      - betId
+      - betStatus
+      - betType
+      - contestantId
+      - contestantName
+      - leagueId
+      - oddsFormat
+      - placedAt
+      - price
+      - risk
+      - specialId
+      - specialName
+      - sportId
+      - updateSequence
+      - wagerNumber
+      - win
+    properties:
+      betId:
+        type: integer
+        format: int64
+        example: 760748770
+        description: 投注标识
+      uniqueRequestId:
+        type: string
+        format: uuid
+        example: 10924E23-A2FE-4317-BFFD-80504675F554
+        description: Unique Request Id
+      wagerNumber:
+        type: integer
+        format: int32
+        example: 1
+        description: '注单标识。通过 API 下的所有投注该值为 1。网站经典视图支持同一注单内多笔竞猜/特殊投注及轮转串关,此时会有对应注单号。'
+      placedAt:
+        type: string
+        format: date-time
+        example: '2017-09-09T01:49:43Z'
+        description: 投注下单时间。
+      settledAt:
+        type: string
+        format: date-time
+        example: '2017-09-05T01:32:59Z'
+        description: Date time when the bet was settled.
+      betStatus:
+        type: string
+        example: ACCEPTED
+        description: |
+          Bet Status.
+          ACCEPTED = 投注已接受。
+          CANCELLED = 按 Pinnacle 规则取消。
+          LOSE = 已结算为输。
+          REFUNDED = 赛事取消或投注结算为平局时退款。
+          WON = 已结算为赢。
+        enum:
+          - ACCEPTED
+          - CANCELLED
+          - LOSE
+          - REFUNDED
+          - WON
+      betType:
+        type: string
+        default: SPECIAL
+        example: SPECIAL
+      win:
+        type: number
+        format: double
+        example: 1
+        description: 盈利金额。
+      risk:
+        type: number
+        format: double
+        example: 1.51
+        description: 风险金额。
+      winLoss:
+        type: number
+        format: double
+        example: null
+        x-nullable: true
+        description: 已结算投注的盈亏。
+      oddsFormat:
+        $ref: '#/definitions/OddsFormat'
+      customerCommission:
+        type: number
+        format: double
+        example: null
+        x-nullable: true
+        description: Client’s commission on the bet.
+      cancellationReason:
+        $ref: '#/definitions/CancellationReason'
+      updateSequence:
+        type: integer
+        format: int64
+        example: 113214135
+        description: 更新序列号. It gets updated when the bet status change.
+      specialId:
+        type: integer
+        format: int64
+        example: 726397620
+        description: ''
+      specialName:
+        type: string
+        example: Denver Broncos Regular Season Wins?
+        description: ''
+      contestantId:
+        type: integer
+        format: int64
+        example: 726397622
+        description: ''
+      contestantName:
+        type: string
+        example: Under
+        description: ''
+      price:
+        type: number
+        format: double
+        example: -151
+        description: ''
+      handicap:
+        type: number
+        format: double
+        example: 8.5
+        description: ''
+      units:
+        type: string
+        example: Regular Season Wins
+        description: ''
+      sportId:
+        type: integer
+        format: int32
+        example: 15
+        description: ''
+      leagueId:
+        type: integer
+        format: int32
+        example: 889
+        description: ''
+      eventId:
+        type: integer
+        format: int64
+        example: null
+        x-nullable: true
+        description: Populated if bet was placed on a special linked to the event.
+      periodNumber:
+        type: integer
+        format: int32
+        example: null
+        x-nullable: true
+        description: Populated if bet was placed on a special linked to the event.
+      team1:
+        type: string
+        example: null
+        x-nullable: true
+        description: Populated if bet was placed on a special linked to the event.
+      team2:
+        type: string
+        example: null
+        x-nullable: true
+        description: Populated if bet was placed on a special linked to the event.
+    description: ''
+  SpecialBetV2:
+    type: object
+    required:
+      - betId
+      - betStatus
+      - betType
+      - contestantId
+      - contestantName
+      - leagueId
+      - oddsFormat
+      - placedAt
+      - price
+      - risk
+      - specialId
+      - specialName
+      - sportId
+      - updateSequence
+      - wagerNumber
+      - win
+    properties:
+      betId:
+        type: integer
+        format: int64
+        example: 760748770
+        description: 投注标识
+      uniqueRequestId:
+        type: string
+        format: uuid
+        example: 10924E23-A2FE-4317-BFFD-80504675F554
+        description: Unique Request Id
+      wagerNumber:
+        type: integer
+        format: int32
+        example: 1
+        description: '注单标识。通过 API 下的所有投注该值为 1。网站经典视图支持同一注单内多笔竞猜/特殊投注及轮转串关,此时会有对应注单号。'
+      placedAt:
+        type: string
+        format: date-time
+        example: '2017-09-09T01:49:43Z'
+        description: 投注下单时间。
+      betStatus:
+        type: string
+        example: ACCEPTED
+        description: |
+          Bet Status.
+          ACCEPTED = 投注已接受。
+          CANCELLED = 按 Pinnacle 规则取消。
+          LOSE = 已结算为输。
+          REFUNDED = 赛事取消或投注结算为平局时退款。
+          WON = 已结算为赢。
+        enum:
+          - ACCEPTED
+          - CANCELLED
+          - LOSE
+          - REFUNDED
+          - WON
+      betType:
+        type: string
+        default: SPECIAL
+        example: SPECIAL
+      win:
+        type: number
+        format: double
+        example: 1
+        description: 盈利金额。
+      risk:
+        type: number
+        format: double
+        example: 1.51
+        description: 风险金额。
+      winLoss:
+        type: number
+        format: double
+        example: null
+        x-nullable: true
+        description: 已结算投注的盈亏。
+      oddsFormat:
+        $ref: '#/definitions/OddsFormat'
+      customerCommission:
+        type: number
+        format: double
+        example: null
+        x-nullable: true
+        description: Client’s commission on the bet.
+      cancellationReason:
+        $ref: '#/definitions/CancellationReason'
+      updateSequence:
+        type: integer
+        format: int64
+        example: 113214135
+        description: 更新序列号. It gets updated when the bet status change.
+      specialId:
+        type: integer
+        format: int64
+        example: 726397620
+        description: ''
+      specialName:
+        type: string
+        example: Denver Broncos Regular Season Wins?
+        description: ''
+      contestantId:
+        type: integer
+        format: int64
+        example: 726397622
+        description: ''
+      contestantName:
+        type: string
+        example: Under
+        description: ''
+      price:
+        type: number
+        format: double
+        example: -151
+        description: ''
+      handicap:
+        type: number
+        format: double
+        example: 8.5
+        description: ''
+      units:
+        type: string
+        example: Regular Season Wins
+        description: ''
+      sportId:
+        type: integer
+        format: int32
+        example: 15
+        description: ''
+      leagueId:
+        type: integer
+        format: int32
+        example: 889
+        description: ''
+      eventId:
+        type: integer
+        format: int64
+        example: null
+        x-nullable: true
+        description: Populated if bet was placed on a special linked to the event.
+      periodNumber:
+        type: integer
+        format: int32
+        example: null
+        x-nullable: true
+        description: Populated if bet was placed on a special linked to the event.
+      team1:
+        type: string
+        example: null
+        x-nullable: true
+        description: Populated if bet was placed on a special linked to the event.
+      team2:
+        type: string
+        example: null
+        x-nullable: true
+        description: Populated if bet was placed on a special linked to the event.
+      eventStartTime:
+        type: string
+        format: date-time
+        description: Date time when the event starts.
+      resultingUnit:
+        type: string
+        description: Specifies based on what the event is being resulted, e.g. Corners, Bookings , Regular.
+    description: ''
+  SpecialBetV3:
+    type: object
+    required:
+      - betId
+      - betStatus
+      - betType
+      - contestantId
+      - contestantName
+      - leagueId
+      - oddsFormat
+      - placedAt
+      - price
+      - risk
+      - specialId
+      - specialName
+      - sportId
+      - updateSequence
+      - wagerNumber
+      - win
+    properties:
+      betId:
+        type: integer
+        format: int64
+        example: 760748770
+        description: 投注标识
+      uniqueRequestId:
+        type: string
+        format: uuid
+        example: 10924E23-A2FE-4317-BFFD-80504675F554
+        description: Unique Request Id
+      wagerNumber:
+        type: integer
+        format: int32
+        example: 1
+        description: '注单标识。通过 API 下的所有投注该值为 1。网站经典视图支持同一注单内多笔竞猜/特殊投注及轮转串关,此时会有对应注单号。'
+      placedAt:
+        type: string
+        format: date-time
+        example: '2017-09-09T01:49:43Z'
+        description: 投注下单时间。
+      betStatus:
+        type: string
+        example: ACCEPTED
+        description: |
+          Bet Status.
+          ACCEPTED = 投注已接受。
+          CANCELLED = 按 Pinnacle 规则取消。
+          LOSE = 已结算为输。
+          REFUNDED = 赛事取消或投注结算为平局时退款。
+          WON = 已结算为赢。
+        enum:
+          - ACCEPTED
+          - CANCELLED
+          - LOSE
+          - REFUNDED
+          - WON
+      betType:
+        type: string
+        default: SPECIAL
+        example: SPECIAL
+      win:
+        type: number
+        format: double
+        example: 1
+        description: 盈利金额。
+      risk:
+        type: number
+        format: double
+        example: 1.51
+        description: 风险金额。
+      winLoss:
+        type: number
+        format: double
+        example: null
+        x-nullable: true
+        description: 已结算投注的盈亏。
+      oddsFormat:
+        $ref: '#/definitions/OddsFormat'
+      customerCommission:
+        type: number
+        format: double
+        example: null
+        x-nullable: true
+        description: Client’s commission on the bet.
+      cancellationReason:
+        $ref: '#/definitions/CancellationReason'
+      updateSequence:
+        type: integer
+        format: int64
+        example: 113214135
+        description: 更新序列号. It gets updated when the bet status change.
+      specialId:
+        type: integer
+        format: int64
+        example: 726397620
+        description: ''
+      specialName:
+        type: string
+        example: Denver Broncos Regular Season Wins?
+        description: ''
+      contestantId:
+        type: integer
+        format: int64
+        example: 726397622
+        description: ''
+      contestantName:
+        type: string
+        example: Under
+        description: ''
+      price:
+        type: number
+        format: double
+        example: -151
+        description: ''
+      handicap:
+        type: number
+        format: double
+        example: 8.5
+        description: ''
+      units:
+        type: string
+        example: Regular Season Wins
+        description: ''
+      sportId:
+        type: integer
+        format: int32
+        example: 15
+        description: ''
+      leagueId:
+        type: integer
+        format: int32
+        example: 889
+        description: ''
+      eventId:
+        type: integer
+        format: int64
+        example: null
+        x-nullable: true
+        description: Populated if bet was placed on a special linked to the event.
+      periodNumber:
+        type: integer
+        format: int32
+        example: null
+        x-nullable: true
+        description: Populated if bet was placed on a special linked to the event.
+      team1:
+        type: string
+        example: null
+        x-nullable: true
+        description: Populated if bet was placed on a special linked to the event.
+      team2:
+        type: string
+        example: null
+        x-nullable: true
+        description: Populated if bet was placed on a special linked to the event.
+      eventStartTime:
+        type: string
+        format: date-time
+        example: 2017-10-05T01:32:59Z
+        x-nullable: false
+        description: Date time when the event starts.
+      resultingUnit:
+        type: string
+        x-nullable: false
+        description: Specifies based on what the event is being resulted, e.g. Corners, Bookings , Regular.
+    description: ''
+  SpecialBetRegradedWagerHistoryV1:
+    type: object
+    required:
+      - betId
+      - betStatus
+      - betType
+      - contestantId
+      - contestantName
+      - leagueId
+      - oddsFormat
+      - placedAt
+      - price
+      - risk
+      - specialId
+      - specialName
+      - sportId
+      - updateSequence
+      - wagerNumber
+      - win
+    properties:
+      betId:
+        type: integer
+        format: int64
+        example: 760748770
+        description: 投注标识
+      originalBetId:
+        type: integer
+        format: int64
+        example: 760748743
+        description: Original bet identification
+      uniqueRequestId:
+        type: string
+        format: uuid
+        example: 10924E23-A2FE-4317-BFFD-80504675F554
+        description: Unique Request Id
+      wagerNumber:
+        type: integer
+        format: int32
+        example: 1
+        description: '注单标识。通过 API 下的所有投注该值为 1。网站经典视图支持同一注单内多笔竞猜/特殊投注及轮转串关,此时会有对应注单号。'
+      placedAt:
+        type: string
+        format: date-time
+        example: '2017-09-09T01:49:43Z'
+        description: 投注下单时间。
+      betStatus:
+        type: string
+        example: ACCEPTED
+        description: |
+          Bet Status.
+          ACCEPTED = 投注已接受。
+          CANCELLED = 按 Pinnacle 规则取消。
+          LOSE = 已结算为输。
+          REFUNDED = 赛事取消或投注结算为平局时退款。
+          WON = 已结算为赢。
+        enum:
+          - ACCEPTED
+          - CANCELLED
+          - LOSE
+          - REFUNDED
+          - WON
+      betType:
+        type: string
+        default: SPECIAL
+        example: SPECIAL
+      win:
+        type: number
+        format: double
+        example: 1
+        description: 盈利金额。
+      risk:
+        type: number
+        format: double
+        example: 1.51
+        description: 风险金额。
+      winLoss:
+        type: number
+        format: double
+        example: null
+        x-nullable: true
+        description: 已结算投注的盈亏。
+      oddsFormat:
+        $ref: '#/definitions/OddsFormat'
+      customerCommission:
+        type: number
+        format: double
+        example: null
+        x-nullable: true
+        description: Client’s commission on the bet.
+      cancellationReason:
+        $ref: '#/definitions/CancellationReason'
+      updateSequence:
+        type: integer
+        format: int64
+        example: 113214135
+        description: 更新序列号. It gets updated when the bet status change.
+      specialId:
+        type: integer
+        format: int64
+        example: 726397620
+        description: ''
+      specialName:
+        type: string
+        example: Denver Broncos Regular Season Wins?
+        description: ''
+      contestantId:
+        type: integer
+        format: int64
+        example: 726397622
+        description: ''
+      contestantName:
+        type: string
+        example: Under
+        description: ''
+      price:
+        type: number
+        format: double
+        example: -151
+        description: ''
+      handicap:
+        type: number
+        format: double
+        example: 8.5
+        description: ''
+      units:
+        type: string
+        example: Regular Season Wins
+        description: ''
+      sportId:
+        type: integer
+        format: int32
+        example: 15
+        description: ''
+      leagueId:
+        type: integer
+        format: int32
+        example: 889
+        description: ''
+      eventId:
+        type: integer
+        format: int64
+        example: null
+        x-nullable: true
+        description: Populated if bet was placed on a special linked to the event.
+      periodNumber:
+        type: integer
+        format: int32
+        example: null
+        x-nullable: true
+        description: Populated if bet was placed on a special linked to the event.
+      team1:
+        type: string
+        example: null
+        x-nullable: true
+        description: Populated if bet was placed on a special linked to the event.
+      team2:
+        type: string
+        example: null
+        x-nullable: true
+        description: Populated if bet was placed on a special linked to the event.
+      eventStartTime:
+        type: string
+        format: date-time
+        example: 2017-10-05T01:32:59Z
+        x-nullable: false
+        description: Date time when the event starts.
+      resultingUnit:
+        type: string
+        x-nullable: false
+        description: Specifies based on what the event is being resulted, e.g. Corners, Bookings , Regular.
+    description: ''
+  GetBetsByTypeResponseV3:
+    type: object
+    properties:
+      moreAvailable:
+        type: boolean
+        description: Whether there are more pages available.
+      pageSize:
+        type: integer
+        description: Page size. Default is 1000.
+        example: 1000
+      fromRecord:
+        type: integer
+        description: Starting record number of the result set. Records start at zero
+      toRecord:
+        type: integer
+        description: Ending record number of the result set.
+      straightBets:
+        type: array
+        description: A collection of placed straight bets.
+        items:
+          $ref: '#/definitions/StraightBetV3'
+      parlayBets:
+        type: array
+        description: A collection of placed parlay bets.
+        items:
+          $ref: '#/definitions/ParlayBetV2'
+      teaserBets:
+        type: array
+        description: A collection of placed teaser bets.
+        items:
+          $ref: '#/definitions/TeaserBet'
+      specialBets:
+        type: array
+        description: A collection of placed special bets.
+        items:
+          $ref: '#/definitions/SpecialBetV3'
+      manualBets:
+        type: array
+        description: A collection of placed manual bets.
+        items:
+          $ref: '#/definitions/ManualBet'
+    description: ''
+  GetRegradedWagerHistoryResponseV1:
+    type: object
+    properties:
+      moreAvailable:
+        type: boolean
+        description: Whether there are more pages available.
+      pageSize:
+        type: integer
+        description: Page size. Default is 1000.
+        example: 1000
+      fromRecord:
+        type: integer
+        description: Starting record number of the result set. Records start at zero
+      toRecord:
+        type: integer
+        description: Ending record number of the result set.
+      straightBets:
+        type: array
+        description: A collection of placed straight bets.
+        items:
+          $ref: '#/definitions/StraightBetRegradedWagerHistoryV1'
+      parlayBets:
+        type: array
+        description: A collection of placed parlay bets.
+        items:
+          $ref: '#/definitions/ParlayBetRegradedWagerHistoryV1'
+      teaserBets:
+        type: array
+        description: A collection of placed teaser bets.
+        items:
+          $ref: '#/definitions/TeaserBetRegradedWagerHistoryV1'
+      specialBets:
+        type: array
+        description: A collection of placed special bets.
+        items:
+          $ref: '#/definitions/SpecialBetRegradedWagerHistoryV1'
+      manualBets:
+        type: array
+        description: A collection of placed manual bets.
+        items:
+          $ref: '#/definitions/ManualBetRegradedWagerHistoryV1'
+    description: ''
+  TeaserBet:
+    type: object
+    required:
+      - betId
+      - betStatus
+      - betType
+      - isSameEventOnly
+      - legs
+      - maxPicks
+      - minPicks
+      - oddsFormat
+      - placedAt
+      - risk
+      - teaserName
+      - updateSequence
+      - wagerNumber
+      - win
+    properties:
+      betId:
+        type: integer
+        format: int64
+        description: 投注标识
+      uniqueRequestId:
+        type: string
+        format: uuid
+        example: 10924E23-A2FE-4317-BFFD-80504675F554
+        description: Unique Request Id
+      wagerNumber:
+        type: integer
+        format: int32
+        description: '注单标识。通过 API 下的所有投注该值为 1。网站经典视图支持同一注单内多笔竞猜/特殊投注及轮转串关,此时会有对应注单号。'
+      placedAt:
+        type: string
+        format: date-time
+        description: 投注下单时间。
+      betStatus:
+        type: string
+        description: |
+            Bet Status.
+
+            ACCEPTED = 投注已接受。
+            CANCELLED = 按 Pinnacle 规则取消。
+            LOSE = 已结算为输。
+            REFUNDED = 赛事取消或投注结算为平局时退款。
+            WON = 已结算为赢。
+        enum:
+          - ACCEPTED
+          - CANCELLED
+          - LOSE
+          - REFUNDED
+          - WON
+      betType:
+        type: string
+        default: TEASER
+        example: TEASER
+      win:
+        type: number
+        format: double
+        description: 盈利金额。
+      risk:
+        type: number
+        format: double
+        description: 风险金额。
+      winLoss:
+        type: number
+        format: double
+        description: 已结算投注的盈亏。
+      oddsFormat:
+        $ref: '#/definitions/OddsFormat'
+      customerCommission:
+        type: number
+        format: double
+        description: Client’s commission on the bet.
+      cancellationReason:
+        $ref: '#/definitions/CancellationReason'
+      updateSequence:
+        type: integer
+        format: int64
+        description: 更新序列号
+      teaserName:
+        type: string
+        description: ''
+      isSameEventOnly:
+        type: boolean
+        description: ''
+      minPicks:
+        type: number
+        format: double
+        description: ''
+      maxPicks:
+        type: number
+        format: double
+        description: ''
+      price:
+        type: number
+        format: double
+        example: 682
+        description: 'Populated for all teaser bets and will be the original price at the time of the placement.'
+      finalPrice:
+        type: number
+        format: double
+        example: 0
+        description: Only for settled parlay. Final price may differ in case leg was cancelled or half won.
+      teaserId:
+        type: number
+        format: int32
+        example: 0
+        description: Reference to the teaser id.
+      teaserGroupId:
+        type: number
+        format: int32
+        example: 0
+        description: Reference to the teaser group id.
+      legs:
+        type: array
+        description: ''
+        items:
+          $ref: '#/definitions/TeaserLeg'
+    description: ''
+  TeaserBetRegradedWagerHistoryV1:
+    type: object
+    required:
+      - betId
+      - betStatus
+      - betType
+      - isSameEventOnly
+      - legs
+      - maxPicks
+      - minPicks
+      - oddsFormat
+      - placedAt
+      - risk
+      - teaserName
+      - updateSequence
+      - wagerNumber
+      - win
+    properties:
+      betId:
+        type: integer
+        format: int64
+        description: 投注标识
+      originalBetId:
+        type: integer
+        format: int64
+        description: Original bet identification
+      uniqueRequestId:
+        type: string
+        format: uuid
+        example: 10924E23-A2FE-4317-BFFD-80504675F554
+        description: Unique Request Id
+      wagerNumber:
+        type: integer
+        format: int32
+        description: '注单标识。通过 API 下的所有投注该值为 1。网站经典视图支持同一注单内多笔竞猜/特殊投注及轮转串关,此时会有对应注单号。'
+      placedAt:
+        type: string
+        format: date-time
+        description: 投注下单时间。
+      betStatus:
+        type: string
+        description: |
+            Bet Status.
+
+            ACCEPTED = 投注已接受。
+            CANCELLED = 按 Pinnacle 规则取消。
+            LOSE = 已结算为输。
+            REFUNDED = 赛事取消或投注结算为平局时退款。
+            WON = 已结算为赢。
+        enum:
+          - ACCEPTED
+          - CANCELLED
+          - LOSE
+          - REFUNDED
+          - WON
+      betType:
+        type: string
+        default: TEASER
+        example: TEASER
+      win:
+        type: number
+        format: double
+        description: 盈利金额。
+      risk:
+        type: number
+        format: double
+        description: 风险金额。
+      winLoss:
+        type: number
+        format: double
+        description: 已结算投注的盈亏。
+      oddsFormat:
+        $ref: '#/definitions/OddsFormat'
+      customerCommission:
+        type: number
+        format: double
+        description: Client’s commission on the bet.
+      cancellationReason:
+        $ref: '#/definitions/CancellationReason'
+      updateSequence:
+        type: integer
+        format: int64
+        description: 更新序列号
+      teaserName:
+        type: string
+        description: ''
+      isSameEventOnly:
+        type: boolean
+        description: ''
+      minPicks:
+        type: number
+        format: double
+        description: ''
+      maxPicks:
+        type: number
+        format: double
+        description: ''
+      price:
+        type: number
+        format: double
+        example: 682
+        description: 'Populated for all teaser bets and will be the original price at the time of the placement.'
+      finalPrice:
+        type: number
+        format: double
+        example: 0
+        description: Only for settled parlay. Final price may differ in case leg was cancelled or half won.
+      teaserId:
+        type: number
+        format: int32
+        example: 0
+        description: Reference to the teaser id.
+      teaserGroupId:
+        type: number
+        format: int32
+        example: 0
+        description: Reference to the teaser group id.
+      legs:
+        type: array
+        description: ''
+        items:
+          $ref: '#/definitions/TeaserLeg'
+    description: ''
+  ManualBet:
+    type: object
+    required:
+      - betId
+      - betStatus
+      - betType
+      - description
+      - placedAt
+      - risk
+      - updateSequence
+      - wagerNumber
+      - win
+    properties:
+      betId:
+        type: integer
+        format: int64
+        example: 760063588
+        description: 投注标识
+      wagerNumber:
+        type: integer
+        format: int32
+        example: 1
+        description: '注单标识。通过 API 下的所有投注该值为 1。网站经典视图支持同一注单内多笔竞猜/特殊投注及轮转串关,此时会有对应注单号。'
+      placedAt:
+        type: string
+        format: date-time
+        example: '2017-09-06T14:56:27Z'
+        description: 投注下单时间。
+      betStatus:
+        type: string
+        description: |
+          Bet Status.
+
+          ACCEPTED = 投注已接受。
+          CANCELLED = 按 Pinnacle 规则取消。
+          LOSE = 已结算为输。
+          REFUNDED = When an event is cancelled or when the bet is settled as push, the bet will have REFUNDED status,
+          WON = The bet is settled as won
+        enum:
+          - ACCEPTED
+          - CANCELLED
+          - LOSE
+          - REFUNDED
+          - WON
+      betType:
+        type: string
+        default: MANUAL
+        example: MANUAL
+      win:
+        type: number
+        format: double
+        example: 15000
+        description: 盈利金额。
+      risk:
+        type: number
+        format: double
+        example: 500
+        description: 风险金额。
+      winLoss:
+        type: number
+        format: double
+        description: 已结算投注的盈亏。
+      updateSequence:
+        type: integer
+        format: int64
+        example: 112472310
+        description: 更新序列号
+      description:
+        type: string
+        example: Soccer Props - Partizan vs Crvena Zvezda - Partizan @ +3000
+        description: Manual bet description.
+      referenceBetId:
+        type: integer
+        format: int64
+        example: null
+        x-nullable: true
+        description: Referenced original bet id.
+    description: ''
+  ManualBetRegradedWagerHistoryV1:
+    type: object
+    required:
+      - betId
+      - betStatus
+      - betType
+      - description
+      - placedAt
+      - risk
+      - updateSequence
+      - wagerNumber
+      - win
+    properties:
+      betId:
+        type: integer
+        format: int64
+        example: 760063588
+        description: 投注标识
+      originalBetId:
+        type: integer
+        format: int64
+        example: 760063543
+        description: Original bet identification
+      wagerNumber:
+        type: integer
+        format: int32
+        example: 1
+        description: '注单标识。通过 API 下的所有投注该值为 1。网站经典视图支持同一注单内多笔竞猜/特殊投注及轮转串关,此时会有对应注单号。'
+      placedAt:
+        type: string
+        format: date-time
+        example: '2017-09-06T14:56:27Z'
+        description: 投注下单时间。
+      betStatus:
+        type: string
+        description: |
+          Bet Status.
+
+          ACCEPTED = 投注已接受。
+          CANCELLED = 按 Pinnacle 规则取消。
+          LOSE = 已结算为输。
+          REFUNDED = When an event is cancelled or when the bet is settled as push, the bet will have REFUNDED status,
+          WON = The bet is settled as won
+        enum:
+          - ACCEPTED
+          - CANCELLED
+          - LOSE
+          - REFUNDED
+          - WON
+      betType:
+        type: string
+        default: MANUAL
+        example: MANUAL
+      win:
+        type: number
+        format: double
+        example: 15000
+        description: 盈利金额。
+      risk:
+        type: number
+        format: double
+        example: 500
+        description: 风险金额。
+      winLoss:
+        type: number
+        format: double
+        description: 已结算投注的盈亏。
+      updateSequence:
+        type: integer
+        format: int64
+        example: 112472310
+        description: 更新序列号
+      description:
+        type: string
+        example: Soccer Props - Partizan vs Crvena Zvezda - Partizan @ +3000
+        description: Manual bet description.
+      referenceBetId:
+        type: integer
+        format: int64
+        example: null
+        x-nullable: true
+        description: Referenced original bet id.
+    description: ''
+  TeaserLeg:
+    type: object
+    properties:
+      sportId:
+        type: integer
+        format: int32
+        description: ''
+      legBetType:
+        type: string
+        description: 'Teaser leg type.'
+        enum:
+          - SPREAD
+          - TOTAL_POINTS
+      legBetStatus:
+        type: string
+        description: |
+          CANCELLED = The leg is canceled- the stake on this leg will be transferred to the next one. In this case the leg will be ignored when calculating the winLoss,
+          LOSE = The leg is a loss or a push-lose. When Push-lose happens, the half of the stake on the leg will be pushed to the next leg, and the other half will be a lose. This can happen only when the leg is placed on a quarter points handicap,
+          PUSH = The leg is a push - the stake on this leg will be transferred to the next one. In this case the leg will be ignored when calculating the winLoss,
+          REFUNDED = The leg is refunded - the stake on this leg will be transferred to the next one. In this case the leg will be ignored when calculating the winLoss,
+          WON = The leg is a won or a push-won. When Push-won happens, the half of the stake on the leg will be pushed to the next leg, and the other half is won. This can happen only when the leg is placed on a quarter points handicap
+        enum:
+          - CANCELLED
+          - LOSE
+          - PUSH
+          - REFUNDED
+          - WON
+      leagueId:
+        type: integer
+        format: int32
+        description: ''
+      eventId:
+        type: integer
+        format: int64
+        description: ''
+      eventStartTime:
+        type: string
+        format: date-time
+        example: '2017-10-05T01:32:59Z'
+        description: 'Date time when the event starts.'
+      handicap:
+        type: number
+        format: double
+        description: ''
+      teamName:
+        type: string
+        description: ''
+      side:
+        type: string
+        description: '方向类型(大/小)。'
+        enum:
+          - OVER
+          - UNDER
+      team1:
+        type: string
+        description: ''
+      team2:
+        type: string
+        description: ''
+      periodNumber:
+        type: integer
+        format: int32
+        description: ''
+      resultingUnit:
+        type: string
+        description: 'Specifies based on what the event is being resulted, e.g. Corners, Bookings , Regular'
+    description: ''
+  OddsFormat:
+    type: string
+    description: |
+      Bet odds format.
+      AMERICAN = American odds format,
+      DECIMAL = Decimal (European) odds format,
+      HONGKONG = Hong Kong odds format,
+      INDONESIAN = Indonesian odds format,
+      MALAY = Malaysian odds format
+    enum:
+      - AMERICAN
+      - DECIMAL
+      - HONGKONG
+      - INDONESIAN
+      - MALAY
+    example: DECIMAL
+  BettingStatusResponse:
+    type: object
+    required:
+      - status
+    properties:
+      status:
+        type: string
+        description: |
+          Betting status.
+        enum:
+          - ALL_BETTING_ENABLED
+          - ALL_LIVE_BETTING_CLOSED
+          - ALL_BETTING_CLOSED
+    description: ''

+ 0 - 0
pinnacle/api-docs.html → pinnacle/linesapi_zh.html


+ 1 - 2
pinnacle/main.js

@@ -768,8 +768,7 @@ const pinnacleDataLoop = () => {
       Logs.outDev('loop duration', loopDuration);
     }
 
-    const { straightFixturesVersion: sfv, specialFixturesVersion: pfv, straightOddsVersion: sov, specialsOddsVersion: pov } = GLOBAL_DATA;
-    const timestamp = Math.max(sfv, pfv, sov, pov);
+    const timestamp = Date.now();
     const games = getGames();
     const data = { games, timestamp, tp: TP };
 

Některé soubory nejsou zobrazeny, neboť je v těchto rozdílových datech změněno mnoho souborů