Microsoft Edge アドオンの REST API リファレンス

この記事は、Microsoft Edge アドオン API の REST エンドポイント リファレンスです。 この API は、Microsoft Edge アドオン ストアに送信されたアドオンへの更新プログラムの発行を自動化します。

概要については、「 Microsoft Edge アドオン REST API の使用」を参照してください。

パッケージをアップロードして既存の申請を更新する

パッケージをアップロードして、アドオン製品の既存の下書き申請を更新します。

要求

メソッド 要求 URI
POST /products/{productID}/submissions/draft/package
URI パラメーター
URI パラメーター 説明
productID 必須です。 パッケージをアップロードする必要がある製品の製品 ID。
要求ヘッダー
  • 必須です。 Authorization: Bearer <auth token>

  • 必須です。 Content-Type: application/zip

要求本文
  • <Zip package>

応答

応答ヘッダー
  • 場所: {operationID}
状態コード

この API には、次の予期される状態コードがあります。

HTTP ステータス コード 説明
202 要求は処理のために受け入れられますが、処理は完了していません。
4XX 「エラー コード」を参照してください。
5XX 「エラー コード」を参照してください。

関連項目:

パッケージのアップロードの状態を確認する

パッケージのアップロードの状態を取得します。

要求

メソッド 要求 URI
GET /products/{productID}/submissions/draft/package/operations/{operationID}
URI パラメーター
URI パラメーター 説明
operationID 必須です。 前の手順で送信したアップロード要求の操作 ID。 この情報は、応答ヘッダーで使用できます。
要求ヘッダー
  • 必須です。 Authorization: Bearer <auth token>
要求本文

なし。

応答

さまざまなシナリオに対して、いくつかの応答があります。

操作がまだ進行中の場合の応答
{
    "id": "{operationID}",
    "createdTime": "Date Time",
    "lastUpdatedTime": "Date Time",
    "status": "InProgress",
    "message": null,
    "errorCode": null,
    "errors": null
}
操作が成功したときの応答
{
    "id": "{operationID}",
    "createdTime": "Date Time",
    "lastUpdatedTime": "Date Time",
    "status": "Succeeded",
    "message": "Successfully updated package to {fileName}.zip",
    "errorCode": "",
    "errors": null
}
操作がエラーで失敗したときの応答
 {
    "id": "{operationID}",
    "createdTime": "Date Time",
    "lastUpdatedTime": "Date Time",
    "status": "Failed",
    "message": "Error Message.",
    "errorCode": "Error Code",
    "errors": ["list of errors"]
}
応答ヘッダー

なし。

状態コード

この API には、次の予期される状態コードがあります。

HTTP ステータス コード 説明
200 要求は OK です。
4XX 「エラー コード」を参照してください。
5XX 「エラー コード」を参照してください。

関連項目:

製品の下書き申請を発行する

製品の現在のドラフトを Microsoft Edge アドオンに発行します。

要求

メソッド 要求 URI
POST /products/{productID}/submissions
URI パラメーター
URI パラメーター 説明
productID 必須です。 下書きを発行する必要がある製品の製品 ID。
要求ヘッダー
  • 必須です。 Authorization: Bearer <auth token>
要求本文

<Notes for certification>をプレーン テキスト形式で指定します。

応答

応答ヘッダー
  • 場所: {operationID}
状態コード

この API には、次の予期される状態コードがあります。

HTTP ステータス コード 説明
202 要求は処理のために受け入れられますが、処理は完了していません。
4XX 「エラー コード」を参照してください。
5XX 「エラー コード」を参照してください。

関連項目:

発行の状態を確認する

発行操作の状態を確認します。

要求

メソッド 要求 URI
GET /products/{productID}/submissions/operations/{operationID}
URI パラメーター

なし。

要求ヘッダー
  • 必須です。 Authorization: Bearer <auth token>
要求本文

なし。

応答

GET操作状態 API は、次のシナリオで呼び出すことができます。 すべての有効なシナリオで、 200 OK が返され、異なるステータス メッセージが返されます。

