Files
The file service handles file uploads and management. Use it to upload documents (identity verification, dispute evidence, etc.), list uploaded files, retrieve file details, and delete files. File uploads use multipart form data via the SDK's postMultipart() HTTP method.
import { createOakClient, createFileService } from '@oaknetwork/payments-sdk';
const client = createOakClient({ ... });
const files = createFileService(client);
Methods
| Method | Description |
|---|---|
upload(file) | Upload a file |
list(query?) | List uploaded files |
get(fileId) | Get a file by ID |
delete(fileId) | Delete a file |
Upload a file
const result = await files.upload(formData);
if (result.ok) {
console.log('File ID:', result.value.data.id);
console.log('URL:', result.value.data.url);
}
The
upload()method uses multipart form data. Pass aFormDataobject containing the file.
List files
const result = await files.list({
limit: 20,
offset: 0,
});
if (result.ok) {
for (const file of result.value.data) {
console.log(`${file.id} — ${file.name} — ${file.size}`);
}
}
Get a file
const result = await files.get('file_abc123');
if (result.ok) {
const file = result.value.data;
console.log('Name:', file.name);
console.log('Size:', file.size);
console.log('URL:', file.url);
}
Delete a file
const result = await files.delete('file_abc123');
if (result.ok) {
console.log('File deleted');
}
Response types
UploadResponse
| Field | Type | Description |
|---|---|---|
id | string | File ID |
name | string | File name |
size | number | File size in bytes |
url | string | File URL |
created_at | string | ISO timestamp |
ListResponse
An array of file objects with id, name, size, url, and created_at fields.
GetResponse
Same shape as UploadResponse.
DeleteResponse
Confirmation of file deletion.