Отримання конкретного ланцюжка документів

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

Підказка

Документи пов’язуються в один ланцюжок, в тому випадку якщо у них ідентичні значення полів «Відправник», «Одержувач», «Покупець», «Точка доставки» (GLN-и) і «Номер замовлення» (якщо відсутній, то «Номер документа»).

../../_images/EdsChain_01.png

За допомогою методу api/eds/chain і заданих параметрів можливо отримати (вивантажити) необхідні дані конкретного ланцюжка документів.

Метод запиту

HTTP GET

Content-Type

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

URL запиту

https://edo-v2.edi-n.com/api/eds/chain?gln=9864065702429&chain_uuid=9fe45d32-35c7-44d0-9131-7257fc0c0f39&load_docs=true&load_bodies=true&load_package=true&load_comments=true&load_tags=true&load_statuses=true

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

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

Обов’язкові url-параметри:

gln - рядок (13); номер GLN організації, яка пов’язана з авторизованим користувачем платформи EDIN 2.0 на рівні акаунта

chain_uuid - рядок; ID ланцюжка

Опціональні url-параметри (boolean фільтри):

load_docs - чи завантажувати документи, що відносяться до ланцюжка

load_bodies - чи завантажувати тіла документів

load_package - чи завантажувати пакети

load_comments - чи завантажувати коментарі

load_tags - чи завантажувати теги до документів

load_statuses - чи завантажувати статуси до документів

Підказка

Також можливо виконати запит у вигляді curl-рядка:

curl -X GET „https://edo-v2.edi-n.com/api/eds/chain?gln=9864065702429&chain_uuid=9fe45d32-35c7-44d0-9131-7257fc0c0f39&load_docs=true&load_bodies=true&load_package=true&load_comments=true&load_tags=true&load_statuses=true“ -b „SID=458a0d38-5b56-4b8e-8998-009a1edd31eb“

Специфікація для розшифровки ключів curl запиту: https://curl.haxx.se/docs/manpage.html


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


REQUEST


У цьому методі json-тіло запиту відсутнє (інші дані передавати не потрібно).


RESPONSE


Таблиця 4 - Опис json-параметрів, які можуть передаватися у відповідь на метод API

Параметр

Формат

Опис

Об’єкт XChain

id

long

ID шарда

uuid

UUID

UUID ланцюжка документів

packageID

long

ID пакета

type

XDocType

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

docsCount

int

кількість документів в ланцюжку

lastInDocID

long

id останнього вхідного документа в ланцюжку

lastOutDocID

long

id останнього вихідного документа в ланцюжку

partnerId

long

id роздрібної мережі

important

boolean

відмітка важливий документ

status

XChainStatus_

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

visualStatus

int

номер іконки

archive

boolean

відмітка; Архівний документ чи ні

childs

List<XDoc>

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

chainsInPackage

List<XChain>

масив об’єктів; дані пов’язаних ланцюжків

hash

String

хеш-значення, отримане в результаті обробки

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

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

Параметр

Формат

Опис

Об’єкт XDocStatus

детальніше

state

int

id статусу

title

String

статус

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

Параметр

Формат

Опис

Об’єкт XDoc

body

XDocBodyForms

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

attachments

List<XDocAttachment>

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

comments

XDocCommentsList

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

doc_id

long

id документа

doc_uuid

UUID

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

uuidSender

String

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

uuidReceiver

String

унікальний ідентифікатор одержувача

docNumber

String

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

dateCreated

long

дата створення документа (unix timestamp)

dateChanged

long

дата останньої зміни документа (unix timestamp)

dateRead

long

дата прочитання документа (unix timestamp)

docDate

long

дата документа, зазначена в документі

chain_id

long

id ланцюжка документів

chain_uuid

UUID

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

family

int

сімейство (EDI / UZD)

hash

String

хеш-значення, отримане в результаті обробки

type

XDocType

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

status

XDocStatus

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

exchange_status

String

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

is_archive

boolean

відмітка; Архівний документ чи ні

signInfo

XDocSignInfo

об’єкт; дані про підписи

chain

XChain

объект; дані пов’язаних ланцюжків

extraFields

Map<String, String>

масив об’єктів; набір індексів (аналог індексних таблиць)

tags

List<XTag>

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

statuses

List<XStatus>

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

multiExtraFields

Map<String, List<String>>

масив об’єктів; мультиіндекс. Приклад: {„key1“: [„val1“, „val2“], „key2“: [„val1“, „val2“]}. Використовується, наприклад для обробки передаваємого рядка => розбивка рядка за умовою => індексування кожного шматка

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

