---
title: "List audit logs"
method: GET
path: "/v1/audit-logs"
tags: ["Audit logs"]
---

# List audit logs

`GET /v1/audit-logs`

Retrieve existing audit logs. Sorted by `happened_at` descending.

## Query parameters

- `limit` number — Maximum number of items to return (1-100).
- `cursor` string — Opaque cursor returned in the previous response's `next_cursor`. Omit to fetch the first page.
- `include_total` union — Set to `true` to include `total` in the response.
  - boolean
  - 'true' | 'false'
- `customer_id` string — Return only entries attached to this customer ID.
- `subscription_id` string — Return only entries attached to this subscription ID.
- `invoice_id` string — Return only entries attached to this invoice ID.
- `quote_id` string — Return only entries attached to this quote ID.

## Response `200`

- CursorPaginatedAuditLog
  - `data` AuditLog[], required — List of AuditLog.
    - union
      - object
        - `type` 'customer.created' | 'customer.updated' | 'customer.archived' | 'customer.deleted' | 'customer.recovered' | 'invoice.created' | 'invoice.updated' | 'invoice.ready' | 'invoice.settled' | 'invoice.voided' | 'invoice.refunded' | 'invoice.errored' | 'invoice.deleted' | 'invoice.reminder_sent' | 'invoice.grace_period.started' | 'invoice.electronic_invoice.sent' | 'invoice.electronic_invoice.failed' | 'subscription.created' | 'subscription.updated' | 'subscription.activated' | 'subscription.trial_ended' | 'subscription.paused' | 'subscription.reactivated' | 'subscription.renewed' | 'subscription.charged' | 'subscription.cancellation_scheduled' | 'subscription.cancelled' | 'subscription.voided' | 'subscription.errored' | 'quote.created' | 'quote.approved' | 'quote.sent' | 'quote.signed' | 'quote.viewed' | 'quote.voided', required — Event type.
        - `happened_at` string, date-time, required — Date the event happened.
        - `customer_id` string, nullable, required — ID of the customer the event relates to. `null` if the event is not attached to a customer.
        - `subscription_id` string, nullable, required — ID of the subscription the event relates to. `null` if the event is not attached to a subscription.
        - `invoice_id` string, nullable, required — ID of the invoice the event relates to. `null` if the event is not attached to an invoice.
        - `quote_id` string, nullable, required — ID of the quote the event relates to. `null` if the event is not attached to a quote.
      - object
        - `type` 'email.created', required — Event type.
        - `email_status` 'queued' | 'sent' | 'delivered' | 'opened' | 'clicked' | 'bounced' | 'spammed' | 'failed' | 'undeliverable' | 'dropped' | 'suppressed', nullable, required — Delivery status of the related email. `null` for non-email events.
        - `happened_at` string, date-time, required — Date the event happened.
        - `customer_id` string, nullable, required — ID of the customer the event relates to. `null` if the event is not attached to a customer.
        - `subscription_id` string, nullable, required — ID of the subscription the event relates to. `null` if the event is not attached to a subscription.
        - `invoice_id` string, nullable, required — ID of the invoice the event relates to. `null` if the event is not attached to an invoice.
        - `quote_id` string, nullable, required — ID of the quote the event relates to. `null` if the event is not attached to a quote.
  - `next_cursor` string, nullable, required — Cursor to fetch the next page. `null` when there are no more items.
  - `has_more` boolean, required — Whether more items are available after this page.
  - `total` number — Total number of items matching the filters. Only present when `include_total=true` was passed.

---

[API](https://skmtc.dev/hyperline/apis/hyperline-api.md) · [All operations](https://skmtc.dev/hyperline/apis/hyperline-api/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/hyperline/hyperline-api/revisions/19fa5f22e39b/schema)
