Create a scan of a space created through the API

Declares what will be uploaded (frames with their timestamps, or one video), the language of the report (en, it, es, fr, de, pt, nl; the narration can be in any language) and the optional transcript. The response says how to upload in upload; then call POST /scans/{id}/start. A live scan needs a card on file, asked here, before any upload link: 402 PAYMENT_METHOD_REQUIRED (added in the console, nothing charged), 503 PAYMENTS_UNAVAILABLE where payments are not configured; the same rule as the start. A test scan never needs one; its uploads go through the API (a video of at most 95 MiB) and are counted, never stored. The same Idempotency-Key returns the same scan. An account creates at most 500 scans a day in each mode (by default, test keys included; a replay does not count): past that, 429 RATE_LIMIT_EXCEEDED with Retry-After (seconds to midnight UTC). An account holds at most 20 scans created and not started (both modes): past that, 429 SCANS_IN_PROGRESS (max_open_scans) until some are started or cancelled. A test scan keeps only whether it had a transcript, never its text (its result is the demo). Needs scans:write.

post/spaces/{id}/scans

Request

  • Base URL: https://api.spacecontext.app/v1
  • URL: https://api.spacecontext.app/v1/spaces/{id}/scans
  • Auth: HTTP bearer

Path parameters

idstring required

Headers

Idempotency-Keystring

Request body

Response

The scan created with this Idempotency-Key

object'scan' required
idstring required
space_idstring required
livemodeboolean required
status'awaiting_upload' | 'queued' | 'processing' | 'complete' | 'failed' | 'cancelled' required
stage'ingesting' | 'screening' | 'observing' | 'fusing' | 'enriching' | 'saving' | 'verifying' | 'null' nullable required
created_atstring date-time nullable required
started_atstring date-time nullable required
completed_atstring date-time nullable required

Changes

No recorded changes to this operation across all 1 revision of this API.