Параметр

Формат

Опис

Об’єкт XTag

id

long

id тега

name

String

зміст тега

shortName

String

коротка назва тега

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

Параметр

Формат

Опис

Об’єкт XStatus

docId

long

id документа/квитанції

date

long

дата статусу; формат unix timestamp

type

int

тип статусу

text

String

зміст статусу

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

Параметр

Формат

Опис

Об’єкт XDocSignInfo

doc_id

long

id документа/квитанції

date

long

дата підписання; формат unix timestamp

count

short

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

info

String

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

hash

String

хеш-значення, отримане в результаті обробки

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

Параметр

Формат

Опис

Об’єкт XDocCommentsList

XDocCommentsList

List<XDocComment>

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

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

Параметр

Формат

Опис

Об’єкт XDocComment

id

long

id коментаря

docUUID

UUID

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

createTimestamp

long

дата створення коментаря у форматі timestamp

authorLogin

String

автор коментаря

comment

String

зміст коментаря

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

Параметр

Формат

Опис

Об’єкт XDocAttachment

id

long

id вкладення

docUUID

UUID

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

fileName

String

найменування файлу

createDate

long

дата створення вкладення; формат unix timestamp

type

String

тип вкладення

base64content

String

зміст вкладення в BASE64

content

byte[]

зміст вкладення в цілочисельному вигляді

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

Параметр

Формат

Опис

Об’єкт XDocBodyForms

forms

HashMap<String, XDocBody>

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

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

Параметр

Формат

Опис

Об’єкт XDocBody

type

XDocBodyType

об’єкт; тип тіла документа: CONTENT = 1 - зміст в байтах; JSON = 2 - зміст в json форматі; SIGN = 3 - зміст підпису; STAMP = 4; CRYPTED = 5 - зміст в зашифрованому вигляді; UZDRESPONSE = 6

base64content

String

зміст тіла документа в BASE64

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

Параметр

Формат

Опис

Об’єкт XDocBodyType

id

int

id типу тіла документа

name

String

назва типу тіла документа

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

Параметр

Тип

Формат

Опис

Об’єкт XDocType

опис_параметрів

type

int

id типу документа/квитанції

title

String

назва документа/квитанции

description

String

опис документа/квитанції (найменування кирилицею)

Таблиця 18 - Опис DocStatus параметрів (об’єкт XDocStatus)

id статусу

статус

0

ALL - будь-який статус

1

OPEN - чернетка (відправник)

2

SENT - відправлений (відправник)

3

DELIVERED - прочитаний (відправник)

4

INBOX - доставлений / вхідний (одержувач)

5

READ - прочитаний (одержувач)

6

ERROR - помилка

7

DELETED - видалений

Таблиця 19 - Опис DocType параметрів (об’єкт XDocType)

Тип

Назва

Опис (найменування кирилицею)

0

all

всі

1

invoice

Рахунок

2

orders

Замовлення

3

recadv

Повідомлення про прийом

4

desadv

Повідомлення про відвантаження

5

ordrsp

Підтвердження замовлення

6

pricat

Прайс-лист

7

comdis

Комерційна дискусія

9

act

Акт виконаних робіт

10

declar

Податкова накладна

11

insdes

Інструкція з доставки

12

desscc

Повідомлення про відвантаження для розподільного центру

13

slsrpt

Звіт про продажі

14

invrpt

Звіт про інвентаризацію

15

coacsu

Акт звірки взаєморозрахунків

16

actset

Акт взаємозаліку

17

iftmin

Інструкція про транспортування

18

retann

Повідомлення про повернення

19

iftmbf

Замовлення транспортування

20

partin

Інформація про контрагента для постачальника

21

mscons

Звіт про надані послуги

25

retins

Інструкція з повернення

28

comdoc

Комерційний документ

29

declarj12

Коригування до податкової накладної

30

condra

Не структурований документ

32

reestr

Реєстр

40

prodlist

Електронна специфікація

41

agreem

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

42

iftmbc

Підтвердження замовлення транспортування

59

documentinvoice

Товарна накладна

67

doccorinvoice

Коригування до товарної накладної

98

quotes

Додаток до Повідомлення про відвантаження

109

ettn

Електронна товарно-транспортна накладна (е-ТТН)

111

transhipment

Акт перевантаження товарів

117

acceptance

Акт приймання-передавання

113

booking

Замовлення транспортування

114

bookingconfirmation

Підтвердження транспортування

112

completion

Акт виконаних робіт

118

docinvoiceact

