MINARA

プロフィール管理

GET/PUT/DELETE /v1/profile、/v1/profile/tags/:name、/v1/profile/prompt:パーソナライズ情報(金融プロフィール、タグ、カスタムプロンプト)を読み取り・編集します。

GET /v1/profile

パーソナライズのスナップショット、すなわち Minara が現在ユーザーについて把握している情報を返します。REPL の /profile コマンドおよび minara profile show と同等です。

メソッドGET
パス/v1/profile
認証GATEWAY_AUTH_TOKEN 設定時は Authorization: Bearer <token> が必要
カテゴリpersonalization

レスポンス 200

{
  "ok": true,
  "data": {
    "trading_summary": {
      "platform_wallet_summary": "Cycle-aware swing trader. Spot: BTC accumulation in pullbacks. Perps: short-bias hedge on ETH across two subs.",
      "reference_wallets_summary": null
    },
    "memories": [
      { "id": 1, "statement": "Prefers long-term BTC holds.", "subcategory": "preference", "created_at": "2026-04-13T10:00:00Z" }
    ],
    "tags": [
      { "name": "Risk Profile", "value": "Balanced", "source": "user", "updated_at": "2026-04-13T10:00:00Z" }
    ],
    "custom_prompt": "Respond in casual tone",
    "settings": { "include_memories": true, "include_trading_summary": true, "include_tags": true }
  }
}

platform_wallet_summary はパーソナライズ再構築器が 3 つのソースから構成します。セッション内の trade_historyperps_fills(Minara /v1/perp-wallets/fills のサブアカウント横断ミラー)、external_spot_activities(Minara /v1/tx/cross-chain/activities)です。LLM は 4 フィールド(全体、spotBreakdownperpsBreakdown、参照ウォレット)を出力し、再構築器は Spot: / Perps: 接頭辞付きの 1 つの文字列に連結します。下流の読み取り側は 1 つの要約を確認しつつ、各機能面の断片を解析できます。完全なパイプラインはパーソナライズ再構築器を参照してください。

tags[].source フィールドには 3 つの値があります。

  • user:ユーザーが明示的に設定(REPL /profile set、CLI minara profile set、REST PUT /v1/profile/tags/:name)。
  • learned_preference:行動上の設定が昇格し、このタグへ橋渡しされたときに設定システムが設定。
  • inferred:定期的なパーソナライズ再構築器がチャット履歴から導出。

優先順位は user > learned_preference > inferred です。下位層の書き込みは上位層の行に対して静かにスキップされます。


PUT /v1/profile/tags/:name

単一のユーザータグを設定または更新します。:name パスパラメーターには正規タグ名(例:Risk Profile)または slug 形式(例:risk-profile)を指定でき、URL はパーセントエンコードする必要があります。

メソッドPUT
パス/v1/profile/tags/:name
認証GATEWAY_AUTH_TOKEN 設定時は Authorization: Bearer <token> が必要
本文{ "value": "Conservative" }、または消去する { "value": null }
カテゴリpersonalization

リクエスト本文の source フィールドにかかわらず、書き込みは常に source: "user" として記録されます。API 利用者は inferredlearned_preference の出所を主張できません。これらは再構築器と設定システム用に予約されています。

レスポンス 200(成功):

{ "ok": true, "data": { "name": "Risk Profile", "value": "Conservative", "source": "user", "updated_at": "2026-04-17T10:23:00Z" } }

レスポンス 422(未知のタグまたは無効な値):

{ "ok": false, "error": "Invalid value 'Reckless' for \"Risk Profile\". Allowed: Aggressive / Balanced / Conservative" }

DELETE /v1/profile/tags/:name

{ "value": null } を指定した PUT と同等です。タグを消去しながらソフト削除マーカーを維持するため、その後の推論再構築で再設定されません。source: "user" として記録されます。

メソッドDELETE
パス/v1/profile/tags/:name
認証GATEWAY_AUTH_TOKEN 設定時は Authorization: Bearer <token> が必要
カテゴリpersonalization

レスポンス 200

{ "ok": true, "data": { "name": "Risk Profile", "value": null, "source": "user", "updated_at": "2026-04-17T10:23:00Z" } }

PUT /v1/profile/prompt

ユーザーのカスタムシステムプロンプト追記を設定します。

メソッドPUT
パス/v1/profile/prompt
認証GATEWAY_AUTH_TOKEN 設定時は Authorization: Bearer <token> が必要
本文{ "text": "Respond in casual tone" }(最大 2000 文字)
カテゴリpersonalization

レスポンス 200

{ "ok": true, "data": { "custom_prompt": "Respond in casual tone" } }

リクエスト本文が約 8 KB より大きい場合、解析前に レスポンス 413 を返します。

text がない、空、文字列以外、または 2000 文字より長い場合は レスポンス 422 を返します。


DELETE /v1/profile/prompt

カスタムプロンプトを消去します。

メソッドDELETE
パス/v1/profile/prompt
認証GATEWAY_AUTH_TOKEN 設定時は Authorization: Bearer <token> が必要
カテゴリpersonalization

レスポンス 200

{ "ok": true, "data": { "custom_prompt": null } }

関連エンドポイント

次のエンドポイントはプロフィール/パーソナライズ機能を補完し、それぞれ自動生成ページで説明されています。

完全な機械可読インターフェースは OpenAPI 3.1 仕様 をダウンロードしてください。

目次