# API（Webサービス）経由の一括での逆転処理の概要

<a href="https://pxa.impact.com/student/activity/2268418?sid=0c0e3e5c-54c9-4435-9bee-ebcdccb7f292&#x26;sid_i=0?utm_source=app.impact.com&#x26;utm_medium=owned-platform&#x26;utm_content=&#x26;utm_campaign=help-center" class="button primary">PXAコースを受講する</a>

アクションに関して何か変更があった場合（例：注文がキャンセルされた、商品が返品された、など）、API を使用してそれを修正（または取り消し）し、アクションのコミッション金額を変更できます。この記事では、impact.com Brand API への cURL 呼び出しを使用してアクションを修正および取り消す方法を示します。

**バッチ処理での取り消しオプション：**

* API を介してアクション内の 1 件以上のアイテムを修正または取り消す
* API を介してアクション全体を取り消す

#### 前提条件：次の値を取得する *ActionId* 値

アクションを取り消すには、その `ActionId` 値が必要です。以下の呼び出しは指定した全てのアクションを取得します *プログラム* （つまり、 *Campaign*）— これを使用して修正したいアクションを見つけることができます。

* 呼び出しで日付範囲を指定できます。指定しない場合、エンドポイントはデフォルトで過去30日分のアクションを表示します。
* [レート制限](https://integrations.impact.com/impact-brand/reference/rate-limits) が適用されます。
* 以下を表示します [すべてのアクションを一覧表示](https://integrations.impact.com/impact-brand/reference/list-all-actions) 詳細を確認するにはAPIエンドポイントのドキュメントを参照してください。

<details>

<summary>パラメータ参照</summary>

| パラメータ        | 説明                                                                                                                                                                                                                                                                                                                                                |
| ------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `AccountId`  | あなたの impact.com アカウントの API アカウント ID 値。 [この値の見つけ方を確認する](https://help.impact.com/brand/ja/account-administration/account-settings/api-tokens/manage-api-access-tokens-as-a-brand).                                                                                                                                                                  |
| `AuthToken`  | あなたの impact.com アカウントの API 認証トークンの値。 [この値の見つけ方を確認する](https://help.impact.com/brand/ja/account-administration/account-settings/api-tokens/manage-api-access-tokens-as-a-brand).                                                                                                                                                                    |
| `CampaignId` | <p>アクションがトラッキングされたプログラム（キャンペーン）のID値。</p><p><img src="https://1458456015-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FwMLlMoFBtKJa8ptd3zaw%2Fuploads%2Fgit-blob-31394f285a15896ee35415220c2ee33641e1e8db%2F6cdb04166abb32ded5995d58f18ef3e6462d01cddcf81cd387abb3cac22e3389.png?alt=media" alt="" data-size="original"></p> |

</details>

{% tabs %}
{% tab title="呼び出し例" %}

```programlisting
curl 'https://api.impact.com/Advertisers/{AccountSID}/Actions' \\
  -X GET \
  -u '{AccountSID}:{AuthToken}' \\
  -H 'Accept: application/json' \\
  -d 'CampaignId={CampaignId}'
```

{% endtab %}

{% tab title="レスポンス例" %}

```programlisting
{
  "@page": "1",
  ...,
  "Actions": [
    {
      "Id": "1000.4636.158133",
      ...,
    }
  ]
}
```

{% endtab %}
{% endtabs %}

#### よくある質問

<details>

<summary>アクション（またはアクション項目）に対して行った変更／取り消しをどのようにリセットしますか？</summary>

アクションがロック日より前に変更または取り消されている場合、次を提出して `RESET` 理由としてアクションをデフォルトの状態に戻すために更新できます：

```programlisting
curl 'https://api.impact.com/Advertisers/{AccountSID}/Actions' \\
  -X PUT \
  -u '{AccountSID}:{AuthToken}' \\
  -H 'Accept: application/json' \\
  -H 'Content-Type: application/x-www-form-urlencoded' \\
  -d 'ActionId={ActionId}' \\
  -d 'Reason=RESET'
```

経由でリセットされたアクションは、 `RESET` コードによりレポートに正しく表示されない場合があります（例：収益値が誤って計算される可能性があります）。

</details>

<details>

<summary>処分コードと理由の違いは何ですか？</summary>

Disposition Codes と Reasons は同じ文脈で使用されます — *Reasons* は API がデフォルトで受け入れる定義済みコードであるのに対し、 *Disposition Codes* はあなたが設定できるカスタムの理由です。 [Disposition Codes の詳細を学ぶ](https://help.impact.com/brand/ja/platform-features/tracking/set-up-tracking/manage-disposition-codes).

これらの値のいずれかを理由として送信すると、項目（または操作）が取り消されます：

| コード                     | 説明                  |
| ----------------------- | ------------------- |
| `CONS_FRAUD`            | 消費者詐欺               |
| `CONS_ERROR`            | 消費者の誤り              |
| `ITEM_RETURNED`         | 商品が返却された            |
| `ORDER_ERROR`           | 注文エラー               |
| `ORDER_UPDATE`          | 注文が更新された            |
| `PUB_ACT_DISPUTE`       | パートナー活動の異議          |
| `ADV_ACT_DISPUTE`       | 広告主のアクティビティに関する異議   |
| `NOT_COMPLIANCE_TERMS`  | 利用規約に準拠していない        |
| `ITEM_OUT_OF_STOCK`     | アイテムが在庫切れ           |
| `TEST_ACTION`           | テストアクション            |
| `PARTNER_NOT_ACTIVE`    | パートナーアカウントが無効化されている |
| `CREDITED_DIFFERENT_MP` | 別のパートナーにクレジットされた    |
| `OTHER`                 | その他の理由              |
| `ITEM_CANCELLED`        | 注文内のアイテムがキャンセルされました |

</details>

<details>

<summary>アクションに対して変更／取り消しがいつ適用されたかをどのように確認できますか？</summary>

を使用できます [アクションの更新](https://integrations.impact.com/impact-brand/reference/the-action-update-object) アクションが最後に更新された時刻と現在の状態を確認するためのエンドポイント。

```programlisting
curl 'https://api.impact.com/Advertisers/{AccountSID}/ActionUpdates/{ActionUpdatesId}' \
  -X GET \
  -u '{AccountSID}:{AuthToken}' \\
  -H 'Accept: application/json' \\
```

{% hint style="info" %}
**注：** 匿名リーダーボードは `ActionUpdatesID` 値がと異なります `ActionId` 値 — を使用する必要があります `ActionUpdatesID` 値を使用してアクションの更新を取得します。
{% endhint %}

</details>
