新しいコンバージョンを追加

Conversion.insert() メソッドを呼び出して、1 つ以上のコンバージョンを追加します。コンバージョンを適切にアトリビューションするには、広告主様がオフライン コンバージョンのレポートに使用している Floodlight アクティビティの名前と、コンバージョンにつながったキーワード、広告、クリックの ID をリクエストに指定する必要があります。検索広告 360 ID の取得方法については、検索広告 360 ID とコンバージョンをご覧ください。

過去のコンバージョンのアップロードに関する制限については、検索広告 360 ヘルプセンターをご覧ください。

Conversion.insert() リクエストで複数のコンバージョンを指定する場合は、バッチ全体をオール オア ナッシング トランザクションとしてアップロードするのではなく、ベスト エフォートを基本として各コンバージョンのアップロードを試みます。バッチ内のコンバージョンの一部をアップロードできなくても、それ以外のコンバージョンは正常にアップロードできる場合があります。無効なリクエスト、または一時的なネットワークやシステム障害が原因で、コンバージョンのアップロードが失敗することがあります。そのため、挿入されたコンバージョンごとにレスポンスを読み取て、アップロードが正常に完了したことを確認することをおすすめします。

アップロードしたデータを使用できるようになるまで、どのくらいかかりますか?

コンバージョンについて今日または昨日の conversionTimestamp を指定した場合、そのコンバージョンの指標は、アップロードから 1 時間以内に検索広告 360 の管理画面に表示されます。昨日より古い conversionTimestamp を指定した場合、指標は数時間以内に更新されます。

コンバージョンのすべてのタイムスタンプをエポック時間(Unix 時間)に変換します。

API から Floodlight アクティビティを作成できますか?

オフライン コンバージョンをトラッキングするための Floodlight アクティビティがまだ作成されていない場合は、 キャンペーン マネージャー API を使用して作成できます。API を使用して、Floodlight アクティビティを主にオフライン コンバージョンに使用することを指定することはできません。これは、入札戦略でコンバージョンのデータを利用する場合はベスト プラクティスです。

API を使用して Floodlight アクティビティを作成した後、検索広告 360 ユーザーが検索広告 360 にログインし、アクティビティの設定を変更して、コンバージョンの主なソースがオフライン アクティビティであることを示すことをおすすめします。

コンバージョンを追加する際のベスト プラクティス

コンバージョンを追加する際は、次のベスト プラクティスをおすすめします。

  1. 検索広告 360 のユーザーに、検索広告 360 にログインして、オフライン コンバージョンのレポートに使用する各 Floodlight アクティビティの設定を変更するよう依頼します。コンバージョンの主なソースがオフライン アクティビティであることを設定する必要があります。手順については、検索広告 360 ヘルプセンターをご覧ください。

  2. コンバージョンが利用可能になったらすぐにアップロードします。 コンバージョンを特定の訪問に結び付ける場合は、訪問の後、少なくとも 6 時間経ってからコンバージョンをアップロードするようにしてください。訪問後 6 時間以内にアップロードした場合、訪問のクリック ID が認識されないことがあります。まれに、検索広告 360 でクリック ID が認識されるまでに最長で 24 時間ほどかかることがあります。

    必ず、各アップロードに最新のコンバージョンを含めるようにしてください。1 回のアップロード リクエスト内で、エントリが時系列順でなくても問題ありません。ただし、古いコンバージョンを後から別のリクエストでアップロードした場合、入札戦略がそれを認識できないことがあります。

挿入リクエストを送信する

Conversion.insert() リクエストを送信して、次のいずれかを行うことができます。

  • コンバージョンを特定の訪問に関連付ける
  • コンバージョンをキーワードにのみ関連付ける

Conversion.insert() リクエストで必須となるフィールドは、コンバージョンを関連付けるイベントまたはアイテムによって異なります。以降のセクションでは、コンバージョンの割り当て先となるイベントまたはアイテムごとに、必須フィールドとオプション フィールドを示します。

コンバージョンを特定の訪問に関連付ける

