Platform

Your footage becomes programmable.

Every UI action has a REST path — Aperture ships the same API the interface uses. API tokens, HMAC-signed webhooks, rules, audit export, usage metering, SSE events. And when a suite needs the timeline, hand it over in EDL, FCPXML, or OTIO.

The whole loop, machine-callable.

Ingest, transcribe, search, edit, render, share, approve — each step is an endpoint under /v1/*, documented as OpenAPI 3.1 with interactive docs at /docs — 48 documented paths, rate limits published. Every endpoint takes a Bearer token an admin can issue and revoke in seconds.

01
API tokens, not passwords

Machine clients get apt_… Bearer tokens. Admin-managed: create, scope, revoke from the admin panel — no shared logins in your pipeline.

02
Rules: event → action

Asset ingested? Transcribe it, tag it, file it into a collection. Rules match on dotted event paths (data.kind, subject.type…), with a dry-run test and a one-click test-fire that publishes a real event — from the API or the admin UI.

03
Signed webhooks

Render done, review posted, asset ready — webhooks dispatch HMAC-SHA256-signed payloads with bounded retries, a full delivery log, replay, and one-call secret rotation. Your systems act, not poll.

04
Audit + metering

Every mutation recorded: actor, action, subject, IP, trace id. Export NDJSON or CSV for compliance; usage dimensions flow to the metering API.

Platform primitives

Boring plumbing, done properly.

  • Multi-tenancy with RLS

    Tenant-scoped row-level security on every table. Shared library per tenant; sequence ownership by creator; admins see all.

  • OIDC SSO

    Bearer JWTs from your identity provider are accepted and auto-provision editor accounts. Keycloak-ready.

  • SSE event stream

    Notifications — share created, review posted, render done — over server-sent events and the bell center. Unread state included.

  • Ops you can watch

    /metrics exposes Prometheus gauges (HTTP classes, latency, disk). Nightly backups at 03:00 UTC — pg_dump with 7-day retention plus a MinIO mirror, restore-drilled. Disk guard: ingest answers 507 below the storage floor (2 GB default).

  • Resumable growing uploads

    Chunked upload sessions with append, status, and finalize — camera-to-cloud-class ingest through the API, on your server.

  • Interchange: EDL / FCPXML / OTIO

    CMX3600 EDL, FCPXML 1.11, OTIO, and project JSON — leave for Resolve, Premiere, or Pro Tools whenever the job demands it.

Automate the boring 80 percent.

  • Ingest lands → rules transcribe, auto-tag, and file it into the right collection
  • Render finishes → signed webhook wakes your delivery pipeline
  • Guest link created → audit entry, notification, and your Slack via webhook
  • Storage and render usage → metering API for invoicing
  • Color suite needs the cut → EDL or OTIO out, no re-conform
  • Webhook missed? Replay it from the delivery log — every attempt logged, HMAC-verified

"Your media pipeline, programmable — on your own server."

— Aperture, API-first by design

Ship the pipeline,
skip the glue code.

Tokens, rules, webhooks, audit — every plan talks to the same API the UI uses.