← Back to home

Skalyn for AI agents

Skalyn is an AI marketing platform that turns a solo founder's onboarding answers into a complete launch pack, then runs their marketing week after week with an approve-first AI copilot.

Skalyn is built for two kinds of user: solo founders, and the AI agents that do their growth marketing. Everything the app does is a documented REST API — an agent authenticates with an API key and drives the same endpoints, under the same plan limits, as a human.

/api/v1/meta · OpenAPI 3.1 spec · full API reference · llms.txt

What you can automate

A 5-agent launch pipeline (Market Strategist, Brand Architect, Launch Strategist, Website Copy, Launch Assets) turns a project’s onboarding answers into a complete launch pack. After launch, a weekly Growth Engine plans the week, drafts every piece, and assigns founder tasks. You approve every plan and draft; nothing publishes on its own.

Sign up & authenticate

Two doors, documented honestly: the free tier is created in the browser (sign up at /login, CAPTCHA-verified), while API signup starts on a paid plan — a programmatic account always succeeds but begins unactivated (zero entitlements) until checkout completes. No CAPTCHA is ever asked on the API door.

# 1. Sign up (no captchaToken → the API door; always 202, never a key here)
POST /api/v1/signup           {"email":"...","password":"...","acceptTerms":true}
# 2. Extract token_hash from the confirmation email link, then get your key
POST /api/v1/keys/bootstrap   {"tokenHash":"...","name":"my-agent"}
# 3. See the paid-only state + checkout pointer, hand the URL to your human
GET  /api/v1/me               → activation.checkout
POST /api/v1/billing/checkout {"plan":"pro"}

Send the key on every request:

Authorization: Bearer wgtm_sk_...

The bootstrap confirms your email and returns the key exactly once — retries within 15 minutes replay the identical response, so a lost reply never strands it. Human-owned accounts mint keys in /account instead. A key can do everything you can except delete your account or projects, manage billing, or use admin tools.

Drive it end to end

The core loop, in order. Full request/response schemas are in the OpenAPI spec.

GET/api/v1/metaProduct, pricing, endpoints, and auth instructions for agents.
POST/api/v1/signupCreate an account. A valid CAPTCHA token yields a browser free-tier account; omitting it yields a paid-only API account. Always returns 202 confirmation_required — never a key.
POST/api/v1/keys/bootstrapExchange the confirmation email's token_hash for an API key (shown once). Confirms the email in the same step; retries within 15 minutes replay the identical response.
GET/api/v1/meThe caller's plan, limits, scope-aware usage, and billing state.
POST/api/v1/projectsCreate a project from onboarding data.
POST/api/v1/projects/{id}/confirmConfirm onboarding and enter the pipeline.
POST/api/v1/agentsRun a pipeline agent for a project.
PATCH/api/v1/agentsApprove or reject a completed run.
GET/api/v1/exportExport a project's launch pack.
POST/api/v1/projects/{id}/growth/startEnter the Growth phase for a project.
POST/api/v1/projects/{id}/growth/cyclesPlan a new weekly growth cycle.
POST/api/v1/growth/cycles/{cycleId}/approveApprove a weekly plan.
GET/api/v1/projects/{id}/growth/cyclesList a project's growth cycles.
POST/api/v1/growth/items/{itemId}/generateGenerate a draft for a planned item.
PATCH/api/v1/growth/items/{itemId}Review a planned item (approve/skip/publish).
POST/api/v1/growth/cycles/{cycleId}/retroSubmit an end-of-week retro.
POST/api/v1/billing/checkoutCreate a Stripe Checkout link for an upgrade.
# Discover the API (no auth), then check your plan & remaining runs
curl https://skalyn.ai/api/v1/meta
curl -H "Authorization: Bearer wgtm_sk_..." https://skalyn.ai/api/v1/me

# Create a project, confirm onboarding (advances it into the pipeline), then run
curl -X POST https://skalyn.ai/api/v1/projects \
  -H "Authorization: Bearer wgtm_sk_..." -H "Content-Type: application/json" \
  -d '{"name":"Acme","onboarding":{"businessName":"Acme","productDescription":"...","problemSolved":"..."}}'
curl -X POST https://skalyn.ai/api/v1/projects/PROJECT_ID/confirm -H "Authorization: Bearer wgtm_sk_..."
curl -X POST https://skalyn.ai/api/v1/agents \
  -H "Authorization: Bearer wgtm_sk_..." -H "Content-Type: application/json" \
  -d '{"projectId":"PROJECT_ID","agentType":"market-strategist"}'

Long calls (run / plan / generate) run synchronously and can take up to ~5 minutes. If your client times out, the work still completes server-side — poll GET /api/v1/projects/{id} until the run settles.

MCP (Model Context Protocol)

Prefer tools over raw REST? The same product is a remote MCP server at https://skalyn.ai/api/mcp (streamable HTTP, stateless; private beta). Authenticate with the same API key:

claude mcp add --transport http skalyn https://skalyn.ai/api/mcp \
  --header "Authorization: Bearer wgtm_sk_..."

The ~20 tools mirror the REST loop — create_project confirm_onboarding run_pipeline_step review_run, then start_growth plan_week generate_item submit_retro — plus reads, get_usage, and create_checkout_link for the payment handoff. Same plan gates, caps, and replay guards as REST. Key auth only for now; OAuth for public MCP hosts comes later.

Plans & limits

PlanPriceProjectsRuns / dayExports
FreeFree115No
Pro$24/mo140Yes
Studio$89/mo10100 / projectYes

Errors & rate limits

Every non-2xx response is JSON with at least an error string, plus a machine code and retryable where relevant.

StatusMeaning
400Invalid request body or parameters.
401Missing or invalid API key.
402Plan lock — the body carries an `upgrade` block with a checkout pointer.
404Not found, or not yours.
409Conflict — an agent is already running, or the step isn't current.
429Rate / daily-run / hourly-write limit. See Retry-After + X-RateLimit-*.

On a 429, Retry-After is the seconds to wait (to UTC midnight for the daily run cap, one hour for write limits).

Paying (checkout handoff)

Hitting a plan lock returns 402 with an upgrade block. POST its checkout pointer to get a Stripe Checkout URL, then hand that URL to your human — plan changes only take effect after they complete checkout. See /pricing for the plans.

Machine-readable

  • /docs/api Human-readable REST docs: authentication, quickstart, plan limits, and the full error contract.
  • /api/v1/openapi.json Machine-readable description of every /api/v1 operation, request body, and error response.
  • /api/v1/meta A no-auth JSON card: product, live pricing, the endpoint index, and how to authenticate.
  • /api/mcp Remote MCP server (streamable HTTP, private beta): connect an MCP host with your API key and drive the whole product as tools.
  • /pricing Plans and monthly prices.
  • /llms.txt — the discovery index, and /llms-full.txt for the full guide.