annofabapi.wrapper module#
- class annofabapi.Wrapper(api: AnnofabApi)[source]#
AnnofabApiのラッパー.
- Parameters:
api – AnnofabApi Instance
- can_execute_job(project_id: str, job_type: ProjectJobType) bool [source]#
ジョブが実行できる状態か否か。他のジョブが実行中で同時に実行できない場合はFalseを返す。
- Parameters:
project_id – プロジェクトID
job_type – 実行したいジョブの種別
- Returns:
ジョブが実行できる状態か否か
- cancel_completed_task(project_id: str, task_id: str, operator_account_id: str | None, *, last_updated_datetime: str | None = None) dict[str, Any] [source]#
タスクの完了状態を取り消します。 このメソッドを実行すると、タスクの`status`は`not_started`になります。
Notes
phase`が`acceptance, `status`が`completed`のタスクを想定しています。 それ以外のタスクに対して実行してもエラーにはならず、`status`が`not_started`になります。
- Parameters:
project_id – プロジェクトID
task_id – タスクID
operator_account_id – 受入完了状態を取り消した後の担当者のaccount_id
last_updated_datetime – operate_task APIのリクエストボディに渡すタスクの最終更新日時。Noneなら`get_task`APIを実行して、タスクの最終更新日時を取得します。
- Returns:
変更後のタスク
- cancel_submitted_task(project_id: str, task_id: str, *, last_updated_datetime: str | None = None) dict[str, Any] [source]#
タスクの提出を取り消します。 「提出されたタスク」とは、以下の状態のタスクのことです。 * 教師付フェーズで「提出」ボタンを押して、検査/受入フェーズへ遷移したタスク * 検査フェーズから「合格」ボタンを押して、受入フェーズへ遷移したタスク
Notes
現在タスクを担当しているユーザーのみ、この操作を行うことができます。
タスク提出後に検査/受入(抜取含む)等の作業が一切行われていない場合のみ、この操作を行うことができます。
現在の状態が未着手(not_started)のタスクに対してのみ、この操作を行うことができます。
現在のフェーズが検査(inspection)、もしくは受入(acceptance)のタスクに対してのみ、この操作を行うことができます。
- Parameters:
project_id – プロジェクトID
task_id – タスクID
last_updated_datetime – operate_task APIのリクエストボディに渡すタスクの最終更新日時。Noneなら`get_task`APIを実行して、タスクの最終更新日時を取得します。
- Returns:
変更後のタスク
- change_task_operator(project_id: str, task_id: str, operator_account_id: str | None, *, last_updated_datetime: str | None = None) dict[str, Any] [source]#
タスクの担当者を変更します。
Notes
プロジェクトオーナー(owner)、もしくは受入担当者(accepter)のみ、この操作を行うことができます。
- Parameters:
project_id – プロジェクトID
task_id – タスクID
operator_account_id – 新しい担当者のaccount_id。Noneの場合は、担当者を「未割り当て」にします。
last_updated_datetime – operate_task APIのリクエストボディに渡すタスクの最終更新日時。Noneなら`get_task`APIを実行して、タスクの最終更新日時を取得します。
- Returns:
変更後のタスク
- change_task_status_to_break(project_id: str, task_id: str, *, last_updated_datetime: str | None = None) dict[str, Any] [source]#
タスクのステータスを「休憩中」に変更します。
Notes
現在タスクを担当しているユーザーのみ、この操作を行うことができます。
現在の状態が作業中(working)のタスクに対してのみ、この操作を行うことができます。
- Parameters:
project_id – プロジェクトID
task_id – タスクID
last_updated_datetime – operate_task APIのリクエストボディに渡すタスクの最終更新日時。Noneなら`get_task`APIを実行して、タスクの最終更新日時を取得します。
- Returns:
変更後のタスク
- change_task_status_to_on_hold(project_id: str, task_id: str, *, last_updated_datetime: str | None = None) dict[str, Any] [source]#
タスクのステータスを「保留」に変更します。
Notes
現在タスクを担当しているユーザーのみ、この操作を行うことができます。
現在の状態が作業中(working)のタスクに対してのみ、この操作を行うことができます。
- Parameters:
project_id – プロジェクトID
task_id – タスクID
last_updated_datetime – operate_task APIのリクエストボディに渡すタスクの最終更新日時。Noneなら`get_task`APIを実行して、タスクの最終更新日時を取得します。
- Returns:
変更後のタスク
- change_task_status_to_working(project_id: str, task_id: str, *, last_updated_datetime: str | None = None) dict[str, Any] [source]#
タスクのステータスを「作業中」に変更します。
Notes
現在タスクを担当しているユーザーのみ、この操作を行うことができます。
現在の状態が未着手(not_started)、休憩中(break)、保留(on_hold)のいずれかであるタスクに対してのみ、この操作を行うことができます。
- Parameters:
project_id – プロジェクトID
task_id – タスクID
last_updated_datetime – operate_task APIのリクエストボディに渡すタスクの最終更新日時。Noneなら`get_task`APIを実行して、タスクの最終更新日時を取得します。
- Returns:
変更後のタスク
- complete_task(project_id: str, task_id: str, *, last_updated_datetime: str | None = None) dict[str, Any] [source]#
今のフェーズを完了させ、 次のフェーズに遷移させます。 教師付フェーズのときはタスクを提出します。 検査/受入フェーズのときは、タスクを合格にします。
Notes
現在タスクを担当しているユーザーのみ、この操作を行うことができます。
現在の状態が作業中(working)のタスクに対してのみ、この操作を行うことができます。
- Parameters:
project_id – プロジェクトID
task_id – タスクID
last_updated_datetime – operate_task APIのリクエストボディに渡すタスクの最終更新日時。Noneなら`get_task`APIを実行して、タスクの最終更新日時を取得します。
- Returns:
変更後のタスク
- copy_annotation(src: TaskFrameKey, dest: TaskFrameKey, account_id: str | None = None, annotation_specs_relation: AnnotationSpecsRelation | None = None) bool [source]#
アノテーションをコピーする。
- Parameters:
src – コピー元のTaskFrame情報
dest – コピー先のTaskFrame情報
account_id – アノテーションを登録するユーザのアカウントID。Noneの場合、自分自身のアカウントIDで登録する。
annotation_specs_relation – アノテーション仕様間の紐付け情報。
get_annotation_specs_relation
メソッドで紐付け情報を取得できる。 Noneの場合、コピー元のアノテーション仕様のID情報(ラベルID、属性ID、選択肢ID)を変換せずに、アノテーションをコピーします。
- Returns:
アノテーションのコピー実施したかどうか
- delete_all_succeeded_job(project_id: str, job_type: ProjectJobType) list[dict[str, Any]] [source]#
成功したジョブをすべて削除する
- Parameters:
project_id – プロジェクトID
job_type – ジョブ種別
- Returns:
削除したジョブの一覧
- download(url: str, dest_path: str | Path, *, chunk_size: int = 524288000, logger_prefix: str = '') None [source]#
指定したURLからファイルをダウンロードします。
- Parameters:
url – ダウンロード対象のURL
dest_path – 保存先ファイルのパス
chunk_size – メモリに読み込むバイト数
logger_prefix – ログメッセージのプレフィックス
- download_annotation_archive(project_id: str, dest_path: str | Path) str [source]#
simpleアノテーションZIPをダウンロードする。
- Parameters:
project_id – プロジェクトID
dest_path – ダウンロード先のファイルパス
- Returns:
ダウンロード元のURL
- download_full_annotation_archive(project_id: str, dest_path: str | Path) str [source]#
FullアノテーションZIPをダウンロードする。
Deprecated since version X.
- Parameters:
project_id – プロジェクトID
dest_path – ダウンロード先のファイルパス
- Returns:
ダウンロード元のURL
- download_project_comments_url(project_id: str, dest_path: str | Path) str [source]#
プロジェクトのコメント全件ファイルをダウンロードする。
- Parameters:
project_id – プロジェクトID
dest_path – ダウンロード先ファイルのパス
- Returns:
ダウンロード元のURL
- download_project_inputs_url(project_id: str, dest_path: str | Path) str [source]#
プロジェクトの入力データ全件ファイルをダウンロードする。 ファイルの中身はJSON。
- Parameters:
project_id – プロジェクトID
dest_path – ダウンロード先ファイルのパス
- Returns:
ダウンロード元のURL
- download_project_inspections_url(project_id: str, dest_path: str | Path) str [source]#
プロジェクトの検査コメント全件ファイルをダウンロードする。 ファイルの中身はJSON。
Deprecated since version 2022-08-23以降に廃止する予定です。検査コメントに関するWebAPIが廃止されるためです。.
- Parameters:
project_id – プロジェクトID
dest_path – ダウンロード先ファイルのパス
- Returns:
ダウンロード元のURL
- download_project_task_histories_url(project_id: str, dest_path: str | Path) str [source]#
プロジェクトのタスク履歴全件ファイルをダウンロードする。 ファイルの中身はJSON。
- Parameters:
project_id – プロジェクトID
dest_path – ダウンロード先ファイルのパス
- Returns:
ダウンロード元のURL
- download_project_task_history_events_url(project_id: str, dest_path: str | Path) str [source]#
プロジェクトのタスク履歴イベント全件ファイルをダウンロードする。 ファイルの中身はJSON。
- Parameters:
project_id – プロジェクトID
dest_path – ダウンロード先ファイルのパス
- Returns:
ダウンロード元のURL
- download_project_tasks_url(project_id: str, dest_path: str | Path) str [source]#
プロジェクトのタスク全件ファイルをダウンロードする。 ファイルの中身はJSON。
- Parameters:
project_id – プロジェクトID
dest_path – ダウンロード先ファイルのパス
- Returns:
ダウンロード元のURL
- execute_http_get(url: str) Response [source]#
指定したURLに対してHTTP GETを実行します。
塗りつぶし画像など外部リソースのURLを指定することを想定しています。
- Parameters:
url – HTTP GETでアクセスするURL
- Returns:
URLにアクセスしたときの
requests.Response
情報
Note
requests.get
でアクセスすることとの違いは以下の通りです。requests.Session
情報を使ってTCPコネクションを再利用しているため、requests.get
を使ってダウンロードするよりも、パフォーマンスが向上する可能性があります。必要に応じてリトライします
HTTPステータスコードが4XX,5XXならば、HTTPErrorがスローされます
- get_account_daily_statistics(project_id: str, *, from_date: str | None = None, to_date: str | None = None) list[dict[str, Any]] [source]#
指定した期間の ユーザ別タスク集計データ を取得します。
- Parameters:
project_id – プロジェクトID
from_date (Optional[str]) – 取得する統計の区間の開始日(YYYY-MM-DD)。Noneの場合は、プロジェクト作成日を開始日とみなします。
to_date (Optional[str]) – 取得する統計の区間の終了日(YYYY-MM-DD)。Noneの場合は、今日の日付を終了日とみなします。
- Returns:
ユーザ別タスク集計データ
- get_all_annotation_list(project_id: str, query_params: dict[str, Any] | None = None) list[dict[str, Any]] [source]#
すべてのアノテーション情報を取得する。
- Parameters:
project_id – プロジェクトID
query_params – api.get_annotation_list メソッドのQuery Parameter
- Returns:l
すべてのアノテーション一覧
- get_all_input_data_list(project_id: str, query_params: dict[str, Any] | None = None) list[dict[str, Any]] [source]#
すべての入力データを取得する。
- Parameters:
project_id – プロジェクトID
query_params – api.get_input_data_list メソッドのQuery Parameter
- Returns:
入力データ一覧
- get_all_organization_members(organization_name: str) list[dict[str, Any]] [source]#
すべての組織メンバ一覧を取得する
- Parameters:
organization_name – 組織名
- Returns:
すべての組織メンバ一覧
- get_all_project_job(project_id: str, query_params: dict[str, Any] | None = None) list[dict[str, Any]] [source]#
すべてのバックグランドジョブを取得する。
- Parameters:
project_id – プロジェクトID
query_params – api.get_project_job メソッドに渡すQuery Parameter
- Returns:
すべてのバックグランドジョブ一覧
- get_all_project_members(project_id: str, query_params: dict[str, Any] | None = None) list[dict[str, Any]] [source]#
すべてのプロジェクトメンバを取得する.
- Parameters:
project_id – プロジェクトID
query_params – api.get_project_members メソッドのQuery Parameter
- Returns:
すべてのプロジェクトメンバ一覧
- get_all_projects_of_organization(organization_name: str, query_params: dict[str, Any] | None = None) list[dict[str, Any]] [source]#
組織配下のすべてのプロジェクト一覧を取得する
- Parameters:
organization_name – 組織名
query_params – api.get_projects_of_organization メソッドに渡すQuery Parameter
- Returns:
すべてのプロジェクト一覧
- get_all_tasks(project_id: str, query_params: dict[str, Any] | None = None) list[dict[str, Any]] [source]#
すべてのタスクを取得する。
- Parameters:
project_id – プロジェクトID
query_params – api.get_tasks メソッドに渡すQuery Parameter
- Returns:
すべてのタスク一覧
- get_annotation_specs_relation(src_project_id: str, dest_project_id: str) AnnotationSpecsRelation [source]#
プロジェクト間のアノテーション仕様の紐付け情報を取得する。 ラベル、属性、選択肢の英語名で紐付ける。 ただし、属性は、参照されるラベルが一致していることも判定する。 紐付け先がない場合は無視する。
- Parameters:
src_project_id – 紐付け元のプロジェクトID
dest_project_id – 紐付け先のプロジェクトID
- Returns:
アノテーション仕様の紐付け情報
- get_editor_annotation_or_none(project_id: str, task_id: str, input_data_id: str, *, query_params: dict[str, Any] | None = None) dict[str, Any] | None [source]#
アノテーションを取得する。 存在しない場合(HTTP 404 Error)はNoneを返します。
- Parameters:
project_id – プロジェクトID
task_id – タスクID
input_data_id – 入力データID
- Returns:
アノテーション
- get_input_data_or_none(project_id: str, input_data_id: str) dict[str, Any] | None [source]#
入力データを取得する。存在しない場合(HTTP 404 Error)はNoneを返す。
- Parameters:
project_id
input_data_id
- Returns:
入力データ
- get_inspection_daily_statistics(project_id: str, *, from_date: str | None = None, to_date: str | None = None) list[dict[str, Any]] [source]#
指定した期間の 検査コメント集計データ を取得します。
- Parameters:
project_id – プロジェクトID
from_date (Optional[str]) – 取得する統計の区間の開始日(YYYY-MM-DD)。Noneの場合は、プロジェクト作成日を開始日とみなします。
to_date (Optional[str]) – 取得する統計の区間の終了日(YYYY-MM-DD)。Noneの場合は、今日の日付を終了日とみなします。
- Returns:
検査コメント集計データ
- get_label_statistics(project_id: str) list[Any] [source]#
getLabelStatistics APIのLocation headerの中身を返す。
- Parameters:
project_id
Returns:
- get_latest_instruction(project_id: str) dict[str, Any] | None [source]#
最新の作業ガイドの取得.
- Parameters:
project_id – プロジェクトID
- Returns:
作業ガイド情報。作業ガイドが登録されいてない場合はNone。
- get_organization_member_or_none(organization_name: str, user_id: str) dict[str, Any] | None [source]#
組織メンバを取得する。存在しない場合(HTTP 404 Error)はNoneを返す。
- Parameters:
organization_name – 組織名
user_id
- Returns:
組織メンバ
- get_organization_or_none(organization_name: str) dict[str, Any] | None [source]#
組織情報を取得する。存在しない場合(HTTP 404 Error)はNoneを返す。
- Parameters:
organization_name – 組織名
- Returns:
組織情報
- get_phase_daily_statistics(project_id: str, *, from_date: str | None = None, to_date: str | None = None) list[dict[str, Any]] [source]#
指定した期間の フェーズ別タスク集計データ を取得します。
- Parameters:
project_id – プロジェクトID
from_date (Optional[str]) – 取得する統計の区間の開始日(YYYY-MM-DD)。Noneの場合は、プロジェクト作成日を開始日とみなします。
to_date (Optional[str]) – 取得する統計の区間の終了日(YYYY-MM-DD)。Noneの場合は、今日の日付を終了日とみなします。
- Returns:
フェーズ別タスク集計データ
- get_project_member_or_none(project_id: str, user_id: str) dict[str, Any] | None [source]#
プロジェクトメンバを取得する。存在しない場合(HTTP 404 Error)はNoneを返す。
- Parameters:
project_id
user_id
- Returns:
プロジェクトメンバ
- get_project_or_none(project_id: str) dict[str, Any] | None [source]#
プロジェクトを取得する。存在しない場合(HTTP 404 Error)はNoneを返す。
- Parameters:
project_id
- Returns:
プロジェクト
- get_supplementary_data_list_or_none(project_id: str, input_data_id: str) list[dict[str, Any]] | None [source]#
補助情報一覧を取得する。存在しない場合(HTTP 404 Error)はNoneを返す。
- Parameters:
project_id
input_data_id
- Returns:
補助情報一覧
- get_task_daily_statistics(project_id: str, *, from_date: str | None = None, to_date: str | None = None) list[dict[str, Any]] [source]#
指定した期間の タスク集計データ を取得します。
- Parameters:
project_id – プロジェクトID
from_date (Optional[str]) – 取得する統計の区間の開始日(YYYY-MM-DD)。Noneの場合は、プロジェクト作成日を開始日とみなします。
to_date (Optional[str]) – 取得する統計の区間の終了日(YYYY-MM-DD)。Noneの場合は、今日の日付を終了日とみなします。
- Returns:
タスク集計データ
- get_task_histories_or_none(project_id: str, task_id: str) list[dict[str, Any]] | None [source]#
タスク履歴一覧を取得する。存在しない場合(HTTP 404 Error)はNoneを返す。
- Parameters:
project_id
task_id
- Returns:
タスク履歴一覧
- get_task_or_none(project_id: str, task_id: str) dict[str, Any] | None [source]#
タスクを取得する。存在しない場合(HTTP 404 Error)はNoneを返す。
- Parameters:
project_id
task_id
- Returns:
タスク
- get_worktime_daily_statistics(project_id: str, *, from_date: str | None = None, to_date: str | None = None) dict[str, Any] [source]#
プロジェクト全体のタスク作業時間集計データを取得します。
- Parameters:
project_id – プロジェクトID
from_date (Optional[str]) – 取得する統計の区間の開始日(YYYY-MM-DD)。Noneの場合は、プロジェクト作成日を開始日とみなします。
to_date (Optional[str]) – 取得する統計の区間の終了日(YYYY-MM-DD)。Noneの場合は、今日の日付を終了日とみなします。
- Returns:
プロジェクト全体のタスク作業時間集計データ
- get_worktime_daily_statistics_by_account(project_id: str, account_id: str, *, from_date: str | None = None, to_date: str | None = None) dict[str, Any] [source]#
指定したプロジェクトメンバーのタスク作業時間集計データを取得します。
- Parameters:
project_id – プロジェクトID
account_id – アカウントID
from_date (Optional[str]) – 取得する統計の区間の開始日(YYYY-MM-DD)。Noneの場合は、プロジェクト作成日を開始日とみなします。
to_date (Optional[str]) – 取得する統計の区間の終了日(YYYY-MM-DD)。Noneの場合は、今日の日付を終了日とみなします。
- Returns:
プロジェクトメンバーのタスク作業時間集計データ
- initiate_tasks_generation_by_csv(project_id: str, csvfile_path: str) dict[str, Any] [source]#
タスクID,入力データ名,入力データID」を1行毎に指定したCSVを使って、タスクを生成する
- Parameters:
project_id – プロジェクトID
csvfile_path – CSVファイルのパス
- Returns:
initiate_tasks_generation APIのContent
- job_in_progress(project_id: str, job_type: ProjectJobType) bool [source]#
ジョブが進行中状態かどうか
- Parameters:
project_id – プロジェクトID
job_type – ジョブ種別
- Returns:
ジョブが進行中状態ならば
True
を返します。それ以外の状態の場合はFalse
を返します。 また、job_type
であるジョブが存在しない場合はFalse
を返します。
- put_annotation_for_simple_annotation_json(project_id: str, task_id: str, input_data_id: str, simple_annotation_json: str, annotation_specs_labels: list[dict[str, Any]], annotation_specs_additionals: list[dict[str, Any]] | None = None) bool [source]#
Annofabからダウンロードしたアノテーションzip配下のJSONと同じフォーマット(Simple Annotation)の内容から、アノテーションを登録する。
- Parameters:
project_id
task_id
input_data_id
simple_annotation_json – Annofabからダウンロードしたアノテーションzip配下のJSONのパス
annotation_specs_labels – アノテーション仕様のラベル情報。annotation_specs_additionalsが指定されている場合はV2版、指定されない場合はV1版。
annotation_specs_additionals – アノテーション仕様の属性情報(V2版)
- Returns:
アノテーション情報をした。False: 登録するアノテーション情報がなかったため、登録しなかった。
- Return type:
True
Notes
2021/07以降、引数annotation_specs_labelsはV1版をサポートしなくなる予定です。
- put_input_data_from_file(project_id: str, input_data_id: str, file_path: str, request_body: dict[str, Any] | None = None, content_type: str | None = None) dict[str, Any] [source]#
ファイル(画像データ、動画データ、 zipファイル)を入力データとして登録する。
- Parameters:
project_id – プロジェクトID
input_data_id – 入力データID
file_path – アップロードするファイルのパス
request_body – put_input_data に渡すrequest body. Keyに`input_data_name` がなければ、ファイルパスが設定される。
content_type – アップロードするファイルのMIME Type. Noneの場合、ファイルパスから推測する。
- Returns:
put_input_data のcontent
- put_supplementary_data_from_file(project_id: str, input_data_id: str, supplementary_data_id: str, file_path: str, request_body: dict[str, Any], content_type: str | None = None) dict[str, Any] [source]#
補助情報ファイルをアップロードする
- Parameters:
project_id – プロジェクトID
input_data_id – 入力データID
supplementary_data_id – 補助情報ID
file_path – アップロードするファイル(text , image)
request_body – put_supplementary_data に渡すRequest Body. supplementary_data_name , supplementary_data_type は指定されていなければ、ファイルパスから取得した情報が設定される。
content_type – アップロードするファイルのMIME Type. Noneの場合、ファイルパスから推測する。
- Returns:
put_supplementary_data のレスポンス
- reject_task(project_id: str, task_id: str, *, force: bool = False, last_updated_datetime: str | None = None) dict[str, Any] [source]#
タスクを差し戻します。 このメソッドを実行すると、`phase`は`annotation`になります。
Notes
- 通常の差し戻しの場合(force=False)
現在タスクを担当しているユーザーのみ、この操作を行うことができます。
現在の状態が作業中(working)のタスクに対してのみ、この操作を行うことができます。
- 強制差し戻しの場合(force=True)
タスクの状態・フェーズを無視して、フェーズを教師付け(annotation)に、状態を未作業(not started)に変更します。
この差戻しは、抜取検査・抜取受入のスキップ判定に影響を及ぼしません。
- Parameters:
project_id – プロジェクトID
task_id – タスクID
force – Trueなら強制差し戻し、Falseなら通常の差し戻しを実施する
last_updated_datetime – operate_task APIのリクエストボディに渡すタスクの最終更新日時。Noneなら`get_task`APIを実行して、タスクの最終更新日時を取得します。
- Returns:
変更後のタスク
- upload_data_as_instruction_image(project_id: str, image_id: str, data: Any, content_type: str) str [source]#
data を作業ガイドの画像としてアップロードする。
- Parameters:
project_id – プロジェクトID
image_id – 作業ガイド画像ID
data – アップロード対象のdata.
requests.put
メソッドのdata
引数にそのまま渡す。content_type – アップロードするファイルのMIME Type.
- Returns:
一時データ保存先であるS3パス
- upload_data_to_s3(project_id: str, data: Any, content_type: str) str [source]#
createTempPath APIを使ってアップロード用のURLとS3パスを取得して、”data” をアップロードする。
- Parameters:
project_id – プロジェクトID
data – アップロード対象のdata.
open(mode="b")
関数の戻り値、またはバイナリ型の値です。requests.put
メソッドのdata
引数にそのまま渡します。content_type – アップロードするfile objectのMIME Type.
- Returns:
一時データ保存先であるS3パス
- Raises:
CheckSumError – アップロードしたデータのMD5ハッシュ値が、S3にアップロードしたときのレスポンスのETagと一致しない
- upload_file_to_s3(project_id: str, file_path: str, content_type: str | None = None) str [source]#
createTempPath APIを使ってアップロード用のURLとS3パスを取得して、ファイルをアップロードする。
- Parameters:
project_id – プロジェクトID
file_path – アップロードするファイルのパス
content_type – アップロードするファイルのMIME Type. Noneの場合、ファイルパスから推測する。
- Returns:
一時データ保存先であるS3パス
- Raises:
CheckSumError – アップロードしたファイルのMD5ハッシュ値が、S3にアップロードしたときのレスポンスのETagと一致しない
- upload_instruction_image(project_id: str, image_id: str, file_path: str, content_type: str | None = None) str [source]#
作業ガイドの画像をアップロードする。
- Parameters:
project_id – プロジェクトID
image_id – 作業ガイド画像ID
file_path – アップロードするファイル
content_type – アップロードするファイルのMIME Type. Noneの場合、ファイルパスから推測する。
- Returns:
一時データ保存先であるS3パス
- wait_for_completion(project_id: str, job_type: ProjectJobType, job_access_interval: int = 60, max_job_access: int = 10) bool [source]#
ジョブが完了するまで待つ。
- Parameters:
project_id – プロジェクトID
job_type – 取得するジョブ種別
job_access_interval – ジョブにアクセスする間隔[sec]
max_job_access – ジョブに最大何回アクセスするか
- Returns:
Trueならば、ジョブが成功した or 実行中のジョブがない。 Falseならば、ジョブが失敗 or
max_job_access
回アクセスしても、ジョブが完了しなかった。
- wait_until_job_finished(project_id: str, job_type: ProjectJobType, job_id: str | None = None, job_access_interval: int = 60, max_job_access: int = 360) JobStatus | None [source]#
指定したジョブが終了するまで待つ。
- Parameters:
project_id – プロジェクトID
job_type – ジョブ種別
job_id – ジョブID。Noneの場合は、現在進行中のジョブが終了するまで待つ。
job_access_interval – ジョブにアクセスする間隔[sec]
max_job_access – ジョブに最大何回アクセスするか
- Returns:
指定した時間(アクセス頻度と回数)待った後のジョブのステータスを返す。 指定したジョブ(job_idがNoneの場合は現在進行中のジョブ)が存在しない場合は、Noneを返す。
- wait_until_job_is_executable(project_id: str, job_type: ProjectJobType, job_access_interval: int = 60, max_job_access: int = 360) bool [source]#
ジョブが実行可能な状態になるまで待ちます。他のジョブが実行されているときは、他のジョブが終了するまで待ちます。
- Parameters:
project_id – プロジェクトID
job_type – 実行したいジョブの種別
job_access_interval – ジョブにアクセスする間隔[sec]
max_job_access – ジョブに最大何回アクセスするか
- Returns:
指定した時間(アクセス頻度と回数)待った後、ジョブが実行可能な状態かどうか。進行中のジョブが存在する場合は、ジョブが実行不可能。