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

# List projects

> Returns every project the authenticated user owns or has been added to as a member.



## OpenAPI

````yaml /api-reference/dashboard-openapi.json get /api/projects/
openapi: 3.0.3
info:
  title: Photon Dashboard API
  version: 0.1.0
  description: >-
    Authenticated REST API for the Photon Dashboard. Used by the web app and the
    `photon` CLI. Only the public-surface endpoints are listed here today.
servers:
  - url: https://app.photon.codes
security: []
tags:
  - name: Projects
    description: Project CRUD and Spectrum credentials.
  - name: Device login
    description: RFC 8628 device authorization flow used by the CLI.
paths:
  /api/projects/:
    get:
      tags:
        - Projects
      summary: List projects
      description: >-
        Returns every project the authenticated user owns or has been added to
        as a member.
      operationId: listProjects
      responses:
        '200':
          description: Projects accessible to the caller.
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/Project'
        '401':
          description: Missing or invalid access token.
      security:
        - bearerAuth: []
components:
  schemas:
    Project:
      type: object
      properties:
        id:
          type: string
          format: uuid
        name:
          type: string
        location:
          type: string
          example: United States
        status:
          type: string
          example: running
        spectrum:
          type: boolean
        spectrumProjectId:
          type: string
          nullable: true
          description: >-
            Spectrum project id. Use as the `projectId` half of HTTP Basic auth
            against the Spectrum API.
        projectSecret:
          type: string
          nullable: true
          description: >-
            Spectrum project secret. Use as the `projectSecret` half of HTTP
            Basic auth against the Spectrum API. Returned only to project owners
            and members.
        template:
          type: boolean
        observability:
          type: boolean
        userId:
          type: string
        createdAt:
          type: string
          format: date-time
        updatedAt:
          type: string
          format: date-time
      required:
        - id
        - name
        - location
        - status
        - spectrum
        - template
        - observability
        - userId
        - createdAt
        - updatedAt
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
      description: Access token obtained via the device login flow.

````