# ヒゲスタイル

# 概要
AI 男性ヒゲスタイルシミュレーション

AI ヒゲスタイルで、トリムヒゲ、無精ヒゲ、フルヒゲ、サークルヒゲ、口ひげ、ゴティヒゲなどのヒゲスタイルをバーチャル試着できます。

ビフォーアフターの結果を確認できます。
ヒゲフィルターには、口ひげ、ショートボックス、ダックテール、サークルなど、数十のスタイルが含まれています。

## 統合ガイド

1. **自撮り画像のアップロード**
   ソース画像は以下の 2 通りの方法で提供できます。

   - **既存の公開画像 URL を使用**
     アップロードの代わりに、AI タスクを開始する際に公開アクセス可能な画像 URL を直接指定できます。

   - **File API 経由でアップロード**
     エンドポイント:
     ```
     POST /s2s/v2.0/file
     ```
     これにより、後続のタスク実行用の `file_id` が返されます。

     - ***重要***: File API を呼び出すだけではファイルはアップロードされません。File API のレスポンスで提供される **URL に手動でファイルをアップロード** する必要があります。その URL がアップロード先です。次に進む前に、ファイルが正常に転送されたことを確認してください。<br></br>
     AI API を呼び出す前に、ファイルが正常にアップロードされていることを確認してください。File API を使用してアップロード URL を取得し、その場所にファイルをアップロードします。アップロードが完了すると、レスポンスに ***file_id*** が含まれます。この ID は、そのファイルに関連する AI 機能にアクセスするために使用します。

       > **警告:** File API のレスポンスで提供される URL にファイルをアップロードしない場合、AI API の使用時に 500 Server Error / unknown_internal_error または 404 Not Found エラーが発生します。

2.  **プリセットスタイルのリスト取得**
    *   /s2s/v2.0/task/template/beard-style を使用してプリセットテンプレートリストを取得し、AI タスクを実行するための ``template_id`` を選択します。

3.  **AI タスクの実行とタスク ID の取得**
    /s2s/v2.0/task/beard-style を使用して AI タスクを実行します。ターゲットユーザー画像には、``src_file_url`` または ``src_file_id`` のいずれかを指定します。適用するスタイルの ``template_id`` を指定し、``task_id`` を取得します。

4.  **タスクのステータス確認のためのポーリング（成功または失敗まで）**
    ``task_id`` を使用して、GET /s2s/v2.0/task/beard-style をポーリングし、現在のエンジンステータスを取得してタスクのステータスを監視します。エンジンがタスクを完了するまで、ステータスは running のままとなり、この段階ではユニットは消費されません。
    AI タスクが成功または失敗した際に通知を受け取るために、Webhook を実装することもできます。詳細は **[Webhook](../../../develop/webhook)** セクションを参照してください。

    > **警告:** 保持期間内にタスクのステータスを確認するためにポーリングを行うことが必須です。保持期間内にポーリングリクエストがない場合、タスクが正常に処理されていてもタイムアウトします。ユニットは消費されます。

    > **警告:** タイムアウトしたタスクのステータスを確認すると、InvalidTaskId エラーが発生します。したがって、AI タスクを実行したら、ステータスが success または error になるまで、保持期間内にステータスを確認するためにポーリングを行う必要があります。

5.  **AI タスクの成功後の結果取得**
    エンジンが入力ファイルを処理し、結果画像を生成すると、タスクのステータスは success に変わります。処理済み画像の URL が返されます。

---

## ファイル仕様とエラー
   * 対応フォーマットと寸法

|AI 機能|対応寸法|対応ファイルサイズ|対応フォーマット|
|  ----  | ----  | ----  | ----  |
|AI ヒゲスタイル生成|解像度: 長辺 < 1024 <br>顔幅 > 256 <br>顔の姿勢: -30 < yaw < 30, <br>単一の顔のみ, <br>顔全体が見えている必要あり|< 10MB|jpg/jpeg|

   * エラーコード

|エラーコード|説明|
|  ----  | ----  |
|error_no_face	|ソース画像に顔が写っていません
|error_src_face_too_small	|顔が小さすぎます
|error_inference	|ヒゲ除去エラーまたはヒゲ生成エラー
|error_face_pose	|ソース画像の顔の姿勢がサポートされていません

   * 環境と依存関係

| サンプルコード言語 / ツール | 推奨ランタイムバージョン |
|---|---|
| cURL | - bash >= 3.2</br>   - curl >= 7.58 (モダンな TLS/HTTP サポート)</br>   - jq >= 1.6 (堅牢な JSON パーシング) |
| Node.js (JavaScript) | Node >= 18 (グローバル fetch 用) |
| JavaScript | - Chrome / Edge >= 80</br>   - Firefox >= 74</br>   - Safari >= 13.1 |
| PHP | PHP >= 7.4 (モダンな TLS/互換性のため), ext-curl (推奨) または allow_url_fopen=On + ext-openssl, ext-json |
| Python | Python >= 3.10 (f-strings 用), requests >= 2.20.0 |
| Java | Java 11+ (HttpClient 用), Jackson Databind >= 2.12.0 |

---

## ユニット消費

| AI 機能 | 消費ユニット |
|---|---|
| AI ヒゲスタイル生成 V1.0 | 2 |

---


License: Privacy policy

## Servers

```
https://yce-api-01.makeupar.com
```

## Security

### BearerAuthenticationV2

[object Object]

Type: http
Scheme: bearer

## Download OpenAPI description

 - [ヒゲスタイル](https://docs.perfectcorp.com/_bundle/@l10n/ja/reference/ai_beard_style.yaml)

## V1.0

 - [GET /s2s/v2.0/task/template/beard-style](https://docs.perfectcorp.com/ja/reference/ai_beard_style/v1.0/paths/~1s2s~1v2.0~1task~1template~1beard-style/get.md)
 - [POST /s2s/v2.0/task/beard-style](https://docs.perfectcorp.com/ja/reference/ai_beard_style/v1.0/paths/~1s2s~1v2.0~1task~1beard-style/post.md): AI タスクは非同期です。機能ごとに Webhook がサポートされている場合は、Webhook による完了処理を優先します。Webhook エンドポイントを設定し、Webhook 署名を検証したうえで、`success` または `error` の通知が来たら、受け取った `task_id` を使ってタスクの結果を照会します。設定と検証の詳細は [Webhook 統合ガイド](../develo
 - [GET /s2s/v2.0/task/beard-style/{task_id}](https://docs.perfectcorp.com/ja/reference/ai_beard_style/v1.0/paths/~1s2s~1v2.0~1task~1beard-style~1%7Btask_id%7D/get.md)
