Skribra for developers and AI agents
Everything machine-readable about Skribra, in one place: a public REST API that needs no key, an OpenAPI 3.1 specification, a markdown representation of every page on this site, and the two integration surfaces customers use to publish — the Content API and the webhook.
The public content API
Everything skribra.com publishes is readable as JSON: the SEO glossary, the free tools, the agents, the product features, the competitor comparisons, pricing, and the blog Skribra writes for itself. Use it to evaluate Skribra, to cite it, or to build on it — no account required.
curl https://skribra.com/api/v1/search?q=internal+linking
curl https://skribra.com/api/v1/glossary/backlink
curl https://skribra.com/api/v1/pricingGET /api/v1Index of every collection, with its URLGET /api/v1/search?q=Search every page title and description on the siteGET /api/v1/pagesEvery page, with its HTML and markdown URLsGET /api/v1/glossaryThe SEO glossary — definitions, key points, sourcesGET /api/v1/agentsThe named agents, and the signal each one watchesGET /api/v1/featuresProduct features, with FAQsGET /api/v1/comparisonsCompetitor comparisons and feature matricesGET /api/v1/toolsThe free SEO and writing toolsGET /api/v1/pricingPlans, prices and limitsGET /api/v1/articlesSkribra's own published blog articles
Responses are { "data": … }; lists carry { "data": { "items": [], "pagination": {} } }. Errors carry a stable code and a message, the same shape as the Content API. Every resource includes a url and a markdown_url, so you can list cheaply as JSON and fetch only the page you need as markdown.
Markdown for every page
Every page on this site has a markdown representation of the same content — not a summary. Ask for it by header or by suffix; both return Content-Type: text/markdown and Vary: Accept, so a cache between us cannot hand you the wrong one.
curl -H "Accept: text/markdown" https://skribra.com/glossary/backlink
curl https://skribra.com/glossary/backlink.md
curl https://skribra.com/index.md # the home pageBlog articles come back with the body converted to markdown, tables included. A path that does not exist answers 404 with a markdown body listing where to look next — the same list you are reading now.
Machine-readable files
- /llms.txtThe site index in the llmstxt.org format: every page, grouped, with a one-line description. Long reference lists sit under
## Optional. - /llms-full.txtThe whole site as one markdown file — home, agents, features, comparisons, tools and all glossary terms. Blog articles are linked, not inlined.
- /openapi.json · /openapi.yamlOpenAPI 3.1 for both APIs. Also served at
/api/openapi.jsonand/api/openapi.yaml. - /.well-known/api-catalogRFC 9727 linkset naming both APIs, their OpenAPI description and their documentation.
- /sitemap.xmlEvery URL on the site, blog articles included.
- /robots.txtAll crawlers welcome, AI crawlers named explicitly.
The authenticated Content API
A different API for a different job: pull your own published articles out of Skribra and render them on your own site, with no webhook receiver and no database to keep in sync. One bearer key per account, three endpoints, at https://api.skribra.com/v1.
- Content API documentationAuthentication, the three endpoints, caching, incremental sync with
updatedSince, error codes and rate limits. - Publish webhook documentationThe push half: Skribra POSTs each article to an endpoint you host. Payload shape, signature verification, redirects and content-health flags.
- CMS integrationsWordPress, Shopify, Webflow and Notion, if you would rather not write code at all.