ユーザーが 1 つ以上の広告をクリックして広告主のサイトにアクセスすると、検索広告 360 では、広告主のサイトでのユーザー セッションがアクセスとみなされます。コンバージョンを訪問に関連付けるには、Conversion.insert() リクエストで次の情報を指定します。

必須項目

  • clickId: 大文字と小文字を区別する、訪問のクリック ID。広告主様のウェブログでクリック ID を探すか、コンバージョンをリストして、別のコンバージョンのクリック ID を使用します。検索広告 360 では、コンバージョンは、訪問の発生に貢献したキーワード、広告、その他の検索広告 360 オブジェクトに割り当てられます。
    検索広告 360 がクリック ID を生成してコンバージョンをアップロードしたら、少なくとも 6 時間待つ。 「クリック ID が見つかりません」というエラーが表示された場合は、24 時間待ってからコンバージョンをもう一度アップロードしてください。すべてのコンバージョンは、クリック ID が生成されてから 90 日以内にアップロードする必要があります。そうでない場合、検索広告 360 API で訪問が認識されないことがあります。
  • conversionId: オフライン コンバージョンの場合は、広告主がこの ID を提供します。広告主は、わかりやすい ID を指定できます。リクエスト内の各コンバージョンには一意の ID を指定する必要があります。また、ID とタイムスタンプの組み合わせは、広告主様のすべてのコンバージョンで一意である必要があります。オンライン コンバージョンの場合、検索広告 360 は、広告主の Floodlight 処理に応じて、dsConversionId または floodlightOrderId をこのプロパティにコピーします。
  • conversionTimestamp: コンバージョンが発生した日時を示します。たとえば、変換が 2016 年 8 月 5 日(金)午前 11 時 53 分 22 秒(東部夏時間(GMT -4:00))に発生する場合は、タイムスタンプをエポック ミリ秒(1470412402000)で指定します。
  • segmentationType: コンバージョンをアップロードするコンバージョン システムのタイプを指定します。現在、Floodlight コンバージョンのみがサポートされているため、このフィールドには常に FLOODLIGHT を指定する必要があります。
  • segmentationName: 広告主がコンバージョンのレポートに使用している Floodlight アクティビティの名前。

    広告主に同じ名前のアクティビティが含まれている場合(アクティビティが異なる Floodlight グループに属している場合に発生することがあります)、いずれかのアクティビティの名前を変更することをおすすめします。

    検索広告 360 で Floodlight アクティビティに割り当てられた ID がわかっている場合は、segmentationName フィールドに名前を指定する代わりに、segmentationId に ID を指定できます。(キャンペーン マネージャーでも Floodlight アクティビティに ID が割り当てられますが、キャンペーン マネージャー ID は検索広告 360 ID とは異なるため、コンバージョンのアトリビューションには使用できません)。Floodlight アクティビティの検索広告 360 ID を確認するには、コンバージョン レポートをダウンロードします(検索広告 360 の管理画面またはReporting API からダウンロードできます)。レポートの期間中に Floodlight アクティビティに 1 件以上のコンバージョンが関連付けられている場合、検索広告 360 ID がレポートに表示されます。

  • type: コンバージョンのタイプ(ACTION または TRANSACTION)。ACTION コンバージョンには金銭的価値がありませんが、TRANSACTION コンバージョンには金銭的価値があります。たとえば、メールリストへの登録(アクション)と e コマース購入(トランザクション)などです。

    TRANSACTION を指定する場合は、次のフィールドも指定する必要があります。

    • revenueMicros: コンバージョンの金額。

省略可能項目

  • quantityMillis: このコンバージョン内のアイテム数。たとえば、ニュースレターに登録したユーザー数や、販売された商品の合計数などです。ACTION コンバージョンでこのフィールドを指定しないと、検索広告 360 によって 1000 の値が自動的に挿入されます。
  • currencyCode: トランザクションの収益の通貨。デフォルトでは、収益は広告主の通貨で表示されます。別の通貨を指定した場合、検索広告 360 は指定された収益額を広告主の通貨に変換します。詳細
    ISO 4217 英字(3 文字)形式で通貨を指定します。
    トランザクション コンバージョンにのみ適用されます。
  • customMetriccustomDimension: 購入した商品の発送先の国、商品 ID、電話での通話時間など、コンバージョンに関する追加データをアップロードします。詳しくは、カスタム Floodlight 変数のデータのアップロードをご覧ください。
  • deviceType: コンバージョンが発生したデバイスのタイプを指定します。このフィールドで使用できる値の一覧については、こちらをご覧ください。

