Sample code for 30+ languages & platforms
Xbase++ Requires Chilkat v11.2.0+

List AI Models

See more AI Examples

Returns a sorted list of AI models available to your account for the specified AI provider, such as GPT-4o and GPT-5.

Chilkat Xbase++ Downloads

Xbase++
LOCAL nSuccess
LOCAL oAi
LOCAL oSt
LOCAL nCount
LOCAL i

nSuccess := 0

//  This example assumes the Chilkat API to have been previously unlocked.
//  See Global Unlock Sample for sample code.

oAi := CreateObject("Chilkat.Ai")

//  The provider can be "openai", "google", "claude", "deepseek", "xai", or "perplexity".
//  Support for additional providers will be added in future versions of Chilkat.
oAi:Provider := "openai"

//  Use your provider's API key.
oAi:ApiKey := "MY_API_KEY"

//  Note: Chilkat currently uses a hard-coded list of available models for Perplexity and XAi (Grok) 
//  because these AI providers do not offer an API endpoint to list models. 
//  If they introduce such a REST API call in the future, Chilkat will update to incorporate it in a later version.

oSt := CreateObject("Chilkat.StringTable")
nSuccess := oAi:GetModels(oSt)
IF (nSuccess == 0)
    ? oAi:LastErrorText
    oAi:destroy()
    oSt:destroy()
    RETURN
ENDIF

nCount := oSt:Count
i := 0
DO WHILE i < nCount
    ? oSt:StringAt(i)
    i := i + 1
ENDDO

//  Sample output:
//  (The exact list varies by account, and changes as providers add and retire models.)

//  babbage-002
//  chatgpt-4o-latest
//  codex-mini-latest
//  dall-e-2
//  dall-e-3
//  davinci-002
//  daybreak-blue-latest
//  daybreak-red-latest
//  gpt-3.5-turbo
//  gpt-3.5-turbo-instruct
//  gpt-4
//  gpt-4-turbo
//  gpt-4.1
//  gpt-4.1-mini
//  gpt-4.1-nano
//  gpt-4o
//  gpt-4o-audio-preview
//  gpt-4o-mini
//  gpt-4o-mini-transcribe
//  gpt-4o-mini-tts
//  gpt-4o-transcribe
//  gpt-5
//  gpt-5-chat-latest
//  gpt-5-codex
//  gpt-5-mini
//  gpt-5-nano
//  gpt-5.3-chat-latest
//  gpt-5.4-mini
//  gpt-5.4-nano
//  gpt-5.4-pro
//  gpt-5.5-pro
//  gpt-5.6-cyber
//  gpt-5.6-luna
//  gpt-5.6-sol
//  gpt-5.6-terra
//  gpt-audio
//  gpt-image-1
//  gpt-image-2
//  gpt-live-transcribe
//  gpt-realtime
//  gpt-realtime-1.5
//  gpt-realtime-2
//  gpt-realtime-2.1
//  gpt-realtime-2.1-mini
//  gpt-realtime-mini
//  gpt-realtime-translate
//  gpt-realtime-whisper
//  gpt-transcribe
//  o1
//  o1-pro
//  o3
//  o3-mini
//  o4-mini
//  o4-mini-deep-research
//  omni-moderation-latest
//  text-embedding-3-large
//  text-embedding-3-small
//  text-embedding-ada-002
//  tts-1
//  tts-1-hd
//  whisper-1

oAi:destroy()
oSt:destroy()