Search All Records
curl --request POST \
--url 'https://actionkit.useparagon.com/projects/{project_id}/tools/#ZENDESK_SEARCH_ALL_RECORDS' \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"tool": "ZENDESK_SEARCH_ALL_RECORDS",
"parameters": {
"query": "<string>",
"paginationParameters": {
"pageCursor": "<string>",
"limit": 123
}
}
}
'import requests
url = "https://actionkit.useparagon.com/projects/{project_id}/tools/#ZENDESK_SEARCH_ALL_RECORDS"
payload = {
"tool": "ZENDESK_SEARCH_ALL_RECORDS",
"parameters": {
"query": "<string>",
"paginationParameters": {
"pageCursor": "<string>",
"limit": 123
}
}
}
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({
tool: 'ZENDESK_SEARCH_ALL_RECORDS',
parameters: {query: '<string>', paginationParameters: {pageCursor: '<string>', limit: 123}}
})
};
fetch('https://actionkit.useparagon.com/projects/{project_id}/tools/#ZENDESK_SEARCH_ALL_RECORDS', 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://actionkit.useparagon.com/projects/{project_id}/tools/#ZENDESK_SEARCH_ALL_RECORDS",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'tool' => 'ZENDESK_SEARCH_ALL_RECORDS',
'parameters' => [
'query' => '<string>',
'paginationParameters' => [
'pageCursor' => '<string>',
'limit' => 123
]
]
]),
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>",
"Content-Type: application/json"
],
]);
$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://actionkit.useparagon.com/projects/{project_id}/tools/#ZENDESK_SEARCH_ALL_RECORDS"
payload := strings.NewReader("{\n \"tool\": \"ZENDESK_SEARCH_ALL_RECORDS\",\n \"parameters\": {\n \"query\": \"<string>\",\n \"paginationParameters\": {\n \"pageCursor\": \"<string>\",\n \"limit\": 123\n }\n }\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Authorization", "Bearer <token>")
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.post("https://actionkit.useparagon.com/projects/{project_id}/tools/#ZENDESK_SEARCH_ALL_RECORDS")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"tool\": \"ZENDESK_SEARCH_ALL_RECORDS\",\n \"parameters\": {\n \"query\": \"<string>\",\n \"paginationParameters\": {\n \"pageCursor\": \"<string>\",\n \"limit\": 123\n }\n }\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://actionkit.useparagon.com/projects/{project_id}/tools/#ZENDESK_SEARCH_ALL_RECORDS")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"tool\": \"ZENDESK_SEARCH_ALL_RECORDS\",\n \"parameters\": {\n \"query\": \"<string>\",\n \"paginationParameters\": {\n \"pageCursor\": \"<string>\",\n \"limit\": 123\n }\n }\n}"
response = http.request(request)
puts response.read_body{
"records": [
{
"url": "https://example.zendesk.com/api/v2/tickets/35436.json",
"id": 35436,
"external_id": null,
"via": {
"channel": "api",
"source": {
"from": {},
"to": {},
"rel": null
}
},
"created_at": "2026-10-16T05:54:37Z",
"updated_at": "2026-10-16T05:54:39Z",
"generated_timestamp": 360000780079,
"type": null,
"subject": "[Paragon docs test] safe to delete",
"raw_subject": "[Paragon docs test] safe to delete",
"description": "Temporary ticket created while documenting ActionKit responses. Deleted right after.",
"priority": "high",
"status": "open",
"recipient": null,
"requester_id": 360000020441,
"submitter_id": 360000020441,
"assignee_id": 360000040777,
"organization_id": null,
"group_id": 360000060358,
"collaborator_ids": [],
"follower_ids": [],
"email_cc_ids": [],
"forum_topic_id": null,
"problem_id": null,
"has_incidents": false,
"is_public": true,
"due_at": null,
"tags": [],
"custom_fields": [
{
"id": 360000080418,
"value": null
},
{
"id": 360000100193,
"value": null
},
{
"id": 360000120129,
"value": null
},
{
"id": 360000140177,
"value": null
},
{
"id": 360000160113,
"value": null
},
{
"id": 360000180609,
"value": null
},
{
"id": 360000200409,
"value": null
},
{
"id": 360000220953,
"value": null
},
{
"id": 360000240465,
"value": null
},
{
"id": 360000260201,
"value": null
},
{
"id": 360000280353,
"value": null
},
{
"id": 360000300641,
"value": null
},
{
"id": 360000320209,
"value": null
}
],
"satisfaction_rating": {
"score": "unoffered"
},
"sharing_agreement_ids": [],
"custom_status_id": 360000340813,
"encoded_id": "V0WRRD-5DM05",
"fields": [
{
"id": 360000080418,
"value": null
},
{
"id": 360000100193,
"value": null
},
{
"id": 360000120129,
"value": null
},
{
"id": 360000140177,
"value": null
},
{
"id": 360000160113,
"value": null
},
{
"id": 360000180609,
"value": null
},
{
"id": 360000200409,
"value": null
},
{
"id": 360000220953,
"value": null
},
{
"id": 360000240465,
"value": null
},
{
"id": 360000260201,
"value": null
},
{
"id": 360000280353,
"value": null
},
{
"id": 360000300641,
"value": null
},
{
"id": 360000320209,
"value": null
}
],
"followup_ids": [],
"brand_id": 360000360398,
"allow_channelback": false,
"allow_attachments": true,
"from_messaging_channel": false,
"support_type": "agent",
"result_type": "ticket"
}
],
"nextPageCursor": "2"
}Tools
Search All Records
POST
/
projects
/
{project_id}
/
tools
/
#ZENDESK_SEARCH_ALL_RECORDS
Search All Records
curl --request POST \
--url 'https://actionkit.useparagon.com/projects/{project_id}/tools/#ZENDESK_SEARCH_ALL_RECORDS' \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"tool": "ZENDESK_SEARCH_ALL_RECORDS",
"parameters": {
"query": "<string>",
"paginationParameters": {
"pageCursor": "<string>",
"limit": 123
}
}
}
'import requests
url = "https://actionkit.useparagon.com/projects/{project_id}/tools/#ZENDESK_SEARCH_ALL_RECORDS"
payload = {
"tool": "ZENDESK_SEARCH_ALL_RECORDS",
"parameters": {
"query": "<string>",
"paginationParameters": {
"pageCursor": "<string>",
"limit": 123
}
}
}
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({
tool: 'ZENDESK_SEARCH_ALL_RECORDS',
parameters: {query: '<string>', paginationParameters: {pageCursor: '<string>', limit: 123}}
})
};
fetch('https://actionkit.useparagon.com/projects/{project_id}/tools/#ZENDESK_SEARCH_ALL_RECORDS', 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://actionkit.useparagon.com/projects/{project_id}/tools/#ZENDESK_SEARCH_ALL_RECORDS",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'tool' => 'ZENDESK_SEARCH_ALL_RECORDS',
'parameters' => [
'query' => '<string>',
'paginationParameters' => [
'pageCursor' => '<string>',
'limit' => 123
]
]
]),
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>",
"Content-Type: application/json"
],
]);
$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://actionkit.useparagon.com/projects/{project_id}/tools/#ZENDESK_SEARCH_ALL_RECORDS"
payload := strings.NewReader("{\n \"tool\": \"ZENDESK_SEARCH_ALL_RECORDS\",\n \"parameters\": {\n \"query\": \"<string>\",\n \"paginationParameters\": {\n \"pageCursor\": \"<string>\",\n \"limit\": 123\n }\n }\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Authorization", "Bearer <token>")
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.post("https://actionkit.useparagon.com/projects/{project_id}/tools/#ZENDESK_SEARCH_ALL_RECORDS")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"tool\": \"ZENDESK_SEARCH_ALL_RECORDS\",\n \"parameters\": {\n \"query\": \"<string>\",\n \"paginationParameters\": {\n \"pageCursor\": \"<string>\",\n \"limit\": 123\n }\n }\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://actionkit.useparagon.com/projects/{project_id}/tools/#ZENDESK_SEARCH_ALL_RECORDS")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"tool\": \"ZENDESK_SEARCH_ALL_RECORDS\",\n \"parameters\": {\n \"query\": \"<string>\",\n \"paginationParameters\": {\n \"pageCursor\": \"<string>\",\n \"limit\": 123\n }\n }\n}"
response = http.request(request)
puts response.read_body{
"records": [
{
"url": "https://example.zendesk.com/api/v2/tickets/35436.json",
"id": 35436,
"external_id": null,
"via": {
"channel": "api",
"source": {
"from": {},
"to": {},
"rel": null
}
},
"created_at": "2026-10-16T05:54:37Z",
"updated_at": "2026-10-16T05:54:39Z",
"generated_timestamp": 360000780079,
"type": null,
"subject": "[Paragon docs test] safe to delete",
"raw_subject": "[Paragon docs test] safe to delete",
"description": "Temporary ticket created while documenting ActionKit responses. Deleted right after.",
"priority": "high",
"status": "open",
"recipient": null,
"requester_id": 360000020441,
"submitter_id": 360000020441,
"assignee_id": 360000040777,
"organization_id": null,
"group_id": 360000060358,
"collaborator_ids": [],
"follower_ids": [],
"email_cc_ids": [],
"forum_topic_id": null,
"problem_id": null,
"has_incidents": false,
"is_public": true,
"due_at": null,
"tags": [],
"custom_fields": [
{
"id": 360000080418,
"value": null
},
{
"id": 360000100193,
"value": null
},
{
"id": 360000120129,
"value": null
},
{
"id": 360000140177,
"value": null
},
{
"id": 360000160113,
"value": null
},
{
"id": 360000180609,
"value": null
},
{
"id": 360000200409,
"value": null
},
{
"id": 360000220953,
"value": null
},
{
"id": 360000240465,
"value": null
},
{
"id": 360000260201,
"value": null
},
{
"id": 360000280353,
"value": null
},
{
"id": 360000300641,
"value": null
},
{
"id": 360000320209,
"value": null
}
],
"satisfaction_rating": {
"score": "unoffered"
},
"sharing_agreement_ids": [],
"custom_status_id": 360000340813,
"encoded_id": "V0WRRD-5DM05",
"fields": [
{
"id": 360000080418,
"value": null
},
{
"id": 360000100193,
"value": null
},
{
"id": 360000120129,
"value": null
},
{
"id": 360000140177,
"value": null
},
{
"id": 360000160113,
"value": null
},
{
"id": 360000180609,
"value": null
},
{
"id": 360000200409,
"value": null
},
{
"id": 360000220953,
"value": null
},
{
"id": 360000240465,
"value": null
},
{
"id": 360000260201,
"value": null
},
{
"id": 360000280353,
"value": null
},
{
"id": 360000300641,
"value": null
},
{
"id": 360000320209,
"value": null
}
],
"followup_ids": [],
"brand_id": 360000360398,
"allow_channelback": false,
"allow_attachments": true,
"from_messaging_channel": false,
"support_type": "agent",
"result_type": "ticket"
}
],
"nextPageCursor": "2"
}Provider API: Zendesk Support API (v2).
Authorizations
Your Paragon User Token (JWT), which you can generate using your project's signing keys.
Path Parameters
Your Paragon Project ID. You can copy your Project ID from your dashboard URL or by clicking Copy Project ID under the Environment switcher.
Body
application/json
Response
200 - application/json
A page of matching records of any type (tickets, users, organizations, and so on), as returned by Zendesk search. Each record has a result_type. A full page has 100 records. nextPageCursor is null on the last page; otherwise pass it as paginationParameters.pageCursor to load the next page. Zendesk search returns at most 1,000 results, so nextPageCursor is null once that limit is reached.
Was this page helpful?