---
title: "List domains"
method: GET
path: "/v1/domains"
tags: ["Domains"]
---

# List domains

`GET /v1/domains`

## Request

- Base URL: `https://api.ironfang.com/security`
- URL: `https://api.ironfang.com/security/v1/domains`
- Auth: HTTP bearer

## Response `200`

The organisation's domains, oldest first.

- object
  - `items` DomainSummary[], required
    - `authorised` boolean, required
    - `can_scan` boolean, required
    - `created_at` string, date-time, required
    - `display_name` string, required
    - `id` string, uuid, required
    - `latest_scan` ScanSummary
      - `changes` ScanChanges
        - `fixed` integer, required
        - `new` integer, required
        - `reopened` integer, required
      - `counts` ScanCounts, required
        - `confirmed` integer, required: Findings with confirmed or high confidence.
        - `critical` integer, required
        - `errors` integer, required: Checks that could not complete.
        - `high` integer, required
        - `info` integer, required
        - `low` integer, required
        - `medium` integer, required
        - `passed` integer, required: Checks that observed a control working.
        - `unverified` integer, required: Findings with medium or low confidence.
      - `domain` string, required
      - `domain_id` string, uuid, required
      - `duration_ms` integer
      - `failure_class` 'asset' | 'ironfang': For a failed scan, whose problem it was — the domain did not answer, or Ironfang could not run it.
      - `finished_at` string, date-time
      - `id` string, uuid, required
      - `kind` 'full' | 'recheck' | 'certificate', required: `certificate` is monitoring looking at one host's certificate again before warning that it is about to expire.
      - `progress` object, required
        - `completed` integer, required
        - `total` integer, required
      - `recheck_finding_id` string, uuid
      - `requested_at` string, date-time, required
      - `started_at` string, date-time
      - `status` 'queued' | 'running' | 'completed' | 'partial' | 'failed' | 'cancelled' | 'killed', required
      - `status_reason` string: Why a scan was cancelled, stopped or failed.
      - `trigger` 'manual' | 'recheck' | 'monitoring' | 'admin' | 'api', required: Why a scan ran.
    - `monitoring` MonitoringBrief
      - `frequency` 'daily' | 'weekly', required
      - `health` 'healthy' | 'delayed' | 'attention' | 'paused' | 'off', required: healthy; delayed (a scheduled check is waiting on Ironfang's capacity); attention (recent scheduled checks could not complete); paused; off.
      - `next_run_at` string, date-time
      - `state` 'off' | 'pending_first_run' | 'active' | 'paused' | 'paused_verification_lost' | 'paused_authorisation' | 'paused_repeated_failures' | 'paused_by_ironfang', required: off (never switched on, or switched off), pending_first_run, active, paused (by the customer), paused_verification_lost, paused_authorisation, paused_repeated_failures, paused_by_ironfang.
    - `name` string, required: ASCII (punycode) name.
    - `next_scan_at` string, date-time: When the cooldown ends.
    - `open_findings` SeverityCounts, required
      - `critical` integer, required
      - `high` integer, required
      - `info` integer, required
      - `low` integer, required
      - `medium` integer, required
    - `scan_blocked_reason` 'verification_required' | 'authorisation_required' | 'policy_outdated' | 'scan_in_progress' | 'scan_cooldown' | 'daily_limit_reached' | 'organisation_suspended' | 'scans_paused' | 'security_disabled': Why a scan cannot start now.
    - `verification_status` 'waiting' | 'checking' | 'verified' | 'failed' | 'expired' | 'lapsed', required

## Other responses

- `default`: An error.

---

[API](https://skmtc.dev/ironfang/apis/ironfang-security-api.md) · [All operations](https://skmtc.dev/ironfang/apis/ironfang-security-api/llms.txt) · [OpenAPI document](https://skmtc.dev/ironfang/apis/ironfang-security-api/revisions/73bd66283d59?raw)
