> ## 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.

# Get workspace white label

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

Returns a workspace's white-label settings: the brand and agent name the builder runs under, the workspace's own agent prompt, and what the workspace's plan allows.

The brand name, agent name and `use_default_design_system` need the Builder plan or higher, and `agent_prompt` needs a custom Enterprise plan. Read `can_edit_brand` and `can_edit_prompt` to see what the workspace's plan allows.

<Note>Call this as an owner or admin of the workspace, with a personal access token or a workspace API key for that workspace, or from a signed-in session. A workspace API key acts as the workspace's owner. A read-only token or key is accepted.</Note>

A personal access token limited to selected apps is refused.

This is limited to 120 requests per minute. A signed-in session has its own limit, every personal access token for the workspace shares one, and each workspace API key has its own. Every response reports the budget in `X-RateLimit-Limit`, `X-RateLimit-Remaining` and `X-RateLimit-Reset`.



## OpenAPI

````yaml /developers/references/app-management/app-management-openapi.json get /api/workspace/{workspace_id}/white-label
openapi: 3.1.0
info:
  title: Base44 App Management API
  version: 1.0.0
servers:
  - url: https://app.base44.com
security:
  - PersonalAccessTokenAuth: []
paths:
  /api/workspace/{workspace_id}/white-label:
    get:
      summary: Get workspace white label
      description: >-
        <Info>This API is in beta. Endpoints, fields, and behavior may still
        change, so avoid depending on it in production.</Info>


        Returns a workspace's white-label settings: the brand and agent name the
        builder runs under, the workspace's own agent prompt, and what the
        workspace's plan allows.


        The brand name, agent name and `use_default_design_system` need the
        Builder plan or higher, and `agent_prompt` needs a custom Enterprise
        plan. Read `can_edit_brand` and `can_edit_prompt` to see what the
        workspace's plan allows.


        <Note>Call this as an owner or admin of the workspace, with a personal
        access token or a workspace API key for that workspace, or from a
        signed-in session. A workspace API key acts as the workspace's owner. A
        read-only token or key is accepted.</Note>


        A personal access token limited to selected apps is refused.


        This is limited to 120 requests per minute. A signed-in session has its
        own limit, every personal access token for the workspace shares one, and
        each workspace API key has its own. Every response reports the budget in
        `X-RateLimit-Limit`, `X-RateLimit-Remaining` and `X-RateLimit-Reset`.
      operationId: get_workspace_white_label_api_workspace__workspace_id__white_label_get
      parameters:
        - name: workspace_id
          in: path
          required: true
          schema:
            type: string
            description: >-
              ID of the workspace. With a personal access token or a workspace
              API key, use its workspace. Get it from `organization_id` in [Get
              app](/api-reference/get-app).
            title: Workspace Id
          description: >-
            ID of the workspace. With a personal access token or a workspace API
            key, use its workspace. Get it from `organization_id` in [Get
            app](/api-reference/get-app).
          example: 67e0b12c4d8a3f005b21c9e4
      responses:
        '200':
          description: The workspace's white-label settings.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/WorkspaceWhiteLabel'
              example:
                enabled: true
                brand_name: Northlight Studio
                agent_name: Scout
                agent_prompt: >-
                  You are Scout, the app builder for Northlight Studio. Build
                  every app with our component library.
                use_default_design_system: true
                controls_visible: true
                can_edit_brand: true
                can_edit_prompt: true
        '400':
          description: A credential was sent in the URL (`credentials_in_query`).
          content:
            application/json:
              examples:
                credentials_in_query:
                  summary: credentials_in_query
                  value:
                    error:
                      code: credentials_in_query
                      message: >-
                        Send your credential in the Authorization header, not in
                        the URL.
                      details: {}
              schema:
                $ref: '#/components/schemas/StandardErrorEnvelope'
        '401':
          description: Missing or invalid credentials (`unauthenticated`).
          content:
            application/json:
              examples:
                unauthenticated:
                  summary: unauthenticated
                  value:
                    error:
                      code: unauthenticated
                      message: Authentication required
                      details: {}
              schema:
                $ref: '#/components/schemas/StandardErrorEnvelope'
        '403':
          description: >-
            You aren't an owner or admin of the workspace, your token is for a
            different workspace, or your credential can't be used on this
            endpoint (`forbidden`). Your workspace API key is for a different
            workspace (`workspace_api_key_wrong_workspace`).
          content:
            application/json:
              examples:
                forbidden:
                  summary: forbidden
                  value:
                    error:
                      code: forbidden
                      message: You don't have access to this workspace
                      details: {}
              schema:
                $ref: '#/components/schemas/StandardErrorEnvelope'
        '404':
          description: Workspace not found (`not_found`).
          content:
            application/json:
              examples:
                not_found:
                  summary: not_found
                  value:
                    error:
                      code: not_found
                      message: Workspace not found
                      details: {}
              schema:
                $ref: '#/components/schemas/StandardErrorEnvelope'
        '409':
          description: >-
            A signed-in session must first unlock the workspace with SSO
            (`sso_required_for_workspace`) or sign-in
            (`auth_required_for_workspace`). Personal access tokens never get
            this.
          content:
            application/json:
              examples:
                sso_required_for_workspace:
                  summary: sso_required_for_workspace
                  value:
                    error:
                      code: sso_required_for_workspace
                      message: sso_required_for_workspace
                      details:
                        workspace_id: 67e0b12c4d8a3f005b21c9e4
              schema:
                $ref: '#/components/schemas/StandardErrorEnvelope'
        '429':
          description: Rate limit exceeded (`rate_limited`).
          content:
            application/json:
              examples:
                rate_limited:
                  summary: rate_limited
                  value:
                    error:
                      code: rate_limited
                      message: Rate limit exceeded.
                      details: {}
              schema:
                $ref: '#/components/schemas/StandardErrorEnvelope'
        '503':
          description: >-
            Database temporarily unavailable (`database_unavailable`): the data
            cluster did not answer in time. Retry after the `Retry-After`
            seconds.
          headers:
            Retry-After:
              description: Seconds to wait before retrying.
              schema:
                type: integer
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StandardErrorEnvelope'
              examples:
                database_unavailable:
                  summary: database_unavailable
                  value:
                    error:
                      code: database_unavailable
                      message: Database temporarily unavailable, please retry
                      details: {}
      security:
        - PersonalAccessTokenAuth:
            - read_only
        - WorkspaceApiKeyAuth:
            - read_only
        - WorkspaceApiKeyBearerAuth:
            - read_only
