GET
/api/v1/me
Račun, ki mu ključ pripada, ter ime in predpona samega ključa. Predvsem uporabno za eno stvar: pove vam, da je ključ v tem okolju tisti ključ, za katerega mislite, da je.
Primer
curl https://seonis.ai/api/v1/me \
-H "Authorization: Bearer $SEONIS_API_KEY"
GET
/api/v1/sites
Vsako spletno mesto v računu. id je tisto, po čemer seznam člankov filtrira, domena pa je tam zato, da se lahko skript za gradnjo ujema z nečim, kar že pozna, namesto da nosi id.
Primer
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
Stran člankov, najnovejša sprememba najprej, brez besedila. Razvrščeno po času zadnje spremembe posameznega članka in ne po času nastanka, zato je updated_since uporaben: članek, ki je že objavljen, je lahko pozneje urejen, ko je vanj dodana povezava ali odstranjena iz njega.
Parametri poizvedbe
| Ime |
Kaj naredi |
| site_id |
Eno spletno mesto iz /sites. id, ki ni v Vašem računu, vrne 404. |
| status |
Ena od vrednosti draft, qa, needs_repair, review, ready, published, failed. Karkoli drugega vrne 422 in ne prazne strani. "ready" je tisto, kar želi gradnja: napisano, preverjeno in še nikjer objavljeno. |
| updated_since |
ISO 8601, na primer 2026-09-06T00:00:00Z. Zapomnite si časovni žig zadnjega zagona in ga pošljite nazaj pri naslednjem. |
| per_page |
Do 100. Privzeta vrednost je 25. |
| page |
Od 1. meta.has_more pove, ali morate zahtevati še eno. |
Primer
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}
En članek z vsem, kar seznam izpusti: content_markdown, content_html, FAQ kot schema.org JSON-LD, pripravljen za vstavitev na stran, in vse izmenjalne povezave, ki jih članek vsebuje.
Imena polj so namenoma enaka tistim, ki jih pošilja naš webhook. Če že imate sprejemnik za webhook, bo isti razčlenjevalnik prebral tudi to.
Primer
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
Članek objavite; tukaj nam sporočite naslov. To je edina končna točka, ki karkoli spremeni.
Naredi točno to, kar naredi objava, ki jo izvedemo sami: članek je označen kot objavljen, všteje se v Vašo mesečno kvoto, postavka načrta se zapre, vse izmenjalne povezave v njem dobijo naslov, na katerega je čakal preverjevalnik, in Vaša Facebook Page je obveščena, če ste jo povezali. Brez tega klica članek za vedno ostane pripravljen in nič od tega se ne zgodi.
Primer
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"}'
Odgovori
| 200 |
Zabeleženo. Članek se vrne z novim statusom, published_at in published_url. |
| 422 |
URL manjka ali pa ni poln naslov http:// ali https://. |
| 409 |
Članek ni pripravljen za objavo ali pa je že zabeležen kot objavljen. Članek se vrne z zavrnitvijo, da lahko vidite, kaj od tega velja. |