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

# Disconnect a custom domain

> Stop serving portal links from a hostname.



## OpenAPI

````yaml DELETE /v1/workspaces/{workspace_id}/portal-domains/{domain_id}
openapi: 3.0.0
info:
  title: Conduit API
  version: 1.0.0
  description: Public API for Conduit.
servers:
  - url: https://api.conduit.ai
    description: Production
security: []
tags:
  - name: meta
    description: Discovery and API metadata endpoints.
  - name: agents
    description: >-
      Chat agent configuration, including instructions, skills, triggers, and
      automation behavior.
  - name: contacts
    description: >-
      Contact profile and contact-scoped related resources such as tickets and
      calls.
  - name: workspaces
    description: Workspaces accessible to the current API token.
  - name: escalations
    description: >-
      Chat escalations that require operator review, including message, proposed
      response, and disposition context when available.
  - name: conversations
    description: >-
      Canonical message threads. Use these endpoints to list threads, inspect
      conversation state, read transcripts, and send replies.
  - name: conversation-tags
    description: >-
      Conversation labels, root topics, and subtopics used for classification
      and topic analytics.
  - name: tickets
    description: >-
      Operational queue items tied to conversations, including ticket-scoped
      transcripts and replies.
  - name: calls
    description: Phone call records, transcripts, summaries, and recordings when available.
  - name: reservations
    description: >-
      PMS reservations synced from the workspace's integrations (Hostaway,
      Guesty, Airbnb, etc.), including guest identity, payment status, and stay
      dates.
  - name: appointments
    description: >-
      Scheduled appointments (bookings) backed by the Conduit booking service.
      Exposes allocation context and the upstream booking-service `external_id`.
  - name: helpdesk_tickets
    description: >-
      Helpdesk tickets mirrored from external helpdesk integrations (Zendesk,
      Pylon, Plain), including requester identity and upstream metadata.
  - name: kb
    description: >-
      Knowledge base search and node management. Nodes represent knowledge base
      entries (files or directories), chunks are the indexed retrieval units
      used by search.
  - name: skills
    description: >-
      Workspace agent skills that can be attached to chat agents.
      Sidebar/global-assistant skills are intentionally excluded.
  - name: custom_tools
    description: >-
      Custom code tools: user-authored Python/JavaScript functions executed in a
      sandbox when an agent calls them. Includes a runtimes endpoint describing
      the entrypoint signature, return shape, and available dependencies per
      language.
  - name: inbox_types
    description: >-
      Workspace inbox types. Each id is stable and usable as a message trigger's
      `inbox_type_id` and as the `inbox_type_id` filter on list conversations.
  - name: workflows
    description: >-
      Workspace automation workflows: definitions, executions, and per-execution
      event timelines.
  - name: insights
    description: Aggregated workspace analytics, such as conversation automation rate.
paths:
  /v1/workspaces/{workspace_id}/portal-domains/{domain_id}:
    delete:
      tags:
        - portals
      summary: Delete Portal Domain
      description: >-
        Disconnect a custom hostname. Portal links on it stop working right
        away, and new links use another connected hostname or the standard
        portal address. Vercel removal finishes in the background, after which
        the hostname leaves list_portal_domains. Requires Manage Portals.
      operationId: deletePortalDomain
      parameters:
        - schema:
            type: string
            minLength: 1
            description: Workspace identifier
          required: true
          description: Workspace identifier
          name: workspace_id
          in: path
        - schema:
            type: string
            minLength: 1
            description: Portal domain identifier from list_portal_domains
          required: true
          description: Portal domain identifier from list_portal_domains
          name: domain_id
          in: path
      responses:
        '200':
          description: Delete Portal Domain
          content:
            application/json:
              schema:
                type: object
                properties:
                  data:
                    type: object
                    properties:
                      id:
                        type: string
                      workspace_id:
                        type: string
                      hostname:
                        type: string
                      status:
                        type: string
                        enum:
                          - pending
                          - active
                          - error
                          - removing
                      routing_enabled:
                        type: boolean
                      dns_record:
                        type: object
                        nullable: true
                        properties:
                          type:
                            type: string
                            enum:
                              - A
                              - CNAME
                          name:
                            type: string
                          value:
                            type: string
                        required:
                          - type
                          - name
                          - value
                        description: The DNS record to add at the domain's DNS provider
                      verification_records:
                        type: array
                        items:
                          type: object
                          properties:
                            type:
                              type: string
                            domain:
                              type: string
                            value:
                              type: string
                            reason:
                              type: string
                          required:
                            - type
                            - domain
                            - value
                        description: >-
                          Records that prove ownership, when Vercel asks for
                          them
                      vercel_verified:
                        type: boolean
                      dns_configured:
                        type: boolean
                      confirmation_code_links:
                        type: boolean
                      template_ids:
                        type: array
                        items:
                          type: string
                      error_code:
                        type: string
                        nullable: true
                      error_message:
                        type: string
                        nullable: true
                      last_checked_at:
                        type: number
                        nullable: true
                      created_at:
                        type: number
                      updated_at:
                        type: number
                    required:
                      - id
                      - workspace_id
                      - hostname
                      - status
                      - routing_enabled
                      - dns_record
                      - verification_records
                      - vercel_verified
                      - dns_configured
                      - confirmation_code_links
                      - template_ids
                      - error_code
                      - error_message
                      - last_checked_at
                      - created_at
                      - updated_at
                required:
                  - data
        '400':
          description: Invalid request
          content:
            application/json:
              schema:
                type: object
                properties:
                  error:
                    type: string
                required:
                  - error
                description: Standard error response.
                example:
                  error: Invalid workspace id
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                type: object
                properties:
                  error:
                    type: string
                required:
                  - error
                description: Standard error response.
                example:
                  error: Invalid workspace id
        '403':
          description: Forbidden
          content:
            application/json:
              schema:
                type: object
                properties:
                  error:
                    type: string
                required:
                  - error
                description: Standard error response.
                example:
                  error: Invalid workspace id
        '404':
          description: Not found
          content:
            application/json:
              schema:
                type: object
                properties:
                  error:
                    type: string
                required:
                  - error
                description: Standard error response.
                example:
                  error: Invalid workspace id
        '409':
          description: Conflict
          content:
            application/json:
              schema:
                type: object
                properties:
                  error:
                    type: string
                required:
                  - error
                description: Standard error response.
                example:
                  error: Invalid workspace id
        '429':
          description: Rate limit exceeded
          content:
            application/json:
              schema:
                type: object
                properties:
                  error:
                    type: string
                required:
                  - error
                description: Standard error response.
                example:
                  error: Invalid workspace id
      security:
        - bearerAuth: []
components:
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
      bearerFormat: API Token
      description: >-
        Conduit API token. Use `Authorization: Bearer <token>`. Read/write
        endpoints require a token with write access.

````

This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.