---
title: Query Change History
framework: Apple Ads Platform API
role: symbol
role_heading: Web Service Endpoint
platforms: [apple ads platform api 1.0+]
path: apple-ads-platform-api/query-audit-summary-_-grouped-by-transaction
---

# Query Change History

Query audit summaries grouped by transaction across a specified time range.

## URL

POST https://api.ads.apple.com/v1/change-history/query

## Header Parameters

X-Ap-Context:

## Response Codes

200 OK: Successful operation. Returns AuditSummaryResponse (result: array of AuditSummary). 400 Bad Request: Bad Request. Returns ErrorMessage. 401 Unauthorized: Unauthorized. 403 Forbidden: Forbidden. 404 Not Found: Not Found. Returns ErrorMessage. 429 Too Many Requests: Rate Limit Exceeded. Returns ErrorMessage. 500 Internal Server Error: Internal Server Error. Returns ErrorMessage.

## Discussion

Discussion This endpoint returns one AuditSummary row per (userType, modifiedBy, transactionId, eventType, entityType) combination. The count field on each row indicates how many individual field changes that transaction group contains. To fetch field-level details via GET /v1/change-history/{detailId} (Get Change History Detail), you need a composite detailId in the form EntityType.entityId.txnId. A summary row alone doesn’t include entityId, so set options.metadata to latest or snapshot on the query request: each resulting row’s metas array then includes a ready-to-use detailId you can pass directly to the detail endpoint. See AuditOperator for the full set of supported comparison operators. Request Body Filters The following fields support filtering. For non-time fields, the API supports only EQUALS and IN. It reserves GREATER_THAN, LESS_THAN, and BETWEEN for eventTime.  |  |   |  |   |  |   |  |   |  |   |  |   |  |   |  |   |  |   |  |   |  |  Sorting Sort by any filterable field using field and order (ASC or DESC). Default sort is by eventTime descending. The options object controls response performance and metadata behavior.  |  |  |   |  |  |   |  |  |   |  |  |  Payload Examples

## HTTP Body

An AuditQuery object specifying filter fields, sorting, pagination, and options. Every request requires a time-range filter on eventTime. Use BETWEEN for a bounded range or GREATER_THAN or LESS_THAN for an open-ended range.

## See Also

- [Get Change History Detail](apple-ads-platform-api/get-change-details-by-detailid.md)
