Створення / оновлення структурованого документа з XML

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

Важливо

Якщо поле documentId - не вказувати - буде створено новий документ, якщо вказати - відредагується вказаний; інші поля в documentStore (окрім вказаних) можна не передавати - вони враховуватися не будуть.

Метод запиту

HTTP POST

Content-Type

multipart/form-data (тіло запиту в form-data в тілі HTTP запиту)

URL запиту

https://doc.edi-n.com/bdoc/store/package/document/xml

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

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

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

REQUEST

В тілі запиту в form-data передається файл xml та параметри JSON объекта documentStore в полі document_store.

Таблиця 1 - Опис json-параметрів запиту метода API (дані комплекту - об’єкт DocumentStore )

Параметр

Mandatory/Optional

Формат

Опис

package_id

M

long

ID пакета

document_id

M

long

ID документа

senderCompanyId

M

long

ID організації відправника

documentType

M

Document_

об’єкт; опис типу документу

number

M

String

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

date

M

long

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

RESPONSE

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

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

Параметр

Формат

Опис

Об’єкт DocumentStore

documentId

long

id документа

packageId

long

id комплекта

senderCompanyId

long

id організації відправника

senderCompany

Company_

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

documentType

Document_

об’єкт; опис типу документу

documentTypeId

Long

id типу документу

number

String

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

date

long

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

dateSent

long

дата відправки

clientSignsCount

int

кількість підписів клієнта

ownerSignsCount

int

кількість підписів власника

status

int

статус документа; 2 - відправлений; 3 - прийнятий; 4 - відхилений

comment

String

коментар

versionStructure

long

версія структури структурованого документу

extraFields

List<ExtraField_>

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

bodies

List<DocumentBody_>

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

structure

List<DocStructValue_>

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

agreementLogs

List<AgreementLogs_>

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

isReadFromApi

int

ознака прочитання по API

documentUuid

UUID

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

agreementProcId

long

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

agreementStatus

int

статус узгодження

dictionaryValue

DictionaryValue_

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


Приклади

В тілі запиту в form-data передається файл з данними документу та json об’єкта documentStore.

Приклад тіла запиту в json форматі

  {
"documentId": 10253,
"packageId": 8269,
"senderCompanyId": 4,
"documentType": {
 "documentId": 3381
},
"number": "1583158378",
"date": 1583158378
  }

Приклад тіла відповіді (json):

{
  "documentId": 1662,
  "packageId": 1982,
  "senderCompanyId": 2,
  "documentType": {
    "documentId": 10253,
    "companyId": 2,
    "name": "Для тест ",
    "type": 2,
    "code": "sdoc1",
    "isActive": 1,
    "structures": [
      {
        "id": 10253,
        "structure": [
          {}
        ],
        "version": 1,
        "status": 1,
        "dateUpdate": 1540280767
      }
    ]
  },
  "number": "99999",
  "date": 1526947200,
  "dateSent": 0,
  "clientSignsCount": 0,
  "ownerSignsCount": 0,
  "status": 1,
  "comment": "aaaa",
  "versionStructure": 1,
  "bodies": [
    {
      "bodyId": 10253,
      "documentId": 10253,
      "fileName": "99999_1526947200_1662.xml",
      "signBodies": []
    }
  ],
  "structure": [
    {
      "id": "Тег1",
      "value": "1222",
      "index": 0,
      "structure": []
    }
  ],
  "isReadFromApi": 0
}