Voice Nexus Service Documentation

OpenAI API Platform Setup for gpt-realtime

This guide explains how to create the correct OpenAI account, create an API key, add billing, enable realtime model access, and verify that your credentials are ready to use with Voice Nexus Service (VNS).

Important: This must be an OpenAI API Platform account

Do not assume a regular ChatGPT subscription is enough.

Your customer must sign up for and configure an account on OpenAI API Platform at https://platform.openai.com.

A ChatGPT web subscription does not by itself provide the API project, API key, billing setup, or model access configuration required for gpt-realtime in VNS.

Overview

To use gpt-realtime with Voice Nexus Service, the customer needs four things:

1. API Platform AccountA valid OpenAI API Platform account, not just ChatGPT login access.
2. Project + API KeyA project with an API key created and stored safely.
3. BillingAvailable credits or billing enabled on the account.
4. Realtime Model AccessThe project's limits must allow models that contain the word realtime.

1. Create the OpenAI API Platform Account

Critical distinction
The customer must use OpenAI API Platform. A ChatGPT account alone is not sufficient for VNS API usage.
  1. Go to https://platform.openai.com.
  2. Click Sign Up.
  3. Create the account using an email address and password.
  4. Open the verification email from OpenAI.
  5. Enter the verification code to continue.
Recommendation
Use a company-controlled email address rather than a personal email so the API project can remain under business control.

2. Create the Organization and Project

  1. During setup, OpenAI will prompt for an Organization.
  2. You may optionally invite Team members. This can be skipped initially.
  3. Create a Project Name.
Example project names
VoiceNexus, VNS-Production, VNS-Test, or a customer-specific project name.
Best practice
Consider using separate projects for development and production so usage, keys, and budgets are easier to manage.

3. Create the API Key

  1. Open the selected project.
  2. Go to the area for API Keys.
  3. Click Create API Key.
  4. When prompted for Permissions, select All.
  5. Copy the key immediately and store it securely.
Permissions must be set to All
When creating the key, OpenAI will prompt you to choose a permission level. You must select All. Keys created with restricted permissions will not have the access required for the realtime API and calls will fail.
Important
The full key value may only be shown once. Save it at creation time.
Where this key is used
This key is what your VNS integration will place into the StartCall response so VNS can establish the realtime session.

4. Add Billing / Credits

  1. Open the project's billing area.
  2. Add funds or enable the account's payment method.
  3. For new accounts, OpenAI often starts with a relatively low funding limit such as $20.
New-account behavior
New accounts may begin on a low trust tier. As the account matures and is used successfully, higher funding and usage limits typically become available.

Later, the customer can usually:

  • Enable auto-recharge
  • Set a monthly cap
  • Increase the amount added per recharge

5. Enable Realtime Models in Project Limits

This is one of the most important steps. The API key may exist and billing may be funded, but calls can still fail if the project does not allow realtime models.

Project Name (top of screen) → Manage Projects → Select Project → Limits → Edit Model Usage
  1. Click the Project Name at the top of the screen.
  2. Select Manage Projects.
  3. Click the correct project in the list.
  4. In the left menu, click Limits.
  5. Under Model Usage, click Edit.
  6. Enable all models whose names include the word realtime.
  7. Click Save.
What to allow
Enable any models such as gpt-realtime, gpt-realtime-mini, and any newer realtime model variants that appear in the project.

6. Set the Project Budget

Project → Limits → Edit Budget
  1. Stay on the Limits screen.
  2. Click Edit Budget.
  3. Enter a monthly budget appropriate for expected usage.
  4. Click Save.
Practical guidance
Start with a budget the customer is comfortable with, then raise it later as call volume grows.

7. Use the API Key in VNS

Once the API Platform account is working, place the API key into your VNS StartCall response where your implementation expects the OpenAI API credential.

Important
If the key is missing, invalid, or tied to a project without realtime model access, the realtime session will fail to start.

At a minimum, confirm all of the following before testing:

  • The key was created from the correct project
  • The project has available funds or billing
  • Realtime models are enabled in Limits
  • The exact key value was copied correctly into your VNS configuration or StartCall flow

8. Troubleshooting

If the customer's key does not work, review the error returned in your VNS logs, especially the information captured at or near EndCall.

Error Type Likely Cause Suggested Fix
401 Unauthorized Invalid, incomplete, or revoked API key Regenerate the key and update the VNS configuration
403 Forbidden Model access not enabled for the project Go to Limits and enable all realtime models
429 or quota / rate limit errors Insufficient funded balance or low usage tier Add funds and continue using the account until higher limits become available
Billing-related error No credits or payment setup problem Verify billing, available balance, and project budget settings
Common mistake
The customer signs into ChatGPT successfully and assumes that means the API is ready. It does not. They still need the API Platform project, API key, billing, and realtime model permissions.

Quick Checklist

☐ Customer created an OpenAI API Platform account
☐ Customer did not rely only on a ChatGPT subscription
☐ Organization and project were created
☐ API key was generated with Permissions: All and stored safely
☐ Billing or credits were added
☐ Realtime models were enabled in Limits
☐ Monthly budget was configured
☐ API key was inserted into the VNS StartCall flow
☐ Test call was placed successfully