---
title: "List audit logs using cursor pagination"
method: GET
path: "/api/v1/audit-log/cursor"
tags: ["Audit logs"]
---

# List audit logs using cursor pagination

`GET /api/v1/audit-log/cursor`

## Request

- Base URL: `https://one.digicert.com/documentmanager`
- URL: `https://one.digicert.com/documentmanager/api/v1/audit-log/cursor`
- Auth: API key in header `X-API-Key`
- TypeScript: <https://skmtc.dev/digicert/apis/digicert-content-trust-manager/docs/api/v1/audit-log/cursor/get.ts> (a function with typed inputs; its response is checked against the schema)

Use this endpoint to list the audit logs for your account using cursor-based pagination.

This endpoint provides more efficient pagination for large datasets compared to offset-based pagination.

**Pagination Flow:**

1. **First page request:** Make a request without `cursor_timestamp` and `cursor_id` parameters
   ```
   GET /api/v1/audit-log/cursor?account_id={account_id}&limit=10
   ```

2. **Subsequent page requests:** Use the `next_cursor_timestamp` and `next_cursor_id` values from the previous response's `pagination` object
   ```
   GET /api/v1/audit-log/cursor?account_id={account_id}&limit=10&cursor_timestamp=2026-06-07T04:25:42.722&cursor_id=84d8b98f-c1a6-4232-9944-dbfc135aced9
   ```

The response includes a `pagination` object with `has_next` to indicate if more records are available, and `next_cursor_timestamp`/`next_cursor_id` for fetching the next page.

## Query parameters

- `cursor_timestamp` string, date-time
- `cursor_id` string
- `limit` integer
- `direction` 'NEXT' | 'PREVIOUS'
- `sort_by` 'timestamp'
- `sort_order` 'ASC' | 'DESC'
- `id` string
- `action` 'SIGN' | 'UPDATE' | 'ENABLE' | 'DISABLE' | 'CREATE' | 'DELETE' | 'EMAIL_SENT' | 'FETCH' | 'AUTHORIZE' | 'SEND_OTP' | 'REVOKE' | 'VERIFY' | 'LIST'
- `resource_type` 'VALIDATION' | 'SIGNATURE' | 'LICENSE' | 'CREDENTIAL' | 'TIMESTAMP' | 'MANAGER_CONFIG' | 'DSE_ACCOUNT' | 'DSE_PROFILE' | 'CERTIFICATE_PROFILE' | 'SIGNING_PROVIDER' | 'DOCUMENT' | 'CERTIFICATE' | 'SELF_ENROLLMENT_LINK' | 'VALIDATION_PROFILE' | 'DSM_CERTIFICATE_TEMPLATE' | 'DSM_CERTIFICATE_PROFILE' | 'MIGRATION' | 'PRODUCT' | 'ONBOARDING' | 'SIGNER' | 'USER'
- `resource_id` string
- `account_id` string
- `user_id` string
- `start_date` string, date-time
- `end_date` string, date-time
- `status` 'SUCCESS' | 'FAILURE'
- `created_by` string
- `certificate_type` CredentialProfileCertType[]
- `certificate_level` CertificateProfileType[]

## Response `200`

Audit logs list with cursor pagination

- AuditLogSearchCursorResponse: Response for cursor-based audit log search
  - `data` AuditLogResponse[]: List of audit log records
    - `id` string
    - `account_id` string
    - `resource_type` 'VALIDATION' | 'SIGNATURE' | 'LICENSE' | 'CREDENTIAL' | 'TIMESTAMP' | 'MANAGER_CONFIG' | 'DSE_ACCOUNT' | 'DSE_PROFILE' | 'CERTIFICATE_PROFILE' | 'SIGNING_PROVIDER' | 'DOCUMENT' | 'CERTIFICATE' | 'SELF_ENROLLMENT_LINK' | 'VALIDATION_PROFILE' | 'DSM_CERTIFICATE_TEMPLATE' | 'DSM_CERTIFICATE_PROFILE' | 'MIGRATION' | 'PRODUCT' | 'ONBOARDING' | 'SIGNER' | 'USER'
    - `resource_id` string
    - `action` 'SIGN' | 'UPDATE' | 'CREATE' | 'DELETE' | 'EMAIL_SENT' | 'FETCH' | 'AUTHORIZE' | 'SEND_OTP' | 'ENABLE' | 'DISABLE' | 'CANCEL' | 'REVOKE' | 'SIGNING_HUB_USER_CREATION' | 'HASH_ENHANCEMENT' | 'SIGNATURE_ENHANCEMENT'
    - `auth_type` 'BASIC' | 'API_TOKEN' | 'INTERNAL'
    - `timestamp` string, date-time
    - `description` string
    - `status` 'SUCCESS' | 'FAILURE'
    - `error_message` string
    - `data` string
    - `userId` string
    - `created_by` string
    - `hash` string
    - `number_hashes` integer
    - `license_hash_enabled` boolean
    - `certificateLevel` 'ADVANCED_PLUS' | 'QUALIFIED' | 'BASIC'
    - `certificateType` 'ESEAL' | 'INDIVIDUAL' | 'INDIVIDUAL_WITH_ORGANIZATION' | 'PROFESSIONAL' | 'CLIENT_AUTHENTICATION'
  - `pagination` PaginationInfo: Pagination metadata with next/previous cursors
    - `count` integer: Number of records in current page
    - `limit` integer: Requested page size
    - `has_next` boolean: Whether more records exist after this page
    - `has_previous` boolean: Whether more records exist before this page
    - `next_cursor_timestamp` string: Timestamp cursor for next page
    - `next_cursor_id` string: ID cursor for next page
    - `previous_cursor_timestamp` string: Timestamp cursor for previous page
    - `previous_cursor_id` string: ID cursor for previous page

## Other responses

- `400`: Bad Request
- `401`: Unauthorized
- `500`: Internal Server Error

---

[API](https://skmtc.dev/digicert/apis/digicert-content-trust-manager.md) - [All operations](https://skmtc.dev/digicert/apis/digicert-content-trust-manager/llms.txt) - [OpenAPI document](https://skmtc.dev/digicert/apis/digicert-content-trust-manager/revisions/8dec322a0e2b?raw)
