---
title: "Get Self Portrait"
method: GET
path: "/api/growth/self-portrait"
tags: ["Growth Journey"]
---

# Get Self Portrait

`GET /api/growth/self-portrait`

## Request

- Base URL: `https://api.soeru.biz` (the document declares no server; this is the origin it was published from)
- URL: `https://api.soeru.biz/api/growth/self-portrait`
- Auth: none declared. Required headers: `authorization`

soeru の自己紹介テキスト (一人称、200 字)。

voice_codex を Sonnet で詩化、24h cache。voice_codex が空の shop には
LLM を呼ばず空状態 (status="empty") を返す。

レスポンス例:
    {
      "status": "ok",
      "text": "私はこのお店の声で書きます。\n丁寧だけど距離が近い...",
      "generated_at": "2026-05-01T12:00:00+00:00",
      "voice_codex_updated_at": "2026-04-30T18:00:00+00:00",
      "from_cache": false
    }

## Query parameters

- `force` boolean: Bypass 24h cache (e.g. after 違和感 click)

## Headers

- `x-shop-id` string, nullable: Optional shop ID
- `authorization` string, required: Bearer <token>

## Response `200`

Successful Response

- object

## Other responses

- `422`: Validation Error

---

[API](https://skmtc.dev/soeru/apis/soeru-api.md) · [All operations](https://skmtc.dev/soeru/apis/soeru-api/llms.txt) · [OpenAPI document](https://skmtc.dev/soeru/apis/soeru-api/revisions/63f8d371abed?raw)
