List all work item comments
curl --request GET \
--url https://api.plane.so/api/v1/workspaces/{workspace_slug}/projects/{project_id}/work-items/{work_item_id}/comments/ \
--header 'x-api-key: <api-key>'import requests
url = "https://api.plane.so/api/v1/workspaces/{workspace_slug}/projects/{project_id}/work-items/{work_item_id}/comments/"
headers = {"x-api-key": "<api-key>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {'x-api-key': '<api-key>'}};
fetch('https://api.plane.so/api/v1/workspaces/{workspace_slug}/projects/{project_id}/work-items/{work_item_id}/comments/', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.plane.so/api/v1/workspaces/{workspace_slug}/projects/{project_id}/work-items/{work_item_id}/comments/",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"x-api-key: <api-key>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://api.plane.so/api/v1/workspaces/{workspace_slug}/projects/{project_id}/work-items/{work_item_id}/comments/"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("x-api-key", "<api-key>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://api.plane.so/api/v1/workspaces/{workspace_slug}/projects/{project_id}/work-items/{work_item_id}/comments/")
.header("x-api-key", "<api-key>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.plane.so/api/v1/workspaces/{workspace_slug}/projects/{project_id}/work-items/{work_item_id}/comments/")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["x-api-key"] = '<api-key>'
response = http.request(request)
puts response.read_bodyWork Item Comments
List all work item comments
Returns a list of all comments on a work item, ordered chronologically.
GET
/
api
/
v1
/
workspaces
/
{workspace_slug}
/
projects
/
{project_id}
/
work-items
/
{work_item_id}
/
comments
/
List all work item comments
curl --request GET \
--url https://api.plane.so/api/v1/workspaces/{workspace_slug}/projects/{project_id}/work-items/{work_item_id}/comments/ \
--header 'x-api-key: <api-key>'import requests
url = "https://api.plane.so/api/v1/workspaces/{workspace_slug}/projects/{project_id}/work-items/{work_item_id}/comments/"
headers = {"x-api-key": "<api-key>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {'x-api-key': '<api-key>'}};
fetch('https://api.plane.so/api/v1/workspaces/{workspace_slug}/projects/{project_id}/work-items/{work_item_id}/comments/', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.plane.so/api/v1/workspaces/{workspace_slug}/projects/{project_id}/work-items/{work_item_id}/comments/",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"x-api-key: <api-key>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://api.plane.so/api/v1/workspaces/{workspace_slug}/projects/{project_id}/work-items/{work_item_id}/comments/"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("x-api-key", "<api-key>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://api.plane.so/api/v1/workspaces/{workspace_slug}/projects/{project_id}/work-items/{work_item_id}/comments/")
.header("x-api-key", "<api-key>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.plane.so/api/v1/workspaces/{workspace_slug}/projects/{project_id}/work-items/{work_item_id}/comments/")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["x-api-key"] = '<api-key>'
response = http.request(request)
puts response.read_bodyPath parameters
string
required
The workspace_slug represents the unique workspace identifier for a workspace in Plane. It can be found in the URL. For example, in the URL
https://app.plane.so/my-team/projects/, the workspace slug is my-team.string
required
The unique identifier of the project.
string
required
The unique identifier for the work item.
Query parameters
string
Filter by work item ID.
string
Filter by project ID.
string
Filter by workspace ID.
number
Number of results to return per page.
number
Number of results to skip for pagination.
⌘I

