# solari tiktok account profile

> SOLARIが把握しているTikTokアカウント1件の全情報。

- **CLI**: `solari tiktok account profile`
- **MCP ツール**: `solari_tiktok_account_profile`
- **アクセス権**: `solari:read` — サインイン済みの SOLARI アカウントであれば利用できます。

TikTokアカウント1件の完全なSOLARIプロフィール。username（ハンドル）、nickname、bio、follower/following/like/videoの各カウント、region、verified/private/commerceの各フラグ、profile_url、および直近投稿の埋め込みプレビュー（recent_posts）を返します。アカウントはaccount_id（solari_tiktok_account_searchが返すTikTokアカウントのUUID）またはusername（TikTokハンドル）で指定してください。未追跡のハンドルは初回リクエスト時にライブ取得されます（10〜40秒かかります。レスポンスではfetched_on_demand=trueとなり、バックグラウンドのクロールが完了するまでは直近の投稿しか利用できません）。その上でnot-foundエラーが返る場合、そのハンドルはTikTokに存在しません。サインイン済みのSOLARIアカウントであれば利用できます。

**どんなときに使うか** — TikTokアカウントを掘り下げる際の最初の呼び出し。直近の投稿は埋め込みで返ります。

**何が返るか** — プロフィールの各フィールド、直近投稿のプレビュー、追跡状態。

## パラメータ

- `account_id` (string, 任意, uuid, pattern ^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$) — TikTokアカウントのaccount_id（SOLARIアカウントのUUID）。これかusernameのいずれかを指定してください。
- `username` (string, 任意, ≤ 64 chars) — TikTokハンドル。先頭の@はあってもなくてもかまいません。account_idが指定されている場合は無視されます。

## レスポンス

### `Response`

- `account_id` (uuid) — TikTokのaccount_id。
- `username / nickname / bio` (string) — ハンドル、表示名、bioのテキスト。
- `bio_links` (string[]) — bio内のリンク。
- `follower_count / following_count` (integer) — フォロワー数とフォロー数。
- `heart_count` (integer) — アカウント全体の累計いいね数。
- `video_count` (integer) — 公開した動画数。
- `is_verified / is_private` (boolean) — 認証と非公開のフラグ。
- `is_commerce_user / commerce_user_category` (boolean · string) — コマースの状態とカテゴリ。
- `region / language` (string | null) — リージョンコードと言語コード。
- `avatar_url / profile_url` (string) — アバターと公開プロフィールのリンク。
- `tracked` (boolean) — アカウントが定期クロールの対象かどうか。
- `sync_status` (string) — クロールの状態。
- `synced_at` (timestamp) — 最終クロール時刻。
- `recent_posts` (object[]) — 直近投稿のプレビュー。
- `fetched_on_demand` (boolean) — このリクエストが初めてそのアカウントを取り込んだ場合にtrue。

### `recent_posts[]`

- `post_id` (uuid) — SOLARIのpost id。Instagramのpost idとは別の名前空間。
- `video_id` (string) — 公開されているTikTokの数値ID — /video/または/photo/以降の数字。
- `url` (string) — TikTokの公開パーマリンク。
- `account_id` (uuid) — 投稿者のTikTok account_id。
- `username` (string) — 投稿者のハンドル。
- `post_type` (string) — video（単一クリップ）またはcarousel（画像スライドショー）。
- `posted_at` (timestamp) — 投稿日時（UTC）。
- `caption` (string) — キャプションのテキスト。
- `duration_seconds` (integer) — 動画の長さ。
- `width / height` (integer) — 動画の解像度。
- `play_count` (integer) — 再生数。
- `like_count` (integer) — いいね数。
- `comment_count` (integer) — コメント数。
- `share_count` (integer) — シェア数。
- `collect_count` (integer) — 保存数。
- `is_ad` (boolean) — TikTokがその投稿を広告として扱っているかどうか。
- `is_pinned` (boolean) — プロフィール上部にピン留めされているか。
- `aigc_label_type` (string | null) — TikTokが付与した場合のAI生成コンテンツラベル。
- `original_language_code` (string | null) — 元の言語コード。
- `cover_url` (string) — カバー画像のURL。
- `video_url` (string) — 動画ファイルのURL。
- `images` (string[]) — カルーセルのスライド。video投稿では空。
- `hashtags` (string[]) — キャプションから抽出したハッシュタグ。
- `mentions` (string[]) — キャプション内でメンションされたハンドル。
- `transcript` (string | null) — 音声の文字起こし。include_transcript=trueのときのみ入ります。

