get-transaction-by-id
Client needs to notify GR8 Tech about the URL of this endpoint for future configuration as it will be used by the Sportsbook BE. See Integration for the rules shared by all three wallet endpoints.
GET
/api/v2/wallet/{playerId}/transactions/{transactionId}Request parameters:
| Name | In | Type | Required | Description |
|---|---|---|---|---|
| playerId | Path | string | required | Id of player. |
| transactionId | Path | string | required | Id of transaction. |
| X-Brand | Header | string | required | One of tenant identifiers which represent site and operator. They will be configured during the tenant setup process and can’t be changed. Get this value from your GR8 Tech manager. |
| X-Operator-Id | Header | string | required | One of tenant identifiers which represent site and operator. They will be configured during the tenant setup process and can’t be changed. Get this value from your GR8 Tech manager. |
Success response
Success response schema (Status code: 200)
{
"type": "object",
"properties": {
"currency": {
"type": "string"
},
"platform": {
"type": "string"
},
"id": {
"type": "string"
},
"type": {
"type": "string",
"enum": [
"deposit",
"withdrawal",
"rollback"
]
},
"initiatedAt": {
"type": "string"
},
"createdAt": {
"type": "string"
},
"context": {
"type": "object",
"properties": {
"product": {
"type": "string"
},
"reason": {
"type": "string"
},
"betId": {
"type": "string"
}
},
"additionalProperties": true
},
"amountBreakdown": {
"type": "object",
"properties": {
"cash": {
"type": "string"
},
"bonus": {
"type": "string"
},
"locked": {
"type": "string"
},
"retract": {
"type": "string"
}
},
"additionalProperties": true
},
"balances": {
"type": "object",
"patternProperties": {
"^.*$": { // platform - "sport"
"^.*$": { // product - "sportsbook"/"main"
"^.*$": { // currency
"type": "object",
"properties": {
"cash": {
"type": "string"
},
"bonus": {
"type": "string"
},
"locked": {
"type": "string"
}
},
"required": [
"cash",
"bonus",
"locked"
],
"additionalProperties": false
}
}
}
},
"additionalProperties": true,
"required": [
"currency",
"platform",
"id",
"amountBreakdown",
"initiatedAt",
"createdAt",
"context",
"balances"
]
}
}
}Response example
{
"currency": "UAH",
"platform": "sport",
"id": "example-transaction-id",
"type": "deposit",
"initiatedAt": "2021-01-20T00:00:00Z",
"createdAt": "2021-01-20T00:00:00Z",
"context": {
"channel": "DESKTOP_AIR_PM",
"product": "sportsbook",
"reason": "bet",
"betId": "example-bet-id"
},
"amountBreakdown": {
"bonus": "0",
"cash": "40",
"locked": "0"
},
"balances": {
"sport": {
"main": {
"USD": {
"cash": "100",
"bonus": "0",
"locked": "0"
}
},
"sportsbook": {
"USD": {
"cash": "100",
"bonus": "0",
"locked": "0"
}
}
}
},
"status": "success",
"alreadyProcessed": false
}Error responses
Warning
If transaction wasn’t found - status code 204, no content. In any other case of error status code has to be 400
Note
Error response schema
{
"type": "object",
"properties": {
"error": {
"type": "object",
"properties": {
"code": {
"type": "string"
},
"message": {
"type": "string"
},
"origin": {
"type": "string"
}
},
"additionalProperties": true,
"required": [
"code",
"message",
"origin"
]
},
"additionalProperties": true,
"required": [
"error"
]
}
}Error response example
{
"error": {
"code": "error.user.not-found",
"message": "User with specified Id was not found",
"origin": "Set your company name"
},
"alreadyProcessed": false
}Note
The “Wallet error codes” section describes the list of possible errors.