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

# Update Project

> Updates a single project. The project to be updated is identified by its `id`.



## OpenAPI

````yaml PATCH /projects/{id}
openapi: 3.1.0
info:
  title: Teleskop API
  version: 1.0.0
  contact:
    name: Teleskop Support
    url: https://teleskop.app/help
    email: support@teleskop.app
servers:
  - url: https://api.teleskop.dev
    description: Production
security:
  - x-api-key: []
tags: []
paths:
  /projects/{id}:
    patch:
      tags:
        - Projects
      summary: Update Project
      description: >-
        Updates a single project. The project to be updated is identified by its
        `id`.
      parameters:
        - name: id
          required: true
          in: path
          schema:
            type: string
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/UpdateProjectDto'
      responses:
        '200':
          description: Project updated successfully
          content:
            application/json:
              schema:
                allOf:
                  - $ref: '#/components/schemas/ApiResponseDto'
                  - properties:
                      data:
                        $ref: '#/components/schemas/ProjectDto'
                        nullable: true
      security:
        - x-api-key: []
components:
  schemas:
    UpdateProjectDto:
      type: object
      properties: {}
    ApiResponseDto:
      type: object
      properties:
        status:
          type: string
          enum:
            - success
            - error
          example: success
          description: Response status
        statusCode:
          type: number
          example: 200
          description: HTTP status code
        data:
          type: object
          description: Response data
          nullable: true
        message:
          type: string
          example: Request successful
          description: Response message
        metadata:
          type: object
          description: Additional metadata
          nullable: true
      required:
        - status
        - statusCode
        - data
        - message
    ProjectDto:
      type: object
      properties:
        name:
          type: string
          example: Turkish Airlines
          description: Display name of the project
        languages:
          example:
            - tr
            - en
          description: Selected languages for this project
          type: array
          items:
            type: string
        channels:
          example:
            - news
            - twitter
          description: Selected channels for this project
          type: array
          items:
            type: string
        keywords:
          description: >-
            Array of keyword objects, each containing main_keyword,
            required_keywords, and excluded_keywords.
          type: array
          items:
            $ref: '#/components/schemas/KeywordDto'
        members_ids:
          default: []
          type: array
          items:
            type: string
        id:
          type: string
          example: c0bb3b48-60eb-4afe-a229-3207e7ad800a
          description: Project ID
        keywords_count:
          type: number
          example: 1
          description: Keywords count of the project
        creator_id:
          type: object
          example: a76ea981-f007-44e6-b4d7-2dbdc61ce338
          description: Creator ID
        workspace_id:
          type: object
          example: 2cca4ace-63a0-41f0-a73f-0b8abe2909a5
          description: Workspace ID
        workspace_name:
          type: object
          example: My Organization
          description: Name of the workspace
        created_at:
          format: date-time
          type: string
          example: '2025-07-29T13:37:12.547Z'
          description: Creator ID
        updated_at:
          format: date-time
          type: string
          example: '2025-07-29T13:37:12.547Z'
          description: Creator ID
      required:
        - name
        - languages
        - channels
        - keywords
        - id
        - keywords_count
        - creator_id
        - workspace_id
        - workspace_name
        - created_at
        - updated_at
    KeywordDto:
      type: object
      properties:
        id:
          type: string
          example: c167d51e-7249-4430-a13e-043eab185b58
        main_keyword:
          type: string
          example: Turkish Airlines
          description: The main keyword (minimum length 3).
        required_keywords:
          example:
            - Istanbul Airport
          description: Array of required keywords (minimum length per item 3).
          type: array
          items:
            type: string
        excluded_keywords:
          example:
            - Sabiha Gökçen
          description: Array of excluded keywords (minimum length per item 3).
          type: array
          items:
            type: string
      required:
        - main_keyword
        - required_keywords
        - excluded_keywords
  securitySchemes:
    x-api-key:
      type: apiKey
      in: header
      name: x-api-key
      description: API Key for authentication

````