components:
  schemas:
    WorkspaceWhiteLabel:
      properties:
        enabled:
          type: boolean
          title: Enabled
          description: >-
            Whether the builder runs under the workspace's brand instead of
            Base44's.
          example: true
        brand_name:
          anyOf:
            - type: string
            - type: 'null'
          title: Brand Name
          description: Name of the workspace's platform. `null` until one is saved.
          example: Northlight Studio
        agent_name:
          anyOf:
            - type: string
            - type: 'null'
          title: Agent Name
          description: >-
            What the agent calls itself. `null` means it answers to
            `brand_name`.
          example: Scout
        agent_prompt:
          anyOf:
            - type: string
            - type: 'null'
          title: Agent Prompt
          description: >-
            The system prompt every app in the workspace is built under, as
            stored after sanitizing. `null` means the workspace's apps use
            Base44's built-in prompt.
          example: >-
            You are Scout, the app builder for Northlight Studio. Build every
            app with our component library.
        use_default_design_system:
          type: boolean
          title: Use Default Design System
          description: >-
            Whether the workspace's default design system is added to the agent
            prompt.
          example: true
        controls_visible:
          type: boolean
          title: Controls Visible
          description: >-
            Whether white label is available to this workspace: it's enrolled in
            Base44 for platforms, or white label is already on. When it's
            `false`, `enabled` can't be set to `true`.
          example: true
        can_edit_brand:
          type: boolean
          title: Can Edit Brand
          description: >-
            Whether the plan allows `brand_name`, `agent_name` and
            `use_default_design_system` (Builder and up).
          example: true
        can_edit_prompt:
          type: boolean
          title: Can Edit Prompt
          description: Whether the plan allows `agent_prompt` (custom Enterprise).
          example: true
      type: object
      required:
        - enabled
        - brand_name
        - agent_name
        - agent_prompt
        - use_default_design_system
        - controls_visible
        - can_edit_brand
        - can_edit_prompt
      title: WorkspaceWhiteLabel
    StandardErrorEnvelope:
      properties:
        error:
          $ref: '#/components/schemas/StandardError'
          description: What went wrong.
      type: object
      required:
        - error
      title: StandardErrorEnvelope
      description: The error body returned in the standard envelope.
    StandardError:
      properties:
        code:
          type: string
          title: Code
          description: >-
            Stable machine-readable cause of the failure. Match on this, not on
            `message`.
          example: not_found
        message:
          type: string
          title: Message
          description: Human-readable explanation. It isn't a stable contract.
          example: App not found
        details:
          additionalProperties: true
          type: object
          title: Details
          description: >-
            Structured context for the failure, or an empty object when there's
            none.
          example: {}
      type: object
      required:
        - code
        - message
      title: StandardError
  securitySchemes:
    PersonalAccessTokenAuth:
      type: http
      scheme: bearer
      description: >-
        Personal access token, sent as `Authorization: Bearer <token>`. Each
        operation lists the permission it needs: `read_only` or `full_access`. A
        full-access token can call every operation. A read-only token can call
        only the operations that list `read_only`; anything else returns 403
        `read_only_credential_route_not_allowed`.
    WorkspaceApiKeyAuth:
      type: apiKey
      in: header
      name: api_key
      description: >-
        Workspace API key, sent as `api_key: <key>`. Each operation that accepts
        one lists what the key needs: a permission, `read_only` or
        `full_access`, like a personal access token, or a scope. A key without
        the scope gets 403 `workspace_api_key_scope_required`.
    WorkspaceApiKeyBearerAuth:
      type: http
      scheme: bearer
      description: >-
        Workspace API key, sent as `Authorization: Bearer <key>`. Accepted
        wherever `api_key` is, with the same permission.

````

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