{"swagger":"2.0","info":{"title":"partner.individual.accounts","version":"1.0.0","description":"API для работы со счетами физических лиц"},"tags":[{"name":"accounts","description":"Сервис для работы со счетами"}],"paths":{"/products":{"get":{"tags":["accounts"],"summary":"Список продуктов","description":"Возвращает список продуктов определенного типа","operationId":"getProductsList","produces":["application/json;charset=UTF-8"],"parameters":[{"name":"Authorization","in":"header","description":"Последний токен авторизации (Access Token). Формат передачи будет иметь вид Bearer + {пробел} + {accessToken}","required":true,"type":"string"},{"name":"type","in":"query","description":"Тип продукта: account, deposit, card, credit","required":true,"type":"string","pattern":"account|deposit|card|credit"}],"responses":{"200":{"description":"Успешное выполнение запроса","schema":{"$ref":"#/definitions/ProductList"}},"400":{"description":"Некорректный запрос","schema":{"$ref":"#/definitions/ShortErrorModel"}},"401":{"description":"Запрос не авторизирован","schema":{"$ref":"#/definitions/ShortErrorModel"}},"500":{"description":"Ошибка выполнения запроса","schema":{"$ref":"#/definitions/ShortErrorModel"}}},"x-st-position":1,"x-st-code-samples":[{"lang":"cUrl","sample":"curl --location --request GET 'https://developerhub.alfabank.by:8273/individual/1.0.0/accounts/products?type=' \\\r\n--header 'Authorization: Bearer <accessToken>' \\\r\n--header 'Content-Type: application/x-www-form-urlencoded'"},{"lang":"java","sample":"OkHttpClient client = new OkHttpClient().newBuilder()\r\n  .build();\r\nRequest request = new Request.Builder()\r\n  .url(\"https://developerhub.alfabank.by:8273/individual/1.0.0/accounts/products?type=\")\r\n  .method(\"GET\", null)\r\n  .addHeader(\"Authorization\", \"Bearer <accessToken>\")\r\n  .addHeader(\"Content-Type\", \"application/x-www-form-urlencoded\")\r\n  .build();\r\nResponse response = client.newCall(request).execute();"},{"lang":"node","sample":"var request = require('request');\r\nvar options = {\r\n  'method': 'GET',\r\n  'url': 'https://developerhub.alfabank.by:8273/individual/1.0.0/accounts/products?type=',\r\n  'headers': {\r\n    'Authorization': 'Bearer <accessToken>',\r\n    'Content-Type': 'application/x-www-form-urlencoded'\r\n  },\r\n  form: {\r\n\r\n  }\r\n};\r\nrequest(options, function (error, response) {\r\n  if (error) throw new Error(error);\r\n  console.log(response.body);\r\n});\r\n"},{"lang":"swift","sample":"import Foundation\r\n\r\nvar semaphore = DispatchSemaphore (value: 0)\r\n\r\nlet parameters = \"\"\r\nlet postData =  parameters.data(using: .utf8)\r\n\r\nvar request = URLRequest(url: URL(string: \"https://developerhub.alfabank.by:8273/individual/1.0.0/accounts/products?type=\")!,timeoutInterval: Double.infinity)\r\nrequest.addValue(\"Bearer <accessToken>\", forHTTPHeaderField: \"Authorization\")\r\nrequest.addValue(\"application/x-www-form-urlencoded\", forHTTPHeaderField: \"Content-Type\")\r\n\r\nrequest.httpMethod = \"GET\"\r\nrequest.httpBody = postData\r\n\r\nlet task = URLSession.shared.dataTask(with: request) { data, response, error in \r\n  guard let data = data else {\r\n    print(String(describing: error))\r\n    semaphore.signal()\r\n    return\r\n  }\r\n  print(String(data: data, encoding: .utf8)!)\r\n  semaphore.signal()\r\n}\r\n\r\ntask.resume()\r\nsemaphore.wait()\r\n"}],"x-scope":"accounts_individual","x-auth-type":"Application & Application User","x-throttling-tier":"Unlimited","security":[{"default":["accounts_individual"]}]}},"/statement":{"get":{"tags":["accounts"],"summary":"История операций","description":"Возвращает операции, соответствующие заданному фильтру, в постраничном режиме","operationId":"getDesc","produces":["application/json;charset=UTF-8"],"parameters":[{"name":"Authorization","in":"header","description":"Последний токен авторизации (Access Token). Формат передачи будет иметь вид Bearer + {пробел} + {accessToken}","required":true,"type":"string"},{"name":"searchQuery","in":"query","description":"Текстовый запрос в поле поиска","required":false,"type":"string","maxLength":100,"minLength":0},{"name":"minAmount","in":"query","description":"Минимальная сумма для фильтрации","required":false,"type":"number"},{"name":"maxAmount","in":"query","description":"Максимальная сумма для фильтрации","required":false,"type":"number"},{"name":"dateFrom","in":"query","description":"Начальная дата периода","required":false,"type":"string"},{"name":"dateTo","in":"query","description":"Конечная дата периода","required":false,"type":"string"},{"name":"transactionType","in":"query","description":"Тип транзакции: cd - операции в терминале, tr - переводы, cv - обмен валют, oz - заявки на курс конвертации, er - платежи ЕРИП, ch - операции в кассе, at - снятие наличных в банкоматах, fe - комиссия банка","required":false,"type":"string","pattern":"cd|tr|cv|oz|er|ch|at|fe"},{"name":"objectId","in":"query","description":"ID объекта для фильтрации по счёту, депозиту, кредиту, полученный в массиве объектов accounts","required":false,"type":"string"},{"name":"cardId","in":"query","description":"ID карты для фильтрации по карте. Составляется по принципу: 1-ый символ маски карты + номер счета с 0270 + 4 последних символа маски карты. Например: 4301439637302902701631 (маска 4.1631)","required":false,"type":"string","maxLength":22,"minLength":22},{"name":"operType","in":"query","description":"operType - Тип операции: all - все операции, income - операции зачислений, expense - операции расходов (по умолчанию - all)","required":false,"type":"string","default":"all","pattern":"all|income|expense"},{"name":"pageNo","in":"query","description":"Номер страницы (по умолчанию - 1)","required":false,"type":"integer","minimum":1,"format":"int32"},{"name":"pageRowCount","in":"query","description":"Число строк на странице (по умолчанию - 50)","required":false,"type":"integer","minimum":1,"format":"int32"}],"responses":{"200":{"description":"Успешное выполнение запроса","schema":{"$ref":"#/definitions/DescResponse"}},"400":{"description":"Некорректный запрос","schema":{"$ref":"#/definitions/ShortErrorModel"}},"401":{"description":"Запрос не авторизирован","schema":{"$ref":"#/definitions/ShortErrorModel"}},"500":{"description":"Ошибка выполнения запроса","schema":{"$ref":"#/definitions/ShortErrorModel"}}},"x-st-position":2,"x-st-code-samples":[{"lang":"cUrl","sample":"curl --location --request GET 'https://developerhub.alfabank.by:8273/individual/1.0.0/accounts/statement' \\\r\n--header 'Authorization: Bearer <accessToken>' \\\r\n--header 'Content-Type: application/json'"},{"lang":"java","sample":"OkHttpClient client = new OkHttpClient().newBuilder()\r\n  .build();\r\nRequest request = new Request.Builder()\r\n  .url(\"https://developerhub.alfabank.by:8273/individual/1.0.0/accounts/statement\")\r\n  .method(\"GET\", null)\r\n  .addHeader(\"Authorization\", \"Bearer <accessToken>\")\r\n  .addHeader(\"Content-Type\", \"application/json\")\r\n  .build();\r\nResponse response = client.newCall(request).execute();"},{"lang":"node","sample":"var request = require('request');\r\nvar options = {\r\n  'method': 'GET',\r\n  'url': 'https://developerhub.alfabank.by:8273/individual/1.0.0/accounts/statement',\r\n  'headers': {\r\n    'Authorization': 'Bearer <accessToken>',\r\n    'Content-Type': 'application/json'\r\n  }\r\n};\r\nrequest(options, function (error, response) {\r\n  if (error) throw new Error(error);\r\n  console.log(response.body);\r\n});\r\n"},{"lang":"swift","sample":"import Foundation\r\n\r\nvar semaphore = DispatchSemaphore (value: 0)\r\n\r\nvar request = URLRequest(url: URL(string: \"https://developerhub.alfabank.by:8273/individual/1.0.0/accounts/statement\")!,timeoutInterval: Double.infinity)\r\nrequest.addValue(\"Bearer <accessToken>\", forHTTPHeaderField: \"Authorization\")\r\nrequest.addValue(\"application/json\", forHTTPHeaderField: \"Content-Type\")\r\n\r\nrequest.httpMethod = \"GET\"\r\n\r\nlet task = URLSession.shared.dataTask(with: request) { data, response, error in \r\n  guard let data = data else {\r\n    print(String(describing: error))\r\n    semaphore.signal()\r\n    return\r\n  }\r\n  print(String(data: data, encoding: .utf8)!)\r\n  semaphore.signal()\r\n}\r\n\r\ntask.resume()\r\nsemaphore.wait()\r\n"}],"x-scope":"accounts_individual","x-auth-type":"Application & Application User","x-throttling-tier":"Unlimited","security":[{"default":["accounts_individual"]}]}}},"definitions":{"Account":{"type":"object","properties":{"id":{"type":"string","description":"ID счета"},"name":{"type":"string","description":"Имя/номер  счета"}},"description":"Счет"},"Amount":{"type":"object","properties":{"amount":{"type":"number","description":"Сумма. Null или не передаётся, если для объекта не отображается сумма"},"currIso":{"type":"string","description":"Валюта: BYN, USD, EUR, RUB"}},"description":"Текущий баланс и валюта счета"},"DescResponse":{"type":"object","properties":{"totalRowCount":{"type":"integer","format":"int32","description":"Общее количество найденных элементов"},"filterAccount":{"type":"string","description":"ID счета, использованного при поиске, в случае, если в поиске использовался счет"},"accounts":{"type":"array","description":"Счета","items":{"$ref":"#/definitions/Account"}},"minAmount":{"type":"number","description":"Минимальное значение суммы транзакции"},"maxAmount":{"type":"number","description":"Максимальное значение суммы транзакции"},"dateFrom":{"type":"string","format":"date-time","description":"Минимальное значение даты для фильтра в формате yyyy-MM-dd'T'HH:mm:ss"},"dateTo":{"type":"string","format":"date-time","description":"Максимальное значение даты для фильтра в формате yyyy-MM-dd'T'HH:mm:ss"},"items":{"type":"array","description":"Операции","items":{"$ref":"#/definitions/Operation"}}},"description":"Выходная модель, содержащая историю операций"},"Operation":{"type":"object","properties":{"id":{"type":"string","description":"ID операции"},"title":{"type":"string","description":"Наименование получателя"},"amount":{"description":"Сумма","$ref":"#/definitions/Amount"},"date":{"type":"string","format":"date-time","description":"Дата операции"},"description":{"type":"string","description":"Описание операции. Передаётся в виде текста с разделителями строк\n"},"operationAmount":{"description":"Дополнительная сумма","$ref":"#/definitions/Amount"},"cardMask":{"type":"string","description":"Маска карты - источника в формате X...XXXX (пусто если карта не указана)"},"status":{"type":"string","description":"Статус операции: normal, rejected, hold"},"number":{"type":"string","description":"IBAN счёта для отображения деталей записи истории"},"operationType":{"type":"string","description":"Тип операции для случаев, где необходимо определение типа операций\n\npayment- платёж ЕРИП\n\nownAccountsTransfer - перевод между своими счетами\n\npersonTransfer - перевод физ.лицу\n\npersonTransferAbb - перевод физлицу в пределах банка\n\ncompanyTransfer - перевод юр. лицу\n\ncurrencyExchange - обмен валюты\n\ndepositTransfer - пополнение депозита\n\ncreditCardTransfer - пополнение кредитной карты,\n\ncreditTransfer - оплата кредита","enum":["payment","ownAccountsTransfer","personTransfer","personTransferAbb","companyTransfer","currencyExchange","depositTransfer","creditCardTransfer","creditTransfer"]}},"description":"Операция"},"Product":{"type":"object","properties":{"id":{"type":"string","description":"ID продукта"},"type":{"type":"string","description":"Тип продукта: account, deposit, card, credit"},"info":{"description":"Информация о продукте","$ref":"#/definitions/ProductInfo"}},"description":"Продукт"},"ProductInfo":{"type":"object","properties":{"title":{"type":"string","description":"Имя продукта"},"number":{"type":"string","description":"Номер счета или номер карты с маской"},"amount":{"description":"Текущий баланс и валюта счета","$ref":"#/definitions/Amount"}},"description":"Информация о продукте"},"ProductList":{"type":"object","properties":{"items":{"type":"array","description":"Список продуктов","items":{"$ref":"#/definitions/Product"}}},"description":"Выходная модель, содержащая список продуктов"},"ShortErrorModel":{"type":"object","properties":{"category":{"type":"string","description":"Категория ошибки","enum":["API_ERROR","BACK_ERROR"]},"code":{"type":"integer","format":"int32","description":"Код ошибки"},"message":{"type":"string","description":"Сообщение об ошибке"}}}},"x-wso2-security":{"apim":{"x-wso2-scopes":[{"name":"Получение информации по счетам","description":"","key":"accounts_individual","roles":"individual_production_info"}]}},"x-version-info":null,"host":"ibapi.alfabank.by:8273","basePath":"/individual/1.0.0/accounts","schemes":["https","http"],"securityDefinitions":{"default":{"type":"oauth2","authorizationUrl":"https://ibapi.alfabank.by:8273/authorize","flow":"implicit","scopes":{"accounts_individual":"Получение информации по счетам"}}}}