> ## Documentation Index
> Fetch the complete documentation index at: https://devdocs.xbox.com/llms.txt
> Use this file to discover all available pages before exploring further.

# マーケットプレイスのエラー処理

> APIErrorWrapper、MarketplaceErrorCode の詳細、および失敗したストア API 呼び出しの回復パターンを使用して PlayFab マーケットプレイスの引き換えエラーを処理します。

# マーケットプレイス引き換えのエラー処理

マーケットプレイス引き換え API を扱う際、堅牢なエラー処理が非常に重要です。この記事では、一般的なエラー コードの理解から、優雅なエラー回復戦略の実装まで、エラー処理のベスト プラクティスを紹介します。

エラーは、標準の [PlayFab Error Wrapper](https://learn.microsoft.com/en-us/rest/api/playfab/economy/inventory/redeem-apple-app-store-inventory-items#apierrorwrapper) を使用して返されます。

## APIErrorWrapper

`APIErrorWrapper` は、失敗したすべての API レスポンスをラップするラッパーです。

| 名前           | 型       | 説明                           |
| ------------ | ------- | ---------------------------- |
| code         | integer | 数値の HTTP コード。                |
| error        | string  | PlayFab のエラー コード。            |
| errorCode    | integer | 数値の PlayFab エラー コード。         |
| errorDetails | object  | リクエスト オブジェクトの個別の問題に関する詳細な説明。 |
| errorMessage | string  | PlayFab errorCode の説明。       |
| status       | string  | 文字列の HTTP コード。               |

マーケットプレイス関連の問題については、`errorDetails` オブジェクトでキーと値のペア (KVP) を返します。

| 名前                   | 型         | 説明                                                                                             |
| -------------------- | --------- | ---------------------------------------------------------------------------------------------- |
| MarketplaceErrorCode | string\[] | マーケットプレイスへの呼び出しが失敗した場合にマーケットプレイスから返されるエラー コード。配列の最初の文字列がエラー コードで、2 番目の文字列は使用可能な場合はエラー メッセージです。 |

<Note>
  これは、マーケットプレイスから返されたエラー コードとエラー コード メッセージのパススルーです。
</Note>

エラー レスポンスは以下のように表示されます。開発者は `wrapper.errorDetails['MarketplaceErrorCode']` が null でないことを確認し、その後最初の要素を解析して、それぞれのマーケットプレイス エラー コードを適切に処理する必要があります。

```json theme={null}
"{
    "code":503,
    "errorDetails":
    {
        "MarketplaceErrorCode":["1234","sample error code"]
    },
    ...    
}"
```

## 公開の失敗 HTTP ステータス コード

このセクションでは、redeem API から返されるエラー コードを一覧表示します。

* **400 - Bad Request**
  * すべてのリクエストおよび入力検証の失敗 `GenericErroCodes.InvalidRequest`
  * すべての構成検証の失敗 `GenericErrorCodes.InvalidServiceConfiguration`
  * すべてのマーケットプレイス認可の失敗
    * `GenericErrorCodes.InvalidServiceConfiguration` - サービス ID の失敗に関連します。
    * `GenericErrorCodes.InvalidAuthToken` - プレイヤー ID の失敗に関連します。
  * すべてのカタログ アイテム構成の失敗 `GenericErrorCodes.InvalidCatalogItemConfiguration`
* **401/403 - Not Authorized/Forbidden**
  * PlayFab 認可の失敗 `GenericErrorCodes.NotAuthorized`
* **503 - MarketplaceUnavailable**
  * `GenericErrorCodes.DownstreamServiceUnavailable`


## Related topics

- [PlayFab Economy v2 ドキュメント](/ja-jp/services/playfab/economy-monetization/index.md)
- [マーケットプレイスの引き換え - 概要](/ja-jp/services/playfab/economy-monetization/economy-v2/marketplace/marketplace-redemption/overview.md)
- [Microsoft Store マーケットプレイスでの引き換え](/ja-jp/services/playfab/economy-monetization/economy-v2/marketplace/marketplace-redemption/microsoft.md)
- [マーケットプレイス統合 - Microsoft Store](/ja-jp/services/playfab/economy-monetization/economy-v2/marketplace/marketplace-integrations/microsoft.md)
- [Steam マーケットプレイスでの引き換え](/ja-jp/services/playfab/economy-monetization/economy-v2/marketplace/marketplace-redemption/steam.md)
