+359887754242 info@tapto.bg Пон-Пет: 9:00 - 18:00 · Събота: 10:00 - 14:00
За програмисти и интегратори

AI API документация

Ползвайте AI студиото за продуктови снимки, снимки по описание, блог статии, премахване на фон и SEO Agent от вашия сайт, магазин или програма. Плаща се с кредитите на акаунта в TapTo — без абонамент.

1
Вземете токенПрофил в TapTo → AI Услуги → API Интеграция
2
Адрес на API-тоhttps://tapto.bg/api/ai
3
Първа заявкаGET /credits — безплатно е

Автентикация и грешки

Всички адреси започват с

https://tapto.bg/api/ai

Токенът се изпраща в заглавката на всяка заявка:

Authorization: Bearer ВАШИЯТ_ТОКЕН

Ако не можете да пращате заглавки — като параметър ?ai_token=…. Токенът дава достъп до кредитите ви — ползвайте го само от сървъра, не в браузъра.

Отговорите

Винаги JSON с „status“: true при успех. При грешка — „status“: false и причината в „messages“:

401Липсва или е грешен токенът.
402 / 403Няма достатъчно кредити — заредете от „AI кредити“.
422Грешен или липсващ параметър — причината е в „messages“.
500Грешка при генерирането — кредити не се удържат.

Готови класове (TapToAIService)

Свалете клас за вашия език — в него са всички методи от страницата: кредити, AI студио, снимки, фон, блог статии и SEO Agent. Слагате токена и викате методите.

Акаунт

GET /credits Безплатно

Налични кредити

Връща текущия баланс на кредити на акаунта, към който е токенът.

Пример
curl -X GET "https://tapto.bg/api/ai/credits" \
  -H "Authorization: Bearer ВАШИЯТ_ТОКЕН"
const res = await fetch("https://tapto.bg/api/ai/credits", {
  headers: { "Authorization": "Bearer ВАШИЯТ_ТОКЕН" }
});
console.log(await res.json());
<?php
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, "https://tapto.bg/api/ai/credits");
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_HTTPHEADER, [
    "Authorization: Bearer ВАШИЯТ_ТОКЕН"
]);
$response = json_decode(curl_exec($ch), true);
curl_close($ch);
print_r($response);
Примерен отговор
{
  "status": true,
  "credits": 8.80
}
GET /transactions Безплатно

Транзакции

Историята на зарежданията и потреблението на кредити — с търсене, филтри и страници.

Параметри в адреса
search Търсене в описанието или резултата.
status success, await или error.
type charge (зареждане), usage (потребление) или refund (връщане).
sort_by created_at, amount, status или type.
sort_order desc или asc.
per_page Брой на страница (1–100).
page Номер на страницата.
Пример
curl -X GET "https://tapto.bg/api/ai/transactions?status=success&per_page=10" \
  -H "Authorization: Bearer ВАШИЯТ_ТОКЕН"
const res = await fetch("https://tapto.bg/api/ai/transactions?status=success&per_page=10", {
  headers: { "Authorization": "Bearer ВАШИЯТ_ТОКЕН" }
});
console.log(await res.json());
<?php
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, "https://tapto.bg/api/ai/transactions?status=success&per_page=10");
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_HTTPHEADER, [
    "Authorization: Bearer ВАШИЯТ_ТОКЕН"
]);
$response = json_decode(curl_exec($ch), true);
curl_close($ch);
print_r($response);
Примерен отговор
{
  "status": true,
  "data": [
    {
      "id": 11,
      "amount": "-0.10",
      "credits_before": "8.90",
      "credits_after": "8.80",
      "prompt": "AI студио: легло за куче · Хол",
      "type": "usage",
      "status": "success",
      "created_at": "2026-10-27T19:15:18.000000Z"
    }
  ],
  "pagination": { "current_page": 1, "last_page": 1, "per_page": 10, "total": 5 }
}

AI студио Ново

GET /studio/presets Безплатно

Каталог на студиото

Всички стойности, които приема генерирането: видове продукти (с подходящите им сцени и хора/животни), сцени, светлина, настроение, ъгъл, празник, формат и точност — с ключ и етикет. Покажете ги на потребителя и изпратете ключа.

