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

# Add tags to project

> Add tags to a project for a deployment you have access to.

Any project tags that do not already exist for the deployment will be created automatically and associated with the project.



## OpenAPI

````yaml /public_v1.openapi.yaml put /api/v1/deployments/{deploymentSlug}/projects/{projectName}/tags
openapi: 3.0.3
info:
  description: >

    Welcome to Semgrep's portal for the Semgrep AppSec Platform web API.


    # Introduction

    Semgrep is a fast, open-source, static analysis tool for finding bugs and
    enforcing code standards at editor,

    commit, and CI time. [Get
    started.](https://semgrep.dev/docs/getting-started/)


    This API is documented in the **OpenAPI format**.


    # Authentication

    The API supports authentication with an API token with the "Web API"
    permission, without limited

    scopes of access.


    You can provision an API token [from the Settings
    page](https://semgrep.dev/orgs/-/settings/tokens).


    # Terms of Use


    Please note, the materials made available herein are subject to the

    [Semgrep Terms of Use](https://semgrep.dev/resources/website-terms/), and
    your

    access or use of any of the same is your acknowledgment and acceptance of
    the

    such terms.


    <br>


    ___
  title: Semgrep Web App
  version: 1.0.0
servers: []
security: []
tags:
  - description: >-
      Deployments encapsulate your organization's security organization, with
      multiple projects, policies, and integrations. As the root object of the
      organization, they're similarly the root object of the API.
    name: DeploymentsService
    x-displayName: Deployment
    x-group: Deployment
  - description: >-
      Manage and retrieve code, supply chain, and AI-powered scan findings from
      Semgrep scans
    name: FindingsService
    x-displayName: Code, Supply Chain, and AI-Powered Scan
    x-group: Code, Supply Chain, and AI-Powered Scan
  - description: Utility endpoints.
    name: MiscService
    x-displayName: Other
    x-group: Other
  - description: >-
      View and manage the Policies of your organization.


      Deployments on the Unified Policies model use the [Policies V2
      API](/api/v2/docs/#tag/PoliciesV2Service) instead; this service stops
      working after the migration.
    name: PoliciesService
    x-displayName: Policies
    x-group: Policies
  - name: ProjectsService
    x-displayName: Projects
    x-group: Projects
  - description: View details of scans associated with projects in your organization.
    name: ScansService
    x-displayName: Scans
    x-group: Scans
  - description: View and manage the Secrets of your organization.
    name: SecretsService
    x-displayName: Secrets
    x-group: Secrets
  - description: |-
      Manage the Supply Chain findings and dependencies of your organization.

      A request body is required, but may be an empty object.
    name: SupplyChainService
    x-displayName: Supply Chain
    x-group: Supply Chain
  - description: Create and manage external tickets
    name: TicketingService
    x-displayName: Ticketing
    x-group: Ticketing
  - description: View and manage the triage of your organization.
    name: TriageService
    x-displayName: Triage
    x-group: Triage
paths:
  /api/v1/deployments/{deploymentSlug}/projects/{projectName}/tags:
    put:
      tags:
        - ProjectsService
      summary: Add tags to project
      description: >-
        Add tags to a project for a deployment you have access to.


        Any project tags that do not already exist for the deployment will be
        created automatically and associated with the project.
      operationId: ProjectsService_AddProjectTags
      parameters:
        - in: path
          name: deploymentSlug
          required: true
          schema:
            description: >-
              Slug of the deployment name. Can be found at `/deployments`, or in
              your Settings in the web UI.
            example: your-deployment
            type: string
        - in: path
          name: projectName
          required: true
          schema:
            description: Name of the project, typically the repository formatted as a path.
            example: organization/project
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/protos.openapi.v1.AddProjectTagsRequest'
        required: true
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/protos.openapi.v1.AddProjectTagsResponse'
          description: OK
      security:
        - SemgrepWebToken: []
components:
  schemas:
    protos.openapi.v1.AddProjectTagsRequest:
      example:
        - tag
      properties:
        deploymentSlug:
          description: >-
            Slug of the deployment name. Can be found at `/deployments`, or in
            your Settings in the web UI.
          example: your-deployment
          type: string
        projectName:
          description: Name of the project, typically the repository formatted as a path.
          example: organization/project
          type: string
        tags:
          example:
            - tag
          items:
            type: string
          type: array
      required:
        - deployment_slug
        - project_name
      title: Add Project Tags Request
      type: object
    protos.openapi.v1.AddProjectTagsResponse:
      description: Successfully added tags to project.
      properties:
        project:
          $ref: '#/components/schemas/protos.openapi.v1.Project'
      required:
        - projects
      title: Add Project Tags Response
      type: object
    protos.openapi.v1.Project:
      description: A project in your organization that uses Semgrep.
      properties:
        created_at:
          description: Time when this project was created.
          example: '2020-11-18T23:28:12.391Z'
          type: string
        default_branch:
          description: The default branch in the SCM.
          example: refs/heads/main
          type: string
        id:
          description: Unique ID of this project.
          example: 1234567
          format: int64
          type: number
        latest_scan_at:
          description: Time of latest scan, if there is one.
          example: '2023-01-13T20:51:51.449Z'
          type: string
        managed_scan_config:
          $ref: '#/components/schemas/protos.openapi.v1.ManagedScanConfig'
        name:
          description: Name of the project.
          example: returntocorp/semgrep
          type: string
        primary_branch:
          description: The primary branch of the project, if known.
          example: refs/heads/custom-main
          type: string
        tags:
          description: Tags associated to this project.
          example:
            - tag
          items:
            type: string
          type: string
        url:
          description: URL of the project, if there is one.
          example: https://github.com/returntocorp/semgrep
          type: string
      required:
        - id
        - name
        - tags
      title: Project
      type: object
    protos.openapi.v1.ManagedScanConfig:
      description: >-
        [Beta] Configuration of Semgrep Managed Scans for the project, if
        relevant.
      properties:
        diff_scan:
          $ref: '#/components/schemas/protos.openapi.v1.DiffScan'
        full_scan:
          $ref: '#/components/schemas/protos.openapi.v1.FullScan'
      title: Managed Scan Config
      type: object
    protos.openapi.v1.DiffScan:
      properties:
        enabled:
          description: When true, diff-aware scans are enabled for the project.
          type: boolean
      type: object
    protos.openapi.v1.FullScan:
      properties:
        enabled:
          description: When true, weekly full scans are enabled.
          type: boolean
      type: object
  securitySchemes:
    SemgrepWebToken:
      bearerFormat: string
      description: >-
        Get access to data with your API token. Example header:


        `Authorization: Bearer
        2991e2fb4b540fe75b8f90677b0b892b6314e4961cb001fe6eb452eee248a628`


        The token can be provisioned from the Tokens section in your Settings,
        and requires explicitly enabling `Web API` access.
      scheme: bearer
      type: http

````