Акт наданих послуг (Метро)

119

discrepancy

Акт розбіжностей

120

contrl

Звіт про відвантаження


Приклади


При використанні методу json-тіло запиту відсутнє (дані передавати не потрібно)

Приклади url-запитів:

Отримати перелік документів за визначеним ланцюжком без завантаження їхніх тіл, пакетів, коментарів, тегів і статусів

Отримати перелік документів за визначеним ланцюжком з завантаженням тіл і коментарів без завантаження їхніх пакетів, тегів і статусів

Отримати перелік документів за визначеним ланцюжком з завантаженням пакетів, тегів без завантаження їхніх тіл і коментарів і статусів

Отримати перелік документів за визначеним ланцюжком з завантаженням статусів без завантаження їхніх тіл, коментарів, пакетів, тегів


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

{
    "id": 1,
    "uuid": "0fe60377-51db-4b7a-b7eb-cdf5fa91a46a",
    "packageID": 0,
    "type": {
        "type": 5,
        "title": "ordrsp",
        "description": "Подтверждение заказа"
    },
    "docsCount": 13,
    "lastInDocID": 1,
    "lastOutDocID": 29,
    "partnerId": 0,
    "important": false,
    "status": {
        "status": 2,
        "title": "sent"
    },
    "visualStatus": 0,
    "archive": false,
    "childs": [
        {
            "body": {
                "forms": {}
            },
            "attachments": [],
            "comments": [],
            "doc_id": 1,
            "doc_uuid": "bf8dacb1-7b61-4c9c-ab36-ac37620db051",
            "uuidSender": "9864232304319",
            "uuidReceiver": "9864232304302",
            "docNumber": "1001",
            "dateCreated": 1555487166,
            "dateChanged": 1555487166,
            "dateRead": 1555497325,
            "docDate": 1555448400,
            "chain_id": 1,
            "chain_uuid": "0fe60377-51db-4b7a-b7eb-cdf5fa91a46a",
            "family": 1,
            "hash": "A1FF5B519289B936A09E99514277F429",
            "type": {
                "type": 2,
                "title": "orders",
                "description": "Заказ"
            },
            "status": {
                "status": 5,
                "title": "read"
            },
            "exchange_status": "000000000000000000000000",
            "is_archive": false,
            "extraFields": {
                "sub_doc_type_id": "2",
                "buyer_uuid": "9864232304319",
                "doc_num": "1001",
                "order_number": "1001",
                "ftpex_file_date": "1555487160",
                "supplier_uuid": "9864232304302",
                "delivery_place_uuid": "9864232304562",
                "order_date": "1555448400",
                "delivery_date": "1556485200",
                "ftpex_file_name": "order_20190417104600_475593380.xml",
                "contract_number": "Дог 1",
                "sender": "9864232304319",
                "doc_date": "1555448400",
                "recipient": "9864232304302",
                "action": "0"
            },
            "tags": [],
            "statuses": [],
            "multiExtraFields": {}
        },

        ...

        {
            "body": {
                "forms": {}
            },
            "attachments": [],
            "comments": [],
            "doc_id": 29,
            "doc_uuid": "cb2f183f-ccbc-467b-9eb2-90b2c1ff8f5c",
            "uuidSender": "9864232304302",
            "uuidReceiver": "9864232304319",
            "docNumber": "АФ00-000001",
            "dateCreated": 1556115021,
            "dateChanged": 1556115022,
            "dateRead": 0,
            "docDate": 1556116482,
            "chain_id": 1,
            "chain_uuid": "0fe60377-51db-4b7a-b7eb-cdf5fa91a46a",
            "family": 1,
            "hash": "0F9CEEC0717992EB76A848F2E106D2D0",
            "type": {
                "type": 5,
                "title": "ordrsp",
                "description": "Подтверждение заказа"
            },
            "status": {
                "status": 2,
                "title": "sent"
            },
            "exchange_status": "000000000000000000000000",
            "is_archive": false,
            "extraFields": {
                "order_date": "1555448400",
                "delivery_date": "1556485200",
                "contract_number": "Дог 1",
                "sender": "9864232304319",
                "buyer_uuid": "9864232304319",
                "doc_num": "АФ00-000001",
                "order_number": "1001",
                "doc_date": "1556116482",
                "action": "4",
                "supplier_uuid": "9864232304302",
                "delivery_place_uuid": "9864232304562"
            },
            "tags": [],
            "statuses": [],
            "multiExtraFields": {}
        }
    ],
    "hash": "ABB416F3FF3B5027D212D62DD9F99E94"
}