Параметри в адреса
locale Език на етикетите: bg, en, de или ro.
Пример
curl -X GET "https://tapto.bg/api/ai/studio/presets?locale=bg" \
  -H "Authorization: Bearer ВАШИЯТ_ТОКЕН"
const res = await fetch("https://tapto.bg/api/ai/studio/presets?locale=bg", {
  headers: { "Authorization": "Bearer ВАШИЯТ_ТОКЕН" }
});
console.log(await res.json());
<?php
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, "https://tapto.bg/api/ai/studio/presets?locale=bg");
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_HTTPHEADER, [
    "Authorization: Bearer ВАШИЯТ_ТОКЕН"
]);
$response = json_decode(curl_exec($ch), true);
curl_close($ch);
print_r($response);
Примерен отговор
{
  "status": true,
  "data": {
    "types": [
      {
        "key": "pets", "label": "За домашни любимци", "icon": "ri-bear-smile-line",
        "scenes": ["white", "color", "living", "scandi", "..."],
        "subjects": ["none", "dog", "cat", "puppy", "..."]
      }
    ],
    "scenes": [{ "key": "white", "label": "Бял фон (за магазина)", "group": "studio" }, "..."],
    "subjects": [{ "key": "dog", "label": "Куче" }, "..."],
    "lighting": [...], "moods": [...], "angles": [...], "seasons": [...],
    "formats": [{ "key": "square", "label": "Квадрат 1:1", "width": 1024, "height": 1024 }, "..."],
    "fidelity": [{ "key": "exact", "label": "Точно като снимката" }, "..."],
    "cost_per_image": 0.05,
    "images_per_run": 2,
    "credits": 8.80
  }
}
POST /studio/generate 0,10 кр. за 2 снимки

Продуктови снимки (2 варианта)

Качвате снимка на продукта и избирате сцена — AI запазва продукта и го поставя в нея, по желание с човек или животно. Описанието за модела се сглобява от избраното, а свободният текст може да е на български (превежда се автоматично). Връща 2 варианта. Ако няма снимка, „product“ е задължително.

Полета на заявката
input_image Снимка на продукта (файл, до 15 MB). Препоръчително.
product Какъв е продуктът — задължително без снимка (до 300 знака).
type Вид продукт — ключ от types (напр. pets, fashion, home).
scene Сцена — ключ от scenes (напр. white, living, beach).
subject С кого — ключ от subjects (none, woman, dog…).
format square, portrait, tall, landscape или classic.
color Цвят на фона за сцените color, gradient и podium (#hex или име).
lighting Светлина — ключ от lighting.
mood Настроение — ключ от moods.
angle Ъгъл на камерата — ключ от angles.
season Празник или сезон — ключ от seasons.
fidelity Колко да прилича на снимката: exact, balanced или free.
extra Още детайли със свои думи (до 1000 знака).
avoid Какво да няма на снимката (до 300 знака).
seed Число за повторяемост — същият seed дава близък резултат.
steps Стъпки 10–50 (по подразбиране 28).
cfg Колко стриктно да следва описанието, 1–10 (по подразбиране 3.5).
Генерирането отнема 20–40 секунди — сложете време за изчакване поне 240 секунди.
Пример
curl -X POST "https://tapto.bg/api/ai/studio/generate" \
  -H "Authorization: Bearer ВАШИЯТ_ТОКЕН" \
  -F "type=pets" \
  -F "scene=living" \
  -F "subject=dog" \
  -F "format=square" \
  -F "product=кръгло плюшено легло за куче" \
  -F "input_image=@bed.jpg"
const form = new FormData();
form.append("type", "pets");
form.append("scene", "living");
form.append("subject", "dog");
form.append("format", "square");
form.append("product", "кръгло плюшено легло за куче");
form.append("input_image", fileInput.files[0]); // <input type="file">

const res = await fetch("https://tapto.bg/api/ai/studio/generate", {
  method: "POST",
  headers: { "Authorization": "Bearer ВАШИЯТ_ТОКЕН" },
  body: form
});
console.log(await res.json());
<?php
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, "https://tapto.bg/api/ai/studio/generate");
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_POSTFIELDS, [
    "type" => "pets",
    "scene" => "living",
    "subject" => "dog",
    "format" => "square",
    "product" => "кръгло плюшено легло за куче",
    "input_image" => new CURLFile("bed.jpg"),
]);
curl_setopt($ch, CURLOPT_HTTPHEADER, [
    "Authorization: Bearer ВАШИЯТ_ТОКЕН"
]);
$response = json_decode(curl_exec($ch), true);
curl_close($ch);
print_r($response);
Примерен отговор
{
  "status": true,
  "images": [
    { "id": 1501, "url": "https://tapto.bg/uploads/ai_images/9f1c….png", "seed": 734211 },
    { "id": 1502, "url": "https://tapto.bg/uploads/ai_images/a7d2….png", "seed": 734212 }
  ],
  "charged": 0.10,
  "remaining_credits": 8.70
}

