Calypso icon

Calypso

Ask a grounded Calypso RAG agent

Upload File

AI-generated

Summary

Uploads one binary file per input item to a chosen Calypso knowledge bucket via POST /knowledge/files (multipart), with optional title, tags, metadata and an idempotency key.

Inputs

  • Bucket Name or ID (required) — Target knowledge bucket, chosen from active buckets loaded from the Calypso API (shows file counts) or given as an ID expression. Sent as bucket_ids.
  • Binary Property Name (required) — Name of the binary property on each input item holding the file (default 'data'). The file's name and MIME type come from that binary data (fallbacks: 'item-N', application/octet-stream).
  • Upload Options > Title — Optional title for the file.
  • Upload Options > Tags — Comma-separated tags or a JSON array of strings; sent as a JSON array.
  • Upload Options > Metadata — JSON object stored with the file. Must be a valid JSON object (not an array), otherwise the node errors.
  • Upload Options > Idempotency Key — Sent as the Idempotency-Key header so retries of the same upload are not duplicated.

Output shape

One output item per input item, containing the Calypso API response fields. The response's metadata object is merged with a calypsoUpload object (operation 'uploadFile', bucketId, binaryPropertyName, filename). Items are paired to their input item.

The exact response fields depend on the Calypso API. Requires the calypsoApi credential (base URL defaults to https://api.calypso.so/v1). API failures throw a NodeApiError, unless Continue On Fail is enabled, in which case an item with error: true, message, and timestamp is returned. Missing binary data, an empty bucket or invalid metadata also cause an error for that item.

Examples

Example 1: Add PDFs downloaded by an HTTP Request node to a handbook bucket with tags

Bucket: Handbook; Binary Property Name: data; Tags: support,handbook

Example 2: Safely retry uploads of attachments from an email trigger

Binary Property Name: attachment_0; Idempotency Key: ={{$json.messageId}}; Metadata: {"source":"email"}

Links

Discussion