---
title: "Add labels to an issue"
method: POST
path: "/repos/{owner}/{repo}/issues/{issue_number}/labels"
tags: ["issues"]
---

# Add labels to an issue

`POST /repos/{owner}/{repo}/issues/{issue_number}/labels`

Adds labels to an issue.

## Path parameters

- `owner` string, required
- `repo` string, required
- `issue_number` integer, required

## Request body

- union
  - object
    - `labels` union[] — The labels to add to the issue's existing labels. You can also pass an `array` of labels directly, but GitHub recommends passing an object with the `labels` key. To replace all of the labels for an issue, use "[Set labels for an issue](https://docs.github.com/rest/issues/labels#set-labels-for-an-issue)."
      - union
        - string
        - object
          - `name` string, required — The name of the label to add.
          - `rationale` string — Optional reasoning for adding this label.
          - `suggest` boolean — If `true`, the label is stored as a pending suggestion for human review rather than applied directly.
          - `confidence` 'low' | 'medium' | 'high' — The confidence level for this label choice.
  - string[]
  - object[]
    - `name` string, required
    - `rationale` string — Optional reasoning for adding this label.
    - `suggest` boolean — If `true`, the label is stored as a pending suggestion for human review rather than applied directly.
    - `confidence` 'low' | 'medium' | 'high' — The confidence level for this label choice.

## Response `200`

Response

- Label[]
  - `id` integer, required — Unique identifier for the label.
  - `node_id` string, required
  - `url` string, uri, required — URL for the label
  - `name` string, required — The name of the label.
  - `description` string, nullable, required — Optional description of the label, such as its purpose.
  - `color` string, required — 6-character hex code, without the leading #, identifying the color
  - `default` boolean, required — Whether this label comes by default in a new repository.

## Other responses

- `301` — Moved permanently
- `404` — Resource not found
- `410` — Gone
- `422` — Validation failed, or the endpoint has been spammed.

---

[API](https://skmtc.net/github/apis/github-v3-rest-api.md) · [All operations](https://skmtc.net/github/apis/github-v3-rest-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/github/github-v3-rest-api/versions/a367f7028301/schema)