Снимки

POST /generate 0,10 кр.

Снимка по описание

Една снимка по ваше описание (prompt) — фон, банер, илюстрация или каквото си представите. Описанието може да е на български — превежда се автоматично. За снимки на продукт по-лесно е AI студиото.

Полета на заявката
promptзадължително Описание на снимката — на български или английски.
model Качество: quality (по-детайлно, по подразбиране) или fast (бързо, за идеи).
width Ширина в пиксели (по подразбиране 1024).
height Височина в пиксели (по подразбиране 1024).
steps Стъпки — около 28 за quality, 4 за fast (по подразбиране 4).
cfg_scale Колко стриктно да следва описанието, 1–10.
negative_prompt Какво да няма на снимката.
output_format PNG, JPG или WEBP.
input_image Снимка-ориентир (файл, до 10 MB) — изпраща се като multipart.
Пример
curl -X POST "https://tapto.bg/api/ai/generate" \
  -H "Authorization: Bearer ВАШИЯТ_ТОКЕН" \
  -H "Content-Type: application/json" \
  -d '{
    "prompt": "дървена маса в слънчева кухня, отгоре чаша кафе, реалистично",
    "model": "quality",
    "width": 1344,
    "height": 768,
    "steps": 28,
    "output_format": "WEBP"
  }'
const res = await fetch("https://tapto.bg/api/ai/generate", {
  method: "POST",
  headers: {
    "Authorization": "Bearer ВАШИЯТ_ТОКЕН",
    "Content-Type": "application/json"
  },
  body: JSON.stringify({
    "prompt": "дървена маса в слънчева кухня, отгоре чаша кафе, реалистично",
    "model": "quality",
    "width": 1344,
    "height": 768,
    "steps": 28,
    "output_format": "WEBP"
  })
});
console.log(await res.json());
<?php
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, "https://tapto.bg/api/ai/generate");
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_POSTFIELDS, json_encode([
    "prompt" => "дървена маса в слънчева кухня, отгоре чаша кафе, реалистично",
    "model" => "quality",
    "width" => 1344,
    "height" => 768,
    "steps" => 28,
    "output_format" => "WEBP",
]));
curl_setopt($ch, CURLOPT_HTTPHEADER, [
    "Authorization: Bearer ВАШИЯТ_ТОКЕН",
    "Content-Type: application/json"
]);
$response = json_decode(curl_exec($ch), true);
curl_close($ch);
print_r($response);
Примерен отговор
{
  "status": true,
  "message": "Изображението е генерирано успешно!",
  "image_url": "https://tapto.bg/uploads/ai_images/d47abc20….png",
  "log": {
    "id": 12,
    "type": "image_generation",
    "prompt": "дървена маса в слънчева кухня…",
    "image_url": "https://tapto.bg/uploads/ai_images/d47abc20….png",
    "settings": { "width": 1344, "height": 768, "steps": 28, "quality": "quality", "prompt_en": "wooden table in a sunny kitchen…" },
    "created_at": "2026-10-28T09:20:00Z"
  },
  "remaining_credits": 8.70
}
GET /history Безплатно

История на снимките

Всички генерирани от вас снимки — и от AI студиото — най-новите първи, с настройките и адреса за сваляне.

Параметри в адреса
search Търсене в описанието (prompt).
per_page Брой на страница (1–100).
page Номер на страницата.
Пример
curl -X GET "https://tapto.bg/api/ai/history?per_page=12" \
  -H "Authorization: Bearer ВАШИЯТ_ТОКЕН"
