Створення/редагування групи користувачів узгодження

Для роботи з цим методом користувач повинен бути авторизованим .

Важливо

Вибір дії (створення або редагування). В разі якщо в тілі запиту (json) присутній groupId, то група з зазначеним Id підлягає редагуванню. Відсутність параметра groupId веде до створення нової групи.

Увага

Додавання / видалення користувачів виконується шляхом перезатирання - залишаються тільки ті користувачі (передаються списком), userId котрих були передані в останньому запиті!

Метод запиту

HTTP POST

Content-Type

application/json (тіло запиту/відповіді в json форматі в тілі HTTP запиту)

URL запиту

https://doc.edi-n.com/bdoc/agreement_group

Параметри, що передаються в URL (разом з адресою методу)

В рядку заголовка (Header) «Set-Cookie» обов’язково передається SID - токен, отриманий при авторизації

JSON-параметри в тілі HTTP запиту/відповіді

REQUEST

Таблиця 1 - Опис json-параметрів запиту метода API для створення групи:

Параметр

Mandatory/Optional

Формат

Опис

companyId

M

long

id компанії

groupName

M

String

назва групи узгодження

comment

O

String

коментар

Таблиця 2 - Опис json-параметрів запиту методу API для додавання користувачів в групу:

Параметр

Mandatory/Optional

Формат

Опис

groupId

M

long

id групи узгодження

users

M

ArrayList<User>

масив об’єктів; дані користувачів

Об’єкт User

Mandatory/Optional

Формат

Опис

userId

M

long

id користувача

RESPONSE

Опис json-параметрів відповіді метода API (об’єкт AgreementGroup)

Таблиця 3 - Опис параметрів об’єкта AgreementGroup

Параметр

Формат

Опис

Об’єкт AgreementGroup

users

ArrayList<User>

масив об’єктів; дані користувачів

groupID

long

ID групи узгодження

companyID

long

ID компанії

company

Company

об’єкт; дані компанії

groupName

String

назва групи узгодження

comment

String

коментар

Таблиця 4 - Опис параметрів об’єкта Company

Параметр

Формат

Опис

Об’єкт Company

companyId

long

ID компанії

accountId

long

ID аккаунта

type

int

тип компанії (1 - юр. особа; 2 - фіз. особа)

name

String

назва компанії

legalName

String

юридична назва

inn

String

ідентифікаційний номер платника податків

code

String

свідоцтво платника ПДВ

phone

String

телефон

info

String

додаткова інформація

isApproved

int

ознака створення компанії з ЕЦП; можливі значення: 0 - створена звичайним способом; 1 - створена з ЕЦП

isSignedOffer

int

ознака підписана чи оферта; значення за замовчуванням = 0; коментар: 0 - Ні; 1 - Так

isActive

int

статус компанії: активна / деактивовано; значення за замовчуванням = 1; коментар: 0 - Ні; 1 - Так

ownershipType

String

форма власності

atCode

String

код КОАТУУ (Класифікатор об’єктів адміністративно-територіального устрою України)

certNum

String

свідоцтво платника ПДВ

uuID

String

унікальний ідентифікатор компанії

bankAcc

BankAcc_

об’єкт; банківські реквізити

legalAddress

Address_

об’єкт; юридична адреса

actualAddress

Address_

об’єкт; фактична адреса

fizName

CompanyFizName_

об’єкт; ПІБ фіз. особи компанії

certificates

List<Certificate_>

масив об’єктів; сертифікати

dictionaries

List<Dictionary_>

масив об’єктів; довідники

notifySettings

List<EmailNotifySettings_>

масив об’єктів; налаштування відправки повідомлень на пошту

Таблиця 5 - Опис параметрів об’єкта User

Параметр

Формат

Опис

Об’єкт User

userId

long

ID користувача

accountId

long

ID аккаунта

email

String

email та логін користувача

password

String

пароль користувача

isOwner

int

ознака власника аккаунта; 0 - ні, 1 - так

isCaptcha

Integer

ознака активації CAPTCHA для користувача («1» - активна; «0» - не активна)

fio

String

ПІБ користувача

tel

String

телефон

companies

List<Company>

масив об’єктів; компанії

account

Account_

об’єкт; дані облікового запису

