Skip to main content

Functions Overview

This page lists all available functions in QuivaWorks. Functions provide access to QuivaWorks platform services (streams, storage) and common data transformation utilities.
Platform Integration: Functions let you interact with QuivaWorks’ real-time streaming, storage, and data transformation capabilities directly from your flows.

Function Categories


Stream Functions

View Stream Functions Documentation

Detailed documentation for real-time streaming operations
Stream functions enable real-time, sequential data processing with low latency. Use streams for event sourcing, message queuing, and real-time data pipelines.
  • create-stream - Create a new stream in your account
  • publish-message-to-stream - Add a message to a stream
  • get-item-from-stream - Retrieve an item from a stream
  • search-stream-items - Search items by key and timestamp/offset
  • aggregate-stream-items - Aggregate items by key and timestamp/offset
  • list-streams - List all streams in your account
  • poison-pill-message-to-stream - Add poison pill message to stream

Key-Value Storage Functions

View Key-Value Storage Documentation

Detailed documentation for KV storage operations
Key-Value storage provides fast, simple data storage with key-based access. Perfect for configuration, caching, and state management.
  • create-key-value-bucket - Create a new Key/Value bucket
  • put-kv-item - Add an item to a bucket
  • get-kv-bucket-item - Retrieve an item by key
  • list-key-value-buckets - List all KV buckets
  • list-kv-bucket-items - List items in a bucket

Object Storage Functions

View Object Storage Documentation

Detailed documentation for object storage operations
Object storage handles large items like files, documents, and binary data. Use for document management, media storage, and backups.
  • create-object-store-bucket - Create a new object storage bucket
  • put-object-by-key - Add an object to a bucket
  • get-object-from-bucket - Retrieve an object by key
  • list-object-store-buckets - List all object buckets
  • list-object-keys - List objects in a bucket

Data Transformation Utilities

View Utility Functions Documentation

Detailed documentation for data transformation functions
Utility functions for common data operations like encoding, merging, grouping, and formatting.

Encoding & Formatting

  • base64-encode - Encode text or objects to base64 format
  • base64-decode - Decode base64 data (auto-parses JSON)
  • json-xml - Transform JSON to XML format
  • xml-json - Transform XML to JSON format

Data Operations

  • deep-merge-objects - Deeply merge objects recursively
  • merge-arrays - Merge multiple arrays into one
  • group-by - Group objects by a property
  • set-operations - Perform set operations (diff, union, intersection)

Templates & Mapping

  • handlebars - Use Handlebars for dynamic templates
  • mapping - JSON path mappings to restructure data

Platform & Integration

  • secret-key-get-node - Retrieve secret keys securely
  • function-invoke - Invoke other QuivaWorks functions programmatically
  • sftp - Upload files to SFTP servers

Specialized

  • multiply-large-numbers - Multiply very large numbers with precision

Quick Reference

By Use Case

Use Stream Functions when you need:
  • Event sourcing and processing
  • Message queuing systems
  • Real-time data pipelines
  • Sequential data processing
Example: Process customer events in real-time, aggregate analytics data, build notification systems.
Use Key-Value Storage when you need:
  • Quick data lookups by key
  • Configuration storage
  • Caching layer
  • Session management
Example: Store user preferences, cache API responses, maintain feature flags.
Use Object Storage when you need:
  • Store files, documents, media
  • Binary data storage
  • Document management
  • Backup and archival
Example: Store uploaded PDFs, images, reports, customer documents.
Use Utility Functions when you need:
  • Format or encode data
  • Merge or restructure objects
  • Group or organize data
  • Template generation
Example: Base64 encode files, merge user profiles, group orders by customer.
Use Integration Functions when you need:
  • Convert between JSON and XML
  • Upload files via SFTP
  • Parse SOAP API responses
  • Integrate with legacy systems
Example: Convert JSON to XML for SOAP APIs, upload reports to partner SFTP servers, parse XML responses.
Use function-invoke when you need:
  • Break complex logic into reusable functions
  • Chain multiple functions together
  • Create modular architectures
  • Trigger background tasks
Example: Validate data in one function, process in another, create reusable components.
Use secret-key-get-node when you need:
  • Access API keys securely
  • Retrieve database credentials
  • Get OAuth tokens
  • Never hardcode sensitive data
Example: Get Stripe API key, retrieve SFTP password, access third-party tokens.

All Functions Alphabetical

  • aggregate-stream-items - Aggregate stream items by key and time
  • base64-decode - Decode from base64 (auto-parses JSON)
  • base64-encode - Encode text or objects to base64
  • create-key-value-bucket - Create KV bucket
  • create-object-store-bucket - Create object bucket
  • create-stream - Create new stream
  • deep-merge-objects - Deeply merge objects
  • function-invoke - Invoke other QuivaWorks functions
  • get-item-from-stream - Get stream item
  • get-kv-bucket-item - Get KV item
  • get-object-from-bucket - Get object
  • group-by - Group objects by property
  • handlebars - Dynamic templates with Handlebars
  • json-xml - Transform JSON to XML
  • list-key-value-buckets - List KV buckets
  • list-kv-bucket-items - List items in KV bucket
  • list-object-keys - List objects by keys
  • list-object-store-buckets - List object buckets
  • list-streams - List all streams
  • mapping - JSON path data mapping
  • merge-arrays - Merge arrays
  • multiply-large-numbers - Multiply large numbers with precision
  • poison-pill-message-to-stream - Add poison pill to stream
  • publish-message-to-stream - Publish to stream
  • put-kv-item - Add KV item
  • put-object-by-key - Add object
  • search-stream-items - Search stream by key/time
  • secret-key-get-node - Retrieve secret key
  • set-operations - Set diff, union, intersection
  • sftp - Upload files to SFTP servers
  • xml-json - Transform XML to JSON

Function Count by Category

Stream Functions

7 functions for real-time data streaming

Key-Value Storage

5 functions for fast KV operations

Object Storage

5 functions for large file storage

Data Utilities

14 functions for transformation and integration

Recently Added Functions

New Functions Available:
  • xml-json - Parse XML responses from SOAP APIs and legacy systems
  • function-invoke - Build modular architectures with function orchestration
  • sftp - Upload files to partner SFTP servers with secure authentication
See the Data Transformation Utilities documentation for details.

Next Steps