const res = await fetch("https://tapto.bg/api/ai/history?per_page=12", {
  headers: { "Authorization": "Bearer ВАШИЯТ_ТОКЕН" }
});
console.log(await res.json());
<?php
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, "https://tapto.bg/api/ai/history?per_page=12");
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_HTTPHEADER, [
    "Authorization: Bearer ВАШИЯТ_ТОКЕН"
]);
$response = json_decode(curl_exec($ch), true);
curl_close($ch);
print_r($response);
Примерен отговор
{
  "status": true,
  "data": [
    {
      "id": 1501,
      "type": "image_generation",
      "prompt": "A professional commercial photo of…",
      "image_url": "https://tapto.bg/uploads/ai_images/9f1c….png",
      "settings": { "studio": true, "type": "pets", "scene": "living", "subject": "dog", "seed": 734211 },
      "created_at": "2026-10-27T19:20:00.000000Z"
    }
  ],
  "pagination": { "current_page": 1, "last_page": 4, "per_page": 12, "total": 41 }
}
POST /remove-background 0,01 кр.

Премахване на фон

Изрязва продукта и връща снимка с прозрачен фон. Подайте файл или публичен адрес.

Полета на заявката
image Файл (multipart, до 10 MB) — или image_url.
image_url Публичен адрес на снимката — или image.
model rembg_1_4 (по подразбиране), bria_rmbg_2_0, birefnet_general, birefnet_dis…
output_format PNG, WEBP или JPG.
Пример
curl -X POST "https://tapto.bg/api/ai/remove-background" \
  -H "Authorization: Bearer ВАШИЯТ_ТОКЕН" \
  -H "Content-Type: application/json" \
  -d '{
    "image_url": "https://example.com/product.jpg",
    "output_format": "PNG"
  }'
const res = await fetch("https://tapto.bg/api/ai/remove-background", {
  method: "POST",
  headers: {
    "Authorization": "Bearer ВАШИЯТ_ТОКЕН",
    "Content-Type": "application/json"
  },
  body: JSON.stringify({
    "image_url": "https://example.com/product.jpg",
    "output_format": "PNG"
  })
});
console.log(await res.json());
<?php
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, "https://tapto.bg/api/ai/remove-background");
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_POSTFIELDS, json_encode([
    "image_url" => "https://example.com/product.jpg",
    "output_format" => "PNG",
]));
curl_setopt($ch, CURLOPT_HTTPHEADER, [
    "Authorization: Bearer ВАШИЯТ_ТОКЕН",
    "Content-Type: application/json"
]);
$response = json_decode(curl_exec($ch), true);
curl_close($ch);
print_r($response);
Примерен отговор
{
  "status": true,
  "message": "Фонът беше премахнат успешно!",
  "image_url": "https://tapto.bg/uploads/bg_removal/e280f0df….png",
  "remaining_credits": 8.69
}

Блог статия Ново

POST /blog-article 0,20 кр. статия · +0,10 кр. корица

Напиши статия

Пишете темата — AI пише цялата статия: заглавие, увод, раздели с подзаглавия, списъци, таблица, съвети, въпроси и отговори и заключение, плюс SEO (мета заглавие и описание, ключови думи, OG/Twitter, slug, етикети). По желание и корица в 2 варианта. Писането е на заден план: заявката връща id, по който питате GET /blog-article/{id}. Таксува се само при успех.

Полета на заявката
topicзадължително Темата на статията (до 300 знака).
keywords Ключови думи, основната първа.
language bg, en, de, ro, el, tr, fr, es, it (по подразбиране bg).
length short (~600 думи), medium (~1200, по подразбиране) или long (~2000).
tone friendly, expert, selling или simple.
audience За кого е статията.
notes Допълнителни указания (до 1000 знака).
cover true — и корица (2 варианта, хоризонтални, без надписи).
cover_style photo, illustration, 3d или minimal.
Отговорът идва веднага (202) с id. Статията обикновено е готова за 30–90 секунди — питайте на всеки 4–5 секунди.
Пример
curl -X POST "https://tapto.bg/api/ai/blog-article" \
  -H "Authorization: Bearer ВАШИЯТ_ТОКЕН" \
  -H "Content-Type: application/json" \
  -d '{
    "topic": "Как да изберем легло за куче",
    "keywords": "легло за куче, кучешко легло",
    "language": "bg",
    "length": "medium",
    "tone": "friendly",
    "cover": true,
    "cover_style": "photo"
  }'