新しい製品が発行されたときの応答
{
    "id": "{operationID}",
    "createdTime": "Date Time",
    "lastUpdatedTime": " Date Time ",
    "status": "Failed",
    "message": "Can't create new extension.",
    "errorCode": "CreateNotAllowed",
    "errors": null
}
公開する新しい情報がない場合の応答
{
    "id": "{operationID}",
    "createdTime": "Date Time",
    "lastUpdatedTime": " Date Time ",
    "status": "Failed",
    "message": "Can't publish extension since there are no updates, please try again after updating the package.",
    "errorCode": "NoModulesUpdated",
    "errors": null
}
同じ製品に対してレビュー中の申請がある場合の応答
{
    "id": "{operationID}",
    "createdTime": "Date Time",
    "lastUpdatedTime": " Date Time ",
    "status": "Failed",
    "message": "Can't publish extension as your extension submission is in progress. Please try again later.",
    "errorCode": "InProgressSubmission",
    "errors": null    
}
同じ製品に対して発行されていない申請が進行中の場合の応答
{
    "id": "{operationID}",
    "createdTime": "Date Time",
    "lastUpdatedTime": " Date Time ",
    "status": "Failed",
    "message": "Can't publish extension as your extension is being unpublished. Please try after you've unpublished.",
    "errorCode": "UnpublishInProgress",
    "errors": null    
}
いずれかのモジュールが無効な応答
{
    "id": "{operationID}",
    "createdTime": "Date Time",
    "lastUpdatedTime": " Date Time ",
    "status": "Failed",
    "message": "Can't publish extension as your extension has modules that are not valid. Fix the modules with errors and try to publish again.",
    "errorCode": "ModuleStateUnPublishable",
    "errors": [
        {
            "message": "Invalid module : <Modules>"
        }
    ]
}
送信に検証エラーがある場合の応答
{
    "id": "{operationID}",
    "createdTime": "Date Time",
    "lastUpdatedTime": " Date Time ",
    "status": "Failed",
    "message": "Extension can't be published as there are submission validation failures. Fix these errors and try again later.",
    "errorCode": "SubmissionValidationError",
    "errors": ["{list of errors}"]
}
発行呼び出しが成功したときの応答
{
    "id": "{operationID}",
    "createdTime": "Date Time",
    "lastUpdatedTime": "Date Time",
    "status": "Succeeded",
    "message": "Successfully created submission with ID {submission.Id}",
    "errorCode": "",
    "errors": null
}
発行呼び出しが回復不可能なエラーで失敗したときの応答
{
    "id": "{operationID}",
    "createdTime": "Date Time",
    "lastUpdatedTime": " Date Time ",
    "status": "Failed",
    "message": "An error occurred while performing the operation",
    "errorCode": null,
    "errors": null
}
発行呼び出しが予期しないエラーで失敗したときの応答
{
    "id": "{operationID}",
    "message": "An error occurred while processing the request. Please contact support Correlation ID: {operationID} Timestamp: {timeStamp}",
}
応答ヘッダー

なし。

状態コード

この API には、次の予期される状態コードがあります。

HTTP ステータス コード 説明
200 要求は OK です。
4XX 「エラー コード」を参照してください。
5XX 「エラー コード」を参照してください。

関連項目:

エラー コード

一般的なエラー コードと考えられる理由の一覧を次に示します。 完全な一覧については、「 パートナー センターの REST エラー コード 」または「 HTTP 状態コードの一覧」を参照してください。

4xx: クライアント エラー

メッセージ 説明 シナリオ例
400 無効な要求 サーバーが要求を理解できませんでした。 本文にパッケージ (zip ファイル) はありません。 または、ヘッダーが見つからないか、 Content-Type その値が正しくありません。
401 未承認 要求ページには承認が必要です。 認証トークンが見つからない、有効期限が切れている、または無効です。
404 が見つかりません サーバーで要求されたページが見つかりません。 指定された productID または operationID 有効な GUID がない、無効、または要求を行っている開発者に属していません。
408 要求タイムアウト 要求は、サーバーが待機する準備が整ったよりも長くかかりました。 パッケージのアップロード中にタイムアウトが発生しました。
429 要求が多すぎます ユーザーから送信された要求が多すぎます。 送信された要求が多すぎて調整されました。

5xx: サーバー エラー

メッセージ 説明 シナリオ例
500 内部サーバー エラー 要求が完了していません。 サーバーが予期しない条件を満たしました。

関連項目