curl --request GET \
--url https://api.hubapi.com/crm/extensions/cards-dev/2026-03/sample-responseimport requests
url = "https://api.hubapi.com/crm/extensions/cards-dev/2026-03/sample-response"
response = requests.get(url)
print(response.text)const options = {method: 'GET'};
fetch('https://api.hubapi.com/crm/extensions/cards-dev/2026-03/sample-response', 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.hubapi.com/crm/extensions/cards-dev/2026-03/sample-response",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
]);
$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.hubapi.com/crm/extensions/cards-dev/2026-03/sample-response"
req, _ := http.NewRequest("GET", url, nil)
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.hubapi.com/crm/extensions/cards-dev/2026-03/sample-response")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.hubapi.com/crm/extensions/cards-dev/2026-03/sample-response")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
response = http.request(request)
puts response.read_body{
"sections": [
{
"actions": [
{
"propertyNamesIncluded": [
"<string>"
],
"type": "ACTION_HOOK",
"url": "<string>",
"confirmation": {
"cancelButtonLabel": "<string>",
"confirmButtonLabel": "<string>",
"prompt": "<string>"
},
"label": "<string>"
}
],
"id": "<string>",
"title": "<string>",
"tokens": [
{
"value": "<string>",
"label": "<string>",
"name": "<string>"
}
],
"linkUrl": "<string>"
}
],
"totalCount": 123,
"allItemsLinkUrl": "<string>",
"cardLabel": "<string>",
"topLevelActions": {
"secondary": [
{
"propertyNamesIncluded": [
"<string>"
],
"type": "ACTION_HOOK",
"url": "<string>",
"confirmation": {
"cancelButtonLabel": "<string>",
"confirmButtonLabel": "<string>",
"prompt": "<string>"
},
"label": "<string>"
}
],
"primary": {
"propertyNamesIncluded": [
"<string>"
],
"type": "ACTION_HOOK",
"url": "<string>",
"confirmation": {
"cancelButtonLabel": "<string>",
"confirmButtonLabel": "<string>",
"prompt": "<string>"
},
"label": "<string>"
},
"settings": {
"height": 123,
"propertyNamesIncluded": [
"<string>"
],
"type": "IFRAME",
"url": "<string>",
"width": 123,
"label": "<string>"
}
}
}{
"message": "Invalid input (details will vary based on the error)",
"correlationId": "aeb5f871-7f07-4993-9211-075dc63e7cbf",
"category": "VALIDATION_ERROR",
"links": {
"knowledge-base": "https://www.hubspot.com/products/service/knowledge-base"
}
}Get sample card detail response
Returns an example card detail response. This is the payload with displayed details for a card that will be shown to a user. An app should send this in response to the data fetch request.
curl --request GET \
--url https://api.hubapi.com/crm/extensions/cards-dev/2026-03/sample-responseimport requests
url = "https://api.hubapi.com/crm/extensions/cards-dev/2026-03/sample-response"
response = requests.get(url)
print(response.text)const options = {method: 'GET'};
fetch('https://api.hubapi.com/crm/extensions/cards-dev/2026-03/sample-response', 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.hubapi.com/crm/extensions/cards-dev/2026-03/sample-response",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
]);
$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.hubapi.com/crm/extensions/cards-dev/2026-03/sample-response"
req, _ := http.NewRequest("GET", url, nil)
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.hubapi.com/crm/extensions/cards-dev/2026-03/sample-response")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.hubapi.com/crm/extensions/cards-dev/2026-03/sample-response")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
response = http.request(request)
puts response.read_body{
"sections": [
{
"actions": [
{
"propertyNamesIncluded": [
"<string>"
],
"type": "ACTION_HOOK",
"url": "<string>",
"confirmation": {
"cancelButtonLabel": "<string>",
"confirmButtonLabel": "<string>",
"prompt": "<string>"
},
"label": "<string>"
}
],
"id": "<string>",
"title": "<string>",
"tokens": [
{
"value": "<string>",
"label": "<string>",
"name": "<string>"
}
],
"linkUrl": "<string>"
}
],
"totalCount": 123,
"allItemsLinkUrl": "<string>",
"cardLabel": "<string>",
"topLevelActions": {
"secondary": [
{
"propertyNamesIncluded": [
"<string>"
],
"type": "ACTION_HOOK",
"url": "<string>",
"confirmation": {
"cancelButtonLabel": "<string>",
"confirmButtonLabel": "<string>",
"prompt": "<string>"
},
"label": "<string>"
}
],
"primary": {
"propertyNamesIncluded": [
"<string>"
],
"type": "ACTION_HOOK",
"url": "<string>",
"confirmation": {
"cancelButtonLabel": "<string>",
"confirmButtonLabel": "<string>",
"prompt": "<string>"
},
"label": "<string>"
},
"settings": {
"height": 123,
"propertyNamesIncluded": [
"<string>"
],
"type": "IFRAME",
"url": "<string>",
"width": 123,
"label": "<string>"
}
}
}{
"message": "Invalid input (details will vary based on the error)",
"correlationId": "aeb5f871-7f07-4993-9211-075dc63e7cbf",
"category": "VALIDATION_ERROR",
"links": {
"knowledge-base": "https://www.hubspot.com/products/service/knowledge-base"
}
}Supported products
Supported products
Response
successful operation
The number version of the response.
v1, v3 A list of up to five valid card sub categories.
Show child attributes
Show child attributes
The total number of card properties that will be sent in this response.
URL to a page the integrator has built that displays all details for this card. This URL will be displayed to users under a See more [x] link if there are more than five items in your response, where [x] is the value of itemLabel.
The label to be used for the allItemsLinkUrl link (e.g. 'See more tickets'). If not provided, this falls back to the card's title.
Show child attributes
Show child attributes
Was this page helpful?