## 例

```console
$ solari tiktok account profile username=innisfree_official
```

_読みやすさのため、長い文字列と繰り返しの配列要素を省略しています。_

```json
{
  "account_id": "019b2137-f76e-7b33-9437-26044fa7b1ed",
  "username": "innisfree_official",
  "nickname": "Innisfreeofficial",
  "bio": "NATURE MEETS KOREAN SKIN SCIENCE",
  "bio_links": [
    "https://linktr.ee/innisfree_official"
  ],
  "follower_count": 143900,
  "following_count": 14,
  "heart_count": 2200000,
  "video_count": 767,
  "is_verified": true,
  "is_private": false,
  "is_commerce_user": true,
  "commerce_user_category": "Beauty",
  "region": "KR",
  "language": null,
  "avatar_url": "https://p16-common-sign.tiktokcdn-eu.com/tos-alisg-avt-0068/3f8e48dc4a284a8ead37e93175ebdb86~tplv-tiktokx-cropcenter:720:720.jpeg?dr=10399&refresh_token=04b90255&x-expires=1788541200&x-signature=Gd3gJu4HyBZPCr%2FqEevyDs6 …",
  "profile_url": "https://www.tiktok.com/@innisfree_official",
  "sync_status": "OK",
  "tracked": true,
  "synced_at": "2026-09-02T17:16:05.835000Z",
  "recent_posts": [
    {
      "post_id": "01a0631e-f0df-7e9d-a09b-d84bc31d3834",
      "video_id": "7680375687139642645",
      "url": "https://www.tiktok.com/@innisfree_official/video/7680375687139642645",
      "account_id": "019b2137-f76e-7b33-9437-26044fa7b1ed",
      "username": "innisfree_official",
      "post_type": "video",
      "posted_at": "2026-09-02T12:00:00Z",
      "caption": "Deeply hydrated skin—NO OFF HOURS. 💚  wherever the day takes MINGYU—his hydration stays SUPERCHARGED ⚡️ Green Tea Ceramide Milk: Lightweight milky toner that won't clog your pores  Green Tea Ceramide Mist: Touch-free, fa …",
      "duration_seconds": 23,
      "width": 1080,
      "height": 1920,
      "play_count": 493,
      "like_count": 37,
      "comment_count": 2,
      "share_count": 0,
      "collect_count": 3,
      "is_ad": false,
      "is_pinned": false,
      "aigc_label_type": null,
      "original_language_code": null,
      "cover_url": "https://smr-images-a.bzine.co/tiktok/users/019b2137-f76e-7b33-9437-26044fa7b1ed/posts/01a0631e-f0df-7e9d-a09b-d84bc31d3834/medias/cover.jpg",
      "video_url": "https://smr-images-a.bzine.co/tiktok/users/019b2137-f76e-7b33-9437-26044fa7b1ed/posts/01a0631e-f0df-7e9d-a09b-d84bc31d3834/medias/origin.mp4",
      "images": [],
      "hashtags": [],
      "mentions": [],
      "transcript": null
    },
    "… 5 more"
  ],
  "fetched_on_demand": false
}
```

## MCP 呼び出しとして

```json
{
  "name": "solari_tiktok_account_profile",
  "arguments": {
    "username": "innisfree_official"
  }
}
```

## 注意点

- 未追跡のハンドルは初回リクエスト時にライブ取得されます。10〜40秒かかります。fetched_on_demand=trueがその印で、バックグラウンドのクロールが完了するまでは直近の投稿しか存在しません。
- その後にnot-foundエラーが返る場合、そのハンドルはTikTokに存在しません。

## 関連ツール

- [`solari_tiktok_account_posts`](https://solari.sh/docs/tools/tiktok-account-posts.md?lang=ja)
- [`solari_tiktok_account_search`](https://solari.sh/docs/tools/tiktok-account-search.md?lang=ja)
- [`solari_instagram_account_profile`](https://solari.sh/docs/tools/instagram-account-profile.md?lang=ja)
