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

# Create object type

> Create a new CRM Extensions object type. This allows you to define custom object types that will appear in the HubSpot CRM interface.

export const ScopesList = ({scopes = [], description = "この API には、次のいずれかのスコープが必要です。"}) => {
  if (!scopes || scopes.length === 0) {
    return null;
  }
  const sortedScopes = scopes.sort((a, b) => a.localeCompare(b));
  return <div>
      <div className="text-sm mb-2">{description}</div>
      <div>
        {sortedScopes.map((scope, index) => <div key={index}>
            <code>
              <span className="text-xs">{scope}</span>
            </code>
          </div>)}
      </div>
    </div>;
};

<Accordion title="Scope requirements">
  <ScopesList scopes={['timeline']} />
</Accordion>


## OpenAPI

````yaml specs/legacy/v1/crm-extensions-v1.json POST /extensions/sales-objects/v1/object-types
openapi: 3.0.0
info:
  title: CRM Extensions API v1
  version: 1.0.0
  description: Legacy CRM Extensions API v1 - Auto-generated from MDX documentation
servers:
  - url: https://api.hubapi.com
    description: HubSpot API Server
security: []
paths:
  /extensions/sales-objects/v1/object-types:
    post:
      summary: Create object type
      description: >-
        Create a new CRM Extensions object type. This allows you to define
        custom object types that will appear in the HubSpot CRM interface.
      operationId: postextensionssalesobjectsv1objecttypes
      parameters:
        - name: hapikey
          in: query
          required: true
          description: >-
            Your Developer HAPIkey. This must be a Developer HAPIkey associated
            with the Developer portal that the OAuth app was created in.
          schema:
            type: string
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                applicationId:
                  type: integer
                  description: >-
                    The ID of the HubSpot application that will own this object
                    type.
                baseUris:
                  type: array
                  items:
                    type: string
                  description: >-
                    A list of URIs. When you define actions, the URIs for these
                    actions must be under one of these URIs.
                dataFetchUri:
                  type: string
                  description: >-
                    The URI the CRM will call to fetch Sales Objects for the
                    specified associatedHubSpotObjectTypes.
                title:
                  type: string
                  description: >-
                    The title of this object. This will be displayed as the
                    title of the CRM sidebar card.
                propertyDefinitions:
                  type: array
                  items:
                    type: object
                    properties:
                      name:
                        type: string
                      label:
                        type: string
                      dataType:
                        type: string
                        enum:
                          - STRING
                          - STATUS
                          - NUMBER
                          - DATE
                          - DATETIME
                      options:
                        type: array
                        items:
                          type: object
                  description: >-
                    The common properties that these objects will have, in the
                    order they should appear on the sidebar card. See Property
                    Types for more info.
                associatedHubSpotObjectTypes:
                  type: array
                  items:
                    type: string
                    enum:
                      - CONTACT
                      - COMPANY
                      - DEAL
                      - TICKET
                  description: >-
                    A set of CONTACT, COMPANY, DEAL, or TICKET. This determines
                    where on the CRM this Object Type will appear -- contact,
                    company, deal, or ticket details pages.
                associatedHubSpotObjectTypeProperties:
                  type: object
                  description: >-
                    HubSpot properties to send in the data fetch request, by CRM
                    object type.
              required:
                - applicationId
                - baseUris
                - dataFetchUri
                - title
                - propertyDefinitions
                - associatedHubSpotObjectTypes
                - associatedHubSpotObjectTypeProperties
      responses:
        '201':
          description: Successful response - Object type created successfully
          content:
            application/json:
              schema:
                type: object
                properties:
                  id:
                    type: integer
                  applicationId:
                    type: integer
                  baseUris:
                    type: array
                    items:
                      type: string
                  dataFetchUri:
                    type: string
                  title:
                    type: string
                  propertyDefinitions:
                    type: array
                    items:
                      type: object
                  associatedHubSpotObjectTypes:
                    type: array
                    items:
                      type: string
                  associatedHubSpotObjectTypeProperties:
                    type: object

````