> ## Documentation Index
> Fetch the complete documentation index at: https://docs.sigmora.org/llms.txt
> Use this file to discover all available pages before exploring further.

# A project and everything filed in it.

> Items are compact references — id, type, title, status, timestamp. Fetch the full
artifact through the capability that owns it.

Free.



## OpenAPI

````yaml /openapi.json get /v1/projects/{projectId}
openapi: 3.1.0
info:
  title: Sigmora API
  version: v1
  description: >-
    Whole pipelines as single calls: describe an object and get an animated 3D
    render;

    send raw footage and get an edited cut; hand over a transcript and get it
    captioned and

    dubbed with the cue timing intact.


    **Auth.** `Authorization: Bearer sk_live_...`. A key is bound to one
    workspace, so

    requests carry no tenant id. A session caller may instead name the workspace
    with an `x-workspace-slug` header.


    **Errors.** Every failure carries a stable `code` alongside its message.
    Branch on the

    code; the message is for humans.


    **Jobs.** Long-running work returns a job id, polled at `GET
    /v1/jobs/{jobId}` whatever

    produced it.


    **Projects.** Every call files its output in a project — the container
    holding the

    script, the footage, the renders and the thread that produced them. Pass
    `projectId`

    to choose one, or omit it and get a fresh project back in the response. The
    same

    containers appear in the dashboard, because it is the same API underneath.
servers:
  - url: https://api.sigmora.org
    description: Sigmora API
security:
  - apiKey: []
paths:
  /v1/projects/{projectId}:
    get:
      tags:
        - projects
      summary: A project and everything filed in it.
      description: >-
        Items are compact references — id, type, title, status, timestamp. Fetch
        the full

        artifact through the capability that owns it.


        Free.
      operationId: projects.get
      parameters:
        - name: projectId
          in: path
          required: true
          schema:
            type: string
      responses:
        '200':
          description: The project and its contents.
          content:
            application/json:
              schema:
                type: object
                required:
                  - success
                  - project
                  - items
                properties:
                  success:
                    type: boolean
                    enum:
                      - true
                  project:
                    type: object
                    required:
                      - id
                      - title
                      - kind
                      - status
                    properties:
                      id:
                        type: string
                      title:
                        type: string
                        description: >-
                          May be empty. A project created implicitly by a
                          capability call stays untitled until you name it —
                          attribution is never a precondition for doing work.
                      kind:
                        type: string
                        enum:
                          - video
                          - script
                          - footage
                          - blog
                          - campaign
                          - mixed
                      status:
                        type: string
                        enum:
                          - active
                          - archived
                      createdAt:
                        type: string
                        format: date-time
                      updatedAt:
                        type: string
                        format: date-time
                      lastActivityAt:
                        type: string
                        format: date-time
                      archivedAt:
                        type:
                          - string
                          - 'null'
                        format: date-time
                    additionalProperties: false
                  itemCount:
                    type: number
                  items:
                    type: array
                    items:
                      type: object
                      required:
                        - id
                        - type
                      properties:
                        id:
                          type: string
                        type:
                          type: string
                          enum:
                            - asset
                            - video_job
                            - script_job
                            - remix_job
                            - blog_draft
                            - product_video_job
                            - chat_thread
                            - publishing_queue_item
                        title:
                          type:
                            - string
                            - 'null'
                        status:
                          type:
                            - string
                            - 'null'
                        createdAt:
                          type:
                            - string
                            - 'null'
                          format: date-time
                      additionalProperties: false
                additionalProperties: false
        '401':
          description: '`unauthorized`.'
          content:
            application/json:
              schema:
                type: object
                required:
                  - success
                  - error
                  - code
                properties:
                  success:
                    type: boolean
                    enum:
                      - false
                  error:
                    type: string
                    description: >-
                      Human-readable. Wording may change between releases — do
                      not match on it.
                  code:
                    type: string
                    enum:
                      - invalid_request
                      - unauthorized
                      - forbidden
                      - origin_not_allowed
                      - not_found
                      - conflict
                      - payload_too_large
                      - insufficient_credits
                      - budget_capped
                      - rate_limited
                      - capability_unavailable
                      - upstream_unavailable
                      - upstream_error
                      - internal_error
                    description: Stable machine-readable cause. Branch on this.
                  details:
                    description: >-
                      Optional structured context, e.g. which field failed
                      validation.
        '403':
          description: '`forbidden` / `origin_not_allowed`.'
          content:
            application/json:
              schema:
                type: object
                required:
                  - success
                  - error
                  - code
                properties:
                  success:
                    type: boolean
                    enum:
                      - false
                  error:
                    type: string
                    description: >-
                      Human-readable. Wording may change between releases — do
                      not match on it.
                  code:
                    type: string
                    enum:
                      - invalid_request
                      - unauthorized
                      - forbidden
                      - origin_not_allowed
                      - not_found
                      - conflict
                      - payload_too_large
                      - insufficient_credits
                      - budget_capped
                      - rate_limited
                      - capability_unavailable
                      - upstream_unavailable
                      - upstream_error
                      - internal_error
                    description: Stable machine-readable cause. Branch on this.
                  details:
                    description: >-
                      Optional structured context, e.g. which field failed
                      validation.
        '404':
          description: '`not_found` — no such project, or not this workspace’s.'
          content:
            application/json:
              schema:
                type: object
                required:
                  - success
                  - error
                  - code
                properties:
                  success:
                    type: boolean
                    enum:
                      - false
                  error:
                    type: string
                    description: >-
                      Human-readable. Wording may change between releases — do
                      not match on it.
                  code:
                    type: string
                    enum:
                      - invalid_request
                      - unauthorized
                      - forbidden
                      - origin_not_allowed
                      - not_found
                      - conflict
                      - payload_too_large
                      - insufficient_credits
                      - budget_capped
                      - rate_limited
                      - capability_unavailable
                      - upstream_unavailable
                      - upstream_error
                      - internal_error
                    description: Stable machine-readable cause. Branch on this.
                  details:
                    description: >-
                      Optional structured context, e.g. which field failed
                      validation.
components:
  securitySchemes:
    apiKey:
      type: http
      scheme: bearer
      description: A workspace API key (`sk_live_...`), minted from workspace settings.

````