AuditSummary
One row in the query change history response, grouping a single actor’s entity changes in one transaction by entity type and event type.
Declaration
object AuditSummaryProperties
| Name | Type | Description |
|---|---|---|
transactionId | string | The unique identifier for the transaction. This is one component of the composite |
eventType | AuditEventType | The type of change operation performed in this transaction. See AuditEventType for possible values. |
eventTime | date-time | The UTC timestamp of when the change occurred, in ISO 8601 format (for example, |
entityType | string | The API entity type that changed, matching the name of the API entity in the Apple Ads Platform API (for example, |
count | integer | The number of entity changes of this entity type, user, and transaction grouping. Use it to gauge how many detail lookups (one per |
metas | [AuditSummary.Metas] | An array of per-entity metadata entries, populated when the request includes metadata options. See AuditSummary.Metas. Empty by default ( |
userType | AuditUserType | The category of actor that made the change. See AuditUserType for possible values. Possible values: |
modifiedBy | string | The identifier of the user or service that performed the change. We don’t expose user email, only |
Overview
The query endpoint returns one AuditSummary row per unique (userType, modifiedBy, transactionId, eventType, entityType) combination. The count field reports how many entity changes of that type, user, and transaction grouping the row includes. Fetching full field-level data for those changes requires the per-entity detailId, which this summary object does not provide on its own. See the Discussion section below.
Example
{
"transactionId": "998877665",
"eventType": "UPDATE",
"eventTime": "2025-03-15T14:30:00.000Z",
"entityType": "AdGroup",
"count": 3,
"metas": [],
"userType": "CUSTOMER",
"modifiedBy": "111222333"
}Discussion
Use `count` to decide fetch strategy
Each AuditSummary row reports a count of entity changes for that entity type, user, and transaction grouping. The detail endpoint (GET /v1/change-history/{detailId} (Get Change History Detail)) requires a composite detailId in the form EntityType.entityId.txnId, but AuditSummary doesn’t include entityId directly.
That means when you don’t request metadata options, you can’t construct detailId from a row alone. When you set metadata options to latest or snapshot, though, each entry in metas already includes a ready-to-use detailId, so you don’t need a separate lookup.