Створення/редагування кроку узгодження

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

Важливо

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

Метод запиту

HTTP POST

Content-Type

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

URL запиту

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

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

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

Обов’язкові параметри, що передаються в тілі запиту (json)

agreementStepId (для редагування контракту), agreementExecType, agreementTaskType, agreementStepId, agreementProcId, agreementGroups

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

REQUEST

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

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

Параметр

Формат

Опис

Об’єкт AgreementStep

agreementGroups

List<AgreementGroup>

масив об’єктів; групи узгодження

agreementStepId

long

ID налаштувань кроків узгодження

agreementProcId

long

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

agreementTaskType

int

тип завдання; «1 - узгодження; 2 - підписання; 3 - повідомлення»

agreementExecType

int

тип виконання; «1 — до виконання всіма користувачами групи; 2 - одним користувачем з групи»

agreementExecPeriod

int

строк виконання в днях

agreementStepPriority

int

пріоритет; чим більше число тим вищий пріоритет

groupNames

String

найменування груп виконавців узгодження

userIds

List<Long_>

масив; ID користувачів

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

Параметр

Формат

Опис

Об’єкт AgreementGroup

users

ArrayList<User_>

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

groupID

long

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

companyID

long

ID компанії

company

Company

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

groupName

String

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

comment

String

коментар

RESPONSE

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

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

Параметр

Формат

Опис

Об’єкт AgreementProc

agreementProcId

long

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

company

Company

об’єкт; інформація про компанію

companyId

long

ID компанії

name

String

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

comment

String

коментар

status

int

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

agreementProc2Docs

List<AgreementProc2Doc>

масив об’єктів; документи, додані до узгодження (+ довідники, якщо ці документи до них прив’язані)

agrementSteps

List<AgreementStep_>

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

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

Параметр

Формат

Опис

Об’єкт AgreementStep

agreementGroups

List<AgreementGroup>

масив об’єктів; групи узгодження

agreementStepId

long

ID налаштувань кроків узгодження

agreementProcId

long

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

agreementTaskType

int

тип завдання; «1 - узгодження; 2 - підписання; 3 - повідомлення»

agreementExecType

int

тип виконання; «1 — до виконання всіма користувачами групи; 2 - одним користувачем з групи»

agreementExecPeriod

int

строк виконання в днях

agreementStepPriority

int

пріоритет; чим більше число тим вищий пріоритет

groupNames

String

найменування груп виконавців узгодження

userIds

List<Long_>

масив; ID користувачів

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

Параметр

Формат

Опис

Об’єкт AgreementProc2Doc

document

Document

об’єкт; дані документа

dictionaryValue

DictionaryValue

об’єкт; значення довідника

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

Параметр

Формат

Опис

Об’єкт Document

documentId

long

id документа

companyId

long

id компанії

company

Company

об’єкт; інформація про компанію

name

String

назва документа

type

int

тип; «1 - Файл; 2 - Структура; 3 - Динамічна структура; 4 - Таблиця»

code

String

код документа

agreementProcId

long

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

isActive

int

статус; «1 - Активний; 0 - Заблокований»

extraFields

List<ExtraField_>

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

dictionary

Dictionary_

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

structures

List<DocumentStructure_>

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

Таблиця 7 - Опис параметрів об’єкта 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_>

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


Приклади

Приклад тіла запиту (json) для Створення кроку узгождення:

{
      "agreementProcId": 119,
      "stepNumber": 0,
      "agreementTaskType": "1",
      "agreementExecType": "1",
      "agreementExecPeriod": null,
      "agreementStepPriority": null,
      "agreementGroups": [
        {
          "groupId": 136,
          "groupName": "Группа - 2 "
        }
      ]
    }

Приклад тіла запиту (json) для Редагування кроку узгождення:

{
  "agreementProcId": 119,
  "stepNumber": 0,
  "agreementStepId": 477,
  "agreementTaskType": "1",
  "agreementExecType": "1",
  "agreementExecPeriod": null,
  "agreementStepPriority": null,
  "agreementGroups": [
    {
      "groupId": 136,
      "groupName": "Группа - 2 "
    }
  ]
}

Приклад тіла відповіді (json) - однаковий для Створення/Редагування:

{
      "agrementSteps": [
        {
          "agreementGroups": [
            {
              "users": [],
              "groupId": 136,
              "companyId": 4,
              "groupName": "Группа - 2 "
            }
          ],
          "agreementStepId": 477,
          "agreementProcId": 119,
          "agreementTaskType": 1,
          "agreementExecType": 1,
          "agreementExecPeriod": 0,
          "agreementStepPriority": 0
        },
        {
          "agreementGroups": [
            {
              "users": [],
              "groupId": 136,
              "companyId": 4,
              "groupName": "Группа - 2 "
            }
          ],
          "agreementStepId": 479,
          "agreementProcId": 119,
          "agreementTaskType": 1,
          "agreementExecType": 1,
          "agreementExecPeriod": 0,
          "agreementStepPriority": 0
        },
        {
          "agreementGroups": [
            {
              "users": [],
              "groupId": 136,
              "companyId": 4,
              "groupName": "Группа - 2 "
            }
          ],
          "agreementStepId": 481,
          "agreementProcId": 119,
          "agreementTaskType": 1,
          "agreementExecType": 1,
          "agreementExecPeriod": 0,
          "agreementStepPriority": 0
        }
      ],
      "agreementProc2Docs": [
        {
          "document": {
            "documentId": 2289,
            "companyId": 4,
            "company": {
              "companyId": 0,
              "accountId": 0,
              "type": 0,
              "name": "Царь Царей",
              "code": "34554355",
              "isApproved": 0,
              "isSignedOffer": 0,
              "isActive": 0,
              "ownershipTypeId": 0,
              "certificates": [],
              "dictionaries": [],
              "notifySettings": []
            },
            "name": "Старые закончились",
            "type": 1,
            "code": "432432",
            "agreementProcId": 0,
            "isActive": 1,
            "extraFields": []
          }
        }
      ],
      "agreementProcId": 119,
      "companyId": 4,
      "company": {
        "companyId": 4,
        "accountId": 0,
        "type": 0,
        "name": "Царь Царей",
        "code": "34554355",
        "isApproved": 0,
        "isSignedOffer": 0,
        "isActive": 0,
        "ownershipTypeId": 0,
        "certificates": [],
        "dictionaries": [],
        "notifySettings": []
      },
      "name": "Бухгалтер",
      "status": 1
    }