---
title: "Get object schema"
method: GET
path: "/api/meta/schema"
tags: ["Schema"]
---

# Get object schema

`GET /api/meta/schema`

## Request

- Base URL: `https://app.useitem.io`
- URL: `https://app.useitem.io/api/meta/schema`
- Auth: API key in header `x-api-key`

Returns all object types available to the organization along with their
field definitions. Use this to discover what objects exist, what fields
they have, and what select options are available.

Includes both system object types (People, Companies) and any custom
object types created by the organization.

## Response `200`

Schema returned

- object
  - `data` ObjectTypeSchema[]
    - `id` integer
    - `slug` string
    - `display_name` string
    - `plural_display_name` string, nullable
    - `description` string, nullable
    - `icon` string, nullable
    - `fields` FieldDefinition[]
      - `field_name` string
      - `display_name` string
      - `field_type` string
      - `field_order` integer
      - `is_required` boolean
      - `description` string, nullable
      - `select_options` object[], nullable: Available options for select/multi-select fields
        - `label` string
        - `value` string
        - `color` string, nullable
      - `allow_multiple` boolean, nullable
      - `related_object_type_id` integer, nullable: For relationship fields, the ID of the related object type
      - `relationship_type` 'one_to_one' | 'one_to_many' | 'many_to_one' | 'many_to_many' | 'null', nullable
      - `number_min` number, nullable: Optional minimum for Number fields, or minimum in percentage units for Percentage fields
      - `number_max` number, nullable: Optional maximum for Number fields, or maximum in percentage units for Percentage fields
      - `number_decimal_places` integer, nullable
      - `currency_decimal_places` integer, nullable
      - `percentage_decimal_places` integer, nullable: Editable and display precision for percentage fields
      - `value_scale` 'percentage_units' | 'null', nullable: Percentage values use percentage units; 43.5 means 43.5%
      - `default_value` string, nullable
      - `visibility_type` string

## Other responses

- `401`: Invalid or missing API key

---

[API](https://skmtc.dev/item/apis/item-api.md) - [All operations](https://skmtc.dev/item/apis/item-api/llms.txt) - [OpenAPI document](https://skmtc.dev/item/apis/item-api/revisions/05e6374d3922?raw)
