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

# List object types

> List the CRM object types defined for this project, including spine-linking metadata such as linksToPerson and identityFields.



## OpenAPI

````yaml https://api.sapt.ai/openapi.json get /projects/{projectId}/object-types
openapi: 3.1.0
info:
  title: Sapt Platform API
  version: 1.0.0
  description: >-
    API for Sapt platform - project management, authentication, and email
    services
servers:
  - url: https://api.sapt.ai
    description: Production
  - url: http://localhost:8787
    description: Local development
security: []
tags:
  - name: Accounts
    description: >-
      The social accounts connected to a project. Start here — the `id` of an
      account is the `socialAccountId` that every posting, scheduling and
      analytics call takes.
  - name: Actions
  - name: Ads
  - name: Agents
  - name: Analytics
    description: >-
      Account- and post-level organic performance for connected Instagram and
      Facebook accounts.
  - name: Assets
  - name: Auth
  - name: CMS
  - name: CRM
  - name: Calendar
  - name: Comments
    description: >-
      Read, reply to, hide and delete comments on published Instagram and
      Facebook posts.
  - name: Content Calendar
    description: >-
      Create, schedule, update and publish organic posts, and stage the media
      they carry. Publishing a post whose status is `failed` retries it.
  - name: Contracts
  - name: Conversions
    description: >-
      Meta server-side Conversions API (CAPI): discover pixels, connect a pixel
      + CAPI token, and send deduped server-side conversions.
  - name: Dashboard Sidebar
  - name: Emails
  - name: Engagement
    description: >-
      Act as the Page or account on published posts: comment, like, unlike, and
      delete a published post.
  - name: Geo
  - name: Google Ads
  - name: Google Analytics
  - name: Google Business
  - name: Integrations
    description: >-
      Connect third-party providers (Meta, Gmail, Google Business Profile, …).
      List providers, mint OAuth connect links, and poll connection status.
  - name: Invitations
  - name: Memory
  - name: OAuth Clients
  - name: Project Roles
  - name: Project Templates
  - name: Projects
  - name: Schedules
  - name: Service Accounts
  - name: Socials
    description: >-
      Organic social: the connected accounts, the content calendar, media
      staging, publishing, comments and engagement across Instagram, Facebook,
      TikTok, YouTube and Google Business Profile.
  - name: Team
  - name: Users
  - name: Web Analytics
  - name: Workflows
paths:
  /projects/{projectId}/object-types:
    get:
      tags:
        - CRM
      summary: List object types
      description: >-
        List the CRM object types defined for this project, including
        spine-linking metadata such as linksToPerson and identityFields.
      operationId: listObjectTypes
      parameters:
        - schema:
            type: string
            format: uuid
          required: true
          name: projectId
          in: path
        - schema:
            type: string
            enum:
              - 'true'
              - 'false'
          required: false
          name: includeHidden
          in: query
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                type: object
                properties:
                  objectTypes:
                    type: array
                    items:
                      type: object
                      properties:
                        slug:
                          type: string
                        name:
                          type: string
                        description:
                          type:
                            - string
                            - 'null'
                        kind:
                          type: string
                          enum:
                            - system
                            - user
                        icon:
                          type:
                            - string
                            - 'null'
                        color:
                          type:
                            - string
                            - 'null'
                        schema:
                          type: object
                          additionalProperties:
                            type: object
                            properties:
                              label:
                                type: string
                              description:
                                type: string
                              schema:
                                type: object
                                properties:
                                  type:
                                    type: string
                                    enum:
                                      - string
                                      - number
                                      - boolean
                                      - object
                                      - reference
                                      - image
                                      - video
                                      - document
                                      - asset
                                      - date
                                      - select
                                  required:
                                    type: boolean
                                  multiple:
                                    type: object
                                    properties:
                                      minItems:
                                        type: integer
                                        minimum: 0
                                      maxItems:
                                        type: integer
                                        minimum: 0
                                      uniqueItems:
                                        type: boolean
                                  options:
                                    type: object
                                    additionalProperties: {}
                                required:
                                  - type
                                  - options
                            required:
                              - schema
                        statuses:
                          type:
                            - array
                            - 'null'
                          items:
                            type: object
                            properties:
                              key:
                                type: string
                                minLength: 1
                                maxLength: 40
                                pattern: ^[a-z][a-z0-9_]*$
                              label:
                                type: string
                                minLength: 1
                                maxLength: 60
                              color:
                                type: string
                                pattern: ^#[0-9a-fA-F]{6}$
                              isInitial:
                                type: boolean
                              isTerminal:
                                type: boolean
                              capiStage:
                                type: string
                                enum:
                                  - lead
                                  - qualified
                                  - scheduled
                                  - purchased
                            required:
                              - key
                              - label
                        isPublicIngestable:
                          type: boolean
                        isHiddenFromUi:
                          type: boolean
                        linksToPerson:
                          type: boolean
                          description: >-
                            When true, writes for this type auto-attach or
                            create a Person spine record and store its id as
                            personRefId.
                        linksToCompany:
                          type: boolean
                          description: >-
                            Reserved company attribution flag. Use Person spine
                            and declared CRM relations as the stable public
                            model unless company spine support is explicitly
                            documented.
                        identityFields:
                          type:
                            - array
                            - 'null'
                          items:
                            type: string
                          description: >-
                            For the person type, fields used to match the Person
                            spine. For other types, fields used for same-type
                            upsert/dedupe behavior.
                        rejectUnknownFields:
                          type: boolean
                        relations:
                          type: object
                          additionalProperties:
                            type: object
                            properties:
                              relationId:
                                type: string
                              label:
                                type: string
                              targetTypeSlug:
                                type: string
                              multiple:
                                type: boolean
                            required:
                              - relationId
                              - label
                              - targetTypeSlug
                              - multiple
                        createdAt:
                          type: string
                          format: date-time
                        updatedAt:
                          type: string
                          format: date-time
                      required:
                        - slug
                        - name
                        - description
                        - kind
                        - icon
                        - color
                        - schema
                        - statuses
                        - isPublicIngestable
                        - isHiddenFromUi
                        - linksToPerson
                        - linksToCompany
                        - identityFields
                        - rejectUnknownFields
                        - relations
                        - createdAt
                        - updatedAt
                required:
                  - objectTypes
        '400':
          description: Bad request
          content:
            application/json:
              schema:
                type: object
                properties:
                  message:
                    type: string
                    description: Error message
                  code:
                    type: string
                    description: Error code for programmatic handling
                required:
                  - message
        '403':
          description: Forbidden
          content:
            application/json:
              schema:
                type: object
                properties:
                  message:
                    type: string
                    description: Error message
                  code:
                    type: string
                    description: Error code for programmatic handling
                required:
                  - message
        '404':
          description: Not found
          content:
            application/json:
              schema:
                type: object
                properties:
                  message:
                    type: string
                    description: Error message
                  code:
                    type: string
                    description: Error code for programmatic handling
                required:
                  - message
      security:
        - bearerAuth: []
components:
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
      bearerFormat: JWT
      description: >-
        JWT token obtained from /api/auth/token endpoint. Token is verified
        using JWKS and must include a valid user identifier.

````