WrytzeWrytze Docs
Getting Started

Quickstart

Go from zero to fetching blogs in 5 minutes.

This guide walks you through creating an API key, making your first request, and understanding the response. By the end you will have fetched a list of published blogs from your Wrytze workspace.

Get your API key

Log in to the Wrytze dashboard and navigate to Settings > API. Click Create API Key, give it a descriptive name (e.g. "Production website"), and copy the key.

Your key will look something like this:

wrz_abc123def456ghi789jkl012mnopqrs

Your API key is displayed only once at creation time. Store it in a secure location immediately. If you lose it, you will need to generate a new one.

Install the SDK (optional)

If you prefer a typed client over raw fetch calls, install the Wrytze TypeScript SDK:

npm install @wrytze/sdk

The SDK is entirely optional. Every example in these docs also shows how to use plain fetch or cURL so you can integrate from any language or runtime.

Make your first request

Fetch the five most recent published blogs from your organization:

curl -H "X-API-Key: wrz_abc123def456ghi789jkl012mnopqrs" \
  "https://app.wrytze.com/api/v1/blogs?limit=5"

Never expose your API key in client-side code. Always make API calls from a server environment (API routes, server components, serverless functions) and store the key in an environment variable.

See the response

A successful request returns a JSON object with a data array of blog objects and a pagination object:

{
  "data": [
    {
      "id": "blog_abc123",
      "title": "Getting Started with React 19",
      "slug": "getting-started-with-react-19",
      "excerpt": "Learn how to build modern web applications with React 19...",
      "metaTitle": "Getting Started with React 19 | Acme Blog",
      "metaDescription": "A comprehensive guide to the latest React features...",
      "featuredImageUrl": "https://cdn.wrytze.com/images/react-19.jpg",
      "featuredImageAlt": "React 19 hero image",
      "wordCount": 1250,
      "readingTimeMinutes": 5,
      "publishedAt": "2026-02-15T10:00:00.000Z",
      "websiteId": "ws_xyz789",
      "categories": [
        { "name": "Technology", "slug": "technology" }
      ],
      "tags": [
        { "name": "React", "slug": "react" }
      ]
    }
  ],
  "pagination": {
    "page": 1,
    "limit": 5,
    "total": 42,
    "pages": 9
  }
}

Here is what the key fields mean:

FieldDescription
idUnique blog identifier. Use it to fetch a single blog via /api/v1/blogs/:id.
slugURL-friendly identifier. Use it with /api/v1/blogs/slug/:slug to fetch by slug.
excerptA short summary suitable for blog listing cards.
metaTitle / metaDescriptionSEO metadata for the <head> of your blog page.
featuredImageUrlHero image URL. May be null if no image was set.
wordCount / readingTimeMinutesUseful for displaying reading time badges.
publishedAtISO 8601 timestamp of when the blog was published.
categories / tagsArrays of { name, slug } objects for filtering and display.
pagination.totalTotal number of matching blogs across all pages.
pagination.pagesTotal number of pages at the current limit.

Next steps

You have successfully made your first API call. From here you can explore the full API reference, learn how to build complete blog pages, or drop in a ready-made template.

On this page