---
title: "Update Author (PUT)"
method: PUT
path: "/authors/{id}"
tags: ["Authors"]
---

# Update Author (PUT)

`PUT /authors/{id}`

Update an author's profile information using PUT.

**Editable Fields:**
- author_name: Author display name
- avatar_url: Profile image URL

**Image Processing:**
Profile image URLs are uploaded to Inblog R2 storage by default.
To preserve original URLs, use the `preserve_external_images=true` query parameter.

## Path parameters

- `id` string, uuid, required

## Query parameters

- `preserve_external_images` boolean

## Request body

- AuthorUpdateRequest
  - `jsonapi` object, required — JSON:API version metadata included in every JSON:API response.
    - `version` string, required — Implemented JSON:API version.
  - `data` object — Author resource payload to update.
    - `type` 'authors', required — Resource type identifier. Always `authors`.
    - `attributes` object — Author fields to update.
      - `author_name` string — Author display name
      - `avatar_url` union
        - string, uri — Profile image URL (external URLs are uploaded to Inblog storage by default)
        - string — Base64 data URL (max 10MB, always uploaded to Inblog storage)

## Response `200`

Author updated successfully

## Other responses

- `400` — Bad request
- `401` — Authentication failed
- `403` — Insufficient permissions
- `404` — Resource not found
- `500` — 서버 내부 오류

---

[API](https://skmtc.dev/inblog/apis/inblog-api.md) · [All operations](https://skmtc.dev/inblog/apis/inblog-api/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/inblog/inblog-api/revisions/445daf773d30/schema)
