Complete a presigned upload
client.files.complete(fileID, options?): File { id, created_at, mime_type, 8 more }
POST/files/{file_id}/complete
Finalize a presigned upload after you have PUT the bytes to the upload URL. Kicks off ingest/moderation and returns the file, which transitions to ready (or failed) asynchronously — poll GET /files/{file_id} to observe the terminal state.
Complete a presigned upload
import Luma from 'luma-agents';
const client = new Luma({ authToken: process.env['LUMA_AGENTS_API_KEY'], // This is the default and can be omitted});
const file = await client.files.complete('182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e');
console.log(file.id);200 example
{ "id": "182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e", "created_at": "2019-12-27T18:11:19.117Z", "mime_type": "mime_type", "purpose": "input", "size_bytes": 0, "state": "pending", "deleted_at": "2019-12-27T18:11:19.117Z", "expires_at": "2019-12-27T18:11:19.117Z", "failure_reason": "failure_reason", "filename": "filename", "user_id": "user_id"}Returns Examples
200 example
{ "id": "182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e", "created_at": "2019-12-27T18:11:19.117Z", "mime_type": "mime_type", "purpose": "input", "size_bytes": 0, "state": "pending", "deleted_at": "2019-12-27T18:11:19.117Z", "expires_at": "2019-12-27T18:11:19.117Z", "failure_reason": "failure_reason", "filename": "filename", "user_id": "user_id"}