弊社ひび割れ自動検出サービスAPIのご利用に際しては、サービス利用サイト(https://www.mihari.net)において、あらかじめ所定の登録手続きを完了してください。
本APIを利用するアプリケーションソフトウェア、Webサイトを開発する際にはAPIキーが必要です。APIキーは、同一ソフトウェア、同一のドメインに対し1つ発行されます。
アプリケーションソフトウェア、あるいはWebサイトから本APIを利用する際には、利用者毎に本APIの利用登録をしていただき、サインイン可能なユーザー名とパスワードをご準備いただく必要があります。
本APIのご利用手順の概要を図1に示します。大きく分けて3つの工程があります。サインイン工程、検出工程、サインアウト工程です。それぞれに対し、REST APIでいうところのリソースが割り当てられています。
ご利用開始時にサインインしてAccessトークンを取得し、以降のAPIリクエストではメッセージヘッダにAutorizationを追加し、その値としてAccessトークンをセットする必要があります。
本APIを独自開発のアプリケーションやWebサイトでご利用される際には、アプリケーションソフトウェア毎、あるいはドメイン毎にAPIキーが必要になります。APIキーの発行方法は、https://mihari.net にてお知らせしております。発行されたAPIキーは、本APIのメソッドをリクエストする際にx-api-keyヘッダに設定することで、正当なメソッドリクエストとして処理されるようになります。
また、アプリケーションやWebサイトの利用者は、事前にサインアップが必要です。サインアップは、https://mihari.net より行います。サインアップには、ユーザ名、メールアドレス、パスワード、決済の方法と情報の登録が必要です。
本APIの利用を開始する際には、ユーザー名とパスワードによってサインインし、Accessトークンを取得しておく必要があります。APIによって検出機能を呼び出す場合は、リクエストヘッダにAutorizationヘッダを追加し、取得したAccessトークンをセットする必要があります。Accessトークンの有効期限は取得後4時間です。期限を過ぎた場合は、再度サインインを行い、新しいAccessトークンを取得し直してください。
サインインによってAccessトークンが取得できない場合は、ユーザーおよび決済に関する登録情報をご確認ください。
エンドポイント
https://api.mihari.net/v1/users/signin
メソッド
POST
ヘッダ
リクエストヘッダ部に下記のヘッダと値を追加します。APIキーの取得には、アプリケーションごとに事前の利用申請が必要です。追加方法は、ご利用される開発環境の仕様に従ってください。
x-api-key APIキー
メッセージボディ
ユーザー名とパスワードを以下のJSON形式でセットします。
{"username": "ユーザー名",
"password”: "パスワード"}
オプション
オプションはありません。
応答メッセージ
成功時
{ "message": "signed-in", "userurl": "https://api.mihari.net/v1/users/ユーザー名/", "response": { "AccessToken": "アクセストークン文字列", "ExpiresIn": 14400, "TokenType": "Bearer" }, "profile": "登録状況", "timestamp": "日時" }
失敗時
{ "message": "Error: エラーメッセージ", "timestamp": "日時" }
API利用を終了する際に実行します。IDトークンが有効期限切れになっている場合は既にサインアウト状態になっていますので、サインアウトを呼び出す必要はありません。
エンドポイント
https://api.mihari.net/v1/users/ユーザー名/signout
メソッド
GET
ヘッダ
リクエストヘッダ部に下記のヘッダと値を追加します。追加方法は、ご利用される開発環境の仕様に従ってください。
x-api-key APIキー
Autorization Accessトークン
オプション
オプションはありません。
応答メッセージ
{ "message": "signed-out", "username": "ユーザー名", "summary": { "today": { "calls": "検出リクエスト回数", "uploaded": "入力画像を実際にPUTした回数", "size": "PUTした入力画像のファイルサイズの合計", "units": "清算ユニット数" }, "monthly": { "calls": "検出リクエスト回数", "uploaded": "入力画像を実際にPUTした回数", "size": "PUTした入力画像のファイルサイズの合計", "units": "清算ユニット数" }, "timestamp": "日時"}
{"message": "Error: エラーメッセージ", "username": "", "summary": {}, "timestamp": "日時"}
ユーザープロファイルを取得します。
エンドポイント
https://api.mihari.net/v1/users/ユーザー名/profile
メソッド
GET
ヘッダ
リクエストヘッダ部に下記のヘッダと値を追加します。追加方法は、ご利用される開発環境の仕様に従ってください。
x-api-key APIキー
Autorization Accessトークン
オプション
オプションはありません。
応答メッセージ
成功時
{
"message": "accepted",
"profile": {
"status_code": "profile_get",
"happened_at": "2021-00-00T00:00:00.000000+09:00",
"payment_method": "",
"calls_all": "99999",
"calls_daily": "99",
"calls_monthly": "999",
"uploaded_all": "88888",
"uploaded_daily": "88",
"uploaded_monthly": "888",
"size_all": "123456789",
"size_daily": "12345",
"size_monthly": "1234567",
"unit_price": "200",
"units_all": "77777",
"units_daily": "77",
"units_monthly": "777",
"unprocessed_all": "88888",
"unprocessed_daily": "88",
"unprocessed_monthly": "888",
"username": "username"
},
"timestamp": "2021-00-00T00:00:00.000000+09:00"
}
失敗時
現在はbatchmodeのみ稼働しています。検出対象画像のアップロード先と検出結果のダウンロード元の情報を一括取得(JSON形式。以降、チケットと呼びます)し、やりとりするモードです。
GETメソッドによって、チケットを取得。
検出対象画像(JPEG形式)を、チケット内の項目「puturis」にあるURIに、PUTメソッドでアップロード。
アップロードしてから待ち時間(約30秒)経過後、チケット内の項目「geturis」にあるURIから、GETメソッドで検出結果(JPEG, DXF, SVG)をダウンロード。
エンドポイント
https://api.mihari.net/v1/users/ユーザー名/detection
メソッド
GET
ヘッダ
リクエストヘッダに Authorization を追加し、サインインで取得したIDトークンをセットします。
オプション
名称: "crack"
名称: "repeat"
名称:"threshold"
名称:"scale"
名称:"distance"
名称:"indicator"
名称:"output"
名称:"jpg"
名称:"dxf"
名称:"svg"
応答メッセージ
成功時
{"message": "accepted", "body": {"puturis": [{"id": "1" "uri": "アップロード先(ファイル名含む)URI"}], "geturis": [ {"id": "1", "outputs": [ {"type": "dxf", "uri": "ダウンロード先(ファイル名含む)URI"}, {"type": "svg", "uri": "ダウンロード先(ファイル名含む)URI"}, {"type": "jpg", "uri": "ダウンロード先(ファイル名含む)URI"} ] }] }, "timestamp": "日時"}
失敗時
{"message": "Error: エラーメッセージ", "timestamp": "日時"}
リクエストURIの例
https://api.mihari.net/v1/users/(ユーザー名)/detection?crack=batchmode&threshold=24&scale=0.6&unify=10&simplify=10&jpg=w&dxf=0.8,1.0,t&svg=1,l