fotante
For developers & builders · API access coming soon

Media storage & AI —
as an API.

Upload, AI-tag, deduplicate, and search media without building your own pipeline. A single REST API that combines storage, analysis, and search — usage-billed via Stripe Meters. No pre-pay. No minimums. No reinventing the wheel.

Free tier — 10 GB storage · 500 analyses · 100k requests/mo · 25 GB egress · No credit card

example.ts
// Upload a file and get AI analysis back in one call
const result = await fotante.upload({
  file: imageBuffer,
  filename: "photo.heic",
  analyse: true,
});

// result.analysis contains:
// { tags, quality, faces, gps, duplicateOf }

$0

Free to start

100k

Free requests / mo

10

API keys per account

6

API capabilities

60+

File formats

< 1s

Duplicate detection

Built for

Who builds with the Fotante API?

⚙️

Indie developers & SaaS builders

Need media storage, processing, and search in your app without building it yourself? Use our API instead of assembling S3 + Rekognition + Typesense.

📱

Mobile app developers

Build on top of Fotante's existing user data — photo libraries, face groups, trips, and collections — via scoped API keys.

🔁

Data engineers running batch pipelines

Batch-upload large archives, run quality analysis, extract metadata, and query results — all via the CLI or REST API.

API capabilities

Everything media — in one API

↑

File upload & storage

Upload any media format. Files are stored with global CDN delivery. HEIC, RAW, ProRes — all processed transparently.

POST /v1/files

✦

AI analysis

Quality scoring (sharpness, exposure, noise), semantic tags, caption generation, and face detection — per file or in batch.

POST /v1/files/:id/analyse

⊛

Duplicate detection

Check any file against your library for perceptual duplicates before or after upload. Returns matches with a similarity score.

GET /v1/files/:id/duplicates

🔍

Semantic search

Natural language and tag-based search across your library. "sunset in Norway" returns the right photos — no manual tagging.

GET /v1/search?q=…

⊕

GPS & metadata

Read and write EXIF metadata, geocode locations, and correct GPS data on any file in your library via API.

PATCH /v1/files/:id/metadata

🔑

API key management

Create scoped API keys with per-endpoint permissions. Set spending caps per key to prevent runaway usage costs.

POST /v1/api-keys

CLI tool

fotante — a CLI for your media pipelines

The Fotante CLI wraps the full API in a simple shell interface. Install from npm or Homebrew, authenticate once, and pipe media through any workflow — from CI jobs to batch scripts to cron tasks.

  • ✓Install from npm or Homebrew
  • ✓fotante upload — batch upload with progress bar
  • ✓fotante analyze — trigger AI analysis on any file or folder
  • ✓fotante search — query your library from the terminal
  • ✓fotante export — download filtered results as ZIP
  • ✓Pipe-friendly output — JSON mode for scripting
Terminal
$ npm install -g fotante
$ fotante login
✓ Authenticated

$ fotante upload ./shoot/*.CR3
↑ Uploading 247 files...
✓ 247 files processed

$ fotante analyze --quality --tags
⚡ Analysing 247 photos...
✓ Done in 3.4s

Pricing

Pay for what you use. Nothing more.

Generous free tier to get started. Usage-based billing via Stripe Meters — no pre-pay, no minimums.

Free tier

$0
  • ✓Storage10 GB
  • ✓AI analyses500 / mo
  • ✓API requests100,000 / mo
  • ✓Egress25 GB / mo
  • ✓API keys3 keys
Get free access →

Usage-based

Stripe Meters

Billed monthly based on actual usage. Invoices generated automatically by Stripe — no manual tracking, no surprise bills.

Storage$0.010 / GB / mo
AI analysis$0.002 / call
API requests (over 100k)$0.10 / 1k
Egress (over 25 GB)$0.015 / GB
Request paid access →
Usage events are reported to Stripe in real time. Monthly invoices are generated automatically. You can set spending caps per API key from the developer dashboard to prevent surprises.

vs the alternatives

Why not Cloudinary or imgix?

CapabilityFotanteCloudinaryimgix
HEIC / RAW format ingest✓——
AI quality scoring✓——
Semantic search (natural language)✓——
Duplicate detection API✓——
Face detection & clustering✓✓—
Image transformation CDN—✓✓
GPS metadata read/write✓——
C2PA provenance signing✓——
Usage-billed (no pre-pay)✓✓✓
CLI tool✓✓—
Free tier (no card)✓✓—
Live · Pro, Max and Developer

C2PA content authenticity signing

Still images ingested on Pro, Max and Developer plans are signed at ingest with a C2PA Content Credential. Backed by Adobe, Google, Microsoft and the BBC — a chain of custody from upload to storage, readable via API. Custody, not capture: Fotante witnesses an upload, never a shutter.

🔏

Signed at ingest

Still images on Pro, Max and Developer plans get a C2PA manifest signed over the bytes as stored — a detached sidecar, so the original is never rewritten.

🌐

Industry-backed standard

C2PA is backed by Adobe, Google, Microsoft, BBC, and the CAI coalition.

🔗

Custody, stated honestly

The manifest records what we received and when. It makes no claim about capture, edits or AI involvement — camera details from EXIF ride along marked unverified.

⚡

Available via API

Read the manifest and the full provenance record via GET /v1/media/:id/provenance.

Stop building media
infrastructure from scratch

Free tier, no credit card. 10 GB storage and 500 analyses to get started.

Request API access →