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

# Create an intent category

> Create an intent category, optionally linking it to existing intents



## OpenAPI

````yaml https://api.alpic.ai/openapi.json post /v1/environments/{environmentId}/intent-categories
openapi: 3.1.1
info:
  title: Alpic API
  version: 1.0.0
servers:
  - url: https://api.alpic.ai
security:
  - bearerAuth: []
paths:
  /v1/environments/{environmentId}/intent-categories:
    post:
      tags:
        - insights
      summary: Create an intent category
      description: Create an intent category, optionally linking it to existing intents
      operationId: intentCategories.create.v1
      parameters:
        - name: environmentId
          in: path
          required: true
          schema:
            type: string
            description: The ID of the environment
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                name:
                  type: string
                  minLength: 1
                  maxLength: 100
                  description: The category name
                color:
                  enum:
                    - red
                    - orange
                    - yellow
                    - green
                    - blue
                    - purple
                    - pink
                    - gray
                  type: string
                  description: The category color; derived from the name when omitted
                intentIds:
                  type: array
                  minItems: 1
                  maxItems: 100
                  items:
                    type: string
                    minLength: 1
                  description: IDs of intents to link to the new category
              required:
                - name
      responses:
        '200':
          description: The created intent category
          content:
            application/json:
              schema:
                type: object
                properties:
                  id:
                    type: string
                  createdAt:
                    type: string
                    format: date-time
                    x-native-type: date
                  environmentId:
                    type: string
                  name:
                    type: string
                  color:
                    enum:
                      - red
                      - orange
                      - yellow
                      - green
                      - blue
                      - purple
                      - pink
                      - gray
                    type: string
                required:
                  - id
                  - createdAt
                  - environmentId
                  - name
                  - color
        '400':
          description: '400'
          content:
            application/json:
              schema:
                oneOf:
                  - type: object
                    properties:
                      defined:
                        const: true
                      code:
                        const: BAD_REQUEST
                      status:
                        const: 400
                      message:
                        type: string
                        default: Bad Request
                      data: {}
                    required:
                      - defined
                      - code
                      - status
                      - message
                  - type: object
                    properties:
                      defined:
                        const: false
                      code:
                        type: string
                      status:
                        type: number
                      message:
                        type: string
                      data: {}
                    required:
                      - defined
                      - code
                      - status
                      - message
        '404':
          description: '404'
          content:
            application/json:
              schema:
                oneOf:
                  - type: object
                    properties:
                      defined:
                        const: true
                      code:
                        const: NOT_FOUND
                      status:
                        const: 404
                      message:
                        type: string
                        default: Not Found
                      data: {}
                    required:
                      - defined
                      - code
                      - status
                      - message
                  - type: object
                    properties:
                      defined:
                        const: false
                      code:
                        type: string
                      status:
                        type: number
                      message:
                        type: string
                      data: {}
                    required:
                      - defined
                      - code
                      - status
                      - message
components:
  securitySchemes:
    bearerAuth:
      type: http
      description: >-
        Bearer token for authentication. Use an API key from the API Keys page
        in team settings, or an OAuth access token.
      scheme: bearer

````