status

int

статус користувача («1» - активний; «2» - заблокований)

roles

List<Role_>

масив об’єктів; ролі

routes

List<PackageRoute_>

масив об’єктів; маршрути

passSecureType

int

рівень складності пароля («1» - низький; «2» - звичайний; «3» - високий)

passPolicyId

long

id пральний політики, застосованої до користувача

userInfo

UserInfo_

об’єкт; інформація про користувача

lastLoginIp

String

IP-адреса останнього входу

lastLoginDate

long

дата останнього входу

uiTypes

List<UIType2Role_>

масив об’єктів; зв’язки користувальницьких інтерфейсів і ролей


Приклади

Приклад тіла запиту в json форматі для створення групи:

{
  "groupName": "Юридический отдел",
  "companyId": 989,
  "comment": null
}

Приклад тіла запиту в json форматі для додавання користувачів в групу:

{
  "users": [
    {
      "userId": 683,
      "accountId": 0,
      "email": "[email protected]",
      "isOwner": 0,
      "fio": "Гаврилюк Татьяна",
      "companies": [],
      "status": 0,
      "roles": [],
      "routes": [],
      "passSecureType": 0,
      "passPolicyId": 0,
      "lastLoginDate": 0,
      "uiTypes": [],
      "userAccess": {}
    },
    {
      "userId": 693,
      "accountId": 0,
      "email": "[email protected]",
      "isOwner": 0,
      "fio": "Петров Иван ",
      "companies": [],
      "status": 0,
      "roles": [],
      "routes": [],
      "passSecureType": 0,
      "passPolicyId": 0,
      "lastLoginDate": 0,
      "uiTypes": [],
      "userAccess": {}
    }
  ],
  "groupId": 187,
  "companyId": 989,
  "company": {
    "companyId": 1313,
    "accountId": 0,
    "type": 0,
    "name": "ФОП Гаврилюк Татьяна",
    "code": "3189823647",
    "isApproved": 0,
    "isSignedOffer": 0,
    "isActive": 0,
    "certificates": [],
    "dictionaries": [],
    "notifySettings": []
  },
  "groupName": "Юридический отдел",
  "comment": ""
}

Приклад тіла відповіді в json форматі для створення групи:

{
  "users": [],
  "groupId": 187,
  "companyId": 989,
  "company": {
    "companyId": 989,
    "accountId": 0,
    "type": 0,
    "name": "dwdsss",
    "code": "433",
    "isApproved": 0,
    "isSignedOffer": 0,
    "isActive": 0,
    "ownershipTypeId": 0,
    "certificates": [],
    "dictionaries": [],
    "notifySettings": []
  },
  "groupName": "Юридический отдел"
}

Приклад тіла відповіді в json форматі для додавання користувачів в групу:

{
  "users": [
    {
      "userId": 683,
      "accountId": 423,
      "email": "[email protected]",
      "isOwner": 1,
      "isCaptcha": 1,
      "fio": "Гаврилюк Татьяна",
      "companies": [],
      "status": 1,
      "roles": [],
      "routes": [],
      "passSecureType": 2,
      "passPolicyId": 497,
      "lastLoginIp": "127.0.0.1",
      "lastLoginDate": 1576159661,
      "uiTypes": [],
      "userAccess": {}
    },
    {
      "userId": 693,
      "accountId": 423,
      "email": "[email protected]",
      "isOwner": 0,
      "isCaptcha": 1,
      "fio": "Петров Иван ",
      "companies": [],
      "status": 1,
      "roles": [],
      "routes": [],
      "passSecureType": 2,
      "passPolicyId": 497,
      "lastLoginIp": "172.16.6.142",
      "lastLoginDate": 1576154372,
      "uiTypes": [],
      "userAccess": {}
    }
  ],
  "groupId": 187,
  "companyId": 1313,
  "company": {
    "companyId": 1313,
    "accountId": 0,
    "type": 0,
    "name": "ФОП Гаврилюк Татьяна",
    "code": "3189823647",
    "isApproved": 0,
    "isSignedOffer": 0,
    "isActive": 0,
    "certificates": [],
    "dictionaries": [],
    "notifySettings": []
  },
  "groupName": "Юридический отдел"
}