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

# Delete entity schema

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

Removes an entity from the app.

Delete the entity's records first. An entity that still has records can't be removed, and the call changes nothing.

This changes the app's live data model, so it takes effect immediately. It doesn't change the file that defines that model in the app's source code. Since Base44 rebuilds the live model whenever the file is written or the app's code is pulled from GitHub, a change made using this endpoint may be reverted.

To change the model for good, change the entities configuration files.

Pass `User` as the `entity_name` to drop the custom fields from the built-in user entity. Unlike every other entity, this isn't blocked by existing records and it doesn't delete any app users. Their custom values stay in storage but stop being part of the user schema.



## OpenAPI

````yaml /developers/references/app-management/app-management-openapi.json delete /api/apps/{app_id}/entity-schemas/{entity_name}
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}/entity-schemas/{entity_name}:
    delete:
      summary: Delete entity schema
      description: >-
        <Info>This API is in beta. Endpoints, fields, and behavior may still
        change, so avoid depending on it in production.</Info>


        Removes an entity from the app.


        Delete the entity's records first. An entity that still has records
        can't be removed, and the call changes nothing.


        This changes the app's live data model, so it takes effect immediately.
        It doesn't change the file that defines that model in the app's source
        code. Since Base44 rebuilds the live model whenever the file is written
        or the app's code is pulled from GitHub, a change made using this
        endpoint may be reverted.


        To change the model for good, change the entities configuration files.


        Pass `User` as the `entity_name` to drop the custom fields from the
        built-in user entity. Unlike every other entity, this isn't blocked by
        existing records and it doesn't delete any app users. Their custom
        values stay in storage but stop being part of the user schema.
      operationId: delete_schema_api_apps__app_id__entity_schemas__entity_name__delete
      parameters:
        - name: entity_name
          in: path
          required: true
          schema:
            type: string
            description: >-
              Name of the entity to remove, as returned by [List entity
              schemas](/api-reference/list-entity-schemas). Pass `User` to drop
              the built-in user entity's custom fields.
            title: Entity Name
          description: >-
            Name of the entity to remove, as returned by [List entity
            schemas](/api-reference/list-entity-schemas). Pass `User` to drop
            the built-in user entity's custom fields.
          example: Invoice
        - name: app_id
          in: path
          required: true
          schema:
            type: string
            description: ID of the app whose entity schemas you want to work with.
            title: App Id
          description: ID of the app whose entity schemas you want to work with.
          example: 6820f3a4e7b91d003c45a1f2
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DeleteEntitySchemaResponse'
        '401':
          description: Missing or invalid credentials.
        '403':
          description: >-
            You don't have editor access to this app, or your workspace API key
            lacks the `apps:deploy` scope.
        '404':
          description: >-
            App not found, or the app has no entity with this name (a workspace
            API key gets a 200 instead).
        '409':
          description: >-
            The request is scoped to a feature branch. Entity schemas can only
            be changed on the main branch.
        '428':
          description: The entity still has records. Delete them first.
components:
  schemas:
    DeleteEntitySchemaResponse:
      properties:
        success:
          type: boolean
          title: Success
          description: Always `true`. A delete that failed returns an error status instead.
          example: true
      type: object
      required:
        - success
      title: DeleteEntitySchemaResponse
      description: Confirmation that an entity was removed from the app.
  securitySchemes:
    ApiKeyAuth:
      type: apiKey
      in: header
      name: api_key
      description: Personal API key.

````