Обработка ошибок
В случае возникновения ошибки возвращается код отличный от 200, в теле запроса будет указан внутренний код ошибки и сообщение с расшифровкой
{
"code": 500,
"message": "Ошибка при загрузке документа с ID \"12837491723497\""
}
Диаграмма взаимодействия
Описывается пример взаимодействия клиентской системы с API LightDoc
Диаграмма документа
В диаграмме описывается граф состояний документа с указанием разрешений пользователей и внешних систем на выполняемые действия
Синие блоки - доступные действия над документом
Желтые блоки - состояния документа
GET /v1/documents
Получение списка документов за период[
{
"documentID": "66CA50FC-2D5C-401E-AA0C-C562633DD3CE",
"status": "Signing"
},
{
"documentID": "41387865-F19D-4626-9381-0A194BECF1A0",
"status": "Deleted"
},
{
"documentID": "2FF7B917-0F45-4ABA-9831-B05661C3D012",
"status": "Rejected"
},
{
"documentID": "A8BAA3A9-397A-4519-853D-4B7D01EF4DB2",
"status": "Signed"
}
]
[
{
"id": "Реестр000018043",
"documentID": "677DE981-6612-4C6F-AC9A-A5DE6E6B8A92",
"name": "РеестрПВП_000018043_30_07_2021 8_51_33_6592 Иванов Иван Иванович",
"isSequential": false,
"status": "Signed",
"url": "https://beta.lightdoc.io/documents/677DE981-6162-6C6F-AC9A-A5DE6E6B8A96",
"created": "2021-10-15T14:14:09.5333333Z",
"author": "Петров Петр Петрович"
}
]
POST /v1/documents
Регистрация документа.{
"id": "dogovor123",
"name": "Договор 123 от 01.01.2022г с Петров П.",
"isSequential": false,
"signers": [
{
"firstName": "Петр",
"lastName": "Петров",
"patronymic": "Петрович",
"email": "demo+petr@lightdoc.io",
"approveType": "Bes"
}
]
}
id:string - идентификатор документа в клиентской системе
name:string - отображаемое наименование документа
isSequential:boolean=false - последовательность подписания (true - последовательно, false - параллельно)
signers:Array - массив подписантов
firstName:string - имя подписанта
lastName:string - фамилия подписанта
patronymic:string - отчество подписанта
email:string - Email адрес подписанта
number:int=0 - порядковый номер подписанта при последовательном подписании
approveType:string["Bes", "BesVisual", "AesLightDoc", "QesRu"] - тип подписи (Bes - ПЭП цифровая , BesVisual - ПЭП графическая, AesLightDoc - УНЭП LightDoc, QesRu - УКЭП РФ). Тип BesVisual в данный момент не поддерживается в API
verificationRequire:boolean=false - требование верификации подписанта, при значении true подписать может только пользователь прошедший верификацию
{
"id": "dogovor123",
"documentID": "EAD61586-9E50-4996-B3E4-64F6D8133D03",
"url": "https://beta.lightdoc.io/documents/EAD61586-9E50-4996-B3E4-64F6D8133D03"
}
id:string - уникальный идентификатор документа в клиентской системе
documentID:string - уникальный идентификатор документа в системе LightDoc Start
url:string - ссылка на новый документ
POST /v1/documents/{documentID}/files
Загрузка файлов документа.{
"count": 1,
"size": 48037
}
count - количество загруженных файлов
size - общий размер файлов
GET /v1/documents/{documentID}/status
Получение актуального статуса документаДиаграмма состояний
{
"documentID": "EAD61586-9E50-4996-B3E4-64F6D8133D03",
"status": "Signing"
}
documentID:string - уникальный идентификатор документа в системе LightDoc Start
status:string - код статуса документа (Draft/Signing/Signed/Rejected/Deleted)
GET /v1/documents/{documentID}/signed
Скачивание файла подписанной версии документа с сертификатомbody:binary - содержимое скачиваемого файла
headers
content-length:int - размер файла в байтах
content-type: string - формат файла (application/pdf)
content-disposition: attachment; filename="{{filename.pdf}}"; filename*=UTF-8{{filename.pdf}}
GET /v1/documents/{documentID}
Актуальная информация о документе{
"id": "Реестр000018043",
"documentID": "677DE981-6612-4C6F-AC9A-A5DE6E6B8A92",
"name": "РеестрПВП_000018043_30_07_2021 8_51_33_6592 Иванов Иван Иванович",
"isSequential": false,
"status": "Signing",
"url": "https://beta.lightdoc.io/documents/677DE981-6162-6C6F-AC9A-A5DE6E6B8A96",
"created": "2021-10-15T14:14:09.5333333Z",
"author": "Петров Петр Петрович",
"files": [
{
"fileName": "РеестрПВП_000018043_30_07_2021 8_51_33_6592 Иванов Иван Иванович.pdf",
"number": 1,
"pageCount": 1,
"status": "Done"
}
],
"signers": [
{
"firstName": "Петр",
"lastName": "Петров",
"patronymic": "Петрович",
"email": "demo+petr@lightdoc.io",
"number": null,
"approveType": "Agree",
"status": "Notified"
}
],
"actions": [
"Revoke",
"DeleteReleased"
]
}
id:string - идентификатор документа в клиентской системе
documentID:string - уникальный идентификатор документа в системе LightDoc Start
name:string - отображаемое наименование документа
isSequential:boolean - последовательность подписания (true - последовательно, false - параллельно)
signers:Array - массив подписантов
firstName:string - имя подписанта
lastName:string - фамилия подписанта
patronymic:string - отчество подписанта
email:string - Email адрес подписанта
number:int=null - порядковый номер подписанта при последовательном подписании
approveType:string["Bes", "BesVisual", "AesLightDoc", "QesRu"] - тип подписи (Bes - ПЭП цифровая , BesVisual - ПЭП графическая, AesLightDoc - УНЭП LightDoc, QesRu - УКЭП РФ)
status:string["Notified", "Opened", "Rejected", "Approved"] - статус подписания (Notified - подписант уведомлен, Opened - открыл документ, Rejected - отклонил, Approved - подписал документ)
files:Array - массив файлов
fileName:string - имя загруженного файла
number:int - порядковый номер файла в документе
pageCount:int - количество страниц
status:string ("Parsing", "Done", "Error", "Deleted") - статус загруженного файла (Parsing - обработка, Done - обработано успешно, Error - ошибка обработки, Deleted - удален)
actions:Array<string> ("Revoke", "DeleteReleased") - доступные действия над документом (Revoke - отозвать, DeleteReleased - удалить)
POST /v1/documents/{documentID}/action
Действие над документом.