Получение баланса

Запрос

URL

https://api.mivion.com/account/users/{userId}/balance

Метод отправки

GET

На место {userId} необходимо подставить идентификатор пользователя.

Параметры запроса:

nametypedescription
userIduuidИдентификатор пользователя (используется для авторизации, подставляется в ссылку)
type
uuid
description
Идентификатор пользователя (используется для авторизации, подставляется в ссылку)

Ответ после запроса:

Формат ответа

JSON

nametypedescription
balancenumberОбщий баланс
active_balancenumberБаланс доступный для вывода
freeze_balancenumberБаланс в заморозке *
type
number
description
Общий баланс
type
number
description
Баланс доступный для вывода
type
number
description
Баланс в заморозке *

* Время заморозки может отличаться в зависимости от выбранной системы.

Возможные статусы ответа:

  • 200 : Успех
  • 401 : Ошибка авторизации (неверный user_id или секретный ключ
  • 422 : Ошибка валидации
  • 500 : Внутренняя ошибка системы

Пример запроса

URL

https://api.mivion.com/account/users/{userId}/balance

Метод отправки

GET

Curl

  1. 1.curl -X 'GET' \
  2. 2.'https://api.mivion.com/account/users/{userId}/balance' \
  3. 3.-H 'accept: application/json' \
  4. 4.-H 'x-api-signature-sha256: d6be996241deef230e9a0ca9dc60679da8720d14'

Responses

При успешном запросе: код ответа - 200.

  1. 1.{
  2. 2. "data": {
  3. 3. "balance": 0,
  4. 4. "active_balance": 0,
  5. 5. "freeze_balance": 0
  6. 6. },
  7. 7. "status": 200,
  8. 8. "status_check": true
  9. 9.}

При ошибке: код ответа - 401, 404, 422, 500.

  1. 1.{
  2. 2. "data": null,
  3. 3. "error": "Поле user id должно быть в формате UUID.",
  4. 4. "status": 422,
  5. 5. "status_check": false
  6. 6.}

Примеры кода:

  1. 1.import requests
  2. 2.
  3. 3.
  4. 4.# Payment tariffs
  5. 5.def get_user_balance(user_id, api_key):
  6. 6. session = requests.Session()
  7. 7. session.headers['Accept'] = 'application/json'
  8. 8. session.headers['x-api-signature-sha256'] = api_key
  9. 9. response = session.get(f'https://api.mivion.com/account/users/{user_id}/balance')
  10. 10. return response.json()
  11. 11.
  12. 12.
  13. 13.user_id = '0a371bbe-56f3-11ee-8c99-0242ac120002'
  14. 14.api_key = 'd6be996241deef230e9a0ca9dc60679da8720d14'
  15. 15.
  16. 16.# Response full info
  17. 17.balance = get_user_balance(user_id, api_key)
  18. 18.
  19. 19.# Response status
  20. 20.balance['status']
  21. 21.
  22. 22.# Balance data
  23. 23.balance['data']
  24. 24.
  25. 25.# Balance info
  26. 26.balance['data']['balance']
  27. 27.balance['data']['active_balance']
  28. 28.balance['data']['freeze_balance']
  1. 1.function getBalance(string $userId, string $apiKey): array
  2. 2.{
  3. 3. $url = "https://api.mivion.com/account/{$userId}/balance";
  4. 4. $headers = [
  5. 5. "accept: application/json",
  6. 6. "x-api-signature-sha256: {$apiKey}"
  7. 7. ];
  8. 8.
  9. 9. $ch = curl_init();
  10. 10. curl_setopt($ch, CURLOPT_URL, $url);
  11. 11. curl_setopt($ch, CURLOPT_HTTPHEADER, $headers);
  12. 12. curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
  13. 13. $response = curl_exec($ch);
  14. 14. curl_close($ch);
  15. 15. return json_decode($response, true);
  16. 16.}
  17. 17.
  18. 18.$userId = "0a371bbe-56f3-11ee-8c99-0242ac120002";
  19. 19.$apiKey = "d6be996241deef230e9a0ca9dc60679da8720d14";
  20. 20.
  21. 21.# Response full info
  22. 22.$balance = getBalance($userId, $apiKey);
  23. 23.
  24. 24.# Response status
  25. 25.$balance['status'];
  26. 26.
  27. 27.# Balance data
  28. 28.$balance['data'];
  29. 29.
  30. 30.# Balance info
  31. 31.$balance['data']['balance'];
  32. 32.$balance['data']['active_balance'];
  33. 33.$balance['data']['freeze_balance'];