CRM
Get board with stages and cards
Shows the board with its stages and cards. It accepts, through the query string, the same card filters as the system screen (period, owner, origin, deal).
GET
/
crm
/
boards
/
{boardId}
Get board with stages and cards
curl --request GET \
--url https://api.connectadesk.com/api/v1/crm/boards/{boardId} \
--header 'Authorization: Bearer <token>'import requests
url = "https://api.connectadesk.com/api/v1/crm/boards/{boardId}"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://api.connectadesk.com/api/v1/crm/boards/{boardId}', 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.connectadesk.com/api/v1/crm/boards/{boardId}",
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://api.connectadesk.com/api/v1/crm/boards/{boardId}"
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://api.connectadesk.com/api/v1/crm/boards/{boardId}")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.connectadesk.com/api/v1/crm/boards/{boardId}")
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{
"data": {
"id": 7,
"name": "Pós-venda",
"description": "Follow-up after the purchase.",
"monthlyGoal": 50000,
"yearlyGoal": 600000,
"createdByUserId": 3,
"archived": false,
"archivedAt": null,
"createdAt": "2026-01-10T12:00:00.000Z",
"updatedAt": "2026-02-10T12:00:00.000Z"
}
}{
"error": {
"code": "ERR_API_NOT_FOUND",
"message": "Registro não encontrado."
}
}Authorizations
API token in the sk_live_… format.
Path Parameters
Response
OK. lists contains each stage with its first page of cards and its total number of cards.
CRM board, where cards move through the stages.
Who sees the board, and whether they see all cards or only their own, is set in each user's profile (Settings → Profiles), together with the queues linked to the board. The API token sees every board in the company.
Show child attributes
Show child attributes
Example:
{
"id": 7,
"name": "Pós-venda",
"description": "Follow-up after the purchase.",
"monthlyGoal": 50000,
"yearlyGoal": 600000,
"createdByUserId": 3,
"archived": false,
"archivedAt": null,
"createdAt": "2026-01-10T12:00:00.000Z",
"updatedAt": "2026-02-10T12:00:00.000Z"
}
⌘I
Get board with stages and cards
curl --request GET \
--url https://api.connectadesk.com/api/v1/crm/boards/{boardId} \
--header 'Authorization: Bearer <token>'import requests
url = "https://api.connectadesk.com/api/v1/crm/boards/{boardId}"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://api.connectadesk.com/api/v1/crm/boards/{boardId}', 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.connectadesk.com/api/v1/crm/boards/{boardId}",
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://api.connectadesk.com/api/v1/crm/boards/{boardId}"
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://api.connectadesk.com/api/v1/crm/boards/{boardId}")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.connectadesk.com/api/v1/crm/boards/{boardId}")
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{
"data": {
"id": 7,
"name": "Pós-venda",
"description": "Follow-up after the purchase.",
"monthlyGoal": 50000,
"yearlyGoal": 600000,
"createdByUserId": 3,
"archived": false,
"archivedAt": null,
"createdAt": "2026-01-10T12:00:00.000Z",
"updatedAt": "2026-02-10T12:00:00.000Z"
}
}{
"error": {
"code": "ERR_API_NOT_FOUND",
"message": "Registro não encontrado."
}
}
