Możesz pobrać statystyki e-maili z określonego przedziału dat w konkretnej domenie.
Informacje o tym, jak poprawić niektóre statystyki, znajdziesz w artykule Zapobieganie blokowaniu i umieszczaniu w folderze Spam e-maili wysyłanych do użytkowników Gmaila.
Pobieranie statystyk z określonego zakresu dat
Aby pobrać statystyki dla określonego zakresu dat, wywołaj funkcję
domains.domainStats.query()
z domeną i zakresem dat. Poniżej znajdziesz przykładowy kod pokazujący, jak pobrać statystyki e-maili za określony zakres dat:
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()
Jeśli operacja się uda, treść odpowiedzi będzie zawierała stronicowaną tablicę obiektów DomainStats o następującej strukturze:
{
"domainStats": [
{
object (DomainStats)
}
],
"nextPageToken": string
}
Pobieranie stanu zgodności domeny
Aby uzyskać stan zgodności domeny, wywołaj
domains.getComplianceStatus()
z domeną. Stan zgodności zawiera informacje o zgodności z protokołami Sender Policy Framework (SPF), DomainKeys Identified Mail (DKIM) i Domain-based Message Authentication, Reporting, and Conformance (DMARC).
Poniżej znajduje się przykładowy kod pokazujący, jak pobrać stan zgodności domeny:
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)
Jeśli operacja się uda, treść odpowiedzi będzie zawierała wystąpienie obiektu ComplianceStatus.