AI タスクは非同期です。機能ごとに Webhook がサポートされている場合は、Webhook による完了処理を優先します。Webhook エンドポイントを設定し、Webhook 署名を検証したうえで、success または error の通知が来たら、受け取った task_id を使ってタスクの結果を照会します。設定と検証の詳細は Webhook 統合ガイド を参照してください。
Webhook がサポートされていない場合、または統合に使えない場合は、ポーリングを実装します。AI タスクを送信した後、一定の間隔(例:10 秒ごと)でステータスエンドポイントをポーリングし、success または error になるまで待ちます。
エフェクトを適用する対象オブジェクトのゼロベースインデックスです。複数のオブジェクトを含む画像では、まず前処理タスクを実行し、data.results.result 内のオブジェクト座標を確認したうえで、選択したオブジェクトのインデックスを指定します。
前処理ステップでは、エフェクトを適用する前に、入力画像を解析して検出できるすべてのオブジェクトを特定します。検出タスクを実行し、バウンディングボックス座標のリストなど、各オブジェクトの構造化データを返します。このリスト内の各エントリの位置がゼロベースインデックスとして機能し、エフェクトの対象オブジェクトを指定するのに使います。
この情報は、一般的に data.results.result 配下で構造化された形式で返ります。 このステップを先に実行すると、以下ができます。
- 画像内に存在するオブジェクトの数を把握する
- オブジェクトの位置とサイズを確認する
- インデックスで正しい対象オブジェクトを選択する
複数のオブジェクトを含む画像では、必ず前処理ステップを実行してください。 data.results.result を確認して、オブジェクトとそのインデックスを特定してください。 対応するゼロベースインデックスを使って、正しい対象を選択してください。
すべてゼロにすることはできません
{ "cheekbones": 0, "jaw": 0, "face_reshape": 0, "face_reshape_left": 0, "face_reshape_right": 0, "face_width": 0, "chin_reshape": 0, "chin_reshape_left": 0, "chin_reshape_right": 0, "chin_length": 0, "eye_size": 0, "eye_size_left": 0, "eye_size_right": 0, "eye_distance": 0, "eye_angle": 0, "eye_height": 0, "eye_width": 0, "nose_bridge_width": 0, "nose_lift": 0, "nose_size": 0, "nose_tip": 0, "nose_tip_width": 0, "nose_wing": 0, "lip_size": 0, "lip_width": 0, "lip_peak": 0, "lip_height_top": 0, "lip_height_bottom": 0 }
- https://yce-api-01.makeupar.comhttps://yce-api-01.makeupar.com/s2s/v2.0/task/face-reshape
curl -i -X POST \
https://yce-api-01.makeupar.com/s2s/v2.0/task/face-reshape \
-H 'Authorization: Bearer <YOUR_TOKEN_HERE>' \
-H 'Content-Type: application/json' \
-d '{
"src_file_url": "https://example.com/selfie.jpg",
"version": "1.0",
"index": 0,
"features": {
"cheekbones": 0,
"jaw": 0,
"face_reshape": 0,
"face_reshape_left": 0,
"face_reshape_right": 0,
"face_width": 0,
"chin_reshape": 0,
"chin_reshape_left": 0,
"chin_reshape_right": 0,
"chin_length": 0,
"eye_size": 0,
"eye_size_left": 0,
"eye_size_right": 0,
"eye_distance": 0,
"eye_angle": 0,
"eye_height": 0,
"eye_width": 0,
"nose_bridge_width": 0,
"nose_lift": 0,
"nose_size": 0,
"nose_tip": 0,
"nose_tip_width": 0,
"nose_wing": 0,
"lip_size": 0,
"lip_width": 0,
"lip_peak": 0,
"lip_height_top": 0,
"lip_height_bottom": 0
},
"global": {
"skin_smooth_strength": 50,
"skin_smooth_color_intensity": 50
}
}'{ "status": 200, "data": { "task_id": "grH0CvsgXuAIHLUzD0V1Ol34hoet3R1tvdbtiVHrDb6_UqCLKIejAIajwxrhOAfe" } }