Get sync rules and current task scope
curl --request GET \
--url https://cloud.kaneo.app/api/integration-sync/project/{projectId}/{provider} \
--header 'Authorization: Bearer <token>'import requests
url = "https://cloud.kaneo.app/api/integration-sync/project/{projectId}/{provider}"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://cloud.kaneo.app/api/integration-sync/project/{projectId}/{provider}', 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://cloud.kaneo.app/api/integration-sync/project/{projectId}/{provider}",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>"
],
]);
$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://cloud.kaneo.app/api/integration-sync/project/{projectId}/{provider}"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Authorization", "Bearer <token>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://cloud.kaneo.app/api/integration-sync/project/{projectId}/{provider}")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://cloud.kaneo.app/api/integration-sync/project/{projectId}/{provider}")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Authorization"] = 'Bearer <token>'
response = http.request(request)
puts response.read_body{
"isActive": true,
"rules": {
"outgoing": {
"mode": "all"
},
"incoming": {
"mode": "all"
}
},
"labels": [
{
"id": "<string>",
"name": "<string>",
"color": "<string>"
}
],
"missingLabels": [
"<string>"
],
"total": 123,
"matching": 123,
"willCreate": 123,
"willPause": 123,
"needsReview": 123,
"paused": 123,
"matchingTasks": [
{
"id": "<string>",
"number": 123,
"title": "<string>"
}
],
"pausedNextCursor": "<string>",
"pausedTasks": [
{
"id": "<string>",
"number": 123,
"title": "<string>",
"linkId": "<string>",
"url": "<string>",
"eligible": true
}
],
"previewToken": "<string>"
}{
"message": "Task not found",
"code": "NOT_FOUND",
"issues": [
{
"path": "body.title",
"message": "Required"
}
],
"missingPermissions": [
"task:update"
]
}{
"message": "Task not found",
"code": "NOT_FOUND",
"issues": [
{
"path": "body.title",
"message": "Required"
}
],
"missingPermissions": [
"task:update"
]
}{
"message": "Task not found",
"code": "NOT_FOUND",
"issues": [
{
"path": "body.title",
"message": "Required"
}
],
"missingPermissions": [
"task:update"
]
}{
"message": "Task not found",
"code": "NOT_FOUND",
"issues": [
{
"path": "body.title",
"message": "Required"
}
],
"missingPermissions": [
"task:update"
]
}{
"message": "Task not found",
"code": "NOT_FOUND",
"issues": [
{
"path": "body.title",
"message": "Required"
}
],
"missingPermissions": [
"task:update"
]
}{
"message": "Task not found",
"code": "NOT_FOUND",
"issues": [
{
"path": "body.title",
"message": "Required"
}
],
"missingPermissions": [
"task:update"
]
}Integration sync
Get sync rules and current task scope
Workspace members with project and task read permissions can inspect saved rules. Rules remain active when advanced mode is hidden. Paused issue links are preserved; eligible paused tasks require review before resuming.
GET
/
integration-sync
/
project
/
{projectId}
/
{provider}
Get sync rules and current task scope
curl --request GET \
--url https://cloud.kaneo.app/api/integration-sync/project/{projectId}/{provider} \
--header 'Authorization: Bearer <token>'import requests
url = "https://cloud.kaneo.app/api/integration-sync/project/{projectId}/{provider}"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://cloud.kaneo.app/api/integration-sync/project/{projectId}/{provider}', 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://cloud.kaneo.app/api/integration-sync/project/{projectId}/{provider}",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>"
],
]);
$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://cloud.kaneo.app/api/integration-sync/project/{projectId}/{provider}"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Authorization", "Bearer <token>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://cloud.kaneo.app/api/integration-sync/project/{projectId}/{provider}")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://cloud.kaneo.app/api/integration-sync/project/{projectId}/{provider}")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Authorization"] = 'Bearer <token>'
response = http.request(request)
puts response.read_body{
"isActive": true,
"rules": {
"outgoing": {
"mode": "all"
},
"incoming": {
"mode": "all"
}
},
"labels": [
{
"id": "<string>",
"name": "<string>",
"color": "<string>"
}
],
"missingLabels": [
"<string>"
],
"total": 123,
"matching": 123,
"willCreate": 123,
"willPause": 123,
"needsReview": 123,
"paused": 123,
"matchingTasks": [
{
"id": "<string>",
"number": 123,
"title": "<string>"
}
],
"pausedNextCursor": "<string>",
"pausedTasks": [
{
"id": "<string>",
"number": 123,
"title": "<string>",
"linkId": "<string>",
"url": "<string>",
"eligible": true
}
],
"previewToken": "<string>"
}{
"message": "Task not found",
"code": "NOT_FOUND",
"issues": [
{
"path": "body.title",
"message": "Required"
}
],
"missingPermissions": [
"task:update"
]
}{
"message": "Task not found",
"code": "NOT_FOUND",
"issues": [
{
"path": "body.title",
"message": "Required"
}
],
"missingPermissions": [
"task:update"
]
}{
"message": "Task not found",
"code": "NOT_FOUND",
"issues": [
{
"path": "body.title",
"message": "Required"
}
],
"missingPermissions": [
"task:update"
]
}{
"message": "Task not found",
"code": "NOT_FOUND",
"issues": [
{
"path": "body.title",
"message": "Required"
}
],
"missingPermissions": [
"task:update"
]
}{
"message": "Task not found",
"code": "NOT_FOUND",
"issues": [
{
"path": "body.title",
"message": "Required"
}
],
"missingPermissions": [
"task:update"
]
}{
"message": "Task not found",
"code": "NOT_FOUND",
"issues": [
{
"path": "body.title",
"message": "Required"
}
],
"missingPermissions": [
"task:update"
]
}Authorizations
API key or session token (Bearer)
Path Parameters
Minimum string length:
1Available options:
github, gitea, gitlab Query Parameters
Response
Saved rules and scope
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Was this page helpful?
⌘I