const res = await fetch("https://tapto.bg/api/ai/blog-article", {
  method: "POST",
  headers: {
    "Authorization": "Bearer ВАШИЯТ_ТОКЕН",
    "Content-Type": "application/json"
  },
  body: JSON.stringify({
    "topic": "Как да изберем легло за куче",
    "keywords": "легло за куче, кучешко легло",
    "language": "bg",
    "length": "medium",
    "tone": "friendly",
    "cover": true,
    "cover_style": "photo"
  })
});
console.log(await res.json());
<?php
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, "https://tapto.bg/api/ai/blog-article");
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_POSTFIELDS, json_encode([
    "topic" => "Как да изберем легло за куче",
    "keywords" => "легло за куче, кучешко легло",
    "language" => "bg",
    "length" => "medium",
    "tone" => "friendly",
    "cover" => true,
    "cover_style" => "photo",
]));
curl_setopt($ch, CURLOPT_HTTPHEADER, [
    "Authorization: Bearer ВАШИЯТ_ТОКЕН",
    "Content-Type: application/json"
]);
$response = json_decode(curl_exec($ch), true);
curl_close($ch);
print_r($response);
Примерен отговор
{
  "status": true,
  "id": 156,
  "state": "pending",
  "price": 0.20
}
GET /blog-article/156 Безплатно

Статията (докъде е)

state е pending, done или error. При done има article (всички полета и SEO), html (готово за блога — h2, h3, p, списъци, таблица, blockquote; без H1), images (кориците) и charged.

Пример
curl -X GET "https://tapto.bg/api/ai/blog-article/156" \
  -H "Authorization: Bearer ВАШИЯТ_ТОКЕН"
const res = await fetch("https://tapto.bg/api/ai/blog-article/156", {
  headers: { "Authorization": "Bearer ВАШИЯТ_ТОКЕН" }
});
console.log(await res.json());
<?php
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, "https://tapto.bg/api/ai/blog-article/156");
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_HTTPHEADER, [
    "Authorization: Bearer ВАШИЯТ_ТОКЕН"
]);
$response = json_decode(curl_exec($ch), true);
curl_close($ch);
print_r($response);
Примерен отговор
{
  "status": true,
  "id": 156,
  "state": "done",
  "title": "Как да изберем легло за куче: пълно ръководство",
  "words": 1222,
  "article": {
    "title": "Как да изберем легло за куче: пълно ръководство",
    "slug": "kak-da-izberem-leglo-za-kuche-palno-rakovodstvo",
    "excerpt": "Размер, материал и тип — всичко за удобното кучешко легло.",
    "intro": ["…"],
    "sections": [{ "heading": "…", "blocks": [{ "type": "p", "text": "…" }, { "type": "ul", "items": ["…"] }] }],
    "faq": [{ "q": "…", "a": "…" }],
    "tags": ["легло за куче", "домашни любимци"],
    "seo": { "meta_title": "…", "meta_description": "…", "keywords": "…", "og_title": "…", "og_description": "…" },
    "cover": { "alt": "Куче спи в уютно легло в хола" }
  },
  "html": "<p>…</p>
<h2>…</h2>
<ul><li>…</li></ul>…",
  "images": [{ "id": 1601, "url": "https://tapto.bg/uploads/ai_images/….png" }, { "id": 1602, "url": "https://tapto.bg/uploads/ai_images/….png" }],
  "charged": 0.20,
  "remaining_credits": 8.50
}
GET /blog-articles Безплатно

Вашите статии

Списък на статиите (най-новите първи) със състоянието, заглавието, думите и корицата.

Параметри в адреса
per_page Брой на страница (1–50).
page Номер на страницата.
Пример
curl -X GET "https://tapto.bg/api/ai/blog-articles?per_page=12" \
  -H "Authorization: Bearer ВАШИЯТ_ТОКЕН"
