|
Документация по API антиплагиата Адвего
|
API доступен пользователям, на символьном счету которых находится не менее 100 тысяч символов.
Токен можно получить тут (рекомендуем обновить перед первым использованием): https://advego.com/antiplagiat/api/
Пополнить символьный счет тут: https://advego.com/antiplagiat/buy/
В качестве протокола используется json-rpc 2.0. Стандартный запрос выглядит следующим образом: {"jsonrpc": "2.0", "method": "...", "params": { …. }, "id": 1 }
id используется для сопоставления запроса с ответом.
На запросы отвечает сервис по адресу [ссылки видны только авторизованным пользователям]
Токен должен передаваться в каждом запросе. Токен не имеет срока действия и может быть перегенерирован на той же странице.
-------
Методы:
unique_text_add - добавляет текст на проверку уникальности.
Параметры:
• token — токен для авторизации;
• text — текст для проверки; Важно! Текст должен передаваться в виде одной строки без переносов строк. Чтобы передать переносы строк, используйте символ "\n" без кавычек.
• title — (необязательно) название проверки. Используется для отображения в веб-интерфейсе;
• Options — (необязательно) параметры проверки.
Возможны следующие параметры:
• ignore_rules — (необязательно) перечень правил, по которым будут игнорироваться сайты при проверки.
Доступные правила:
• "u:<url>" - проверка уникальности будет игнорировать данный url;
• "b:<domain>" - проверка уникальности будет игнорировать все url, начинающиеся с domain;
• "r:<regex>" - проверка уникальности будет игнорировать все url, подходящие по заданное регулярное выражение.
Вызов:
POST [ссылки видны только авторизованным пользователям]
{
"id": "1",
"jsonrpc": "2.0",
"method": "unique_text_add",
"params":
{
"token": "токен",
"text": "текст",
"title":"название работы",
"options":
{
"ignore_rules":
[
"u:<url>",
"b:<domain>",
"r:<regex>"
]
}
}
}
Ответ:
{
"id": 1,
"jsonrpc": "2.0",
"result": {
"key": "NNN"
}
}
Где NNN - номер созданной проверки.
Если попытка создания неудачная:
{
"jsonrpc": "2.0",
"result": {
"error": "-1", "error_msg": "сообщение об ошибке"
},
"id": 1
}
проверка не была добавлена.
Error — код ошибки. Возможные коды ошибки:
-1 — не хватает символов на счету;
-2 — не хватает денежных средств на счету;
-5 — ошибка подключения к БД;
-10 — получен неверный ключ;
-11 — ошибка авторизации по токену;
-13 — ошибка при проверке поля text;
-14 — ошибка при проверке поля title;
-17 — ошибка добавления работы;
-21 — текст не найден;
-67 — not enough symbols – недостаточно символов на счету, минимальное количество – 100 000.
-------
unique_check - возвращает состояние проверки и отчет, если проверка выполнена.
Параметры:
• token — токен для авторизации;
• key — идентификатор проверки, полученный при добавлении;
• get_text - если указан, то вместе с отчетом будет возвращен проверенный текст;
• agent - тип проверки, указывается чтобы получить результат проверки работы или статьи.
• report_json - формат отчета, рекомендуется значение 1.
Возможные значения:
• shopchecker - получить отчет о проверки статьи, key - id статьи;
• jobchecker - получить отчет о проверки работы, key - id работы.
Вызов:
POST [ссылки видны только авторизованным пользователям]
{
"jsonrpc": "2.0",
"method": "unique_check",
"params":
{
"token": "токен",
"key": "id проверки",
"get_text":"0 или 1",
"report_json":"0 или 1"
},
"id": 1
}
Варианты ответов:
Проверка выполняется
{
"id": 1,
"jsonrpc": "2.0",
"result": {
"msg": "",
"status": "in progress"
}
}
Проверка выполнена
{
"id": 1,
"jsonrpc": "2.0",
"result": {
"status": "done",
"report": {
"equality": 100,
"rewrite": 100,
...
}
},
}
• "status" — состояние проверки.
Возможные состояния проверки:
• done - проверка завершена успешно;
• error - проверка завершена с ошибкой;
• not found - проверка с данным ключом не найдена;
• in progress - проверяется.
• "report" — отчёт о проверке в формате json (см. Формат отчета). Присылается в ответе, только если проверка закончена (статус "done").
• "msg" — сообщение с дополнительной информацией.
• text -проверенный текст
Ошибка запроса
{
"id": 1,
"jsonrpc": "2.0",
"result": {
"status": "error",
"msg": ""
},
}
Error — код ошибки. См. расшифровку кодов ошибок в методе unique_text_add
-------
unique_recheck - запускает новую проверку ранее добавленного текста. При этом удаляет предыдущие проверки из очереди.
Вызов:
POST [ссылки видны только авторизованным пользователям]
{
"jsonrpc": "2.0",
"method": "unique_recheck",
"params":
{
"token": "токен",
"key": "id проверки"
},
"id": 1
}
Параметры:
• token — токен для авторизации;
• key — идентификатор проверки, полученный при добавлении.
Варианты ответов:
Новая проверка добавлена.
{"jsonrpc":"2.0","id":1,"resul t":1}
Ошибка при выполнении.
{"jsonrpc": "2.0", "result": {"error": "-1", "error_msg": "сообщение об ошибке"}, "id": 1 }
Error — код ошибки. См. расшифровку кодов ошибок в методе unique_text_add
-------
unique_get_text - возвращает текст на проверке
Вызов:
POST [ссылки видны только авторизованным пользователям]
{
"jsonrpc": "2.0",
"method": "unique_get_text",
"params":
{
"token": "токен",
"key": "id проверки"
},
"id": 1
}
Параметры:
• token — токен для авторизации;
• key — идентификатор проверки, полученный при добавлении.
Варианты ответов:
Успешный запрос
{"jsonrpc":"2.0","id":1,"resul t":{"text":"текст"}}
Ошибка запроса
{"jsonrpc": "2.0", "result": {"error": "-21", "error_msg": "сообщение об ошибке"}, "id": 1 }
Error — код ошибки. См. расшифровку кодов ошибок в методе unique_text_add
=======
Формат отчета:
{
"jsonrpc": "2.0",
"id": 1,
"result": {
"report": {
"layers_by_domain": [
{
"rewrite": 33,
"equality": 19,
"layers": [
{
"equality": 19,
"rewrite": 33,
"uri": "[ссылки видны только авторизованным пользователям]",
"words": [
7,
30,
31,
32
],
"shingles": [
31,
32,
33,
34,
35,
36,
37,
38
]
},
],
"len": 1050,
"bad_words": [],
"equal_words": [
0,
1,
3,
5,
7,
15,
19,
20,
22,
24,
25,
27,
28,
30
],
"word_count": 154,
"lang": "russian",
"error_pages": 0,
"rewrite": 82,
"progress": 100,
"text_fragments": [
"",
"Слово1",
" ",
"Слово2",
" ",
"Слово3",
" ",
"Слово4",
" ",
"Слово5",
". "
],
"captchas": 0,
"found_pages": 11,
"checked_pages": 48,
"equal_shingles": [
31,
32,
36,
37,
38,
40
],
"checked_phrases": 8,
},
"status": "done"
}
}
Расшифровка:
layers_by_domain - найденные страницы с совпадениями, сгруппированные по доменам (если найдено несколько страниц на одном сайте),
layers - найденные страницы линейным списком,
equality - количество найденных совпадений по фразам в указанном источнике (uri), процентов,
rewrite - количество найденных совпадений по словам в указанном источнике (uri), процентов,
uri - адрес страницы с найденными совпадениями,
words - слова, входящие в найденные совпадения по словам (см. text_fragments),
shingles - слова, входящие в найденные совпадения по фразам (см. text_fragments),
len - длина текста в символах с пробелами,
bad_words - слова с подменой символов,
equal_words - аналогично words, но для всего текста,
equal_shingles - аналогично shingles, но для всего текста,
word_count - количество слов в проверяемом тексте,
text_fragments - фрагменты текста для восстановления совпадений по словам и фразам. Порядковый номер фрагмента вычисляется по формуле 2n + 1, где n = номеру, указанному в соответствущей секции words, shingles, equal_words и equal_shingles.
Вы успешно подписались на тему и теперь будете получать уведомления при появлении новых сообщений
Вы успешно подписались на ответы на собственные сообщения в теме и теперь будете получать уведомления
Не удалось обновить статус подписки. Пожалуйста, попробуйте позже.