{"swagger":"2.0","info":{"title":"partner.salary","version":"1.0.3","description":"API для работы с зарплатными сотрудниками"},"tags":[{"name":"salary","description":"Сервис для работы с зарплатными сотрудниками"}],"paths":{"/employees":{"get":{"tags":["salary"],"summary":"Список сторудников","description":"Возвращает список сотрудников, подключенных к зарплатному проекту","operationId":"getEmployeeList","produces":["application/json;charset=UTF-8"],"parameters":[{"name":"Authorization","in":"header","description":"Последний токен авторизации (Access Token). Формат передачи будет иметь вид Bearer + {пробел} + {accessToken}","required":true,"type":"string"},{"name":"currCode","in":"query","description":"Код валюты счета сотрудника (цифр.)","required":false,"type":"integer","format":"int32"},{"name":"dateFrom","in":"query","description":"Начальная дата периода (по умолчанию - (текущий день - месяц))","required":false,"type":"string","format":"date"},{"name":"dateTo","in":"query","description":"Конечная дата периода (по умолчанию - текущий день)","required":false,"type":"string","format":"date"},{"name":"pageRowCount","in":"query","description":"Число строк на странице (по умолчанию - 50, все документы - 0)","required":false,"type":"integer","minimum":0,"format":"int32"},{"name":"pageNo","in":"query","description":"Номер страницы (по умолчанию - 1, все документы - 0)","required":false,"type":"integer","minimum":0,"format":"int32"}],"responses":{"200":{"description":"Успешное выполнение запроса","schema":{"$ref":"#/definitions/EmployeeListResponse"}},"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/partner/employees?currCode=<currCode>&dateFrom=<dateFrom>&dateTo=<dateTo>&pageRowCount=<pageRowCount>&pageNo=<pageNo>' \\\r\n--header 'Content-Type: application/json' \\\r\n--header 'Authorization: Bearer <accessToken>' \\\r\n--data-raw ''"},{"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/partner/employees?currCode=<currCode>&dateFrom=<dateFrom>&dateTo=<dateTo>&pageRowCount=<pageRowCount>&pageNo=<pageNo>\")\r\n  .method(\"GET\", null)\r\n  .addHeader(\"Content-Type\", \"application/json\")\r\n  .addHeader(\"Authorization\", \"Bearer <accessToken>\")\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/partner/employees?currCode=<currCode>&dateFrom=<dateFrom>&dateTo=<dateTo>&pageRowCount=<pageRowCount>&pageNo=<pageNo>',\r\n  'headers': {\r\n    'Content-Type': 'application/json',\r\n    'Authorization': 'Bearer <accessToken>'\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#if canImport(FoundationNetworking)\r\nimport FoundationNetworking\r\n#endif\r\n\r\nvar semaphore = DispatchSemaphore (value: 0)\r\n\r\nvar request = URLRequest(url: URL(string: \"https://developerhub.alfabank.by:8273/partner/employees?currCode=<currCode>&dateFrom=<dateFrom>&dateTo=<dateTo>&pageRowCount=<pageRowCount>&pageNo=<pageNo>\")!,timeoutInterval: Double.infinity)\r\nrequest.addValue(\"application/json\", forHTTPHeaderField: \"Content-Type\")\r\nrequest.addValue(\"Bearer <accessToken>\", forHTTPHeaderField: \"Authorization\")\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":"read_employees","x-auth-type":"Application & Application User","x-throttling-tier":"Unlimited","security":[{"default":["read_employees"]}]},"post":{"tags":["salary"],"summary":"Подключение сотрудника к зарплатному проекту","description":"Осуществляет подключение сотрудника к зарплатному проекту","operationId":"createEmployee","produces":["application/json;charset=UTF-8"],"parameters":[{"name":"Authorization","in":"header","description":"Последний токен авторизации (Access Token). Формат передачи будет иметь вид Bearer + {пробел} + {accessToken}","required":true,"type":"string"},{"in":"body","name":"createEmployeeRequest","description":"Входная модель CreateEmployeeRequest, содержащая номер счета сотрудника","required":true,"schema":{"$ref":"#/definitions/CreateEmployeeRequest"}}],"responses":{"200":{"description":"Успешное выполнение запроса","schema":{"$ref":"#/definitions/ResponseEntity"}},"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/partner/employees?account=<account>' \\\r\n--header 'Content-Type: application/json' \\\r\n--header 'Authorization: Bearer <accessToken>' \\\r\n--data-raw ''"},{"lang":"java","sample":"OkHttpClient client = new OkHttpClient().newBuilder()\r\n  .build();\r\nMediaType mediaType = MediaType.parse(\"application/json\");\r\nRequestBody body = RequestBody.create(mediaType, \"\\r\\n\");\r\nRequest request = new Request.Builder()\r\n  .url(\"https://developerhub.alfabank.by:8273/partner/employees?account=<account>\")\r\n  .method(\"POST\", body)\r\n  .addHeader(\"Content-Type\", \"application/json\")\r\n  .addHeader(\"Authorization\", \"Bearer <accessToken>\")\r\n  .build();\r\nResponse response = client.newCall(request).execute();"},{"lang":"node","sample":"var request = require('request');\r\nvar options = {\r\n  'method': 'POST',\r\n  'url': 'https://developerhub.alfabank.by:8273/partner/employees?account=<account>',\r\n  'headers': {\r\n    'Content-Type': 'application/json',\r\n    'Authorization': 'Bearer <accessToken>'\r\n  },\r\n  body: '\\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#if canImport(FoundationNetworking)\r\nimport FoundationNetworking\r\n#endif\r\n\r\nvar semaphore = DispatchSemaphore (value: 0)\r\n\r\nlet parameters = \"\\r\\n\"\r\nlet postData = parameters.data(using: .utf8)\r\n\r\nvar request = URLRequest(url: URL(string: \"https://developerhub.alfabank.by:8273/partner/employees?account=<account>\")!,timeoutInterval: Double.infinity)\r\nrequest.addValue(\"application/json\", forHTTPHeaderField: \"Content-Type\")\r\nrequest.addValue(\"Bearer <accessToken>\", forHTTPHeaderField: \"Authorization\")\r\n\r\nrequest.httpMethod = \"POST\"\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":"create_employees","x-auth-type":"Application & Application User","x-throttling-tier":"Unlimited","security":[{"default":["create_employees"]}]},"delete":{"tags":["salary"],"summary":"Отключение сотрудника от зарплатного проекта","description":"Осуществляет отключение сотрудника от зарплатному проекту","operationId":"deleteEmployee","produces":["application/json;charset=UTF-8"],"parameters":[{"name":"Authorization","in":"header","description":"Последний токен авторизации (Access Token). Формат передачи будет иметь вид Bearer + {пробел} + {accessToken}","required":true,"type":"string"},{"name":"account","in":"query","description":"Номер счета сотрудника","required":true,"type":"string"}],"responses":{"200":{"description":"Успешное выполнение запроса","schema":{"$ref":"#/definitions/ResponseEntity"}},"400":{"description":"Некорректный запрос","schema":{"$ref":"#/definitions/ShortErrorModel"}},"401":{"description":"Запрос не авторизирован","schema":{"$ref":"#/definitions/ShortErrorModel"}},"500":{"description":"Ошибка выполнения запроса","schema":{"$ref":"#/definitions/ShortErrorModel"}}},"x-st-position":3,"x-st-code-samples":[{"lang":"cUrl","sample":"curl --location --request DELETE 'https://developerhub.alfabank.by:8273/partner/employees?account=<account>' \\\r\n--header 'Content-Type: application/json' \\\r\n--header 'Authorization: Bearer <accessToken>' \\\r\n--data-raw '\r\n'"},{"lang":"java","sample":"OkHttpClient client = new OkHttpClient().newBuilder()\r\n  .build();\r\nMediaType mediaType = MediaType.parse(\"application/json\");\r\nRequestBody body = RequestBody.create(mediaType, \"\\r\\n\");\r\nRequest request = new Request.Builder()\r\n  .url(\"https://developerhub.alfabank.by:8273/partner/employees?account=<account>\")\r\n  .method(\"DELETE\", body)\r\n  .addHeader(\"Content-Type\", \"application/json\")\r\n  .addHeader(\"Authorization\", \"Bearer <accessToken>\")\r\n  .build();\r\nResponse response = client.newCall(request).execute();"},{"lang":"node","sample":"var request = require('request');\r\nvar options = {\r\n  'method': 'DELETE',\r\n  'url': 'https://developerhub.alfabank.by:8273/partner/employees?account=<account>',\r\n  'headers': {\r\n    'Content-Type': 'application/json',\r\n    'Authorization': 'Bearer <accessToken>'\r\n  },\r\n  body: '\\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#if canImport(FoundationNetworking)\r\nimport FoundationNetworking\r\n#endif\r\n\r\nvar semaphore = DispatchSemaphore (value: 0)\r\n\r\nlet parameters = \"\\r\\n\"\r\nlet postData = parameters.data(using: .utf8)\r\n\r\nvar request = URLRequest(url: URL(string: \"https://developerhub.alfabank.by:8273/partner/employees?account=<account>\")!,timeoutInterval: Double.infinity)\r\nrequest.addValue(\"application/json\", forHTTPHeaderField: \"Content-Type\")\r\nrequest.addValue(\"Bearer <accessToken>\", forHTTPHeaderField: \"Authorization\")\r\n\r\nrequest.httpMethod = \"DELETE\"\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":"create_employees","x-auth-type":"Application & Application User","x-throttling-tier":"Unlimited","security":[{"default":["create_employees"]}]}},"/personInfo":{"get":{"tags":["salary"],"summary":"Получение информации о сотруднике","description":"Осуществляет поиск детальной информации о сотруднике","operationId":"getPersonInfo","produces":["application/json;charset=UTF-8"],"parameters":[{"name":"Authorization","in":"header","description":"Последний токен авторизации (Access Token). Формат передачи будет иметь вид Bearer + {пробел} + {accessToken}","required":true,"type":"string"},{"name":"account","in":"query","description":"Номер счета","required":true,"type":"string"}],"responses":{"200":{"description":"Успешное выполнение запроса","schema":{"$ref":"#/definitions/PersonInfoResponse"}},"400":{"description":"Некорректный запрос","schema":{"$ref":"#/definitions/ShortErrorModel"}},"401":{"description":"Запрос не авторизирован","schema":{"$ref":"#/definitions/ShortErrorModel"}},"500":{"description":"Ошибка выполнения запроса","schema":{"$ref":"#/definitions/ShortErrorModel"}}},"x-st-position":4,"x-st-code-samples":[{"lang":"cUrl","sample":"curl --location --request GET 'https://developerhub.alfabank.by:8273/partner/personInfo?account=<account>' \\\r\n--header 'Content-Type: application/json' \\\r\n--header 'Authorization: Bearer <accessToken>' \\\r\n--data-raw ''"},{"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/partner/personInfo?account=<account>\")\r\n  .method(\"GET\", null)\r\n  .addHeader(\"Content-Type\", \"application/json\")\r\n  .addHeader(\"Authorization\", \"Bearer <accessToken>\")\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/partner/personInfo?account=<account>',\r\n  'headers': {\r\n    'Content-Type': 'application/json',\r\n    'Authorization': 'Bearer <accessToken>'\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#if canImport(FoundationNetworking)\r\nimport FoundationNetworking\r\n#endif\r\n\r\nvar semaphore = DispatchSemaphore (value: 0)\r\n\r\nvar request = URLRequest(url: URL(string: \"https://developerhub.alfabank.by:8273/partner/personInfo?account=<account>\")!,timeoutInterval: Double.infinity)\r\nrequest.addValue(\"application/json\", forHTTPHeaderField: \"Content-Type\")\r\nrequest.addValue(\"Bearer <accessToken>\", forHTTPHeaderField: \"Authorization\")\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":"read_employees","x-auth-type":"Application & Application User","x-throttling-tier":"Unlimited","security":[{"default":["read_employees"]}]}}},"definitions":{"CreateEmployeeRequest":{"type":"object","properties":{"account":{"type":"string","description":"Номер счета сотрудника"}},"description":"Входная модель CreateEmployeeRequest, содержащая номер счета сотрудника"},"Employee":{"type":"object","properties":{"name":{"type":"string","description":"ФИО сотрудника"},"account":{"type":"string","description":"Номер счета сотрудника"},"currCode":{"type":"integer","format":"int32","description":"Код валюты (цифр.)"},"currIso":{"type":"string","description":"Код валюты (симв.)"},"date":{"type":"string","format":"date","description":"Дата подключения счета к зарплатному проекту"}},"description":"Сотрудник"},"EmployeeListResponse":{"type":"object","properties":{"employees":{"type":"array","description":"Список сотрудников","items":{"$ref":"#/definitions/Employee"}}},"description":"Выходная модель, содержащая список сотрудников, подключенных к зарплатному проекту"},"PersonInfoResponse":{"type":"object","properties":{"name":{"type":"string","description":"Код валюты (симв.)"}},"description":"Информация о сотруднике"},"ResponseEntity":{"type":"object","properties":{"headers":{"type":"object","additionalProperties":{"type":"array","items":{"type":"string"}}},"body":{"type":"object"},"statusCode":{"type":"string","enum":["CONTINUE","SWITCHING_PROTOCOLS","PROCESSING","CHECKPOINT","OK","CREATED","ACCEPTED","NON_AUTHORITATIVE_INFORMATION","NO_CONTENT","RESET_CONTENT","PARTIAL_CONTENT","MULTI_STATUS","ALREADY_REPORTED","IM_USED","MULTIPLE_CHOICES","MOVED_PERMANENTLY","FOUND","MOVED_TEMPORARILY","SEE_OTHER","NOT_MODIFIED","USE_PROXY","TEMPORARY_REDIRECT","PERMANENT_REDIRECT","BAD_REQUEST","UNAUTHORIZED","PAYMENT_REQUIRED","FORBIDDEN","NOT_FOUND","METHOD_NOT_ALLOWED","NOT_ACCEPTABLE","PROXY_AUTHENTICATION_REQUIRED","REQUEST_TIMEOUT","CONFLICT","GONE","LENGTH_REQUIRED","PRECONDITION_FAILED","PAYLOAD_TOO_LARGE","REQUEST_ENTITY_TOO_LARGE","URI_TOO_LONG","REQUEST_URI_TOO_LONG","UNSUPPORTED_MEDIA_TYPE","REQUESTED_RANGE_NOT_SATISFIABLE","EXPECTATION_FAILED","I_AM_A_TEAPOT","INSUFFICIENT_SPACE_ON_RESOURCE","METHOD_FAILURE","DESTINATION_LOCKED","UNPROCESSABLE_ENTITY","LOCKED","FAILED_DEPENDENCY","UPGRADE_REQUIRED","PRECONDITION_REQUIRED","TOO_MANY_REQUESTS","REQUEST_HEADER_FIELDS_TOO_LARGE","UNAVAILABLE_FOR_LEGAL_REASONS","INTERNAL_SERVER_ERROR","NOT_IMPLEMENTED","BAD_GATEWAY","SERVICE_UNAVAILABLE","GATEWAY_TIMEOUT","HTTP_VERSION_NOT_SUPPORTED","VARIANT_ALSO_NEGOTIATES","INSUFFICIENT_STORAGE","LOOP_DETECTED","BANDWIDTH_LIMIT_EXCEEDED","NOT_EXTENDED","NETWORK_AUTHENTICATION_REQUIRED"]},"statusCodeValue":{"type":"integer","format":"int32"}}},"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":"read_employees","roles":"partner_production_info,partner_production_personal"},{"name":"Подключение сотрудников к зарплатному проекту","description":"","key":"create_employees","roles":"partner_production_create,partner_production_personal"}]}},"x-version-info":null,"host":"ibapi4.alfabank.by:8273","basePath":"/partner/1.0.3/salary","schemes":["https","http"],"securityDefinitions":{"default":{"type":"oauth2","authorizationUrl":"https://ibapi4.alfabank.by:8273/authorize","flow":"implicit","scopes":{"read_employees":"Получение информации по сотрудникам","create_employees":"Подключение сотрудников к зарплатному проекту"}}}}