Postmaster Tools API v2 に移行する

このガイドでは、Postmaster Tools API の v1 と v2 の違いと、v1 アプリケーションを v2 に移行する方法について説明します。

概要

Postmaster Tools API のバージョン 2 では、いくつかの新機能が導入され、メール統計情報を取得するための既存の機能が統合されています。v2 では、次のことが可能になりました。

  • 日単位ではなく、期間単位で統計情報を取得します。
  • Sender Policy Framework(SPF)、Domainkeys Identified Mail(DKIM)、Domain-based Message Authentication, Reporting and Conformance(DMARC)のコンプライアンス ステータスをクエリします。
  • 1 回の API 呼び出しで複数のドメインの統計情報を取得します。

主な変更点は次のとおりです。

  • trafficStats リソースが domainStats に置き換えられました。
  • domains.trafficStats.get メソッドと domains.trafficStats.list メソッドが単一の domains.domainStats.query メソッドに置き換えられました。
  • 新しい domains.getComplianceStatus メソッドを使用して、特定のドメインの SPF、DKIM、DMARC のコンプライアンス ステータスを取得できるようになりました。
  • 新しい domainStats.batchQuery メソッドを使用して、1 回の呼び出しで複数のドメインの統計情報を取得できます。
  • v1 で使用されていた「指標」という用語が「統計情報」に変更されました。

v2 に更新

v1 から v2 に移行するには、クライアント ライブラリを最新バージョンに更新し、v2 のリソースとメソッドを使用するようにコードを変更する必要があります。

  1. Postmaster Tools API クライアント ライブラリをバージョン 2 以降に更新します。
  2. trafficStats リソースから domainStats リソースへのすべての呼び出しを変更します。
  3. domains.trafficStats.get または domains.trafficStats.list の呼び出しを domains.domainStats.query に置き換え、startDate パラメータと endDate パラメータを指定してクエリの日付範囲を指定します。

メールの統計情報を取得する

v1 では、メール指標は 1 日の場合は domains.trafficStats.get、複数の日の場合は domains.trafficStats.list を使用して取得されていました。v2 では、メールの統計情報は domains.domainStats.query を使用して取得されます。

domains.domainStats.query メソッドを使用すると、startDateendDate を指定して、日付範囲の統計情報を取得できます。

v1: domains.trafficStats.get

Java

String query = String.format("domains/%s/trafficStats/%s", domainName, date);
TrafficStats trafficStats = service.domains().trafficStats().get(query).execute();

Python

query = 'domains/%s/trafficStats/%s' %(domain_name,date)
traffic_stats = service.domains().trafficStats().get(name=query).execute();

v2: 1 日の domains.domainStats.query

v2 で 1 日の統計情報を取得するには、同じ startDateendDate を使用して domains.domainStats.query を呼び出します。

Java

Date date = new Date().setYear(2024).setMonth(1).setDay(1);
QueryDomainStatsResponse statsResponse = service.domains().domainStats()
        .query("domains/" + domainName)
        .setStartDate(date)
        .setEndDate(date)
        .execute();

Python

date = {'year': 2024, 'month': 1, 'day': 1}
stats = service.domains().domainStats().query(
    parent='domains/' + domain_name,
    startDate=date,
    endDate=date).execute()

v1: domains.trafficStats.list

Java

ListTrafficStatsResponse listTrafficStatsResponse = service.domains().trafficStats().list("domains/" + domainName)
        .execute();

Python

query = 'domains/' + domain_name
list_traffic_stats_response = service.domains().trafficStats().list(parent=query).execute();

v2: 期間の domains.domainStats.query

v2 で日付範囲の統計情報を取得するには、startDateendDate を指定して domains.domainStats.query を呼び出します。

Java

Date startDate = new Date().setYear(2024).setMonth(1).setDay(1);
Date endDate = new Date().setYear(2024).setMonth(1).setDay(7);
QueryDomainStatsResponse statsResponse = service.domains().domainStats()
        .query("domains/" + domainName)
        .setStartDate(startDate)
        .setEndDate(endDate)
        .execute();

Python

stats = service.domains().domainStats().query(
    parent='domains/' + domain_name,
    startDate={'year': 2024, 'month': 1, 'day': 1},
    endDate={'year': 2024, 'month': 1, 'day': 7}).execute()

v2 の新機能

v2 では、getlist のトラフィック統計情報を query に統合するだけでなく、次の機能も導入されています。

コンプライアンス ステータスを取得する

domains.getComplianceStatus を使用して、ドメインの Sender Policy Framework(SPF)、DomainKeys Identified Mail(DKIM)、Domain-based Message Authentication, Reporting, and Conformance(DMARC)の準拠ステータスを取得できます。

サンプルコードについては、メールの統計情報を取得するをご覧ください。

バッチクエリのドメイン統計情報

domainStats.batchQuery を使用すると、1 回の呼び出しで複数のドメインの統計情報を取得できます。