MENU navbar-image

Как использовать API НейроТекстера?

В этой документации вы можете ознакомиться с тем, как можно взаимодействовать с НейроТекстером через API.

Общая схема взаимодействия состоит из двух этапой:

  1. Создание задачи для нейросети. Вы делаете запрос на работу одной из функций. Например, рерайт. Мы принимаем вашу задачу в работу и возвращаем ID задачи в нашей системе.
  2. Получение результата. У нас реализовано два способа получения результата "Long Pooling" и HTTP-уведомления, подробнее о каждом ниже.

Способ получения результата через "Long Pooling":
Полученный из первого этапа ID вы используете для периодической проверки статуса задачи с помощью соответсвующего метода. Когда задача успешно отработает, вместе со статусом ready вы получите text, в котором будет содержаться результат.

Через HTTP-уведомления:
При создании задачи вы должны передавать дополнительный параметр "callback", в котором будет содержаться URL, на который мы отправим POST запрос, когда задача перейдёт в статус ready или failed. Тело HTTP-уведомления совпадает с телом метода проверки статуса задачи.

Также обращаем ваше внимание, что существует ограничение на количество одновременно выполняемых задач. Это ограничение зависит от вашего тарифного плана. Для расширения лимитов повысьте ваш тарифный план или свяжитесь с нами для обсуждения лимитов конкретно для вашего проекта.

Ниже вы можете ознакомиться со списком всех необходимых методов для работы с API. В случае вопросов или в случае, если метода который вам нужен нет в списке, то пишите нам на почту или обращайтесь через обратную связь на сайте. Мы с радостью добавим в API новый функционал и улучшим ваше взаимодействие с ним.

Base URL

https://neuro-texter.ru

Авторизация запросов

Вместе с каждым запросом вы должны передавать заголовок Authorization с значением "Bearer {ВАШ_API_КЛЮЧ}".

Методы

Сделать рерайт

Метод для выполнения рерайта (перефразирования, уникализации) текста.
С помощью этого метода вы можете проводить рерайт текстов. Метод принимает на вход text, creative и strong.

Возвращает ID задачи в нашей системе, который потом вам необходимо проверять через метод проверки статуса задачи в ожидании результата. Либо ожидать HTTP уведомление на URL, который вы указали в callback.

Если вы в данный момент не можете добавлять задачи (кол-во активных превышает ваш лимит), то вернёт 419 ошибку.

Example request:
$client = new \GuzzleHttp\Client();
$response = $client->post(
    'https://neuro-texter.ru/api/rewrite',
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
            'Authorization' => 'Bearer your_token',
        ],
        'json' => [
            'text' => 'ipsa',
            'creative' => 8,
            'additional' => 'saepe',
            'strong' => false,
            'callback' => 'nihil',
            'smart_rewrite' => false,
            'can_add' => false,
            'can_struct_change' => true,
            'can_list' => true,
            'strong_nn' => true,
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
const url = new URL(
    "https://neuro-texter.ru/api/rewrite"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
    "Authorization": "Bearer your_token",
};

let body = {
    "text": "ipsa",
    "creative": 8,
    "additional": "saepe",
    "strong": false,
    "callback": "nihil",
    "smart_rewrite": false,
    "can_add": false,
    "can_struct_change": true,
    "can_list": true,
    "strong_nn": true
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());
import requests
import json

url = 'https://neuro-texter.ru/api/rewrite'
payload = {
    "text": "ipsa",
    "creative": 8,
    "additional": "saepe",
    "strong": false,
    "callback": "nihil",
    "smart_rewrite": false,
    "can_add": false,
    "can_struct_change": true,
    "can_list": true,
    "strong_nn": true
}
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json',
  'Authorization': 'Bearer your_token'
}

response = requests.request('POST', url, headers=headers, json=payload)
response.json()

Example response (200, Успешный сценарий):


{
    "task_id": 100
}
 

Request   

POST api/rewrite

Body Parameters

text  string  

от 20 до 20000 символов. Если нужно добавлять перенос строки - используйте \n

creative  integer  

Уровень креативности нейросети от 1 до 10

additional  string optional  

Произвольные пожелания к нейросети в словесной форме

strong  boolean  

Флаг об усилении рерайта. Принимает значения 0 или 1

