Sample code for 30+ languages & platforms
Xbase++

OpenAI (ChatGPT) Retrieve File Content

See more OpenAI ChatGPT Examples

Demonstrate how to retrieve the content of a file from OpenAI. Shows how to download to a file, or instead download to a string in memory.

Chilkat Xbase++ Downloads

Xbase++
LOCAL nSuccess
LOCAL oHttp
LOCAL cFile_id
LOCAL cUrl
LOCAL oSbData

nSuccess := 0

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

oHttp := CreateObject("Chilkat.Http")

//  Adds the "Authorization: Bearer $OPENAI_API_KEY" header.
//  This is NOT a real key.  Change the "sk-vi...." to your own key.
oHttp:AuthToken := "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"

cFile_id := "file-1H4vJq0H775gQVrjWY5jpp15"

//  Download to local file.
cUrl := "https://api.openai.com/v1/files/{$file_id}/content"
oHttp:SetUrlVar("file_id", cFile_id)

//  Note: Free accounts are not able to download files.
//  If using a free account, you'll receive an error response:  "To help mitigate abuse, downloading of fine-tune training files is disabled for free accounts."
nSuccess := oHttp:Download(cUrl, "c:/aaworkarea/mydata.jsonl")
IF (nSuccess == 0)
    ? oHttp:LastErrorText
    ? "Failed"
    oHttp:destroy()
    RETURN
ENDIF

? "Downloaded OpenAI file to a local file."

//  Alternatively, download into a StringBuilder
oSbData := CreateObject("Chilkat.StringBuilder")
nSuccess := oHttp:DownloadSb(cUrl, oSbData, "utf-8")
IF (nSuccess == 0)
    ? oHttp:LastErrorText
    ? "Failed"
    oHttp:destroy()
    oSbData:destroy()
    RETURN
ENDIF

? "Downloaded OpenAI file to a StringBuilder"

? "file content:"
? oSbData:GetAsString()

oHttp:destroy()
oSbData:destroy()