外部連携API一覧
最終更新: 2024年10月24日
このページでは、UIDやパラメータIDなどから外部連携APIを通してエディタ内の情報を設定、および取得する命令やイベント、エラータイプを紹介します。
命令
RegisterPlugin
外部アプリケーションをエディタに登録します。
登録が終わるとトークンを返します。
このトークンはアプリと紐付いており、次回の接続時に指定することでユーザーの許可状態を引き継ぐことができます。
詳しくは「トークン認証」をご覧ください。
Version | Request | Response | ErrorType |
---|---|---|---|
Response | Name:String, Token?:String, Icon?:String, Path?:String | Token:String | InvalidData |
Name:String | アプリケーション名(任意): ユニークな名前を付けてください。 他のアプリと名前が被っても動作に影響はありません。 |
Token?:String | トークン: 省略、または未登録のトークンの場合は、RegisterPluginは新しいトークンを返します。 指定されたトークンが登録済みの場合は、そのトークンをそのまま返します。 |
Icon?:String | アイコンPNG画像のBASE64文字列: サイズは32×32以上、256×256以下の正方形で0.5MB以下とします。 |
Path?:String | アプリケーションのパス情報を表示します。 |
注意事項
RegisterPluginを最初に行い、ユーザーから許可を貰わない限り以下のほぼすべての命令は、PluginNotRegisteredのエラーを返してAPIによる操作を受け付けません。
GetIsApproval
ユーザーがこのアプリに対して通信を許可しているかどうかを取得します。
設定ダイアログの「許可」のチェックボックスと連動しています。
Version | Request | Response | ErrorType |
---|---|---|---|
0.9.0 | Result:Boolean | InvalidData |
GetParameterValues
version 0.9.0
パラメータIDを指定してモデルの現在のパラメータIDと値を取得します。
パラメータIDの指定がない場合はモデルの全パラメータIDと値を取得します。
アニメーションの情報は含まれません。
Version | Request | Response | ErrorType |
---|---|---|---|
0.9.0 | ModelUID:String, Ids?:Array<String> | Parameters:Array<{ Id:String, Value:Number }> | InvalidData InvalidModel |
version 0.9.1
パラメータIDを指定してモデルの現在のパラメータIDと値を取得します。
パラメータIDの指定がない場合はモデルの全パラメータIDと値を取得します。
物理演算、モデル編集、アニメーションの情報が取得できます。
Version | Request | Response | ErrorType |
---|---|---|---|
0.9.1 | ModelUID:String, Ids?:Array<String> | Parameters:Array<{ Id:String, Value:Number }> | InvalidData InvalidModel |
SetParameterValues
version 0.9.0
指定のパラメータIDと値を設定します。
アニメーションファイルのモデルにパラメータは送信できません。
Version | Request | Response | ErrorType |
---|---|---|---|
0.9.0 | ModelUID:String, Parameters:Array<{ Id:String, Value:Number }> | InvalidData InvalidModel InvalidParameter |
version 0.9.1
指定のパラメータIDと値を設定します。
アニメーションファイルのモデルにパラメータを送信する場合、モデルトラックを選択している必要があります。
物理演算エディタ、アニメーションのモデルの場合、パラメータを即時反映はせずテンポラリに保持されます。
Version | Request | Response | ErrorType |
---|---|---|---|
0.9.1 | ModelUID:String, Parameters:Array<{ Id:String, Value:Number }> | InvalidData InvalidModel InvalidParameter |
GetParameters
Id:String | パラメータID |
Name:String | パラメータ名 |
GroupUID:String | 所属するパラメータグループのUID |
Default:Number | デフォルト値 |
Max,Max:Number | 最大値、最小値 |
Repeat:Boolean | リピート |
Type:Number | パラメータタイプ 0 : 通常 1 : ブレンドシェイプ |
version 0.9.0
モデルがもつパラメータ一覧を取得します。
ModelUIDとDocumentUIDは省略可能ですが、どちらかは必須となります。
Typeは ’0‘ が通常、 ‘1’ がブレンドシェイプになります。
アニメーションファイル(.can3)のモデルがもつパラメータ一覧は取得できません。
Version | Request | Response | ErrorType |
---|---|---|---|
0.9.0 | ModelUID?:String, DocumentUID?:String | Parameters:Array<{ Id:String, Name:String, GroupUID:String, Default:Number, Max:Number, Min:Number, Repeat:Boolean Type:Number }> | InvalidData InvalidModel |
version 0.9.1
モデルがもつパラメータ一覧を取得します。
ModelUIDとDocumentUIDは省略可能ですが、どちらかは必須となります。
Typeは ’0‘ が通常、 ‘1’ がブレンドシェイプになります。
アニメーションファイルに含まれるモデルのパラメータ一覧を取得する場合、モデルトラックを選択している必要があります。
モデルが組み込み用モデルトラックの場合、GroupUIDには空文字が返ります。
Version | Request | Response | ErrorType |
---|---|---|---|
0.9.1 | ModelUID?:String, DocumentUID?:String | Parameters:Array<{ Id:String, Name:String, GroupUID:String, Default:Number, Max:Number, Min:Number, Repeat:Boolean Type:Number }> | InvalidData InvalidModel |
GetParameterGroups
version 0.9.0
モデルがもつパラメータグループの一覧を取得します。
ModelUIDとDocumentUIDは省略可能ですが、どちらかは必須となります。
アニメーションファイル(.can3)に含まれるモデルがもつパラメータ一覧は取得できません。
Version | Request | Response | ErrorType |
---|---|---|---|
0.9.0 | ModelUID?:String, DocumentUID?:String | Groups:Array<{ GroupUID:String, GroupName:String, }> | InvalidData InvalidModel |
version 0.9.1
モデルがもつパラメータグループの一覧を取得します。
ModelUIDとDocumentUIDは省略可能ですが、どちらかは必須となります。
アニメーションファイルに含まれるモデルのグループ一覧を取得する場合、モデルトラックを選択している必要があります。
モデルが組み込み用モデルトラックの場合、GroupUIDには空文字が返ります。
Version | Request | Response | ErrorType |
---|---|---|---|
0.9.1 | ModelUID?:String, DocumentUID?:String | Groups:Array<{ GroupUID:String, GroupName:String, }> | InvalidData InvalidModel |
GetDocuments
version 0.9.0
ドキュメントの情報を返します。
物理演算、モデル編集と種類ごとに別れ、存在しない場合は0個のドキュメント配列を返します。
1モデルの分割表示を行った場合は、Viewsが増えます。
Version | Request | Response | ErrorType |
---|---|---|---|
0.9.0 | PhysicsDocuments:Array<{ DocumentUID:String, DocumentFilePath:String, ModelUID:String }>, ModelingDocuments:Array<{ DocumentUID:String, DocumentFilePath:String, Views:Array<{ ModelUID:String }> }> | InvalidData InvalidDocument |
version 0.9.1
ドキュメントの情報を返します。
物理演算、モデル編集と種類ごとに別れ、存在しない場合は0個のドキュメント配列を返します。
1モデルの分割表示を行った場合は、Viewsが増えます。
Version | Request | Response | ErrorType |
---|---|---|---|
0.9.1 | PhysicsDocuments:Array<{ DocumentUID:String, DocumentFilePath:String ModelUID:String, }> ModelingDocuments:Array<{ DocumentUID:String, DocumentFilePath:String Views:Array<{ ModelUID:String }> }> AnimationDocuments:Array<{ DocumentUID:String, DocumentFilePath:String Views:Array<{ ModelUID:String, ModelFilePath:String }> }> | InvalidData InvalidDocument |
GetDocument
version 0.9.3
ドキュメントのUIDを指定してドキュメントの情報を返します。
Version | Request | Response | ErrorType |
---|---|---|---|
0.9.3 | DocumentUID:String | PhysicsDocuments?:Array<{ DocumentFilePath:String ModelUID:String, }> ModelingDocuments?:Array<{ DocumentFilePath:String Views:Array<{ ModelUID:String }> }> AnimationDocuments?: Array<{ DocumentFilePath:String Views : Array<{ ModelUID:String, ModelFilePath:String }> }> | InvalidData InvalidDocument |
GetCurrentDocumentUID
version 0.9.3
現在エディタ上でカレントになっているドキュメントのUIDを返します。
Version | Request | Response | ErrorType |
---|---|---|---|
0.9.3 | DocumentUID:String | DocumentUID:String | InvalidData InvalidDocument |
GetCurrentModelUID
version 0.9.0
現在エディタ上でカレントになっているモデルのUIDを返します。
アニメーションファイルに含まれるモデルのUIDは取得できません。
Version | Request | Response | ErrorType |
---|---|---|---|
0.9.0 | ModelUID:String | InvalidData InvalidModel |
version 0.9.1
現在エディタ上でカレントになっているモデルのUIDを返します。
アニメーションファイルに含まれるモデルのUIDを取得する場合、モデルトラックを選択している必要があります。
Version | Request | Response | ErrorType |
---|---|---|---|
0.9.1 | ModelUID:String | InvalidData InvalidModel |
GetCurrentEditMode
version 0.9.0
現在エディタ上でカレントになっている編集モードを返します。
Version | Request | Response | ErrorType |
---|---|---|---|
0.9.0 | EditMode:String | InvalidData |
EditMode:String | 編集モード “Physics” : 物理演算設定エディタ “Modeling” : モデル編集 “Animation” : アニメーション編集 “ModelingMeshEdit” : メッシュ編集 “FormAnimation” : フォームアニメーション編集 ※5.1 beta1以降 |
SetGlobalVersion
version 0.9.1
使用するAPIバージョンを設定できます。
これにより外部アプリケーションで使用するAPIバージョンを固定することができます。
未設定の場合は、指定なしに戻すことができます。
Version | Request | Response | ErrorType |
---|---|---|---|
0.9.1 | Version?:String | InvalidData |
ClearParameterValues
version 0.9.1
対象のモデルに送信したパラメータをクリアします。
SetParameterValueで送信したパラメータはエディタでテンポラリに保持します。
物理演算エディタやアニメーションの場合、モデル更新の関係でテンポラリにパラメータを保持し続けることがあります。
テンポラリに保持したパラメータを明示的にクリアしたい場合このAPIを使用します。
Version | Request | Response | ErrorType |
---|---|---|---|
0.9.1 | ModelUID:String | InvalidData |
GetPhysicsInfo
version 0.9.2
物理演算設定エディタにおける計算FPSを取得します。
Version | Request | Response | ErrorType |
---|---|---|---|
0.9.2 | ModelUID:String, Fps?:Number | InvalidData InvalidModel |
SendCubismLog
version 0.9.3
エディタのログとして文字列を送信します。
Typeは ”info” 、 ”warning” を指定可能で、デフォルト値は ”info” になります。
Messageの最大文字長は5000文字です。
Displayはログパレットへの表示有無となっており、省略時はデフォルト値をtrueとしてログパレットに表示します。
Version | Request | Response | ErrorType |
---|---|---|---|
0.9.3 | Type?:String, Message:String, Display?:Boolean | InvalidData InvalidModel |
イベント
イベントを扱う場合は、まずクライアントがサーバーに対して許可フラグを有効にする必要があります。
{ (省略) "Type": "Request", "Method": "NotifyMocFileExported", "Data": { "Enable" : true } }
すると、サーバーは特定の処理(イベント)を行った際に、クライアントからのリクエストに関係なくJSONを送信します。
なお、モデルファイルが一度も保存されていない場合、ModelFilePathフィールドには空文字が入ります。
{ (省略) "Type": "Response", "Method": "NotifyMocFileExported", "Data": { "Path" : "c:\\temp\\export.moc3", "ModelFilePath" : "c:\\models\\hoge03.cmo3" } }
NotifyPhysicsFileExported
version 0.9.0
物理演算設定ファイルの書き出し時の通知設定を行います。
Version | Request | Response | Event | ErrorType |
---|---|---|---|---|
0.9.0 | Enabled:Boolean | Accepted:Boolean | Path:String, ModelFilePath:String | InvalidData |
NotifyMocFileExported
version 0.9.3
MOC3ファイルの書き出し時の通知設定を行います。
設定が有効の場合、MOC3ファイルの情報と関連ファイルの情報を通知します。
Version | Request | Response | Event | ErrorType |
---|---|---|---|---|
0.9.3 | Enabled:Boolean | Accepted:Boolean | Path:String, ModelFilePath:String, Files:Array<String> | InvalidData |
version 0.9.0
MOC3ファイルの書き出し時の通知設定を行います。
設定が有効の場合、MOC3ファイルの情報を通知します。
Version | Request | Response | Event | ErrorType |
---|---|---|---|---|
0.9.0 | Enabled:Boolean | Accepted:Boolean | Path:String, ModelFilePath:String | InvalidData |
NotifyMotionFileExported
version 0.9.0
モーションファイルの書き出し時の通知設定を行います。
Version | Request | Response | Event | ErrorType |
---|---|---|---|---|
0.9.0 | Enabled:Boolean | Accepted:Boolean | Path:String, ModelFilePath:String | InvalidData |
NotifyMotionSyncFileExported
version 0.9.0
モーションシンク設定ファイルの書き出し時の通知設定を行います。
Version | Request | Response | Event | ErrorType |
---|---|---|---|---|
0.9.0 | Enabled:Boolean | Accepted:Boolean | Path:String, ModelFilePath:String | InvalidData |
NotifyChangeEditMode
version 0.9.0
編集モードが切り替わったときの通知設定を行います。
EditModeについては「GetCurrentEditMode」をご覧ください。
Version | Request | Response | Event | ErrorType |
---|---|---|---|---|
0.9.0 | Enabled:Boolean | Accepted:Boolean | EditMode:String | InvalidData |
エラータイプ
名前 | 説明 | Since |
---|---|---|
InvalidJson | JSON構造が正しくありません。 | 0.9.0 |
UnsupportedVersion | 互換性のないバージョンです。 | 0.9.0 |
MethodNotFound | 指定された命令が見つかりません。 | 0.9.0 |
InvalidType | Typeの設定が不正です。 | 0.9.0 |
InvalidData | 命令の引数が正しくありません。 引数が足りなかったり、引数に異なる型を指定した場合にこのエラーを返します。 | 0.9.0 |
PluginNotRegistered | プラグインの登録が完了していません。 プラグインの登録(RegisterPlugin)、ユーザーによる許可が完了していない状態で、命令をリクエストするとこのエラーを返します。 | 0.9.0 |
InvalidParameter | 指定されたLive2Dパラメータが存在しません。 | 0.9.0 |
InvalidModel | 指定されたLive2Dモデルが存在しません。 | 0.9.0 |
InvalidDocument | 指定されたドキュメントがエディタに存在しません。 | 0.9.0 |
InvalidView | 指定されたビューが存在しません。 | 0.9.0 |