**Source URL:** https://general.veevavault.dev/clinical/vault-api/api-reference/26.1/logs/audit-history/retrieve-complete-audit-history-for-a-single-object-record.md

# Retrieve Complete Audit History for a Single Object Record



Retrieve complete audit history for a single object record.

Vault does not audit individual field values for newly created records. For example, the audit trail for a new *Product* record would only include a single entry, and the *Event Description* would be “Product: CholeCap created”. We recommend [exporting the current record](/vault-api/api-reference/26.1/vault-objects/retrieve-object-record) along with the audit trail to ensure a complete export of all values. When a user deletes an object record, the audit trail captures all field values.

<Endpoint path="/api/{version}/vobjects/{object_name}/{object_record_id}/audittrail" method="GET"></Endpoint>

## Headers {#headers}

| Name | Description |
| --- | --- |
| `Accept` | `application/json` (default) |

## URI Path Parameters {#uri-path-parameters}

<FieldTable>
| Name | Description |
| --- | --- |
| `{object_name}` | The `name__v` of the object for which to retrieve audit history. |
| `{object_record_id}` | The object record ID for which to retrieve audit history. |
</FieldTable>

## Query Parameters {#query-parameters}

<FieldTable>
| Name | Description |
| --- | --- |
| `start_date` | Specify a start date to retrieve audit history. Dates must be `YYYY-MM-DDTHH:MM:SSZ` format, for example, 7AM on January 15, 2018 would use `2018-01-15T07:00:00Z`. If omitted, defaults to the Vault's creation date. |
| `end_date` | Specify an end date to retrieve audit history. Dates must be `YYYY-MM-DDTHH:MM:SSZ` format, for example, 7AM on January 15, 2018 would use `2018-01-15T07:00:00Z`. If omitted, defaults to today’s date. |
| `format_result` | To request a CSV file of your audit history, use `csv`. |
| `events` | Provide a comma-separated list of one or more audit events to retrieve their audit history. See Vault Help for a full list of [object audit events](https://platform.veevavault.help/en/gr/74202). The values passed to this parameter are case sensitive. For example, `events=Copy,Edit,Delete`. If omitted, defaults to all audit events. |
</FieldTable>
Dates and times are in UTC. If the time is not specified, it will default to midnight (T00:00:00Z) on the specified date.

## Request {#request}

<CodeExample title="">
```
curl -X GET -H "Authorization: {SESSION_ID}" \
https://myvault.veevavault.com/api/v21.2/vobjects/product__v/00P000000000119/audittrail?start_date=2021-04-22T23:00:00Z&end_date=2021-04-23T23:43:00Z

```
</CodeExample>

## Response {#response}

<CodeExample title="">
```
{
   "responseStatus": "SUCCESS",
   "responseDetails": {
       "offset": 200,
       "limit": 200,
       "size": 1,
       "total": 1,
       "object": {
           "name": "object_audit_trail",
           "label": "Object Audit Trail",
           "url": "/api/v21.2/metadata/audittrail/object_audit_trail"
       },
       "previous_page": "/api/v21.2/vobjects/product__v/00P000000000119/audittrail?offset=0&limit=200&uuid=dcff7510-0143-4487-bafe-77d7e63059a2"
   },
   "data": [
       {
           "id": "1807",
           "timestamp": "2021-04-23T23:41:43Z",
           "user_name": "olive@veepharm.com",
           "full_name": "Olivia Cattington",
           "action": "Edit",
           "item": "Product : Gludacta",
           "field_label": "Compound ID",
           "field_name": "compound_id__v",
           "old_value": null,
           "new_value": "null",
           "old_display_value": null,
           "new_display_value": "751789",
           "record_id": "00P000000000119",
           "object_label": "Product",
           "object_name": "product__v",
           "workflow_name": null,
           "task_name": null,
           "verdict": null,
           "reason": null,
           "capacity": null,
           "event_description": "\"Compound ID\" set to \"751789\" ",
	       "on_behalf_of": null,
           "grouping_id": "0b9be03a-c89f-488c-b255-5fd548ac5565"
       }
   ]
}

```
</CodeExample>

## Response Details {#response-details}

On `SUCCESS`, the response includes some of the following metadata:

<FieldTable>
| Name | Description |
| --- | --- |
| `action` | The name of the action performed on the object record. |
| `item` | The name of the object and record. |
| `event_description` | Description of the action that occurred. |
| `migration_mode` | Indicates that the object record was created using the `X-VaultAPI-MigrationMode` header. When creating or updating records in migration mode, Vault bypasses entry criteria, entry actions, event actions, validation rules, and reference constraints and allows you to create or update object records in a specific state or state type. Vault does not send notifications in Record Migration Mode. |
| `grouping_id` | The grouping ID that groups audit entries based on a single transaction. |
</FieldTable>
When the number of query results is greater than the page size, the response provides `next_page` and `previous_page` URLs for pagination. Learn more about paginating results in the [VQL documentation](/vql/references/query-performance-best-practices#Paginating_Results).



---

**Previous:** [Retrieve Complete Audit History for a Single Document](/clinical/vault-api/api-reference/26.1/logs/audit-history/retrieve-complete-audit-history-for-a-single-document)  
**Next:** [SDK Debug Log](/clinical/vault-api/api-reference/26.1/logs/sdk-debug-log)