Grand API

API для взаимодействия с финансами

Я предоставляю доступ к api, которым вы можете воспользоваться для создания собственного решения

Исходный код самого api закрыт, доступ к файлам из вне невозможен, только по данным авторизации.

Ну и читайте это как статью, нежели официальную документацию (если бы я такую писал, то вы бы вообще не поняли о чем идет речь)

Первый старт и создание аккаунта пользователя

Для того, что бы создать аккаунт пользователя мы обратимся к следующему end-поинту:

POST: https://grand.akkenrl.com/api.php/token
BODY: null
Plaintext

В ответ на данный запрос мы получаем JSON ответ:

{
    "access_token":"a1b2c3d4e5f6...",
    "recovery_codes": ["12345", "67890", "11223", ...]
}
JSON

access_token – токен пользователя для авторизации для всех запросов

recovery_codes – коды восстановления аккаунта, при использовании удаляются, аккаунт можно восстановить один раз, либо через связь с администратором и подтверждением владения аккаунта, все запросы на востановление принимаются на почту grand.recover@akkenrl.com

Восстановление токена

Для того что бы восстановить токен мы воспользуемся следующим end-поинтом:

POST: https://grand.akkenrl.com/api.php/recover
BODY: {
    "codes":["12345", "67890", "11223", ...]
}
Plaintext

В ответ на данный запрос мы получим:

{
 "access_token":"a1b2c3d4e5f6..."
}
JSON

При создании собственного решения убедитесь, что токен пользователя никак не сброситься и он хранится надежно. Также дайте пользователю возможность сохранить токен в отдельном месте от вашего приложения.

Как можно увидить на вход данного end-поинта мы подаем все 6 кодов, иначе доступ не будет выдан. В ответ мы получаем токен авторизации, но при этом воспользоваться этими же кодами не предоставляется возможным. Последующее восстоновление аккаунта будет происходить по почте: grand.recover@akkenrl.com с подтверждением владения аккаунта (назвать несколько счетов и приблизительную сумму на них, может потребоваться информация о последнем платеже добавленным на счет).

Получение информации о всех счетах

Для получения информации о всех счетах мы можем воспользоваться следующим эндпоинтом:

GET https://grand.akkenrl.com/api.php/api/<token>
BODY: null
Plaintext

где <token> мы подставляем токен авторизации.

После отправки данного запроса в случае удачи мы получим следующий ответ:

[
  {
    "id": 1,
    "name": "Основной кошелёк",
    "description": "Наличные",
    "balance": 1500.75,
    "transaction_count": 3
  }
]
JSON

Как можно увидить мы получаем id счета, название, описание, текущий баланс (валюту вы определяете сами, изначально проект создавался в Беларуси, по этому валютой считается BYN) и количество транзакций на счету.

Создание счета

Для создания счета мы воспользуемся тем же адресом только немного другим типом запроса:

POST: https://grand.akkenrl.com/api.php/api/<token>
BODY: {
    "name": "Счёт в банке",
    "description": "Беларусьбанк"
}
Plaintext

где <token> мы подставляем токен авторизации.

При успешном создании счета мы получим следующий ответ:

{
    "id": 2,
    "name": "Счёт в банке"
}
JSON

Проверяйте данные на стороне клиента, например на запрещенные слова (все остальное сделает api за вас 😊)

Изменение информации о счете

ПОДОЖДИТЕ, Я ТУТ ЕЩЕ ПИШУ...