JSON

POST  https://www.googleapis.com/doubleclicksearch/v2/conversion
Authorization: Bearer your OAuth 2.0 access token
Content-type: application/json
{
 "kind": "doubleclicksearch#conversionList",
  "conversion" : [{
    "clickId" : "COiYmPDTv7kCFcP0KgodOzQAAA", // Replace with a click ID from your site
    "conversionId" : "test_20130906_04",
    "conversionTimestamp" : "1378710000000",
    "segmentationType" : "FLOODLIGHT",
    "segmentationName" : "Test",
    "type": "TRANSACTION",
    "revenueMicros": "10000000", // 10 million revenueMicros is equivalent to $10 of revenue
    "currencyCode": "USD"
  }]
}
          

Java

  /**
   * Instantiate the Doubleclicksearch service, create conversions, and upload them.
   */
  public static void main(String[] args) throws Exception {

    Doubleclicksearch service = getService(); // See Set Up Your Application.

    // Set up a List to keep track of each conversion you create.
    List<Conversion> conversions = new Vector<Conversion>();

    // Add a conversion to the List.
    addTransactionConversionForVisit(conversions, "COiYmPDTv7kCFcP0KgodOzQAAA", // Replace with a click ID from your site
        "test_" + System.currentTimeMillis(), 10000000L, 1378710000000L);

    // Upload the List and handle the response.
    uploadConversions(conversions, service);
  }


  /**
   * Create a TRANSACTION conversion and add it to a List<Conversion>. This sample hard-codes
   * the segmentation name and currency. You probably wouldn't want your production code to be so brittle.
   */
  private static List<Conversion> addTransactionConversionForVisit(List<Conversion> conversions,
      String clickId, String conversionId, Long revenue, Long timeStamp) {

    Conversion conversion = new Conversion().setClickId(clickId)
        .setConversionId(conversionId)
        .setSegmentationType("FLOODLIGHT")
        .setSegmentationName("Test")
        .setType("TRANSACTION")
        .setRevenueMicros(revenue)
        .setCurrencyCode("USD")
        .setConversionTimestamp(BigInteger.valueOf(timeStamp));

    conversions.add(conversion);
    return conversions;
  }


  /**
   * Convert the List of conversions to a DS ConversionList, send an insert request to DS,
   * and output the response to a file.
   */
  private static void uploadConversions(List<Conversion> conversions, Doubleclicksearch service)
      throws IOException {

    FileOutputStream outputStream =
        new FileOutputStream(new File("./", "InsertConversionsResponse.txt"));
    final PrintStream printStream = new PrintStream(outputStream);

    try {
      // Convert the List to a ConversionList.
      ConversionList conversionList = new ConversionList().setConversion(conversions);

      // Insert an upload request and download the response to a file.
      service.conversion().insert(conversionList).executeAndDownloadTo(printStream);
      printStream.close();
    } catch (GoogleJsonResponseException e) {
      System.err.println("Get request was rejected.");
      for (ErrorInfo error : e.getDetails().getErrors()) {
        System.err.println(error.getMessage());
      }
      System.exit(e.getStatusCode());
    }
  }
            

Python

def insert_conversion(service):
  """Create and upload a TRANSACTION conversion that is attributed to a visit.

  Args:
    service: An authorized Doubleclicksearch service. See Set Up Your Application.
  """
  request = service.conversion().insert(
      body=
      {
          'conversion': [{
              'clickId': 'COiYmPDTv7kCFcP0KgodOzQAAA', // Replace with a click ID from your site
              'conversionId': 'test_20140206_00',
              'conversionTimestamp': '1378710000000',
              'segmentationType': 'FLOODLIGHT',
              'segmentationName': 'Test',
              'type': 'TRANSACTION',
              'revenueMicros': '10000000', // 10 million revenueMicros is equivalent to $10 of revenue
              'currencyCode': 'USD'
              }]
      }
  )

  pprint.pprint(request.execute())

