Метод complete

Возвращает наиболее вероятное продолжение текста, а также признак конца слова.

Описание

CompleteResponse complete(string key, string q, string lang, int limit);

Входные параметры

Входные параметры могут передаваться либо с помощью HTTP GET-запроса (см. пример), либо с помощью HTTP POST-запроса, где параметры передаются в body HTTP-запроса.

Пример запроса:

XML-интерфейс:

https://predictor.yandex.net/api/v1/predict/complete?key=API-ключ&q=hello+wo&lang=en

JSON-интерфейс:

https://predictor.yandex.net/api/v1/predict.json/complete?key=API-ключ&q=hello+wo&lang=en

JSONP-интерфейс (для функции myCallback):

https://predictor.yandex.net/api/v1/predict.json/complete?key=API-ключ&q=hello+wo&lang=en&callback=myCallback

Список входных параметров.

Параметр Тип Описание
Обязательные
key string API-ключ. Получите бесплатный API-ключ на этой странице.
lang string

Язык текста (например, "en"). Список языков можно получить с помощью метода getLangs.

q string

Текст, на который указывает курсор пользователя.

При подборе подсказки учитывается слово, на которое указывает курсор и 2 слова слева от него, поэтому не требуется передавать текст длиннее трех-четырех слов.

Необязательные
limit int

Максимальное количество возвращаемых строк (по умолчанию 1).

Возвращает

В XML-интерфейсе возвращает структуру CompleteResponse, содержащую текст подсказки. Например:

<?xml version="1.0" encoding="utf-8"?>
<CompleteResponse endOfWord="false" pos="-2">
  <text>
    <string>world</string>
    ...
  </text>
</CompleteResponse>

Элементы XML-схемы ответа:

Элемент Описание
CompleteResponse

Корневой элемент, содержит элемент text.

Атрибуты:

  • endOfWord - признак конца слова (true/false).

    Метод может одновременно вернуть "продолжение" запроса и признак endOfWord= true (например, для текста "здравствуй" возвращается продолжение "здравствуйте", а также признак конца слова).

  • pos - позиция в слове, для которого возвращается продолжение. Позиция отсчитывается от последнего символа в запросе, переданном в элементе q.

    Обычно, pos принимает отрицательные значения. Например, для текста q="кот в сапо" будет возвращено pos=-4. Если запрос содержит завершенную фразу, то может быть возвращена подсказка для следующего слова. При этом pos будет принимать значение 0 (например, при q="кот в ") или 1 (например, q="кот в").

text

Содержит элементы string с наиболее вероятными вариантами продолжения заданного текста.

Если метод не может "продолжить" текст, то элемент не возвращается.

Коды ошибок
Код Значение Описание
ERR_OK 200

Операция выполнена успешно.

ERR_KEY_INVALID 401

Ключ API невалиден.

ERR_KEY_BLOCKED 402

Ключ API заблокирован.

ERR_DAILY_REQ_LIMIT_EXCEEDED 403

Превышено суточное ограничение на количество запросов (с учетом вызовов метода getLangs).

ERR_DAILY_CHAR_LIMIT_EXCEEDED 404

Превышено суточное ограничение на объем подсказанного текста (с учетом вызовов метода getLangs).

ERR_TEXT_TOO_LONG 413

Превышен максимальный размер текста (1000 символов).

ERR_LANG_NOT_SUPPORTED 501

Указанный язык не поддерживается.

В JSON-интерфейсе вместо XML-элементов возвращаются JavaScript-объекты с теми же именами и семантикой:

{"endOfWord":false,"pos":-2,"text":["world"]}

В JSONP-интерфейсе те же самые JavaScript-объекты возвращаются в callback-функции (например, myCallback):

myCallback({"endOfWord":false,"pos":-2,"text":["world"]})