// This file was auto-generated by Fern from our API Definition.

import type * as Vapi from "../../../../index.js";

/**
 * @example
 *     {}
 */
export interface CreateSessionDto {
    /** This is a user-defined name for the session. Maximum length is 40 characters. */
    name?: string;
    /** This is the current status of the session. Can be either 'active' or 'completed'. */
    status?: Vapi.CreateSessionDtoStatus;
    /** Session expiration time in seconds. Defaults to 24 hours (86400 seconds) if not set. */
    expirationSeconds?: number;
    /** This is the ID of the assistant associated with this session. Use this when referencing an existing assistant. */
    assistantId?: string;
    /**
     * This is the assistant configuration for this session. Use this when creating a new assistant configuration.
     * If assistantId is provided, this will be ignored.
     */
    assistant?: Vapi.CreateAssistantDto;
    /**
     * These are the overrides for the assistant configuration.
     * Use this to provide variable values and other overrides when using assistantId.
     * Variable substitution will be applied to the assistant's messages and other text-based fields.
     */
    assistantOverrides?: Vapi.AssistantOverrides;
    /** This is the squad ID associated with this session. Use this when referencing an existing squad. */
    squadId?: string;
    /**
     * This is the squad configuration for this session. Use this when creating a new squad configuration.
     * If squadId is provided, this will be ignored.
     */
    squad?: Vapi.CreateSquadDto;
    /** This is an array of chat messages in the session. */
    messages?: Vapi.CreateSessionDtoMessagesItem[];
    /** This is the customer information associated with this session. */
    customer?: Vapi.CreateCustomerDto;
    /** This is the customerId of the customer associated with this session. */
    customerId?: string;
    /** This is the ID of the phone number associated with this session. */
    phoneNumberId?: string;
    /** This is the phone number configuration for this session. */
    phoneNumber?: Vapi.ImportTwilioPhoneNumberDto;
}