コンバージョンをキーワードにのみ関連付ける

コンバージョンをキーワードに関連付けることが主な目的で、広告に関連付けることは目的でない場合は、検索広告 360 の識別子のほとんどを省略し、キーワードの識別子と、次のフィールドのみを指定します。

必須項目

  • criterionId: キーワード ID です。criterionId を取得するには、ランディング ページ URL に TrackerId マクロを追加します。キーワード ID の取得方法については、検索広告 360 の ID とコンバージョンをご覧ください。
  • conversionId: オフライン コンバージョンの場合は、広告主がこの ID を提供します。広告主は、わかりやすい ID を指定できます。リクエスト内の各コンバージョンには一意の ID を指定する必要があります。また、ID とタイムスタンプの組み合わせは、広告主様のすべてのコンバージョンで一意である必要があります。オンライン コンバージョンの場合、検索広告 360 は、広告主の Floodlight 処理に応じて、dsConversionId または floodlightOrderId をこのプロパティにコピーします。
  • conversionTimestamp: コンバージョンが発生した日時を示します。たとえば、変換が 2016 年 8 月 5 日(金)午前 11 時 53 分 22 秒(東部夏時間(GMT -4:00))に発生する場合は、タイムスタンプをエポック ミリ秒(1470412402000)で指定します。
  • segmentationType: コンバージョンをアップロードするコンバージョン システムのタイプを指定します。現在、Floodlight コンバージョンのみがサポートされているため、このフィールドには常に FLOODLIGHT を指定する必要があります。
  • segmentationName: 広告主がコンバージョンのレポートに使用している Floodlight アクティビティの名前。

    広告主に同じ名前のアクティビティが含まれている場合(アクティビティが異なる Floodlight グループに属している場合に発生することがあります)、いずれかのアクティビティの名前を変更することをおすすめします。

    検索広告 360 で Floodlight アクティビティに割り当てられた ID がわかっている場合は、segmentationName フィールドに名前を指定する代わりに、segmentationId に ID を指定できます。(キャンペーン マネージャーでも Floodlight アクティビティに ID が割り当てられますが、キャンペーン マネージャー ID は検索広告 360 ID とは異なるため、コンバージョンのアトリビューションには使用できません)。Floodlight アクティビティの検索広告 360 ID を確認するには、コンバージョン レポートをダウンロードします(検索広告 360 の管理画面またはReporting API からダウンロードできます)。レポートの期間中に Floodlight アクティビティに 1 件以上のコンバージョンが関連付けられている場合、検索広告 360 ID がレポートに表示されます。

  • type: コンバージョンのタイプ(ACTION または TRANSACTION)。ACTION コンバージョンには金銭的価値がありませんが、TRANSACTION コンバージョンには金銭的価値があります。たとえば、メールリストへの登録(アクション)と e コマース購入(トランザクション)などです。

    TRANSACTION を指定する場合は、次のフィールドも指定する必要があります。

    • revenueMicros: コンバージョンの金額。

省略可能項目

  • quantityMillis: このコンバージョン内のアイテム数。たとえば、ニュースレターに登録したユーザー数や、販売された商品の合計数などです。ACTION コンバージョンでこのフィールドを指定しないと、検索広告 360 によって 1000 の値が自動的に挿入されます。
  • currencyCode: トランザクションの収益の通貨。デフォルトでは、収益は広告主の通貨で表示されます。別の通貨を指定した場合、検索広告 360 は指定した収益額を広告主の通貨に変換します。詳細
    ISO 4217 英字(3 文字)形式で通貨を指定します。
    トランザクション コンバージョンにのみ適用されます。
  • customMetriccustomDimension: 購入した商品の発送先の国、商品 ID、電話での通話時間など、コンバージョンに関する追加データをアップロードします。詳しくは、カスタム Floodlight 変数のデータのアップロードをご覧ください。
  • deviceType: コンバージョンが発生したデバイスのタイプを指定します。このフィールドで使用できる値については、使用できる値のリストをご覧ください。

JSON