callback  string optional  

URL по которому мы отправим HTTP уведомления, когда статус задачи перейдёт в ready или failed.

smart_rewrite  boolean optional  

режим умного рерайта. Если не передавать этот параметр, то он включается только если длина входного текста больше 2000 символов.

can_add  boolean optional  

разрешить нейросети дополнять новым текстом по теме. Доступно только в режиме smart_rewrite.

can_struct_change  boolean optional  

разрешить структурные изменения текста. Доступно только в режиме smart_rewrite.

can_list  boolean optional  

разрешить добавлять списки в исходный текст. Доступно только в режиме smart_rewrite.

strong_nn  boolean optional  

использовать усиленную нейросеть (дороже, но мощнее обычной)

Response

Response Fields

task_id  integer  

ID задачи, который надо использовать для метода проверки статуса задачи и получения результата

Генератор любого текста

Метод с помощью которого нейросеть может выполнить любую задачу и написать любой текст.
На вход подавайте текст в формате просьбы к нейросети. Например, "Напиши небольшую заметку на тему 'Как работают нейросети?'" Метод принимает на вход text и опционально callback.

Возвращает ID задачи в нашей системе, который потом вам необходимо проверять через метод проверки статуса задачи в ожидании результата. Либо ожидать HTTP уведомление на URL, который вы указали в callback.

Если вы в данный момент не можете добавлять задачи (кол-во активных превышает ваш лимит), то вернёт 419 ошибку.

Example request:
$client = new \GuzzleHttp\Client();
$response = $client->post(
    'https://neuro-texter.ru/api/freestyle',
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
            'Authorization' => 'Bearer your_token',
        ],
        'json' => [
            'text' => 'est',
            'callback' => 'aut',
            'strong_nn' => false,
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
const url = new URL(
    "https://neuro-texter.ru/api/freestyle"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
    "Authorization": "Bearer your_token",
};

let body = {
    "text": "est",
    "callback": "aut",
    "strong_nn": false
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());
import requests
import json

url = 'https://neuro-texter.ru/api/freestyle'
payload = {
    "text": "est",
    "callback": "aut",
    "strong_nn": false
}
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json',
  'Authorization': 'Bearer your_token'
}

response = requests.request('POST', url, headers=headers, json=payload)
response.json()

Example response (200, Успешный сценарий):


{
    "task_id": 100
}
 

Request   

POST api/freestyle

Body Parameters

text  string  

от 20 до 2000 символов. Если нужно добавлять перенос строки - используйте \n

callback  string optional  

URL по которому мы отправим HTTP уведомления, когда статус задачи перейдёт в ready или failed.

strong_nn  boolean optional  

использовать усиленную нейросеть (дороже, но мощнее обычной)

Response

Response Fields

task_id  integer  

ID задачи, который надо использовать для метода проверки статуса задачи и получения результата

POST api/image

Example request:
$client = new \GuzzleHttp\Client();
$response = $client->post(
    'https://neuro-texter.ru/api/image',
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
            'Authorization' => 'Bearer your_token',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
const url = new URL(
    "https://neuro-texter.ru/api/image"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
    "Authorization": "Bearer your_token",
};

fetch(url, {
    method: "POST",
    headers,
}).then(response => response.json());
import requests
import json

url = 'https://neuro-texter.ru/api/image'
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json',
  'Authorization': 'Bearer your_token'
}

response = requests.request('POST', url, headers=headers)
response.json()

Request   

POST api/image

Проверить статус задачи и получить результат

С помощью этого метода вы можете получить результат и проверить текущий статус задачи. Метод принимает на вход ID задачи, созданной вами в результате запроса на выполнение одной из функций нейросети. На выходе вы получаете status и text.
Всего есть 3 статуса:

В случае "ready" вместе со статусом вы получите text и tokens_cost. text будет содержать итоговый текст, а tokens_cost количество потраченных нейротокенов на задачу.
В случае "failed" данная задача уже не выполнится и вам стоит на своей стороне позабодится о том, чтобы обработать эту ситуацию.
В случае "processing" вы можете через время снова отправить запрос на проверку статуса задачи, рано или поздно она перейдет в один из двух других статусов.

