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

# Get a project by id

> Get a project by id



## OpenAPI

````yaml get /projects/{id}
openapi: 3.0.0
info:
  title: OST API
  description: OST API endpoints
  version: '0.1'
  contact: {}
servers:
  - url: https://api.opensource-together.com
    description: Backend server
security: []
tags:
  - name: ost
    description: ''
paths:
  /projects/{id}:
    get:
      tags:
        - Project
      summary: Get a project by id
      description: Get a project by id
      operationId: ProjectController_findOne
      parameters:
        - name: id
          required: true
          in: path
          description: Public ID of the project
          schema:
            type: string
      responses:
        '200':
          description: Project found
          content:
            application/json:
              schema:
                type: object
                properties:
                  data:
                    $ref: '#/components/schemas/ProjectEntity'
                  timestamp:
                    type: string
                    format: date-time
                    example: '2025-09-03T13:04:43.353Z'
                required:
                  - data
                  - timestamp
        '404':
          description: Project not found
          content:
            application/json:
              schema:
                type: object
                properties:
                  error:
                    type: object
                    properties:
                      message:
                        type: string
                      code:
                        type: string
                      details:
                        type: object
                  timestamp:
                    type: string
                    format: date-time
components:
  schemas:
    ProjectEntity:
      type: object
      properties:
        id:
          type: string
          pattern: ^pjt_[0-9a-fA-F]{32}$
          example: pjt_c54b633eb12f4900b92b34e222096449
        title:
          type: string
          example: My Awesome Project
        description:
          type: string
          nullable: true
          example: A revolutionary web application
        repoUrl:
          type: string
          nullable: true
          example: https://github.com/username/repository
        provider:
          type: string
          enum:
            - GITHUB
            - GITLAB
          example: GITHUB
        image:
          type: string
          nullable: true
          example: https://example.com/image.jpg
        logoUrl:
          type: string
          nullable: true
          example: https://example.com/logo.png
        published:
          type: boolean
          example: true
          description: Whether the project is published and visible to public
        trending:
          type: boolean
          example: true
          description: Whether the project is marked as trending
        githubUrl:
          type: string
          nullable: true
          example: https://github.com/username/repository
        gitlabUrl:
          type: string
          nullable: true
          example: https://gitlab.com/username/repository
        twitterUrl:
          type: string
          nullable: true
          example: https://twitter.com/username
        linkedinUrl:
          type: string
          nullable: true
          example: https://linkedin.com/in/username
        discordUrl:
          type: string
          nullable: true
          example: https://discord.gg/server
        websiteUrl:
          type: string
          nullable: true
          example: https://example.com
        imagesUrls:
          description: Additional project images (max 5)
          type: array
          items:
            type: string
        projectTechStacks:
          description: Project tech stacks (max 10)
          type: array
          items:
            $ref: '#/components/schemas/TechStackEntity'
        projectCategories:
          description: Project categories
          type: array
          items:
            $ref: '#/components/schemas/CategoryEntity'
      required:
        - id
        - title
        - description
        - repoUrl
        - provider
        - image
        - logoUrl
        - published
        - trending
        - githubUrl
        - gitlabUrl
        - twitterUrl
        - linkedinUrl
        - discordUrl
        - websiteUrl
    TechStackEntity:
      type: object
      properties:
        id:
          type: string
          pattern: ^tst_[0-9a-fA-F]{32}$
          example: tst_c54b633eb12f4900b92b34e222096449
        name:
          type: string
          example: React
        iconUrl:
          type: string
          example: >-
            https://cdn.jsdelivr.net/gh/devicons/devicon@latest/icons/react/react-original.svg
        type:
          type: string
          enum:
            - TECH
            - LANGUAGE
          example: TECH
      required:
        - id
        - name
        - iconUrl
        - type
    CategoryEntity:
      type: object
      properties:
        id:
          type: string
          pattern: ^cat_[0-9a-fA-F]{32}$
          example: cat_c54b633eb12f4900b92b34e222096449
        name:
          type: string
          example: API & Microservices
      required:
        - id
        - name

````