## Example Request

JavaScript

```
curl -X POST https://api.upliftai.org/v1/realtime-assistants \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "name": "Customer Support Assistant",
    "description": "24/7 voice support for customers",
    "public": false,
    "config": {
      "session": {
        "ttl": 3600,
        "roomPrefix": "support"
      },
      "agent": {
        "instructions": "You are a helpful customer support agent. Be friendly and professional.",
        "initialGreeting": true,
        "greetingInstructions": "Greet the customer and ask how you can help them today.",
        "tools": []
      },
      "stt": {
        "default": {
          "provider": "groq",
          "model": "whisper-large-v3",
          "language": "en"
        }
      },
      "tts": {
        "default": {
          "provider": "upliftai",
          "voiceId": "v_meklc281",
          "outputFormat": "MP3_22050_32"
        }
      },
      "llm": {
        "default": {
          "provider": "groq",
          "model": "openai/gpt-oss-120b"
        }
      }
    }
  }'
```

```
const response = await fetch('https://api.upliftai.org/v1/realtime-assistants', {
  method: 'POST',
  headers: {
    'Authorization': 'Bearer YOUR_API_KEY',
    'Content-Type': 'application/json',
  },
  body: JSON.stringify({
    name: 'Customer Support Assistant',
    description: '24/7 voice support for customers',
    public: false,
    config: {
      agent: {
        instructions: 'You are a helpful customer support agent.',
        initialGreeting: true,
      },
      stt: {
        default: {
          provider: 'groq',
          model: 'whisper-large-v3',
        }
      },
      tts: {
        default: {
          provider: 'upliftai',
          voiceId: 'v_meklc281',
          outputFormat: 'MP3_22050_32',
        }
      },
      llm: {
        default: {
          provider: 'groq',
          model: 'openai/gpt-oss-120b',
        }
      }
    }
  })
});

const assistant = await response.json();
```

### Response

```
{
  "realtimeAssistantId": "550e8400-e29b-41d4-a716-446655440000",
  "organizationId": "org_123",
  "projectId": "proj_456",
  "name": "Customer Support Assistant",
  "description": "24/7 voice support for customers",
  "config": {
    "session": {
      "ttl": 3600,
      "roomPrefix": "support"
    },
    "agent": {
      "instructions": "You are a helpful customer support agent. Be friendly and professional.",
      "initialGreeting": true,
      "greetingInstructions": "Greet the customer and ask how you can help them today.",
      "tools": []
    },
    "stt": {
      "default": {
        "provider": "groq",
        "model": "whisper-large-v3",
        "language": "en"
      }
    },
    "tts": {
      "default": {
        "provider": "upliftai",
        "voiceId": "v_meklc281",
        "outputFormat": "MP3_22050_32"
      }
    },
    "llm": {
      "default": {
        "provider": "groq",
        "model": "openai/gpt-oss-120b"
      }
    }
  },
  "public": false,
  "createdAt": "2024-01-15T10:30:00Z",
  "updatedAt": "2024-01-15T10:30:00Z",
  "createdBy": "user_789",
  "updatedBy": "user_789"
}
```

### Parameters

**name**  
string  
required  
A descriptive name for your assistant

**description**  
string  
Optional description of the assistant’s purpose

**public**  
boolean  
default:"false"  
Whether this assistant can be accessed without authentication

**config**  
object  
required  
Assistant configuration object

### Show config properties

**session**  
object  
Session configuration

**ttl**  
number  
default:"3600"  
Session time-to-live in seconds

**roomPrefix**  
string  
Custom room name prefix (max 32 characters)

**agent**  
object  
Agent behavior configuration

**instructions**  
string  
required  
System instructions for the AI agent

**initialGreeting**  
boolean  
default:"false"  
Whether the agent should greet users when they join

**greetingInstructions**  
string  
Custom greeting instructions

**tools**  
array  
Array of tool configurations

**stt**  
object  
Speech-to-text configuration

**default**  
object  
Default STT provider settings

**provider**  
string  
required  
Provider name: `deepgram`, `openai`, `groq`, or `upliftai`

**model**  
string  
required  
Model identifier

**language**  
string  
Language code (e.g., “ur”, “en”)

**tts**  
object  
Text-to-speech configuration

**default**  
object  
Default TTS provider settings

**provider**  
string  
required  
Provider name: `upliftai` or `openai`

**voiceId**  
string  
required  
Voice identifier

**outputFormat**  
string  
required  
Audio format (e.g., “MP3_22050_32”)

**llm**  
object  
Language model configuration

**default**  
object  
Default LLM provider settings

**provider**  
string  
required  
Provider name: `groq` or `openai`

**model**  
string  
required  
Model identifier
