Seovyn docs

Everything you need to run Seovyn.

Set it up in an afternoon, shape how it writes, and decide how much it does on its own. Every rule and number here is what the product actually does.

Start here

Browse the docs

41 pages, from your first article to the webhook payload.

Get started

Set up in an afternoon, and the ideas everything else builds on.

Find topics

Where ideas come from, and how Seovyn decides what's worth writing.

Write

Your voice, your facts, and how every draft is researched and scored.

Review

Approving, editing and rejecting drafts, and earning autopilot.

Publish

Connect your site and control how articles go out.

Measure

How articles do in Google, and what Seovyn does about it.

Browser Agent

Hand Pilot the browser jobs that have no API.

Account

Signing in, organizations, plans and emails.

Reference

The webhook, every limit and default, and fixes for common problems.

Publish anywhere

One key or token, a minute, and every approved article lands on your site.

app/api/content-webhook/route.tsTypeScript
import { createHmac, timingSafeEqual } from "node:crypto";

const SECRET = process.env.SEOVYN_WEBHOOK_SECRET!;

export async function POST(request: Request) {
  const raw = await request.text();
  const sent = request.headers.get("x-contentautopilot-signature") ?? "";
  const expected = createHmac("sha256", SECRET)
    .update(raw)
    .digest("hex");

  const a = Buffer.from(sent);
  const b = Buffer.from(expected);
  if (a.length !== b.length || !timingSafeEqual(a, b)) {
    return new Response("Bad signature", { status: 401 });
  }

  const { event, data } = JSON.parse(raw);
  // event: article.approved or article.updated
  // Save or update the page identified by data.slug.
  return new Response("ok");
}

Still looking?

New to SEO terms? The SEO glossary explains 30 of them, and there are 9 free tools that run in your browser.