Vous pouvez récupérer les statistiques des e-mails pour une période donnée sur un domaine spécifique.
Pour savoir comment améliorer certaines statistiques, consultez Empêcher le blocage ou le placement dans le dossier "Spam" des messages envoyés aux utilisateurs Gmail.
Récupérer les statistiques pour une plage de dates
Pour récupérer les statistiques d'une période spécifique, appelez domains.domainStats.query() avec le domaine et la période. Voici un exemple de code montrant comment récupérer les statistiques d'e-mails pour une période spécifique :
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 for which to retrieve statistics.
* @param endDate The last day of the date range for which to retrieve statistics.
* @param pageSize The number of DomainStats to get per request.
* @param pageToken The nextPageToken value returned 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 null;
}
Python
"""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 for which to retrieve statistics.
end_date: The last day of the date range for which to retrieve statistics.
page_size: The number of DomainStats to get per request.
page_token: The nextPageToken value returned from a previous List request, if any.
Returns:
The domain stats of the domain for this date range.
"""
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 for which to retrieve statistics.
end_date: The last day of the date range for which to retrieve statistics.
page_size: The number of DomainStats to get per request.
page_token: The nextPageToken value returned 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=endDate, pageSize=page_size, pageToken=page_token).execute();
print(query_domain_stats_response);
return query_domain_stats_response;
except errors.HttpError as err:
print('An error occurred: %s' % err)
if __name__ == '__main__':
main()
Si la requête aboutit, le corps de la réponse contient un tableau paginé de DomainStats avec la structure suivante :
{
"domainStats": [
{
object (DomainStats)
}
],
"nextPageToken": string
}
Récupérer l'état de conformité d'un domaine
Pour récupérer l'état de conformité d'un domaine, appelez domains.getComplianceStatus() avec le domaine. L'état de conformité contient des informations sur la conformité pour SPF (Sender Policy Framework), DKIM (DomainKeys Identified Mail) et DMARC (Domain-based Message Authentication, Reporting, and Conformance).
Voici un exemple de code montrant comment récupérer l'état de conformité d'un domaine :
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 ComplianceStatus getComplianceStatus(PostmasterTools service, String domainName) throws IOException {
String query = String.format("domains/%s/complianceStatus", domainName);
ComplianceStatus complianceStatus = service.domains().getComplianceStatus(query).execute();
System.out.println(complianceStatus.toPrettyString());
return complianceStatus;
}
Python
"""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.
"""
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('An error occurred: %s' % err)
Si la requête aboutit, le corps de la réponse contient une instance d'ComplianceStatus.