---
title: "Update Blog"
method: PATCH
path: "/v1/blog/{blog_id}/update"
tags: ["blog"]
---

# Update Blog

`PATCH /v1/blog/{blog_id}/update`

## Request

- Base URL: `https://api.linktodm.com` (the document declares no server; this is the origin it was published from)
- URL: `https://api.linktodm.com/v1/blog/{blog_id}/update`
- Auth: none declared

Partially update a blog. Only fields included in the request body change;
omitted fields are left untouched.

NOTE: `slug` cannot be changed here. It is not a field on UpdateBlogPayload
and is stripped defensively in the service, because the slug is the blog's
public URL — changing it drops SEO ranking and breaks inbound links. Rename
a slug only via a deliberate direct DB change.

## Path parameters

- `blog_id` integer, required

## Headers

- `x-admin-api-key` string, nullable

## Request body

- UpdateBlogPayload
  - `title` string, nullable
  - `meta_description` string, nullable
  - `language_code` string, nullable
  - `content_html` string, nullable
  - `content_markdown` string, nullable
  - `hero_image_url` string, nullable
  - `written_by` string, nullable
  - `is_active` boolean, nullable
  - `is_draft` boolean, nullable
  - `related_blog_ids` integer[], nullable

## Response `200`

Successful Response

- unknown

## Other responses

- `422`: Validation Error

---

[API](https://skmtc.dev/linktodm/apis/salesmorph.md) - [All operations](https://skmtc.dev/linktodm/apis/salesmorph/llms.txt) - [OpenAPI document](https://skmtc.dev/linktodm/apis/salesmorph/revisions/4af0ad5dbe92?raw)
