---
title: "Get comprehensive portfolio domain info"
method: POST
path: "/mcp/v1/actions/ud_domain_get"
tags: ["Portfolio"]
---

# Get comprehensive portfolio domain info

`POST /mcp/v1/actions/ud_domain_get`

## Request

- Base URL: `https://api.unstoppabledomains.com`
- URL: `https://api.unstoppabledomains.com/mcp/v1/actions/ud_domain_get`
- Auth: HTTP bearer
- TypeScript: <https://skmtc.dev/unstoppabledomains/apis/user-api/docs/mcp/v1/actions/ud_domain_get/post.ts> (a function with typed inputs; its response is checked against the schema)

Get comprehensive information for specific domains in your portfolio. Returns all data from ud_portfolio_list plus additional detail: renewal pricing, flags, DNS configuration (nameservers, hosting, DNSSEC), marketplace metrics, and pending operations. Supports bulk lookups for up to 50 domains.

## Request body

- object
  - `domains` string[], required: Array of domain names to get info for (e.g., ["example.com", "mysite.io"])

## Response `200`

Portfolio domain details

- GetPortfolioDomainsResponse
  - `domains` object[]: Comprehensive info for each requested domain
    - `domain` string: The domain name
    - `found` boolean: Whether the domain was found in your portfolio
    - `extension` string: TLD (e.g., "com")
    - `label` string: Domain label without TLD
    - `sld` string, nullable: Second-level domain
    - `punycode` boolean: Whether domain uses punycode encoding
    - `lifecycle` object: Domain lifecycle: dates, ownership, renewal, auto-renewal
      - `purchasedAt` string, nullable: Purchase date (ISO 8601)
      - `expiresAt` string, nullable: Expiration date (ISO 8601)
      - `transferStatus` string: Transfer status: "none" or "pending"
      - `isExternallyOwned` boolean: Whether domain is in registrar custody (externally owned)
      - `reverse` boolean: Whether reverse resolution is enabled
      - `renewal` object, nullable: Renewal eligibility and pricing
        - `isEligible` boolean: Whether domain is eligible for renewal
        - `period` object
          - `min` number: Minimum renewal years
          - `max` number: Maximum renewal years
          - `increments` number: Renewal year increments
        - `pricePerYear` number: Renewal price per year in cents (USD)
        - `pricePerYearFormatted` string: Formatted price (e.g., "$12.99")
      - `autoRenewal` object, nullable: Auto-renewal subscription status
        - `status` string: Subscription status
        - `expiresAt` string, nullable: Next renewal date (ISO 8601)
    - `flags` object, nullable: Domain-level flags (WHOIS privacy, transfer lock, etc.)
      - `DNS_TRANSFER_OUT` object: Transfer lock status
        - `status` 'ENABLED' | 'DISABLED'
      - `DNS_WHOIS_PROXY` object: WHOIS privacy status
        - `status` 'ENABLED' | 'DISABLED'
      - `DNS_RESOLUTION` object
        - `status` 'ENABLED' | 'DISABLED'
      - `DNS_DELETE` object
        - `status` 'ENABLED' | 'DISABLED'
      - `DNS_UPDATE` object
        - `status` 'ENABLED' | 'DISABLED'
      - `DNS_UNS_TOKENIZATION` object
        - `status` 'ENABLED' | 'DISABLED'
    - `dns` object: DNS configuration from cache (nameservers, hosting, DNSSEC)
      - `nameservers` object, nullable
        - `status` 'default' | 'custom' | 'none': Nameserver status: default (UD-managed), custom (external), none
        - `nameservers` string[]: Nameserver hostnames
      - `hosting` object[], nullable: URL redirects and hosting rules
        - `subName` string: Subdomain name
        - `type` string: Hosting type (REDIRECT_301, REDIRECT_302, UD_PROFILE)
        - `targetUrl` string, nullable: Target URL for redirect
        - `status` string: Hosting status (ACTIVE, INACTIVE, PENDING)
      - `dnssec` object, nullable
        - `enabled` boolean: Whether DNSSEC is enabled
        - `valid` boolean: Whether DNSSEC validation passes
    - `marketplace` object: Marketplace listing and engagement metrics
      - `listing` object, nullable: Active listing details
        - `id` number
        - `price` number: Listing price in cents
        - `status` string
        - `createdAt` string
        - `updatedAt` string
        - `views` number
        - `listingSettings` object, nullable
      - `offersCount` number: Number of active offers
      - `leadsCount` number: Number of buyer leads
      - `watchlistCount` number: Number of users watching this domain
    - `tags` string[]: Tags applied to this domain
    - `pendingOperations` object[]: Pending DNS/domain operations
      - `id` string
      - `type` string
      - `status` string
      - `createdAt` string
    - `error` string: Error message if retrieval failed
  - `availableTags` string[]: All tags you've created (useful for adding tags to other domains)

## Other responses

- `401`: Authentication required

---

[API](https://skmtc.dev/unstoppabledomains/apis/user-api.md) - [All operations](https://skmtc.dev/unstoppabledomains/apis/user-api/llms.txt) - [OpenAPI document](https://skmtc.dev/unstoppabledomains/apis/user-api/revisions/c1def8e34b41?raw)
