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

# List entity schemas

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

Returns every entity schema the app defines, plus the built-in `User` entity when it has custom fields.

To read one schema on its own, use [Get entity schema](/api-reference/get-entity-schema).



## OpenAPI

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


        Returns every entity schema the app defines, plus the built-in `User`
        entity when it has custom fields.


        To read one schema on its own, use [Get entity
        schema](/api-reference/get-entity-schema).
      operationId: list_schemas_api_apps__app_id__entity_schemas_get
      parameters:
        - 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/ListEntitySchemasResponse'
        '401':
          description: Missing or invalid credentials.
        '403':
          description: >-
            You don't have editor access to this app, or you used a workspace
            API key.
        '404':
          description: App not found.
components:
  schemas:
    ListEntitySchemasResponse:
      properties:
        schemas:
          items:
            $ref: '#/components/schemas/EntitySchema'
          type: array
          title: Schemas
          description: The app's entity schemas.
          example:
            - entity_name: Invoice
              entity_schema:
                name: Invoice
                properties:
                  amount:
                    description: Total amount in cents
                    type: number
                  status:
                    enum:
                      - draft
                      - sent
                      - paid
                    type: string
                required:
                  - amount
                rls:
                  read:
                    created_by: '{{user.email}}'
                type: object
            - entity_name: User
              entity_schema:
                properties:
                  department:
                    type: string
                  employee_id:
                    type: string
                type: object
        total:
          type: integer
          title: Total
          description: Number of entity schemas returned.
          example: 2
      type: object
      required:
        - schemas
        - total
      title: ListEntitySchemasResponse
      description: Every entity the app defines, with its schema.
    EntitySchema:
      properties:
        entity_name:
          type: string
          title: Entity Name
          description: >-
            Name of the entity. The name `User` is the built-in user entity, and
            every other name is one the app defines.
          example: Invoice
        entity_schema:
          additionalProperties: true
          type: object
          title: Entity Schema
          description: >-
            The entity's stored [JSON
            Schema](/developers/backend/resources/entities/entity-schemas),
            including its `properties`, `required` fields, and any [row-level
            security rules](/developers/backend/resources/entities/security)
            under `rls`. For the app's own entities it also carries a `name` key
            holding the entity name. For `User` it holds only the custom fields
            added on top of the built-in ones, and has no `name` key.
          example:
            name: Invoice
            properties:
              amount:
                description: Total amount in cents
                type: number
              status:
                enum:
                  - draft
                  - sent
                  - paid
                type: string
            required:
              - amount
            rls:
              read:
                created_by: '{{user.email}}'
            type: object
      type: object
      required:
        - entity_name
        - entity_schema
      title: EntitySchema
  securitySchemes:
    ApiKeyAuth:
      type: apiKey
      in: header
      name: api_key
      description: Personal API key.

````