> ## 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 a contact property group

> Create a new contact property group. Property groups allow you to more easily manage properties in a given portal and make contact records easier to parse for the user.



## OpenAPI

````yaml specs/legacy/v1/crm-properties-v1-contacts.json POST /properties/v1/contacts/groups
openapi: 3.0.0
info:
  title: CRM Properties API v1 - Contacts
  version: 1.0.0
  description: >-
    Legacy CRM Properties API v1 - Contacts - Manage contact properties and
    property groups
servers:
  - url: https://api.hubapi.com
    description: HubSpot API Server
security: []
paths:
  /properties/v1/contacts/groups:
    post:
      summary: Create a contact property group
      description: >-
        Create a new contact property group. Property groups allow you to more
        easily manage properties in a given portal and make contact records
        easier to parse for the user.
      operationId: postpropertiesv1contactsgroups
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ContactPropertyGroupCreate'
      responses:
        '201':
          description: Contact property group created successfully
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ContactPropertyGroup'
      security:
        - oauth2:
            - crm.schemas.contacts.write
        - oauth2_legacy: []
        - private_apps:
            - crm.schemas.contacts.write
        - private_apps_legacy: []
components:
  schemas:
    ContactPropertyGroupCreate:
      type: object
      required:
        - name
        - displayName
      properties:
        name:
          type: string
          description: >-
            The internal name of the property group. Must be unique and use only
            lowercase letters, numbers, and underscores.
        displayName:
          type: string
          description: A human readable name for the group
        displayOrder:
          type: integer
          description: >-
            Groups are displayed in order, starting with 0. Defaults to -1 if
            omitted.
    ContactPropertyGroup:
      type: object
      properties:
        name:
          type: string
          description: The internal name of the property group
        displayName:
          type: string
          description: The displayed name of the group
        displayOrder:
          type: integer
          description: The order of the group when displaying properties
        hubspotDefined:
          type: boolean
          description: Whether the group is defined by HubSpot
        properties:
          type: array
          items:
            $ref: '#/components/schemas/ContactProperty'
          description: Properties in this group (only included if includeProperties=true)
    ContactProperty:
      type: object
      properties:
        name:
          type: string
          description: The internal name of the property
        label:
          type: string
          description: A human readable label for the property
        description:
          type: string
          description: A description of the property
        groupName:
          type: string
          description: The property group that the property belongs to
        type:
          type: string
          enum:
            - string
            - number
            - date
            - datetime
            - enumeration
          description: The data type that the property stores
        fieldType:
          type: string
          enum:
            - textarea
            - text
            - date
            - file
            - number
            - select
            - radio
            - checkbox
            - booleancheckbox
          description: Sets the way that the property appears when used as a form field
        options:
          type: array
          items:
            $ref: '#/components/schemas/PropertyOption'
          description: Options for enumeration properties
        displayOrder:
          type: integer
          description: >-
            Used to control the default order of the property within the
            property group
        formField:
          type: boolean
          description: >-
            Controls whether or not the field will appear as an option when
            building a form
        readOnlyValue:
          type: boolean
          description: Whether the property value is read-only
        readOnlyDefinition:
          type: boolean
          description: Whether the property definition is read-only
        hidden:
          type: boolean
          description: Whether the property is hidden
        mutableDefinitionNotDeletable:
          type: boolean
          description: Whether the property definition can be deleted
        favorited:
          type: boolean
          description: Whether the property is favorited
        favoritedOrder:
          type: integer
          description: The order of the property in the favorites list
        calculated:
          type: boolean
          description: Whether the property is calculated
        externalOptions:
          type: boolean
          description: Whether the property uses external options
        displayMode:
          type: string
          description: The display mode of the property
        deleted:
          type: boolean
          description: Whether the property has been deleted
        hubspotDefined:
          type: boolean
          description: Whether the property is defined by HubSpot
        createdAt:
          type: integer
          description: Timestamp when the property was created
        updatedAt:
          type: integer
          description: Timestamp when the property was last updated
        createdUserId:
          type: integer
          description: The ID of the user who created the property
        updatedUserId:
          type: integer
          description: The ID of the user who last updated the property
    PropertyOption:
      type: object
      properties:
        description:
          type: string
          description: Description of the option
        label:
          type: string
          description: Human readable label for the option
        value:
          type: string
          description: Internal value for the option
        displayOrder:
          type: integer
          description: Order of the option in the list
        hidden:
          type: boolean
          description: Whether the option is hidden
        readOnly:
          type: boolean
          description: Whether the option is read-only
        doubleData:
          type: number
          description: Additional numeric data for the option

````