---
title: "List Email Domains"
method: GET
path: "/workspaces/{workspace_id}/emails/domains"
tags: ["Emails::Domain"]
---

# List Email Domains

`GET /workspaces/{workspace_id}/emails/domains`

## Request

- Base URL: `https://myworkspace.myclickfunnels.com/api/v2`
- URL: `https://myworkspace.myclickfunnels.com/api/v2/workspaces/{workspace_id}/emails/domains`
- Auth: one of:
  - HTTP bearer
  - OAuth 2
    - Authorization code: `https://accounts.myclickfunnels.com/oauth/authorize`
    - Token URL: `https://accounts.myclickfunnels.com/oauth/token`
- TypeScript: <https://skmtc.dev/myclickfunnels/apis/clickfunnels-api/docs/workspaces/:workspace_id/emails/domains/get.ts> (a function with typed inputs; its response is checked against the schema)

List all email sending domains (DKIM/SPF/DMARC) for a workspace. These are **email sending** domains - for website/hosting domains, see **listDomains**. Each result separates workspace ownership (`ownership_verified`) from email transport (`verified`); addresses on a custom domain can send only when `ready_for_sending` is true. Ownership comes from connecting the domain, as `www.example.com` or another subdomain of it, to this workspace as a website/hosting domain in the ClickFunnels app - no API call makes `ownership_verified` true. Return-path verification is independent of sender readiness. Reads return the stored DNS verification state and never trigger a live DNS lookup (use `verifyEmailsDomains` for that); `ownership_verified` is always current. See [Sending domains](https://accounts.myclickfunnels.com/.well-known/emails/skill.md#sending-domains) in the Emails Skill for the complete agent workflow.

## Path parameters

- `workspace_id` string, required

## Query parameters

- `after` string
- `per_page` integer
- `sort_order` 'asc' | 'desc'
- `sort_property` 'id' | 'updated_at'

## Response `200`

OK

- EmailsDomainAttributes[]
  - `id` integer: Email Domain ID
  - `public_id` string, nullable: Email Domain public ID
  - `workspace_id` integer: Workspace ID
  - `name` string: The sending domain name (lowercase), e.g. `example.com` - the part after the `@` shared by every email address created on this domain.
  - `ownership_verified` boolean: Whether ClickFunnels has confirmed that this workspace owns the domain name. It becomes true when the same name is connected to this workspace as a website/hosting domain whose ownership is verified - done in the ClickFunnels app, not through this API. No API call can make it true; ask the customer to connect the domain.
  - `verified` boolean: Whether email transport is verified. True once DKIM, SPF, and DMARC are all verified via DNS, or when a verified SMTP setting exists. This field does not prove domain ownership and is not sufficient by itself to send.
  - `ready_for_sending` boolean: Whether addresses on this custom domain can be used as senders. True only when both `ownership_verified` and the transport-only `verified` field are true. The return-path record is independent and does not control this value.
  - `dkim_verified` boolean: Whether the domain's DKIM DNS record is verified.
  - `spf_verified` boolean: Whether the domain's SPF DNS record is verified.
  - `dmarc_verified` boolean: Whether the domain's DMARC DNS record is verified.
  - `smtp_verified` boolean: Whether email transport is verified via a verified SMTP setting (an alternative to DKIM/SPF/DMARC verification). When true, `verified` can be true while dkim_verified/spf_verified/dmarc_verified are false; ownership must still be verified before `ready_for_sending` becomes true.
  - `return_address_verified` boolean: Whether the domain's return-path CNAME record (used for bounce handling) is verified. This is independent of `verified` and `ready_for_sending` and is not required for either one to become true.
  - `dkim_record` DnsRecord: A single DNS record to add at the domain's DNS provider to configure email transport (or, for the return path, bounce handling).
    - `type` string: The DNS record type (e.g. `TXT`, `CNAME`).
    - `name` string: The DNS host/name to create the record on (e.g. `example.com` or `_dmarc.example.com`).
    - `value` string: The exact value to paste at the registrar for this record.
    - `ttl` integer: Recommended TTL, in seconds, for the record.
    - `verified` boolean: Whether this specific record has been confirmed live at the DNS provider. It reflects stored DNS verification state; call `verifyEmailsDomains` to re-check.
  - `spf_record` DnsRecord: A single DNS record to add at the domain's DNS provider to configure email transport (or, for the return path, bounce handling).
    - `type` string: The DNS record type (e.g. `TXT`, `CNAME`).
    - `name` string: The DNS host/name to create the record on (e.g. `example.com` or `_dmarc.example.com`).
    - `value` string: The exact value to paste at the registrar for this record.
    - `ttl` integer: Recommended TTL, in seconds, for the record.
    - `verified` boolean: Whether this specific record has been confirmed live at the DNS provider. It reflects stored DNS verification state; call `verifyEmailsDomains` to re-check.
  - `dmarc_record` DnsRecord: A single DNS record to add at the domain's DNS provider to configure email transport (or, for the return path, bounce handling).
    - `type` string: The DNS record type (e.g. `TXT`, `CNAME`).
    - `name` string: The DNS host/name to create the record on (e.g. `example.com` or `_dmarc.example.com`).
    - `value` string: The exact value to paste at the registrar for this record.
    - `ttl` integer: Recommended TTL, in seconds, for the record.
    - `verified` boolean: Whether this specific record has been confirmed live at the DNS provider. It reflects stored DNS verification state; call `verifyEmailsDomains` to re-check.
  - `return_address_record` DnsRecord: A single DNS record to add at the domain's DNS provider to configure email transport (or, for the return path, bounce handling).
    - `type` string: The DNS record type (e.g. `TXT`, `CNAME`).
    - `name` string: The DNS host/name to create the record on (e.g. `example.com` or `_dmarc.example.com`).
    - `value` string: The exact value to paste at the registrar for this record.
    - `ttl` integer: Recommended TTL, in seconds, for the record.
    - `verified` boolean: Whether this specific record has been confirmed live at the DNS provider. It reflects stored DNS verification state; call `verifyEmailsDomains` to re-check.
  - `next_steps` string[]: Plain-English guidance you can surface to users. It distinguishes the required ownership step (connect the domain to the workspace in ClickFunnels) and the required transport records from the recommended ClickFunnels return path, accounts for verified SMTP, and explains how to re-check readiness.
  - `created_at` string, date-time, nullable: Created at datetime
  - `updated_at` string, date-time, nullable: Updated at datetime

## Other responses

- `401`: Unauthorized
- `404`: Not Found
- `422`: Unprocessable Entity - `per_page` must be a positive integer.

## Changes

- **2026-11-03** `511d88b30aea`: 1 info
  - endpoint added

[Operation history](https://skmtc.dev/myclickfunnels/apis/clickfunnels-api/changes/workspaces/:workspace_id/emails/domains/get.md)

---

[API](https://skmtc.dev/myclickfunnels/apis/clickfunnels-api.md) - [All operations](https://skmtc.dev/myclickfunnels/apis/clickfunnels-api/llms.txt) - [OpenAPI document](https://skmtc.dev/myclickfunnels/apis/clickfunnels-api/revisions/511d88b30aea?raw)