POST  https://www.googleapis.com/doubleclicksearch/v2/conversion
Authorization: Bearer your OAuth 2.0 access token
Content-type: application/json
{
 "kind": "doubleclicksearch#conversionList",
  "conversion" : [{
    "criterionId": "43700003491981017", // Replace with your ID
    "conversionId": "customerTransaction73126",
    "conversionTimestamp": "1351196386000",
    "segmentationType": "FLOODLIGHT",
    "segmentationName": "Offline Purchase",
    "type": "TRANSACTION",
    "revenueMicros": "20000000", // 20 million revenueMicros is equivalent to $20 of revenue
    "currencyCode": "USD"
  }]
}

Java

  /**
   * Creates a TRANSACTION conversion, attributes it to a keyword only, and adds it to a List<Conversion>.
   * The example in the preceding section contains the uploadConversions method,
   * which can submit the list as an insert() request.
   */
  private static List<Conversion> addTransactionConversionForKeyword(List<Conversion> conversions,
      Long criterionId, String conversionId, Long revenue, Long timeStamp) {

    Conversion conversion = new Conversion()
        .setCriterionId(criterionId)
        .setConversionId(conversionId)
        .setSegmentationType("FLOODLIGHT")
        .setSegmentationName("Test")
        .setType("TRANSACTION")
        .setRevenueMicros(revenue)
        .setCurrencyCode("USD")
        .setConversionTimestamp(BigInteger.valueOf(timeStamp));

    conversions.add(conversion);
    return conversions;
  }        

Python

def insert_conversion(service):
  """Create and upload a TRANSACTION conversion that is attributed to a keyword only.

  Args:
    service: An authorized Doubleclicksearch service. See Set Up Your Application.
  """
  request = service.conversion().insert(
      body=
      {
          'conversion': [{
              'criterionId': '43700004289911004', // Replace with your ID
              'conversionId': 'test_1378710000000',
              'conversionTimestamp': '1378710000000',
              'segmentationType': 'FLOODLIGHT',
              'segmentationName': 'Test',
              'type': 'TRANSACTION',
              'revenueMicros': '20000000', // 20 million revenueMicros is equivalent to $20 of revenue
              'currencyCode': 'USD'
              }]
      }
  )

  pprint.pprint(request.execute())

サードパーティのアトリビューション モデルからデータをアップロードする

アトリビューション モデルでは、コンバージョン経路内のすべてのアクティビティに対してコンバージョンのクレジットが配分されます。たとえば、ユーザーがコンバージョンの前に有料検索広告、ディスプレイ広告、別の有料検索広告をクリックした場合、線形アトリビューション モデルでは各クリックにコンバージョン クレジットの 33% が割り当てられます。

検索広告 360 にはさまざまなアトリビューション モデルが用意されていますが、第三者サービスや自社開発サービスを使用してクレジットを各クリックに分配している場合は、そのような第三者アトリビューション データを検索広告 360 にアップロードすることで、各種レポートや検索広告 360 入札戦略内で利用することができます。

始める前に

キャンペーン マネージャーでカスタム アトリビューション モデルを作成し、検索広告 360 にインポートします。モデルの名前は「External Attribution Model」にします。 これにより、アップロードしたコンバージョン データにアトリビューション モデルが適用されたことが検索広告 360 の機能によって認識されるようになります。詳細

必須項目

