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

# Unlink custom domain

> <Info>This API is in beta. Endpoints, fields, and behavior may still change, so avoid depending on it in production.</Info>

Stops serving the domain, keeping it attached to the app.

Any email domain on it is disabled, and other domains redirecting to this one stop redirecting. The domain stays attached to the app and keeps its redirect target, so [Link custom domain](/api-reference/link-custom-domain) puts it back into service. To remove it altogether, use [Delete custom domain](/api-reference/delete-custom-domain).

A successful call doesn't guarantee the domain has stopped working. Base44 also has to remove it from the system that routes visitors to your app, and that step can fail without failing the call. Nothing in the response reports it, so check the domain in a browser, and unlink again if it still serves the app.



## OpenAPI

````yaml /developers/references/app-management/app-management-openapi.json post /api/apps/{app_id}/custom-domains/{domain_id}/unlink
openapi: 3.1.0
info:
  title: Base44 App Management API
  version: 1.0.0
servers:
  - url: https://app.base44.com
security:
  - ApiKeyAuth: []
paths:
  /api/apps/{app_id}/custom-domains/{domain_id}/unlink:
    post:
      summary: Unlink custom domain
      description: >-
        <Info>This API is in beta. Endpoints, fields, and behavior may still
        change, so avoid depending on it in production.</Info>


        Stops serving the domain, keeping it attached to the app.


        Any email domain on it is disabled, and other domains redirecting to
        this one stop redirecting. The domain stays attached to the app and
        keeps its redirect target, so [Link custom
        domain](/api-reference/link-custom-domain) puts it back into service. To
        remove it altogether, use [Delete custom
        domain](/api-reference/delete-custom-domain).


        A successful call doesn't guarantee the domain has stopped working.
        Base44 also has to remove it from the system that routes visitors to
        your app, and that step can fail without failing the call. Nothing in
        the response reports it, so check the domain in a browser, and unlink
        again if it still serves the app.
      operationId: >-
        unlink_render_connection_api_apps__app_id__custom_domains__domain_id__unlink_post
      parameters:
        - name: app_id
          in: path
          required: true
          schema:
            type: string
            description: ID of the app the domain belongs to.
            title: App Id
          description: ID of the app the domain belongs to.
          example: 6820f3a4e7b91d003c45a1f2
        - name: domain_id
          in: path
          required: true
          schema:
            type: string
            description: >-
              ID of the custom domain. Get this from [List custom
              domains](/api-reference/list-custom-domains).
            title: Domain Id
          description: >-
            ID of the custom domain. Get this from [List custom
            domains](/api-reference/list-custom-domains).
          example: 68b1c0d4e7b91d003c45a1f7
      responses:
        '200':
          description: The domain is no longer served.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DomainMessageResponse'
        '401':
          description: Missing or invalid credentials.
        '403':
          description: >-
            You don't have access to this app, or you used a workspace API key.
            These endpoints take a personal API key.
        '404':
          description: The app has no custom domain with this ID, or the app doesn't exist.
components:
  schemas:
    DomainMessageResponse:
      properties:
        message:
          type: string
          title: Message
          description: What happened, in plain text.
          example: Domain successfully unlinked
      type: object
      required:
        - message
      title: DomainMessageResponse
      description: A one-line confirmation.
  securitySchemes:
    ApiKeyAuth:
      type: apiKey
      in: header
      name: api_key
      description: Personal API key.

````