您可以检索特定网域中特定日期范围内的电子邮件统计信息。
如需了解如何改进某些统计数据,请参阅防止发送给 Gmail 用户的邮件遭到屏蔽或被列为垃圾邮件。
注意:如果您没有看到某些统计信息的值,可能是因为您每天发送的电子邮件数量不够。只有每天向至少 50 位用户发送邮件的网域才会收到统计信息。如需了解详情,请参阅 Postmaster Tools 常见问题解答。
检索指定日期范围内的统计信息
如需检索特定日期范围内的统计信息,请使用网域和日期范围调用 domains.domainStats.query()。以下代码示例展示了如何检索特定日期范围内的电子邮件统计信息:
Java
/**
* Lists domain statistics for a specific date range.
*
* @param service Authorized Gmail PostmasterTools API instance.
* @param domainName The fully qualified domain name.
* @param startDate The first day of the date range to retrieve statistics.
* @param endDate The last day of the date range to retrieve statistics.
* @param pageSize The number of DomainStats to get per request.
* @param pageToken The nextPageToken value from a previous List request,
* if any.
* @return Response message for query domain stats request.
* @throws IOException
*/
public static QueryDomainStatsResponse queryDomainStats(
PostmasterTools service, String domainName, Date startDate, Date endDate,
int pageSize, String pageToken) throws IOException {
QueryDomainStatsResponse queryDomainStatsResponse =
service.domains().domainStats()
.query("domains/" + domainName)
.setStartDate(startDate)
.setEndDate(endDate)
.setPageSize(pageSize)
.setPageToken(pageToken)
.execute();
System.out.println(queryDomainStatsResponse.toPrettyString());
return queryDomainStatsResponse;
}
Python
def query_domain_stats(service, domain_name, start_date, end_date,
page_size, page_token):
"""Queries the domain stats for a domain for a specific date range.
Args:
service: Authorized Gmail PostmasterTools API instance.
domain_name: The fully qualified domain name.
start_date: The first day of the date range to retrieve statistics.
end_date: The last day of the date range to retrieve statistics.
page_size: The number of DomainStats to get per request.
page_token: The nextPageToken value from a previous List request, if any.
Returns:
The domain stats of the domain for this date range.
"""
try:
query = 'domains/' + domain_name
query_domain_stats_response = service.domains().domainStats().query(
parent=query,
startDate=start_date,
endDate=end_date,
pageSize=page_size,
pageToken=page_token).execute()
print(query_domain_stats_response)
return query_domain_stats_response
except errors.HttpError as err:
print(f'An error occurred: {err}')
如果成功,响应正文将包含一个分页的 DomainStat 数组,其结构如下:
{
"domainStats": [
{
object (DomainStat)
}
],
"nextPageToken": string
}
检索网域的合规性状态
如需检索网域的合规性状态,请使用网域调用 domains.getComplianceStatus()。合规性状态包含发件人政策框架 (SPF)、域名密钥识别邮件 (DKIM) 和基于网域的邮件身份验证、报告和一致性协议 (DMARC) 的合规性信息。
以下代码示例展示了如何检索网域的合规性状态:
Java
/**
* Gets the compliance status for a domain.
*
* @param service Authorized Gmail PostmasterTools API instance.
* @param domainName The fully qualified domain name.
* @return The compliance status of the domain.
* @throws IOException
*/
public static DomainComplianceStatus getComplianceStatus(
PostmasterTools service, String domainName) throws IOException {
String query = String.format("domains/%s/complianceStatus", domainName);
DomainComplianceStatus complianceStatus =
service.domains().getComplianceStatus(query).execute();
System.out.println(complianceStatus.toPrettyString());
return complianceStatus;
}
Python
def get_compliance_status(service, domain_name):
"""Gets the compliance status for a domain.
Args:
service: Authorized Gmail PostmasterTools API instance.
domain_name: The fully qualified domain name.
Returns:
The compliance status of the domain.
"""
try:
query = 'domains/%s/complianceStatus' % domain_name
compliance_status = service.domains().getComplianceStatus(
name=query).execute()
print(compliance_status)
return compliance_status
except errors.HttpError as err:
print(f'An error occurred: {err}')
如果成功,响应正文会包含一个 DomainComplianceStatus 实例。