API referenceProjects

Read a project’s sources and transcripts

What the project was grounded in and what was said in it.

Each source reports its state and, when something went wrong, the reason in words — the read half of transcription, without which a caller can start work it cannot observe. Transcripts come back as timed SEGMENTS rather than words: a quote and a clip window are the same object, and words are 180 KB nobody can hold. Free.

GET
/projects/{id}/sources

Authorization

bearerAuth
AuthorizationBearer <token>

Typecut API key. Generate one in app.typecut.ai → Settings → API keys. Send as Authorization: Bearer tc_live_….

In: header

Path Parameters

id*string
Formatuuid

Query Parameters

source_id?string
Formatuuid
from_sec?number
Range0 <= value
to_sec?number
Range0 <= value
limit?integer
Range1 <= value <= 500
include_text?boolean

Response Body

application/json

application/json

application/json

curl -X GET "https://example.com/projects/497f6eca-6276-4993-bfeb-53cbbbba6f08/sources"
{
  "data": {
    "project_id": "405d8375-3514-403b-8c43-83ae74cfe0e9",
    "sources": [
      {
        "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
        "kind": "string",
        "role": "string",
        "url": "string",
        "title": "string",
        "status": "string",
        "usable": true,
        "reason": "string",
        "completeness": "string",
        "via": "string",
        "chars": 0,
        "duration_sec": 0,
        "language": "string",
        "timed": true,
        "segments": [
          {
            "index": 0,
            "startSec": 0,
            "endSec": 0,
            "text": "string"
          }
        ],
        "segments_total": 0,
        "text": "string"
      }
    ]
  }
}
{
  "error": {
    "type": "string",
    "code": "string",
    "message": "string"
  }
}
{
  "error": {
    "type": "string",
    "code": "string",
    "message": "string"
  }
}