const res = await fetch("https://tapto.bg/api/ai/blog-articles?per_page=12", {
  headers: { "Authorization": "Bearer ВАШИЯТ_ТОКЕН" }
});
console.log(await res.json());
<?php
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, "https://tapto.bg/api/ai/blog-articles?per_page=12");
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_HTTPHEADER, [
    "Authorization: Bearer ВАШИЯТ_ТОКЕН"
]);
$response = json_decode(curl_exec($ch), true);
curl_close($ch);
print_r($response);
Примерен отговор
{
  "status": true,
  "data": [
    { "id": 156, "state": "done", "topic": "Как да изберем легло за куче", "title": "Как да изберем легло за куче: пълно ръководство", "words": 1222, "cover_url": "https://tapto.bg/uploads/ai_images/….png", "created_at": "2026-10-28T09:20:00Z" }
  ],
  "pagination": { "current_page": 1, "last_page": 1, "per_page": 12, "total": 1 }
}

SEO

POST /seo-agent 0,01 кр.

SEO Agent за продукт

От името, цената и описанието на продукта прави за всеки език: заглавие, мета описание, ключови думи, HTML описание, OG/Twitter тагове, slug и имена/alt текст за снимките.

Полета на заявката
site_nameзадължително Име на сайта / магазина.
site_urlзадължително Адрес на сайта (https://…).
languagesзадължително Езици, разделени със запетая (напр. bg, en).
product_nameзадължително Име на продукта.
product_priceзадължително Цена (число).
descriptionзадължително Описание — може и набързо написано.
currency Валута: EUR, BGN, USD… (по подразбиране BGN).
images[] Снимки на продукта (multipart) — за имена и alt текст.
additional_requirements Изисквания за тон, стил или ключови думи.
include_icons true/false — икони в HTML описанието.
Пример
curl -X POST "https://tapto.bg/api/ai/seo-agent" \
  -H "Authorization: Bearer ВАШИЯТ_ТОКЕН" \
  -H "Content-Type: application/json" \
  -d '{
    "site_name": "My Shop",
    "site_url": "https://myshop.com",
    "languages": "bg, en",
    "product_name": "Leather Sports Jacket",
    "product_price": 129.99,
    "currency": "EUR",
    "description": "Genuine leather jacket, sports cut, water-resistant.",
    "include_icons": true
  }'
const res = await fetch("https://tapto.bg/api/ai/seo-agent", {
  method: "POST",
  headers: {
    "Authorization": "Bearer ВАШИЯТ_ТОКЕН",
    "Content-Type": "application/json"
  },
  body: JSON.stringify({
    "site_name": "My Shop",
    "site_url": "https://myshop.com",
    "languages": "bg, en",
    "product_name": "Leather Sports Jacket",
    "product_price": 129.99,
    "currency": "EUR",
    "description": "Genuine leather jacket, sports cut, water-resistant.",
    "include_icons": true
  })
});
console.log(await res.json());
<?php
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, "https://tapto.bg/api/ai/seo-agent");
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_POSTFIELDS, json_encode([
    "site_name" => "My Shop",
    "site_url" => "https://myshop.com",
    "languages" => "bg, en",
    "product_name" => "Leather Sports Jacket",
    "product_price" => 129.99,
    "currency" => "EUR",
    "description" => "Genuine leather jacket, sports cut, water-resistant.",
    "include_icons" => true,
]));
curl_setopt($ch, CURLOPT_HTTPHEADER, [
    "Authorization: Bearer ВАШИЯТ_ТОКЕН",
    "Content-Type: application/json"
]);
$response = json_decode(curl_exec($ch), true);
curl_close($ch);
print_r($response);
Примерен отговор
{
  "status": true,
  "data": {
    "bg": {
      "title": "Кожено спортно яке — естествена кожа | My Shop",
      "short_description": "Спортно яке от естествена кожа…",
      "description_html": "<div class=\"container py-3\">…</div>",
      "h1": "Спортно яке от естествена кожа",
      "meta_data": { "title": "…", "description": "…", "keywords": "кожено яке, …" },
      "og_tags": { "title": "…", "description": "…", "type": "product" },
      "twitter_tags": { "title": "…", "description": "…", "type": "summary_large_image" },
      "slug": "kozheno-sportno-yake",
      "images": []
    },
    "en": { "…": "…" }
  },
  "remaining_credits": 8.68
}
Готови ли сте да започнете? Влезте в профила си, вземете токен и заредете кредити — 1 кредит = 1 €.
Към API Интеграция
Вашата кошница
Продукти в кошницата:
Общо: 0 €

Готови ли сте да създадете своя дигитален продукт?

Започнете още сега и станете част от нашата платформа!