Update a cycle
curl --request PATCH \
--url https://api.plane.so/api/v1/workspaces/{workspace_slug}/projects/{project_id}/cycles/{cycle_id}/ \
--header 'Content-Type: application/json' \
--header 'x-api-key: <api-key>' \
--data '
{
"name": "<string>",
"description": "<string>",
"start_date": "<string>",
"end_date": "<string>",
"owned_by": "<string>",
"external_source": "<string>",
"external_id": "<string>",
"timezone": "<string>"
}
'import requests
url = "https://api.plane.so/api/v1/workspaces/{workspace_slug}/projects/{project_id}/cycles/{cycle_id}/"
payload = {
"name": "<string>",
"description": "<string>",
"start_date": "<string>",
"end_date": "<string>",
"owned_by": "<string>",
"external_source": "<string>",
"external_id": "<string>",
"timezone": "<string>"
}
headers = {
"x-api-key": "<api-key>",
"Content-Type": "application/json"
}
response = requests.patch(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'PATCH',
headers: {'x-api-key': '<api-key>', 'Content-Type': 'application/json'},
body: JSON.stringify({
name: '<string>',
description: '<string>',
start_date: '<string>',
end_date: '<string>',
owned_by: '<string>',
external_source: '<string>',
external_id: '<string>',
timezone: '<string>'
})
};
fetch('https://api.plane.so/api/v1/workspaces/{workspace_slug}/projects/{project_id}/cycles/{cycle_id}/', 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}/cycles/{cycle_id}/",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "PATCH",
CURLOPT_POSTFIELDS => json_encode([
'name' => '<string>',
'description' => '<string>',
'start_date' => '<string>',
'end_date' => '<string>',
'owned_by' => '<string>',
'external_source' => '<string>',
'external_id' => '<string>',
'timezone' => '<string>'
]),
CURLOPT_HTTPHEADER => [
"Content-Type: application/json",
"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"
"strings"
"net/http"
"io"
)
func main() {
url := "https://api.plane.so/api/v1/workspaces/{workspace_slug}/projects/{project_id}/cycles/{cycle_id}/"
payload := strings.NewReader("{\n \"name\": \"<string>\",\n \"description\": \"<string>\",\n \"start_date\": \"<string>\",\n \"end_date\": \"<string>\",\n \"owned_by\": \"<string>\",\n \"external_source\": \"<string>\",\n \"external_id\": \"<string>\",\n \"timezone\": \"<string>\"\n}")
req, _ := http.NewRequest("PATCH", url, payload)
req.Header.Add("x-api-key", "<api-key>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.patch("https://api.plane.so/api/v1/workspaces/{workspace_slug}/projects/{project_id}/cycles/{cycle_id}/")
.header("x-api-key", "<api-key>")
.header("Content-Type", "application/json")
.body("{\n \"name\": \"<string>\",\n \"description\": \"<string>\",\n \"start_date\": \"<string>\",\n \"end_date\": \"<string>\",\n \"owned_by\": \"<string>\",\n \"external_source\": \"<string>\",\n \"external_id\": \"<string>\",\n \"timezone\": \"<string>\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.plane.so/api/v1/workspaces/{workspace_slug}/projects/{project_id}/cycles/{cycle_id}/")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Patch.new(url)
request["x-api-key"] = '<api-key>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"name\": \"<string>\",\n \"description\": \"<string>\",\n \"start_date\": \"<string>\",\n \"end_date\": \"<string>\",\n \"owned_by\": \"<string>\",\n \"external_source\": \"<string>\",\n \"external_id\": \"<string>\",\n \"timezone\": \"<string>\"\n}"
response = http.request(request)
puts response.read_bodyCycle
Update a cycle
Updates an existing cycle by setting the values of the parameters passed. Any parameters not provided will be left unchanged.
PATCH
/
api
/
v1
/
workspaces
/
{workspace_slug}
/
projects
/
{project_id}
/
cycles
/
{cycle_id}
/
Update a cycle
curl --request PATCH \
--url https://api.plane.so/api/v1/workspaces/{workspace_slug}/projects/{project_id}/cycles/{cycle_id}/ \
--header 'Content-Type: application/json' \
--header 'x-api-key: <api-key>' \
--data '
{
"name": "<string>",
"description": "<string>",
"start_date": "<string>",
"end_date": "<string>",
"owned_by": "<string>",
"external_source": "<string>",
"external_id": "<string>",
"timezone": "<string>"
}
'import requests
url = "https://api.plane.so/api/v1/workspaces/{workspace_slug}/projects/{project_id}/cycles/{cycle_id}/"
payload = {
"name": "<string>",
"description": "<string>",
"start_date": "<string>",
"end_date": "<string>",
"owned_by": "<string>",
"external_source": "<string>",
"external_id": "<string>",
"timezone": "<string>"
}
headers = {
"x-api-key": "<api-key>",
"Content-Type": "application/json"
}
response = requests.patch(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'PATCH',
headers: {'x-api-key': '<api-key>', 'Content-Type': 'application/json'},
body: JSON.stringify({
name: '<string>',
description: '<string>',
start_date: '<string>',
end_date: '<string>',
owned_by: '<string>',
external_source: '<string>',
external_id: '<string>',
timezone: '<string>'
})
};
fetch('https://api.plane.so/api/v1/workspaces/{workspace_slug}/projects/{project_id}/cycles/{cycle_id}/', 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}/cycles/{cycle_id}/",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "PATCH",
CURLOPT_POSTFIELDS => json_encode([
'name' => '<string>',
'description' => '<string>',
'start_date' => '<string>',
'end_date' => '<string>',
'owned_by' => '<string>',
'external_source' => '<string>',
'external_id' => '<string>',
'timezone' => '<string>'
]),
CURLOPT_HTTPHEADER => [
"Content-Type: application/json",
"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"
"strings"
"net/http"
"io"
)
func main() {
url := "https://api.plane.so/api/v1/workspaces/{workspace_slug}/projects/{project_id}/cycles/{cycle_id}/"
payload := strings.NewReader("{\n \"name\": \"<string>\",\n \"description\": \"<string>\",\n \"start_date\": \"<string>\",\n \"end_date\": \"<string>\",\n \"owned_by\": \"<string>\",\n \"external_source\": \"<string>\",\n \"external_id\": \"<string>\",\n \"timezone\": \"<string>\"\n}")
req, _ := http.NewRequest("PATCH", url, payload)
req.Header.Add("x-api-key", "<api-key>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.patch("https://api.plane.so/api/v1/workspaces/{workspace_slug}/projects/{project_id}/cycles/{cycle_id}/")
.header("x-api-key", "<api-key>")
.header("Content-Type", "application/json")
.body("{\n \"name\": \"<string>\",\n \"description\": \"<string>\",\n \"start_date\": \"<string>\",\n \"end_date\": \"<string>\",\n \"owned_by\": \"<string>\",\n \"external_source\": \"<string>\",\n \"external_id\": \"<string>\",\n \"timezone\": \"<string>\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.plane.so/api/v1/workspaces/{workspace_slug}/projects/{project_id}/cycles/{cycle_id}/")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Patch.new(url)
request["x-api-key"] = '<api-key>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"name\": \"<string>\",\n \"description\": \"<string>\",\n \"start_date\": \"<string>\",\n \"end_date\": \"<string>\",\n \"owned_by\": \"<string>\",\n \"external_source\": \"<string>\",\n \"external_id\": \"<string>\",\n \"timezone\": \"<string>\"\n}"
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 cycle.
Body parameters
string
Name of the cycle.
string
Description of the cycle.
string
Start date of the cycle in YYYY-MM-DD format.
string
End date of the cycle in YYYY-MM-DD format.
string
ID of the user who owns the cycle.
string
External source identifier.
string
External ID from the external source.
string
Timezone for the cycle.
⌘I

