---
title: "Inspect source file hashes or read one file; download the full source through GET source"
method: GET
path: "/projects/{projectId}/source/files"
tags: ["Creative Source"]
---

# Inspect source file hashes or read one file; download the full source through GET source

`GET /projects/{projectId}/source/files`

## Request

- Base URL: `https://blitzreels.com/api/v1`
- URL: `https://blitzreels.com/api/v1/projects/{projectId}/source/files`
- Auth: API key in header `Authorization`

Inspect source file hashes or read one file; download the full source through GET source.

## Path parameters

- `projectId` string, uuid, required

## Query parameters

- `revision` integer, nullable
- `path` string, nullable

## Response `200`

Successful response

- object
  - `id` string, uuid, required
  - `projectId` string, uuid, required
  - `revision` integer, required
  - `sourceHash` string, required
  - `entrypoint` string, required
  - `fileCount` integer, required
  - `createdAt` string, required
  - `files` object[], required
    - `path` string, required
    - `bytes` number, required
    - `hash` string, required
  - `assets` object[], nullable, required
    - `path` string, required
    - `hash` string, required
    - `bytes` integer, required
    - `remoteUrl` string, uri, nullable, required
    - `assetId` string, uuid, required: Existing workspace media asset. Bytes and SHA-256 must match this immutable source binding.
  - `file` object, nullable, required
    - `path` string, required
    - `content` string, required
  - `bounds` object, required
    - `limit` number, required
    - `offset` number, required
    - `total` number, required
    - `returned` number, required
    - `hasMore` boolean, required
    - `truncated` boolean, required
  - `controls` object, nullable, required
    - `file` string, ends_with, required
    - `fields` union[], required
      - union
        - object
          - `key` string, required
          - `label` string, required
          - `type` 'text', required
          - `maxLength` integer, required
        - object
          - `key` string, required
          - `label` string, required
          - `type` 'color', required
        - object
          - `key` string, required
          - `label` string, required
          - `type` 'media', required
        - object
          - `key` string, required
          - `label` string, required
          - `type` 'timing', required
          - `min` number, required
          - `max` number, required
          - `step` number, required
  - `controlValues` object, required
  - `download` object, required
    - `path` string, required
    - `revision` number, required

## Other responses

- `400`: Invalid input data
- `401`: Authorization not provided
- `403`: Insufficient access
- `404`: Not found
- `500`: Internal server error

## Changes

- **2026-10-19** `35608b12471d`: 1 info
  - added the required property `assets` to the response with the `200` status

[Operation history](https://skmtc.dev/blitzreels/apis/blitzreels-api/changes/projects/:projectId/source/files/get.md)

---

[API](https://skmtc.dev/blitzreels/apis/blitzreels-api.md) · [All operations](https://skmtc.dev/blitzreels/apis/blitzreels-api/llms.txt) · [OpenAPI document](https://skmtc.dev/blitzreels/apis/blitzreels-api/revisions/35608b12471d?raw)
