> ## Documentation Index
> Fetch the complete documentation index at: https://docs.trusto.io/llms.txt
> Use this file to discover all available pages before exploring further.

# list-alerts

> Interactively retrieve and filter Trusto alerts.

Retrieve a paginated collection of alerts available to the organization associated with your API key. The sandbox environment is selected by default; use the server selector to switch environments. Array-valued filters accept comma-separated values.

<ParamField query="page" default="0" type="integer">
  Zero-based page number.
</ParamField>

<ParamField query="size" default="10" type="integer">
  Number of alerts per page.
</ParamField>

<ParamField query="q" type="string">
  Search provider ID, merchant descriptor, card BIN, or card last four.
</ParamField>

<ParamField query="startDate" type="string">
  Minimum alert date in `YYYY-MM-DD` format.
</ParamField>

<ParamField query="endDate" type="string">
  Maximum alert date in `YYYY-MM-DD` format.
</ParamField>

<ParamField query="transactionStartDate" type="string">
  Minimum transaction date in `YYYY-MM-DD` format.
</ParamField>

<ParamField query="transactionEndDate" type="string">
  Maximum transaction date in `YYYY-MM-DD` format.
</ParamField>

<ParamField query="provider" type="string">
  Comma-separated providers: `ETHOCA`, `VERIFI`, or `CDRN`.
</ParamField>

<ParamField query="status" type="string">
  Comma-separated statuses: `OPEN`, `RESOLVED`, `REFUNDED`, `CHARGEBACK`, `EXPIRED`, or `INVALID`.
</ParamField>

<ParamField query="expired" type="boolean">
  Filter by whether the alert has expired.
</ParamField>

<ParamField query="expiresIn" type="integer">
  Return unresolved alerts expiring within this many hours.
</ParamField>

<ParamField query="outcome" type="string">
  Comma-separated stored outcome values.
</ParamField>

<ParamField query="descriptor" type="string">
  Filter by merchant descriptor prefix.
</ParamField>

<ParamField query="type" type="string">
  Filter by an exact alert type.
</ParamField>

<ParamField query="companyId" type="string">
  Comma-separated company UUIDs.
</ParamField>

<ParamField query="sortField" type="string">
  Alert property used for sorting.
</ParamField>

<ParamField query="sortOrder" default="ASC" type="string">
  Sort direction: `ASC` or `DESC`.
</ParamField>

<ResponseField name="data" type="Alert[]" required>
  Alerts for the current page, including `outcome` and `hoursLeft`.
</ResponseField>

<ResponseField name="total" type="integer" required>
  Total matching alerts.
</ResponseField>

<ResponseField name="totalPages" type="integer" required>
  Total pages.
</ResponseField>

<ResponseField name="page" type="integer" required>
  Current zero-based page.
</ResponseField>

<ResponseField name="size" type="integer" required>
  Requested page size.
</ResponseField>

<ResponseExample>
  ```json theme={null}
  {
    "data": [{
      "id": "3114afe2-9996-48c9-88cb-3c9fc6a88414",
      "providerId": "5F2RE3960S9ASDC2F026BF16",
      "provider": "ETHOCA",
      "type": "ETHOCA_CONFIRMED_FRAUD",
      "alertTimeStamp": "2024-12-12T12:00:00.000Z",
      "transactionTimeStamp": "2024-12-11T10:30:00.000Z",
      "merchantDescriptor": "MERCHANT STORE 1",
      "amount": 100.12,
      "currency": "AED",
      "status": "OPEN",
      "expiredAt": null,
      "hasExternalTransaction": false,
      "outcome": null,
      "hoursLeft": 18
    }],
    "total": 1,
    "totalPages": 1,
    "page": 0,
    "size": 10
  }
  ```
</ResponseExample>

<Card title="Resolve an alert" icon="check" href="/sandbox/resolve-alert">
  Submit a resolution for an unresolved alert.
</Card>