Example request:
$client = new \GuzzleHttp\Client();
$response = $client->get(
    'https://neuro-texter.ru/api/task/20',
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
            'Authorization' => 'Bearer your_token',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
const url = new URL(
    "https://neuro-texter.ru/api/task/20"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
    "Authorization": "Bearer your_token",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());
import requests
import json

url = 'https://neuro-texter.ru/api/task/20'
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json',
  'Authorization': 'Bearer your_token'
}

response = requests.request('GET', url, headers=headers)
response.json()

Example response (200, Успешный сценарий):


{
    "status": "ready",
    "text": "Какой-то текст, сгенерированный нейронной сетью",
    "tokens_cost": 280
}
 

Request   

GET api/task/{id}

URL Parameters

id  integer  

ID задачи, полученной от других методов

Response

Response Fields

status  string  

Статус задачи. Может принимать значения: "ready", "failed", "processing"

text  string  

Итоговый текст, пока задача не будет ready, будет возвращаться пустым

tokens_cost  integer  

Затраты нейротокенов на задачу, пока задача не будет ready, будет возвращаться значение 0

Проверить баланс

С помощью данного метода вы можете проверить ваш баланс в рублях, нейротокенах и дату окончания вашей подписки.

Example request:
$client = new \GuzzleHttp\Client();
$response = $client->get(
    'https://neuro-texter.ru/api/balance',
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
            'Authorization' => 'Bearer your_token',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
const url = new URL(
    "https://neuro-texter.ru/api/balance"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
    "Authorization": "Bearer your_token",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());
import requests
import json

url = 'https://neuro-texter.ru/api/balance'
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json',
  'Authorization': 'Bearer your_token'
}

response = requests.request('GET', url, headers=headers)
response.json()

Example response (200):

Show headers
content-type: application/json;charset=utf-8
cache-control: no-cache, private
x-ratelimit-limit: 1000
x-ratelimit-remaining: 999
access-control-allow-origin: *
 

{
    "rubles": 106,
    "neurotokens": 83795,
    "plan_expire_datetime": "2026-02-03T15:32:50.000000Z"
}
 

Request   

GET api/balance

Генератор рекламного текста

Метод с помощью которого нейросеть может написать рекламный текст.
Возвращает ID задачи в нашей системе, который потом вам необходимо проверять через метод проверки статуса задачи в ожидании результата. Либо ожидать HTTP уведомление на URL, который вы указали в callback.

Если вы в данный момент не можете добавлять задачи (кол-во активных превышает ваш лимит), то вернёт 419 ошибку.

Example request:
$client = new \GuzzleHttp\Client();
$response = $client->post(
    'https://neuro-texter.ru/api/ads',
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
            'Authorization' => 'Bearer your_token',
        ],
        'json' => [
            'text' => 'voluptas',
            'model' => 'nam',
            'platform' => 'sed',
            'callback' => 'ullam',
            'strong_nn' => true,
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
const url = new URL(
    "https://neuro-texter.ru/api/ads"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
    "Authorization": "Bearer your_token",
};

let body = {
    "text": "voluptas",
    "model": "nam",
    "platform": "sed",
    "callback": "ullam",
    "strong_nn": true
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());
import requests
import json

url = 'https://neuro-texter.ru/api/ads'
payload = {
    "text": "voluptas",
    "model": "nam",
    "platform": "sed",
    "callback": "ullam",
    "strong_nn": true
}
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json',
  'Authorization': 'Bearer your_token'
}

response = requests.request('POST', url, headers=headers, json=payload)
response.json()

Example response (200, Успешный сценарий):


{
    "task_id": 100
}
 

Request   

POST api/ads

Body Parameters

text  string  

от 20 до 1000 символов о чём должна быть реклама. Если нужно добавлять перенос строки - используйте \n

model  string optional  

Маркетинговая модель. Принимает значения: "AIDA", "PAS", "ACCA", "Без модели". По умолчанию: "Без модели"

platform  string optional  

Платформа для которой нужен рекламный текст

callback  string optional  

URL по которому мы отправим HTTP уведомления, когда статус задачи перейдёт в ready или failed.

strong_nn  boolean optional  

использовать усиленную нейросеть (дороже, но мощнее обычной)

Response

Response Fields

task_id  integer  

ID задачи, который надо использовать для метода проверки статуса задачи и получения результата