client.files and client.models

When the server implements OpenAI-compatible /v1/files, /v1/models, etc., use the same names on RouterBrain. Failures throw GatewayHttpError (status, body), same as chat.send.

client.files

MethodHTTPDescription
listGET /v1/filesPaginated list; limit and other query params per server.
createPOST /v1/filesmultipart upload: file (binary), purpose, etc.; max size from GATEWAY_FILES_MAX_BYTES (often ~32MB default—see deployment docs).
retrieveGET /v1/files/:idFile metadata.
contentGET /v1/files/:id/contentReturns ArrayBuffer for re-encoding or saving.
deleteDELETE /v1/files/:idDelete object.

With Chat

After upload, use returned id in user message input_file as file_id (must belong to tenant and API key). Three-way rule: Chat Completions.

Example calls

const list = await client.files.list({ limit: 20 });

const created = await client.files.create({
  file: uint8ArrayOrBlob,
  filename: "memo.pdf",
  purpose: "user_data", // per server validation
});

const buf = await client.files.content(created.id);

purpose values, field names, and error codes follow your deployment; cross-check HTTP routes overview.

client.models

MethodDescription
list(request?, options?)List tenant-visible ProviderModels (code, etc.). RouterBrainModelsListRequest may include inputModalities, apiProtocol, keyword q, etc.
count(request?, options?)Count under the same filters as list; type RouterBrainModelsCountRequest.

Useful for console model pickers or pre-flight checks. Whether output_modalities affects count follows deployment docs.

See also

Back to docs home