Skip to main content

Overview

The Memories surface is the event-scoped photo and video API. Endpoints are grouped by use: All endpoints require an X-API-Key header — see Conventions for the shared response envelope and identifier rules. The consumer-facing endpoints surface four 9Pic AI products:

Browse Photos

Render the full event gallery or jump to a specific image without filtering by BIB or selfie.

All Photos

GET /event/{event_id}/images — full paginated photo gallery for an event, ordered by capture timestamp.

Image Details

GET /event/{event_id}/images/{image_id} — one photo and its curated metadata by image ID.

Photo Timeline

GET /event/{event_id}/timeline/days and GET /event/{event_id}/timeline/images — browse photos by capture time with day/hour buckets and windowed pagination.
Participant discovery by BIB number (9Pic BibTrack) or selfie (9Pic FaceFind).

BIB Search

GET /event/{event_id}/bibs/{bib} — photos tagged with a participant’s BIB number.

Face Search

POST /event/{event_id}/faces — upload a selfie and get matching photos. Reuse the returned request_id for cached pagination and downloads.

Video

Personalised video clips powered by 9Pic Motion.

Video Clipping Search

POST /event/{event_id}/video-clipping/search-by-selfie — async pipeline that returns short MP4 clips of moments where the participant appears.

Downloads

Presigned URLs for original (unwatermarked) files — the download side of 9Pic Stamp.

Download Originals

POST /event/{event_id}/original-photos — presigned URLs keyed by BIB, selfie request_id, single image_id, or a list of image IDs.

Pipeline (photos)

Organiser-side import → process → publish workflow. Trigger stages, then poll status until each completes.

Pipeline Status

GET /event/{event_id}/pipeline/photos/status — poll import, processing, and go-live stage status.

Import Photos

POST /event/{event_id}/pipeline/photos/import — import photos from configured sources (step 1).

Process Photos

POST /event/{event_id}/pipeline/photos/process — run AI processing (step 2).

Go Live

POST /event/{event_id}/pipeline/photos/go-live — publish processed photos to the public gallery (step 3).

Participant-facing app

  1. Confirm the event has the right discovery features enabled with Event Details.
  2. Render the gallery with All Photos, or time-based discovery with Photo Timeline.
  3. Offer BIB Search (9Pic BibTrack) for runners who know their bib, and Face Search (9Pic FaceFind) for selfie-based discovery.
  4. Optionally start Video Clipping Search (9Pic Motion) using the same request_id returned by Face Search to power photo and video discovery from a single selfie upload.
  5. When the participant is ready to download, hand the request_id (with method: "selfie") or BIB number (with method: "bib") to Download Originals.

Pipeline (organiser automation)

  1. Import to import from configured sources.
  2. Poll Pipeline Status until import is complete.
  3. Process to run watermarking, BIB detection, and face indexing.
  4. Poll until processing is complete, then Go Live to publish.
  5. Poll until go-live is complete (is_live: true) before relying on browse, search, or download endpoints.