GET
/api/v1/me
Účet, ku ktorému kľúč patrí, a vlastný názov a prefix kľúča. Užitočné najmä na jednu vec: aby ste vedeli, že kľúč v tomto prostredí je ten, za ktorý ho považujete.
Príklad
curl https://seonis.ai/api/v1/me \
-H "Authorization: Bearer $SEONIS_API_KEY"
GET
/api/v1/sites
Každý web v účte. id je to, podľa čoho sa filtruje zoznam článkov, a doména je tam preto, aby build skript mohol porovnávať podľa niečoho, čo už pozná, namiesto toho, aby niesol id.
Príklad
curl https://seonis.ai/api/v1/sites \
-H "Authorization: Bearer $SEONIS_API_KEY"
{
"sites": [
{
"id": 5,
"name": "Peppervale",
"domain": "peppervale.co.uk",
"url": "https://peppervale.co.uk",
"language": "en",
"country": "GB",
"market": "en-GB",
"status": "active",
"articles_published": 34,
"created_at": "2026-06-02T11:04:19+00:00"
}
]
}
GET
/api/v1/articles
Stránka článkov, najnovšia zmena ako prvá, bez obsahu. Zoradené podľa toho, kedy sa ktorý článok naposledy zmenil, nie podľa toho, kedy bol napísaný, a práve preto má updated_since zmysel: článok, ktorý už je zverejnený, možno neskôr upraviť, keď sa doň vloží odkaz alebo sa z neho odstráni.
Parametre dotazu
| Názov |
Čo robí |
| site_id |
Jeden web, z /sites. id, ktoré nie je vo Vašom účte, vráti 404. |
| status |
Jedna z hodnôt draft, qa, needs_repair, review, ready, published, failed. Čokoľvek iné vráti 422 namiesto prázdnej stránky. "ready" je to, čo build potrebuje: napísané, skontrolované a ešte nikde nezverejnené. |
| updated_since |
ISO 8601, napríklad 2026-09-06T00:00:00Z. Zapamätajte si časovú značku posledného spustenia a pri ďalšom ju odošlite späť. |
| per_page |
Najviac 100. Predvolená hodnota je 25. |
| page |
Od 1. meta.has_more určuje, či sa má žiadať ďalšia. |
Príklad
curl -G https://seonis.ai/api/v1/articles \
-H "Authorization: Bearer $SEONIS_API_KEY" \
-d site_id=5 \
-d status=ready \
-d updated_since=2026-09-01T00:00:00Z \
-d per_page=50
{
"articles": [
{
"id": 918,
"site_id": 5,
"language": "en",
"status": "ready",
"title": "How to choose a pepper grinder",
"slug": "how-to-choose-a-pepper-grinder",
"meta_title": "How to choose a pepper grinder | Peppervale",
"meta_description": "Burr or blade, ceramic or steel: what matters in a grinder.",
"meta_keywords": ["pepper grinder", "burr grinder"],
"tags": ["Kitchen"],
"excerpt": "A burr grinder gives an even grind; a blade one does not.",
"key_takeaways": ["A burr grinder gives an even grind; a blade one does not."],
"faq": [{ "question": "Ceramic or steel?", "answer": "Steel for pepper, ceramic for salt." }],
"hero_image": { "url": "https://seonis.ai/storage/images/5/918.jpg", "alt": "A pepper grinder" },
"infographic_url": null,
"word_count": 1812,
"published_url": null,
"published_at": null,
"updated_at": "2026-09-06T06:31:12+00:00",
"created_at": "2026-09-05T02:14:55+00:00",
"quality": { "seo_score": 88, "language_score": 96, "language_findings": [] }
}
],
"meta": { "page": 1, "per_page": 50, "total": 1, "last_page": 1, "has_more": false }
}
GET
/api/v1/articles/{id}
Jeden článok so všetkým, čo zoznam vynecháva: content_markdown, content_html, FAQ ako schema.org JSON-LD pripravené na vloženie do stránky a všetky výmenné odkazy, ktoré článok obsahuje.
Názvy polí sú zámerne rovnaké ako tie, ktoré posiela náš webhook. Ak už máte prijímač webhookov, ten istý parser prečíta aj toto.
Príklad
curl https://seonis.ai/api/v1/articles/918 \
-H "Authorization: Bearer $SEONIS_API_KEY"
{
"article": {
"id": 918,
"site_id": 5,
"language": "en",
"status": "ready",
"title": "How to choose a pepper grinder",
"slug": "how-to-choose-a-pepper-grinder",
"meta_description": "Burr or blade, ceramic or steel: what matters in a grinder.",
"content_markdown": "Grinders differ.\n\n## Burr or blade\n\nA **burr** grinder ...",
"content_html": "<p>Grinders differ.</p>\n<h2>Burr or blade</h2> ...",
"faq_schema": { "@context": "https://schema.org", "@type": "FAQPage", "mainEntity": [] },
"hero_image": { "url": "https://seonis.ai/storage/images/5/918.jpg", "alt": "A pepper grinder" },
"word_count": 1812,
"published_url": null,
"updated_at": "2026-09-06T06:31:12+00:00",
"quality": { "seo_score": 88, "language_score": 96, "language_findings": [] },
"exchange_links": []
}
}
POST
/api/v1/articles/{id}/published
Tu článok zverejníte; tu nám oznámite adresu. Je to jediný endpoint, ktorý niečo mení.
Urobí presne to isté ako doručenie, ktoré vykonáme sami: článok sa označí ako zverejnený, započíta sa do Vášho mesačného limitu, položka plánu sa uzavrie, všetky výmenné odkazy v ňom dostanú adresu, na ktorú čakal overovač, a Vaša Facebook Page dostane oznámenie, ak ste ju pripojili. Bez tohto volania zostane článok navždy pripravený a nič z toho sa nestane.
Príklad
curl -X POST https://seonis.ai/api/v1/articles/918/published \
-H "Authorization: Bearer $SEONIS_API_KEY" \
-H "Content-Type: application/json" \
-d '{"url": "https://peppervale.co.uk/blog/how-to-choose-a-pepper-grinder"}'
Odpovede
| 200 |
Zaznamenané. Článok sa vráti s novým stavom, published_at a published_url. |
| 422 |
Chýba url alebo to nie je úplná adresa http:// alebo https://. |
| 409 |
Článok nie je pripravený na publikovanie alebo je už evidovaný ako publikovaný. Článok sa vráti spolu s odmietnutím, takže vidíte, čo z toho platí. |