Skip to main content
The official Gumnut TypeScript SDK provides full type safety and works seamlessly in both Node.js and browser environments.

Installation

Quick Start

Location-based browsing

Once you’ve initialized a client, you can use the same location filters as the REST API to power map-style browsing.
Use either bbox or center + radius on client.assets.list(), not both. If a dense viewport returns 422 from client.assets.clusterByGeo(), increase cell_size or zoom in and retry. For the HTTP equivalents and filter details, see Pagination & Filtering and Map views with geo clusters.

Key Features

  • Full TypeScript Support: Complete type definitions for all API endpoints
  • Universal Compatibility: Works in Node.js 16+ and modern browsers
  • Automatic Retries: Built-in exponential backoff for failed requests
  • File Upload Helpers: Support for various file formats (File, Buffer, Stream)
  • Streaming Support: Handle large responses efficiently
  • Tree-shakeable: Optimized bundle size for frontend applications

File Upload Options

Multiple ways to upload files:

Configuration

Error Handling

Repository & Documentation

GitHub Repository: github.com/gumnut-ai/photos-sdk-typescript For complete API documentation, examples, and advanced usage:

Browser Usage

The SDK works in browsers with proper bundling:

Next Steps