Create upload
client.Uploads.New(ctx, body) (*Upload, error)
post /uploads
Create upload
Parameters
-
body UploadNewParams-
Bytes param.Field[int64]The number of bytes in the file you are uploading.
-
Filename param.Field[string]The name of the file to upload.
-
MimeType param.Field[string]The MIME type of the file.
This must fall within the supported MIME types for your file purpose. See the supported MIME types for assistants and vision.
-
Purpose param.Field[FilePurpose]The intended purpose of the uploaded file.
See the documentation on File purposes.
-
ExpiresAfter param.Field[UploadNewParamsExpiresAfter]The expiration policy for a file. By default, files with
purpose=batchexpire after 30 days and all other files are persisted until they are manually deleted.-
Anchor CreatedAtAnchor timestamp after which the expiration policy applies. Supported anchors:
created_at.const CreatedAtCreatedAt CreatedAt = "created_at"
-
Seconds int64The number of seconds after the anchor time that the file will expire. Must be between 3600 (1 hour) and 2592000 (30 days).
-
-
Returns
-
type Upload struct{…}The Upload object can accept byte chunks in the form of Parts.
-
ID stringThe Upload unique identifier, which can be referenced in API endpoints.
-
Bytes int64The intended number of bytes to be uploaded.
-
CreatedAt int64The Unix timestamp (in seconds) for when the Upload was created.
-
ExpiresAt int64The Unix timestamp (in seconds) for when the Upload will expire.
-
Filename stringThe name of the file to be uploaded.
-
Object UploadThe object type, which is always "upload".
const UploadUpload Upload = "upload"
-
Purpose stringThe intended purpose of the file. Please refer here for acceptable values.
-
Status UploadStatusThe status of the Upload.
-
const UploadStatusPending UploadStatus = "pending" -
const UploadStatusCompleted UploadStatus = "completed" -
const UploadStatusCancelled UploadStatus = "cancelled" -
const UploadStatusExpired UploadStatus = "expired"
-
-
File FileObjectThe
Fileobject represents a document that has been uploaded to OpenAI.-
ID stringThe file identifier, which can be referenced in the API endpoints.
-
Bytes int64The size of the file, in bytes.
-
CreatedAt int64The Unix timestamp (in seconds) for when the file was created.
-
Filename stringThe name of the file.
-
Object FileThe object type, which is always
file.const FileFile File = "file"
-
Purpose FileObjectPurposeThe intended purpose of the file. Supported values are
assistants,assistants_output,batch,batch_output,fine-tune,fine-tune-results,vision, anduser_data.-
const FileObjectPurposeAssistants FileObjectPurpose = "assistants" -
const FileObjectPurposeAssistantsOutput FileObjectPurpose = "assistants_output" -
const FileObjectPurposeBatch FileObjectPurpose = "batch" -
const FileObjectPurposeBatchOutput FileObjectPurpose = "batch_output" -
const FileObjectPurposeFineTune FileObjectPurpose = "fine-tune" -
const FileObjectPurposeFineTuneResults FileObjectPurpose = "fine-tune-results" -
const FileObjectPurposeVision FileObjectPurpose = "vision" -
const FileObjectPurposeUserData FileObjectPurpose = "user_data"
-
-
Status FileObjectStatusDeprecated. The current status of the file, which can be either
uploaded,processed, orerror.-
const FileObjectStatusUploaded FileObjectStatus = "uploaded" -
const FileObjectStatusProcessed FileObjectStatus = "processed" -
const FileObjectStatusError FileObjectStatus = "error"
-
-
ExpiresAt int64The Unix timestamp (in seconds) for when the file will expire.
-
StatusDetails stringDeprecated. For details on why a fine-tuning training file failed validation, see the
errorfield onfine_tuning.job.
-
-
Example
package main
import (
"context"
"fmt"
"github.com/openai/openai-go"
"github.com/openai/openai-go/option"
)
func main() {
client := openai.NewClient(
option.WithAPIKey("My API Key"),
)
upload, err := client.Uploads.New(context.TODO(), openai.UploadNewParams{
Bytes: 0,
Filename: "filename",
MimeType: "mime_type",
Purpose: map[string]any{
},
})
if err != nil {
panic(err.Error())
}
fmt.Printf("%+v\n", upload.ID)
}
Response
{
"id": "id",
"bytes": 0,
"created_at": 0,
"expires_at": 0,
"filename": "filename",
"object": "upload",
"purpose": "purpose",
"status": "pending",
"file": {
"id": "id",
"bytes": 0,
"created_at": 0,
"filename": "filename",
"object": "file",
"purpose": "assistants",
"status": "uploaded",
"expires_at": 0,
"status_details": "status_details"
}
}