サードパーティのアトリビューション モデルをコンバージョンに適用するには、Conversion.insert() リクエストで次のすべてを指定します。

  • clickId: 大文字と小文字を区別する、訪問のクリック ID。広告主様のウェブログでクリック ID を探すか、コンバージョンをリストして、別のコンバージョンのクリック ID を使用します。検索広告 360 では、コンバージョンは、訪問の発生に貢献したキーワード、広告、その他の検索広告 360 オブジェクトに割り当てられます。
    検索広告 360 でクリック ID が生成されたら、その ID を含むコンバージョンをアップロードするまで30 分以上待つ。指定しないと、検索広告 360 API で訪問が認識されないことがあります。
  • attributionModel: [外部アトリビューション モデル] に設定します。詳細
  • countMillis: このクリックに割り当てるコンバージョン クレジットの量。リクエストに attributionModel フィールドも含まれている場合にのみ適用されます。

    これは、コンバージョン内の商品アイテム数(ショッピング カート購入の商品アイテム数など)を指定するオプション フィールドである quantityMillis とは異なります。

  • conversionId: オフライン コンバージョンの場合は、広告主がこの ID を提供します。広告主は、わかりやすい ID を指定できます。リクエスト内の各コンバージョンには一意の ID を指定する必要があります。また、ID とタイムスタンプの組み合わせは、広告主様のすべてのコンバージョンで一意である必要があります。オンライン コンバージョンの場合、検索広告 360 は、広告主の Floodlight 処理に応じて、dsConversionId または floodlightOrderId をこのプロパティにコピーします。
  • conversionTimestamp: コンバージョンが発生した日時を示します。たとえば、変換が 2016 年 8 月 5 日(金)午前 11 時 53 分 22 秒(東部夏時間(GMT -4:00))に発生する場合は、タイムスタンプをエポック ミリ秒(1470412402000)で指定します。
  • segmentationType: コンバージョンをアップロードするコンバージョン システムのタイプを指定します。現在、Floodlight コンバージョンのみがサポートされているため、このフィールドには常に FLOODLIGHT を指定する必要があります。
  • segmentationName: 広告主がコンバージョンのレポートに使用している Floodlight アクティビティの名前。

    広告主に同じ名前のアクティビティが含まれている場合(アクティビティが異なる Floodlight グループに属している場合に発生することがあります)、いずれかのアクティビティの名前を変更することをおすすめします。

    検索広告 360 で Floodlight アクティビティに割り当てられた ID がわかっている場合は、segmentationName フィールドに名前を指定する代わりに、segmentationId に ID を指定できます。(キャンペーン マネージャーでも Floodlight アクティビティに ID が割り当てられますが、キャンペーン マネージャー ID は検索広告 360 ID とは異なるため、コンバージョンのアトリビューションには使用できません)。Floodlight アクティビティの検索広告 360 ID を確認するには、コンバージョン レポートをダウンロードします(検索広告 360 の管理画面またはReporting API からダウンロードできます)。レポートの期間中に Floodlight アクティビティに 1 件以上のコンバージョンが関連付けられている場合、検索広告 360 ID がレポートに表示されます。

  • type: コンバージョンのタイプ(ACTION または TRANSACTION)。ACTION コンバージョンには金銭的価値がありませんが、TRANSACTION コンバージョンには金銭的価値があります。たとえば、メールリストへの登録(アクション)と e コマース購入(トランザクション)などです。

    TRANSACTION を指定する場合は、次のフィールドも指定する必要があります。

    • revenueMicros: コンバージョンの金額。

コンバージョン収益をトラッキングする場合は、コンバージョン経路内の各接点に対して収益を配分するモデルを使用します。たとえば、各接点に均等に収益を配分する線形アプローチのモデルを使用している場合、3 つの広告クリックを含むコンバージョン経路であれば、各クリックにそれぞれコンバージョンの 33% が結び付けられます。コンバージョンが 100 ドルの収益を上げた場合は、モデルによって各クリックにそれぞれ 33 ドルが配分されることを確認して、各クリックに対して 33 ドルの収益だけを指定します。revenueMicros

省略可能項目

  • quantityMillis: このコンバージョン内のアイテム数。たとえば、ニュースレターに登録したユーザー数や、販売された商品の合計数などです。ACTION コンバージョンでこのフィールドを指定しないと、検索広告 360 によって 1000 の値が自動的に挿入されます。
  • currencyCode: トランザクションの収益の通貨。デフォルトでは、収益は広告主の通貨で表示されます。別の通貨を指定した場合、検索広告 360 は指定した収益額を広告主の通貨に変換します。詳細
    ISO 4217 英字(3 文字)形式で通貨を指定します。
    トランザクション コンバージョンにのみ適用されます。
  • customMetriccustomDimension: 購入した商品の発送先の国、商品 ID、電話での通話時間など、コンバージョンに関する追加データをアップロードします。詳しくは、カスタム Floodlight 変数のデータのアップロードをご覧ください。
  • deviceType: コンバージョンが発生したデバイスのタイプを指定します。このフィールドで使用できる値については、使用できる値のリストをご覧ください。

