Misar IO Docs

Articles

Publish, list, and retrieve articles via the MisarBlog API.

Articles

List Articles

GET /articles

Returns a paginated list of the authenticated creator's published articles.

Query Parameters

| Parameter | Type | Default | Description | |-----------|------|---------|-------------| | limit | integer | 20 | Results per page (max 100) | | offset | integer | 0 | Pagination offset | | tag | string | — | Filter by tag slug |

Response

200 OK

{
  "data": [
    {
      "id": "uuid",
      "slug": "building-ai-apps-with-next-js",
      "title": "Building AI Apps with Next.js",
      "excerpt": "A practical guide to integrating AI into your Next.js applications.",
      "featured_image_url": "https://supabase-blog.misar.io/storage/v1/object/public/covers/abc.jpg",
      "published_at": "2026-04-15T09:00:00Z",
      "read_time_seconds": 480,
      "tags": ["nextjs", "ai", "tutorial"],
      "view_count": 4210,
      "reaction_count": 87,
      "comment_count": 14
    }
  ],
  "total": 37,
  "limit": 20,
  "offset": 0
}

Publish an Article

POST /articles

Publishes a new article or schedules it for future publication.

Request Body

{
  "title": "Building AI Apps with Next.js",
  "content": "## Introduction\n\nThis guide covers...",
  "excerpt": "A practical guide to integrating AI into your Next.js applications.",
  "slug": "building-ai-apps-with-next-js",
  "tags": ["nextjs", "ai", "tutorial"],
  "featured_image_url": "https://...",
  "is_premium": false,
  "scheduled_at": null
}

| Field | Type | Required | Description | |-------|------|----------|-------------| | title | string | Yes | Article title (5–160 chars) | | content | string | Yes | Markdown body | | excerpt | string | No | Short description shown in previews | | slug | string | No | URL slug (auto-generated from title if omitted) | | tags | string[] | No | Array of tag slugs (max 5) | | featured_image_url | string | No | CDN URL for the cover image | | is_premium | boolean | No | Lock behind subscription (default: false) | | scheduled_at | string | No | ISO 8601 datetime to schedule publication; omit to publish immediately |

Response

201 Created

{
  "id": "uuid",
  "slug": "building-ai-apps-with-next-js",
  "url": "https://www.misar.blog/@johndoe/articles/building-ai-apps-with-next-js",
  "published_at": "2026-04-15T09:00:00Z"
}

Get a Single Article

GET /articles/{slug}

Returns full article data by slug.

Response

200 OK — same shape as list items, plus content (full Markdown body).

Errors

| Status | Description | |--------|-------------| | 401 | Invalid or missing API key | | 404 | Article not found or belongs to another user | | 409 | Slug already exists (on create) |