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

# Create a company

> Creates a company. Requires a name; fallbackColor, iconImageUrl, and
customFields are optional.



## OpenAPI

````yaml /api-reference/openapi.json post /v1/companies
openapi: 3.0.0
info:
  contact: {}
  title: Assembly API
  version: 0.0.1
servers:
  - url: https://api.assembly.com
security: []
paths:
  /v1/companies:
    post:
      tags:
        - Companies
      summary: Create a company
      description: |-
        Creates a company. Requires a name; fallbackColor, iconImageUrl, and
        customFields are optional.
      operationId: create-company
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/api.CreateCompanyInput'
        description: Company to create
        required: true
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/api.CompanyItem'
          description: OK
        '400':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/dispatcher.Error'
          description: Invalid request body or field values
        '401':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/dispatcher.Error'
          description: Missing or invalid API key
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/dispatcher.Error'
          description: Unexpected server error
      security:
        - APIKeyHeader: []
components:
  schemas:
    api.CreateCompanyInput:
      properties:
        customFields:
          additionalProperties:
            nullable: true
            oneOf:
              - description: >-
                  Value for text, number (numeric string), email, url, and
                  phoneNumber fields.
                type: string
              - description: Selected option IDs for multiSelect fields.
                items:
                  type: string
                type: array
              - description: Structured value for address fields.
                properties:
                  addressLine1:
                    type: string
                  addressLine2:
                    type: string
                  city:
                    type: string
                  country:
                    type: string
                  fullAddress:
                    type: string
                  postalCode:
                    type: string
                  region:
                    type: string
                type: object
          description: CustomFields holds custom field values keyed by custom field key.
          type: object
        fallbackColor:
          description: >-
            FallbackColor is the hex color used as the icon background when no
            image is set.
          example: '#4F46E5'
          type: string
        iconImageUrl:
          description: IconImageUrl is the URL of the company's icon image.
          example: https://example.com/icon.png
          format: uri
          type: string
        isPlaceholder:
          description: IsPlaceholder marks the company as a placeholder record.
          example: false
          type: boolean
        name:
          description: Name is the company's display name.
          example: Acme Inc.
          type: string
      required:
        - name
      type: object
    api.CompanyItem:
      properties:
        createdAt:
          description: Created is the RFC 3339 timestamp at which the object was created.
          example: '2024-01-15T09:30:00Z'
          format: date-time
          type: string
        customFields:
          additionalProperties:
            nullable: true
            oneOf:
              - description: >-
                  Value for text, number (numeric string), email, url, and
                  phoneNumber fields.
                type: string
              - description: Selected option IDs for multiSelect fields.
                items:
                  type: string
                type: array
              - description: Structured value for address fields.
                properties:
                  addressLine1:
                    type: string
                  addressLine2:
                    type: string
                  city:
                    type: string
                  country:
                    type: string
                  fullAddress:
                    type: string
                  postalCode:
                    type: string
                  region:
                    type: string
                type: object
          description: >-
            CustomFields holds custom field values for the company, keyed by
            custom field key.
          type: object
        deleted:
          description: >-
            Deleted is true when the object has been deleted; present only on
            delete responses.
          example: true
          type: boolean
        fallbackColor:
          description: >-
            FallbackColor is the hex color (e.g. "#4F46E5") used as the
            background when no

            icon image is set. The native pattern documents intent; the
            constraint is

            re-applied to the spec by the enrich-openapi post-processing step.
          example: '#4F46E5'
          pattern: ^#[0-9a-fA-F]{6}$
          type: string
        iconImageUrl:
          description: AvatarImageURL is the URL of the company's icon image.
          example: https://portal.example.com/icons/acme.png
          format: uri
          type: string
        id:
          description: ID is the unique identifier of the object.
          example: 550e8400-e29b-41d4-a716-446655440000
          type: string
        isPlaceholder:
          description: >-
            IsPlaceholder is true when the company was auto-created as a
            placeholder. Read-only.
          example: false
          type: boolean
        name:
          description: Name is the company's display name. Required on create.
          example: Acme Inc
          type: string
        object:
          allOf:
            - $ref: '#/components/schemas/constants.ApiObject'
          description: Object is the type of the object (e.g. "client", "company").
        updatedAt:
          description: >-
            Updated is the RFC 3339 timestamp at which the object was last
            updated.
          example: '2024-02-20T14:05:00Z'
          format: date-time
          type: string
      type: object
    dispatcher.Error:
      properties:
        code:
          type: string
        data: {}
        message:
          type: string
      type: object
    constants.ApiObject:
      enum:
        - client
        - internalUser
        - company
        - customField
        - customFieldOption
        - file
        - fileChannel
        - folder
        - messageChannel
        - message
        - notification
      type: string
      x-enum-varnames:
        - ApiObjectClient
        - ApiObjectInternalUser
        - ApiObjectCompany
        - ApiObjectCustomField
        - ApiObjectCustomFieldOption
        - ApiObjectFile
        - ApiObjectFileChannel
        - ApiObjectFolder
        - ApiObjectMessageChannel
        - ApiObjectMessage
        - ApiObjectNotification
  securitySchemes:
    APIKeyHeader:
      in: header
      name: X-API-KEY
      type: apiKey

````