POST  https://www.googleapis.com/doubleclicksearch/v2/conversion
Authorization: Bearer your OAuth 2.0 access token
Content-type: application/json
{
 "kind": "doubleclicksearch#conversionList",
  "conversion" : [{
    "clickId" : "PP5K8iI6ul7Vw09JZZDEp", // Replace with a click ID from your site
    "conversionId" : "test_20130906_04",
    "conversionTimestamp" : "1378710000000",
    "segmentationType" : "FLOODLIGHT",
    "segmentationName" : "Test",
    "type": "TRANSACTION",
    "attributionModel": "External Attribution Model",
    "countMillis": "330",
    "revenueMicros": "33000000", // 33 million revenueMicros is equivalent to $33 of revenue
    "currencyCode": "USD"
  }]
}
          

検索広告 360 のレスポンスに対応する

検索広告 360 からのレスポンスで成功が示されるのは、リクエスト内のすべてのコンバージョンが正常に検証され、アップロードされた場合のみです。

リクエストが成功した場合

リクエストが成功すると、レスポンスには、アップロードされた各コンバージョンの検索広告 360 内部表現(キャンペーン ID、広告グループ ID、キーワード(条件)ID など)が含まれます。

{
 "kind": "doubleclicksearch#conversionList",
 "conversion": [
  {
   "agencyId": "12300000000000456",
   "advertiserId": "45600000000010291",
   "engineAccountId": "700000000042441",
   "campaignId": "71700000002044839",
   "adGroupId": "58700000032026064",
   "criterionId": "43700004289911004",
   "adId": "0",
   "dsConversionId": "48719131694768384",
   "conversionId": "test_1383157331951",
   "state": "ACTIVE",
   "type": "TRANSACTION",
   "revenueMicros": "20000000",
   "currencyCode": "USD",
   "segmentationType": "FLOODLIGHT",
   "segmentationId": "25700000001464141",
   "segmentationName": "Test",
   "conversionTimestamp": "1378710000000",
   "conversionModifiedTimestamp": "1383157332368"
  },
  ...
 ]
}

リクエストが成功しなかった場合

1 つ以上のコンバージョンの検証またはアップロードに失敗した場合、レスポンスには、失敗したコンバージョンのアップロードに関するメッセージが含まれます。レスポンスには、正常にアップロードされたコンバージョンに関するメッセージは含まれません。

完全に成功しなかったリクエストに対するレスポンスの例を次に示します。

{
 "error": {
    "errors": [
       {
          "reason": "requestValidation",
          "message": "The request was not valid. Details: [0x0000011F: Advertiser conversion ID ..."
       },
       {
          "reason": "requestValidation",
          "message": "The request was not valid. Details:  [0x00000101: Click ID ..."
       }
    ]
  }
}

各エラー メッセージには、理由と詳細なエラー メッセージの 2 つの重要なフィールドが含まれています。reason フィールドには、requestValidationinternalErrortransactionFailedlateStageRequestError を含めることができます。

requestValidation エラー

requestValidation エラーは、コンバージョンのアップロード リクエストでデータの問題が発生したことを示します(コンバージョンがすでにアップロードされている、clickId が見つからないなど)。このタイプのエラーの場合、メッセージの詳細には次の 2 つの項目が含まれます。

  • エラーの種類を識別する 16 進数コード。独自のスクリプトでコードを使用してエラーを特定できます。
  • 検証エラーの説明。

詳しくは、コンバージョンのアップロード エラーで検索広告 360 から返される可能性があるコードと説明のリストをご覧ください。

その他のエラー

その他のエラー(internalErrortransactionFailedlateStageRequestError)は、検索広告 360 に内部的な問題があることを示します。

エラーへの対応

リクエストに失敗した場合は、後でリクエスト呼び出し全体を再送信してみてください。すでにアップロードされているコンバージョンについては、requestValidation エラーが報告されますが、残りのコンバージョンはアップロードされます。

再送信してもエラーが解決しない場合は、トラブルシューティングのセクションで対処方法をご覧ください。