Skip to content

Annofab v0.97.0対応 #238

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 1 commit into from
Nov 4, 2020
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
85 changes: 58 additions & 27 deletions annofabapi/models.py
Original file line number Diff line number Diff line change
Expand Up @@ -2745,20 +2745,12 @@ class OrganizationMemberStatus(Enum):
組織ID。[値の制約についてはこちら。](#section/API-Convention/APIID)
* plugin_id: str
プラグインID。[値の制約についてはこちら。](#section/API-Convention/APIID)
* plugin_type: PluginType

* plugin_name: str
プラグインの名前です。 プラグイン一覧や、プロジェクトで使うプラグインを選ぶときなどに表示されます。
* description: str
プラグインの説明です。 プラグイン一覧や、プロジェクトで使うプラグインを選ぶときなどに表示されます。
* annotation_editor_url: str
カスタムアノテーションエディタでタスクを開くための URL です。 プラグインを使用するプロジェクトのタスク一覧などで使用されます。 プラグイン種別がカスタムアノテーションエディタの場合のみ有効です。 この URL には、タスクを特定するための以下のパラメータを必ず埋め込んでください。 * `{projectId}` * `{taskId}` 以下のパラメーターは任意で指定します。 * `{inputDataId}`: アノテーション一覧などから、特定の入力データにフォーカスした状態でタスクを開くときなどに指定します。 * `{annotationId}`: アノテーション一覧などから、特定のアノテーションにフォーカスした状態でタスクを開くときなどに指定します。
* task_assignment_url: str
「カスタムタスク割当API」のURLです。 プラグイン種別がカスタムタスク割当の場合のみ有効です。 #### カスタムタスク割当APIについて。 * 独自のアルゴリズムで作業者にタスクを割当するAPIです。 * AnnoFabから提供されるものではなく、第三者 (ユーザー様) が用意します。 * 作業者がタスク一覧やアノテーションエディタのタスク取得ボタンを押すと、指定したURLに複数の情報 (※1) と共にHTTPリクエスト (POST) が送られます。 * カスタムタスク割当APIでは、AnnoFabで提供しているAPI (※2) を使用して作業者にタスクを割当してください。 * タスクの割当に成功した場合は以下のHTTPレスポンスを返却してください。 * レスポンスヘッダ: `Access-Control-Allow-Origin: https://annofab.com` * レスポンスボディ: 割当した単一のタスク * ステータスコード: 200 * 作業者に割当できるタスクがない場合は以下のHTTPレスポンスを返却してください。 * レスポンスヘッダ: `Access-Control-Allow-Origin: https://annofab.com` * レスポンスボディ: `{\"errors\": [{\"error_code\": \"MISSING_RESOURCE\"}]}` * ステータスコード: 404 * 作業者の認証トークンの期限が切れている場合があります。その場合は以下のHTTPレスポンスを返却してください。 * レスポンスヘッダ: `Access-Control-Allow-Origin: https://annofab.com` * レスポンスボディ: `{\"errors\": [{\"error_code\": \"EXPIRED_TOKEN\"}]}` * ステータスコード: 401 #### Preflightリクエストについて。 * AnnoFabからカスタムタスク割当APIへCross-OriginなHTTPリクエストを送信するより前に、ブラウザの仕様により「Preflightリクエスト」と呼ばれるHTTPリクエストが送られます。 * カスタムタスク割当を利用するためには、カスタムタスク割当APIとは別に「Preflightリクエスト対応API」を用意する必要があります。 * 以下の要件を満たす「Preflightリクエスト対応API」を用意してください。 * URL: カスタムタスク割当APIと同じURL * HTTPメソッド: OPTIONS * レスポンスヘッダ: * `Access-Control-Allow-Origin: https://annofab.com` * `Access-Control-Allow-Headers: Content-Type` * レスポンスボディ: 空(から) * ステータスコード: 200 ※1 以下の情報が送られます。 * HTTPボディ (JSON形式) * `authorization_token` : 作業者の認証トークン。AnnoFabのAPIを利用する際に使用します。 * `project_id` : タスクの割当リクエストが行われたプロジェクトのID。 * `phase` : 作業者が割当を要求したタスクフェーズ。このフェーズのタスクを割当してください。 ※2 例えば以下のAPIがあります。(詳しい情報はAPIドキュメントを参照してください) * `getMyAccount` : 作業者のアカウント情報を取得できます。 * `getTasks` : プロジェクトのタスクを取得できます。 * `assignTasks` : 作業者にタスクを割当することができます。
* specs_url: str
カスタムアノテーション仕様画面の URL です。 プラグイン種別がカスタムアノテーション仕様の場合のみ有効です。 この URL には、プロジェクトを特定するための以下のパラメータを必ず埋め込んでください。 * `{projectId}`
* compatible_input_data_types: List[InputDataType]
プラグインが対応している入力データです。 プラグイン種別がカスタムアノテーションエディタ、またはカスタムアノテーション仕様の場合のみ有効です。
* detail: PluginDetail

* created_datetime: str

* updated_datetime: str
Expand Down Expand Up @@ -2852,16 +2844,63 @@ class OrganizationMemberStatus(Enum):

"""

PluginDetail = Dict[str, Any]
"""
* `PluginDetailAnnotationEditor` - カスタムアノテーションエディタ用のプラグインを表します。 * `PluginDetailTaskAssignment` - カスタムタスク割当用のプラグインを表します。 * `PluginDetailAnnotationSpecs` - カスタムアノテーション仕様用のプラグインを表します。

class PluginType(Enum):
"""
プラグイン種別。 * `custom_annotation_editor` - カスタムアノテーションエディタ用のプラグインを表します。 * `custom_task_assignment` - カスタムタスク割当用のプラグインを表します。 * `custom_specs` - カスタムアノテーション仕様用のプラグインを表します。
"""
Kyes of Dict

* url: str
カスタムアノテーション仕様画面の URL です。 プラグイン種別がカスタムアノテーション仕様の場合のみ有効です。 この URL には、プロジェクトを特定するための以下のパラメータを必ず埋め込んでください。 * `{projectId}`
* compatible_input_data_types: List[InputDataType]
プラグインが対応している入力データです。 プラグイン種別がカスタムアノテーションエディタ、またはカスタムアノテーション仕様の場合のみ有効です。
* type: str
`AnnotationSpecs` [詳しくはこちら](#section/API-Convention/API-_type)

"""

PluginDetailAnnotationEditor = Dict[str, Any]
"""
カスタムアノテーションエディタ用のプラグインを表します。

Kyes of Dict

* url: str
カスタムアノテーションエディタでタスクを開くための URL です。 プラグインを使用するプロジェクトのタスク一覧などで使用されます。 プラグイン種別がカスタムアノテーションエディタの場合のみ有効です。 この URL には、タスクを特定するための以下のパラメータを必ず埋め込んでください。 * `{projectId}` * `{taskId}` 以下のパラメーターは任意で指定します。 * `{inputDataId}`: アノテーション一覧などから、特定の入力データにフォーカスした状態でタスクを開くときなどに指定します。 * `{annotationId}`: アノテーション一覧などから、特定のアノテーションにフォーカスした状態でタスクを開くときなどに指定します。
* compatible_input_data_types: List[InputDataType]
プラグインが対応している入力データです。 プラグイン種別がカスタムアノテーションエディタ、またはカスタムアノテーション仕様の場合のみ有効です。
* type: str
`AnnotationEditor` [詳しくはこちら](#section/API-Convention/API-_type)

ANNOTATION_EDITOR = "custom_annotation_editor"
TASK_ASSIGNMENT = "custom_task_assignment"
SPECS = "custom_specs"
"""

PluginDetailAnnotationSpecs = Dict[str, Any]
"""
カスタムアノテーション仕様用のプラグインを表します。

Kyes of Dict

* url: str
カスタムアノテーション仕様画面の URL です。 プラグイン種別がカスタムアノテーション仕様の場合のみ有効です。 この URL には、プロジェクトを特定するための以下のパラメータを必ず埋め込んでください。 * `{projectId}`
* compatible_input_data_types: List[InputDataType]
プラグインが対応している入力データです。 プラグイン種別がカスタムアノテーションエディタ、またはカスタムアノテーション仕様の場合のみ有効です。
* type: str
`AnnotationSpecs` [詳しくはこちら](#section/API-Convention/API-_type)

"""

PluginDetailTaskAssignment = Dict[str, Any]
"""
カスタムタスク割当用のプラグインを表します。

Kyes of Dict

* url: str
「カスタムタスク割当API」のURLです。 プラグイン種別がカスタムタスク割当の場合のみ有効です。 #### カスタムタスク割当APIについて。 * 独自のアルゴリズムで作業者にタスクを割当するAPIです。 * AnnoFabから提供されるものではなく、第三者 (ユーザー様) が用意します。 * 作業者がタスク一覧やアノテーションエディタのタスク取得ボタンを押すと、指定したURLに複数の情報 (※1) と共にHTTPリクエスト (POST) が送られます。 * カスタムタスク割当APIでは、AnnoFabで提供しているAPI (※2) を使用して作業者にタスクを割当してください。 * タスクの割当に成功した場合は以下のHTTPレスポンスを返却してください。 * レスポンスヘッダ: `Access-Control-Allow-Origin: https://annofab.com` * レスポンスボディ: 割当した単一のタスク * ステータスコード: 200 * 作業者に割当できるタスクがない場合は以下のHTTPレスポンスを返却してください。 * レスポンスヘッダ: `Access-Control-Allow-Origin: https://annofab.com` * レスポンスボディ: `{\"errors\": [{\"error_code\": \"MISSING_RESOURCE\"}]}` * ステータスコード: 404 * 作業者の認証トークンの期限が切れている場合があります。その場合は以下のHTTPレスポンスを返却してください。 * レスポンスヘッダ: `Access-Control-Allow-Origin: https://annofab.com` * レスポンスボディ: `{\"errors\": [{\"error_code\": \"EXPIRED_TOKEN\"}]}` * ステータスコード: 401 #### Preflightリクエストについて。 * AnnoFabからカスタムタスク割当APIへCross-OriginなHTTPリクエストを送信するより前に、ブラウザの仕様により「Preflightリクエスト」と呼ばれるHTTPリクエストが送られます。 * カスタムタスク割当を利用するためには、カスタムタスク割当APIとは別に「Preflightリクエスト対応API」を用意する必要があります。 * 以下の要件を満たす「Preflightリクエスト対応API」を用意してください。 * URL: カスタムタスク割当APIと同じURL * HTTPメソッド: OPTIONS * レスポンスヘッダ: * `Access-Control-Allow-Origin: https://annofab.com` * `Access-Control-Allow-Headers: Content-Type` * レスポンスボディ: 空(から) * ステータスコード: 200 ※1 以下の情報が送られます。 * HTTPボディ (JSON形式) * `authorization_token` : 作業者の認証トークン。AnnoFabのAPIを利用する際に使用します。 * `project_id` : タスクの割当リクエストが行われたプロジェクトのID。 * `phase` : 作業者が割当を要求したタスクフェーズ。このフェーズのタスクを割当してください。 ※2 例えば以下のAPIがあります。(詳しい情報はAPIドキュメントを参照してください) * `getMyAccount` : 作業者のアカウント情報を取得できます。 * `getTasks` : プロジェクトのタスクを取得できます。 * `assignTasks` : 作業者にタスクを割当することができます。
* type: str
`TaskAssignment` [詳しくはこちら](#section/API-Convention/API-_type)

"""

Point = Dict[str, Any]
"""
Expand Down Expand Up @@ -3480,20 +3519,12 @@ class ProjectStatus(Enum):

Kyes of Dict

* plugin_type: PluginType

* plugin_name: str
プラグインの名前です。 プラグイン一覧や、プロジェクトで使うプラグインを選ぶときなどに表示されます。
* description: str
プラグインの説明です。 プラグイン一覧や、プロジェクトで使うプラグインを選ぶときなどに表示されます。
* annotation_editor_url: str
カスタムアノテーションエディタでタスクを開くための URL です。 プラグインを使用するプロジェクトのタスク一覧などで使用されます。 プラグイン種別がカスタムアノテーションエディタの場合のみ有効です。 この URL には、タスクを特定するための以下のパラメータを必ず埋め込んでください。 * `{projectId}` * `{taskId}` 以下のパラメーターは任意で指定します。 * `{inputDataId}`: アノテーション一覧などから、特定の入力データにフォーカスした状態でタスクを開くときなどに指定します。 * `{annotationId}`: アノテーション一覧などから、特定のアノテーションにフォーカスした状態でタスクを開くときなどに指定します。
* task_assignment_url: str
「カスタムタスク割当API」のURLです。 プラグイン種別がカスタムタスク割当の場合のみ有効です。 #### カスタムタスク割当APIについて。 * 独自のアルゴリズムで作業者にタスクを割当するAPIです。 * AnnoFabから提供されるものではなく、第三者 (ユーザー様) が用意します。 * 作業者がタスク一覧やアノテーションエディタのタスク取得ボタンを押すと、指定したURLに複数の情報 (※1) と共にHTTPリクエスト (POST) が送られます。 * カスタムタスク割当APIでは、AnnoFabで提供しているAPI (※2) を使用して作業者にタスクを割当してください。 * タスクの割当に成功した場合は以下のHTTPレスポンスを返却してください。 * レスポンスヘッダ: `Access-Control-Allow-Origin: https://annofab.com` * レスポンスボディ: 割当した単一のタスク * ステータスコード: 200 * 作業者に割当できるタスクがない場合は以下のHTTPレスポンスを返却してください。 * レスポンスヘッダ: `Access-Control-Allow-Origin: https://annofab.com` * レスポンスボディ: `{\"errors\": [{\"error_code\": \"MISSING_RESOURCE\"}]}` * ステータスコード: 404 * 作業者の認証トークンの期限が切れている場合があります。その場合は以下のHTTPレスポンスを返却してください。 * レスポンスヘッダ: `Access-Control-Allow-Origin: https://annofab.com` * レスポンスボディ: `{\"errors\": [{\"error_code\": \"EXPIRED_TOKEN\"}]}` * ステータスコード: 401 #### Preflightリクエストについて。 * AnnoFabからカスタムタスク割当APIへCross-OriginなHTTPリクエストを送信するより前に、ブラウザの仕様により「Preflightリクエスト」と呼ばれるHTTPリクエストが送られます。 * カスタムタスク割当を利用するためには、カスタムタスク割当APIとは別に「Preflightリクエスト対応API」を用意する必要があります。 * 以下の要件を満たす「Preflightリクエスト対応API」を用意してください。 * URL: カスタムタスク割当APIと同じURL * HTTPメソッド: OPTIONS * レスポンスヘッダ: * `Access-Control-Allow-Origin: https://annofab.com` * `Access-Control-Allow-Headers: Content-Type` * レスポンスボディ: 空(から) * ステータスコード: 200 ※1 以下の情報が送られます。 * HTTPボディ (JSON形式) * `authorization_token` : 作業者の認証トークン。AnnoFabのAPIを利用する際に使用します。 * `project_id` : タスクの割当リクエストが行われたプロジェクトのID。 * `phase` : 作業者が割当を要求したタスクフェーズ。このフェーズのタスクを割当してください。 ※2 例えば以下のAPIがあります。(詳しい情報はAPIドキュメントを参照してください) * `getMyAccount` : 作業者のアカウント情報を取得できます。 * `getTasks` : プロジェクトのタスクを取得できます。 * `assignTasks` : 作業者にタスクを割当することができます。
* specs_url: str
カスタムアノテーション仕様画面の URL です。 プラグイン種別がカスタムアノテーション仕様の場合のみ有効です。 この URL には、プロジェクトを特定するための以下のパラメータを必ず埋め込んでください。 * `{projectId}`
* compatible_input_data_types: List[InputDataType]
プラグインが対応している入力データです。 プラグイン種別がカスタムアノテーションエディタ、またはカスタムアノテーション仕様の場合のみ有効です。
* detail: PluginDetail

* last_updated_datetime: str
新規作成時は未指定、更新時は必須(更新前の日時)

Expand Down
Loading