SearchDocflows¶
Предупреждение
Метод относится к устаревшей версии Docflow API. Используйте метод SearchDocflows (версия 3) последней версии Docflow API — V3.
Метод SearchDocflows
производит поиск документа по строке запроса.
- POST /V2/SearchDocflows¶
- Query Parameters:
boxId – идентификатор ящика организации.
- Request Headers:
Authorization – данные, необходимые для авторизации.
- Request Body:
Тело запроса должно содержать структуру SearchDocflowsRequest.
- Status Codes:
200 OK – операция успешно завершена.
400 Bad Request – данные в запросе имеют неверный формат или отсутствуют обязательные параметры.
401 Unauthorized – в запросе отсутствует HTTP-заголовок
Authorization
или в этом заголовке содержатся некорректные авторизационные данные.402 Payment Required – у организации с указанным идентификатором
boxId
закончилась подписка на API.403 Forbidden – доступ к ящику с предоставленным авторизационным токеном запрещен.
405 Method Not Allowed – используется неподходящий HTTP-метод.
500 Internal Server Error – при обработке запроса возникла непредвиденная ошибка.
- Response Body:
Тело ответа содержит список документов, представленный структурой SearchDocflowsResponse.
В ответе вернутся только те документы, к которым у пользователя есть доступ.
Метод разбивает строку запроса SearchDocflowsRequest.QueryString следующими способами:
Метод разбивает строку на токены по пробелам и разделительным символам. В ответ метода попадают документы, у которых хотя бы один из полученных токенов содержится в номере, дате, имени файла или других данных.
Если строка запроса имеет вид «ключ: значение», то метод разбивает строку в соответствии с форматом YAML. В ответ метода попадут документы, которые содержат указанную пару «ключ-значение» среди пользовательских данных, привязанных к документу.
Список документов в ответе может содержать не более 100 элементов. Если документов больше, их можно получить постранично. Для получения очередной страницы передайте в поле запроса SearchDocflowsRequest.FirstIndex индекс документа, с которого нужно начать выгрузку.
При вызове метода можно указать максимальное количество элементов на странице в поле SearchDocflowsRequest.Count, но оно не должно превышать 100 элементов.
Метод не гарантирует, что все страницы, кроме последней, будут содержать одинаковое максимальное количество документов. При разработке интеграционного решения учитывайте, что в очередной странице может не быть ни одного документа.
SDK¶
SearchDocflowsResponse SearchDocflows(string authToken, string boxId, SearchDocflowsRequest request);
Пример использования (C#)¶
Постраничное получение документов, содержащих строку «Пример».
var request = new SearchDocflowsRequest { QueryString = "Пример" };
while (true)
{
var response = api.SearchDocflows(token, boxId, request);
Console.Out.WriteLine("Fetched {0} documents", response.Documents.Count);
if (!response.HaveMoreDocuments)
break;
request.FirstIndex += response.Documents.Count;
}
См. также
- Структуры и методы для работы с Docflow: