type: object
properties:
  name:
    type: string
    description: The name of the inbox.
    example: 'Support'
  avatar:
    type: string
    format: binary
    description: Image file for avatar.
  greeting_enabled:
    type: boolean
    description: Enable greeting message.
    example: true
  greeting_message:
    type: string
    description: Greeting message to send when greeting messages are enabled.
    example: Hello, how can I help you?
  enable_email_collect:
    type: boolean
    description: |
      Enable email collection.

      Available for: `Website`
    example: true
  csat_survey_enabled:
    type: boolean
    description: Enable CSAT survey.
    example: true
  csat_config:
    type: object
    description: CSAT survey configuration.
    properties:
      display_type:
        type: string
        description: Display style for the CSAT survey.
        enum: ['emoji', 'star']
        example: emoji
      message:
        type: string
        description: Message shown with the CSAT survey.
        example: Please rate your conversation
      button_text:
        type: string
        description: Text shown on the CSAT survey button.
        example: Please rate us
      language:
        type: string
        description: Language code for the CSAT survey.
        example: en
      survey_rules:
        type: object
        description: Rules that decide when to show the CSAT survey.
        properties:
          operator:
            type: string
            example: contains
          values:
            type: array
            items:
              type: string
            example: ['billing']
  enable_auto_assignment:
    type: boolean
    description: Enable Auto Assignment.
    example: true
  working_hours_enabled:
    type: boolean
    description: Enable working hours.
    example: true
  out_of_office_message:
    type: string
    description: Out of office message to send outside working hours.
    example: We are currently out of office. Please leave a message and we will get back to you.
  timezone:
    type: string
    description: Timezone of the inbox.
    example: 'America/New_York'
  allow_messages_after_resolved:
    type: boolean
    description: |
      Allow messages after conversation is resolved.

      Available for: `Website`
    example: true
  lock_to_single_conversation:
    type: boolean
    description: |
      Lock contact messages to a single active conversation.

      Available for: `API` `LINE` `Telegram` `WhatsApp` `SMS`
    example: true
  portal_id:
    type: integer
    description: Id of the help center portal to attach to the inbox.
    example: 1
  sender_name_type:
    type: string
    description: |
      Sender name type for outbound email replies.

      Available for: `Website` `Email`
    enum: ['friendly', 'professional']
    example: 'friendly'
  business_name:
    type: string
    description: |
      Business name for outbound email replies.

      Available for: `Website` `Email`
    example: 'My Business'
  channel:
    oneOf:
      - $ref: '#/components/schemas/inbox_create_web_widget_channel_payload'
      - $ref: '#/components/schemas/inbox_create_api_channel_payload'
      - $ref: '#/components/schemas/inbox_create_email_channel_payload'
      - $ref: '#/components/schemas/inbox_create_line_channel_payload'
      - $ref: '#/components/schemas/inbox_create_telegram_channel_payload'
      - $ref: '#/components/schemas/inbox_create_whatsapp_channel_payload'
      - $ref: '#/components/schemas/inbox_create_sms_channel_payload'
    discriminator:
      propertyName: type
      mapping:
        web_widget: '#/components/schemas/inbox_create_web_widget_channel_payload'
        api: '#/components/schemas/inbox_create_api_channel_payload'
        email: '#/components/schemas/inbox_create_email_channel_payload'
        line: '#/components/schemas/inbox_create_line_channel_payload'
        telegram: '#/components/schemas/inbox_create_telegram_channel_payload'
        whatsapp: '#/components/schemas/inbox_create_whatsapp_channel_payload'
        sms: '#/components/schemas/inbox_create_sms_channel_payload'
