curl -X GET "https://api.hookpulse.io/v1/api/get_domain_paginated/?page={{page}}" \
-H "x-hookpulse-api-key: {{x-hookpulse-api-key}}" \
-H "x-brand-uuid: {{x-brand-uuid}}" \
-H "Content-Type: application/json"
const response = await fetch('https://api.hookpulse.io/v1/api/get_domain_paginated/?page={{page}}', {
method: 'GET',
headers: {
'x-hookpulse-api-key': '{{x-hookpulse-api-key}}',
'x-brand-uuid': '{{x-brand-uuid}}',
'Content-Type': 'application/json'
}
});
const data = await response.json();
console.log(data);
import requests
url = 'https://api.hookpulse.io/v1/api/get_domain_paginated/'
headers = {
'x-hookpulse-api-key': '{{x-hookpulse-api-key}}',
'x-brand-uuid': '{{x-brand-uuid}}',
'Content-Type': 'application/json'
}
params = {
'page': {{page}}
}
response = requests.get(url, headers=headers, params=params)
print(response.json())
require 'net/http'
require 'json'
require 'uri'
uri = URI('https://api.hookpulse.io/v1/api/get_domain_paginated/')
uri.query = URI.encode_www_form(page: {{page}})
http = Net::HTTP.new(uri.host, uri.port)
http.use_ssl = true
request = Net::HTTP::Get.new(uri.request_uri)
request['x-hookpulse-api-key'] = '{{x-hookpulse-api-key}}'
request['x-brand-uuid'] = '{{x-brand-uuid}}'
request['Content-Type'] = 'application/json'
response = http.request(request)
puts JSON.parse(response.body)
<?php
$url = 'https://api.hookpulse.io/v1/api/get_domain_paginated/?page={{page}}';
$ch = curl_init($url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_HTTPHEADER, [
'x-hookpulse-api-key: {{x-hookpulse-api-key}}',
'x-brand-uuid: {{x-brand-uuid}}',
'Content-Type: application/json'
]);
$response = curl_exec($ch);
curl_close($ch);
echo $response;
?>
{
"data": [
{
"protocol_type": "{{protocol_type}}",
"rate_limit_enabled": {{rate_limit_enabled}},
"concurrency_control_enabled": {{concurrency_control_enabled}},
"max_concurrent_jobs": {{max_concurrent_jobs}},
"max_requests_per_second": {{max_requests_per_second}},
"domain_uuid": "{{domain_uuid}}",
"domain_name": "{{domain_name}}"
}
],
"meta": {
"page": {{page}},
"total_count": {{total_count}},
"per_page": {{per_page}},
"total_pages": {{total_pages}},
"has_next": {{has_next}},
"has_prev": {{has_prev}}
},
"success": true,
"timezone": "{{timezone}}"
}
Domain Setup
Get Domains (Paginated)
Retrieve a paginated list of domains from your HookPulse account
GET
/
v1
/
api
/
get_domain_paginated
/
curl -X GET "https://api.hookpulse.io/v1/api/get_domain_paginated/?page={{page}}" \
-H "x-hookpulse-api-key: {{x-hookpulse-api-key}}" \
-H "x-brand-uuid: {{x-brand-uuid}}" \
-H "Content-Type: application/json"
const response = await fetch('https://api.hookpulse.io/v1/api/get_domain_paginated/?page={{page}}', {
method: 'GET',
headers: {
'x-hookpulse-api-key': '{{x-hookpulse-api-key}}',
'x-brand-uuid': '{{x-brand-uuid}}',
'Content-Type': 'application/json'
}
});
const data = await response.json();
console.log(data);
import requests
url = 'https://api.hookpulse.io/v1/api/get_domain_paginated/'
headers = {
'x-hookpulse-api-key': '{{x-hookpulse-api-key}}',
'x-brand-uuid': '{{x-brand-uuid}}',
'Content-Type': 'application/json'
}
params = {
'page': {{page}}
}
response = requests.get(url, headers=headers, params=params)
print(response.json())
require 'net/http'
require 'json'
require 'uri'
uri = URI('https://api.hookpulse.io/v1/api/get_domain_paginated/')
uri.query = URI.encode_www_form(page: {{page}})
http = Net::HTTP.new(uri.host, uri.port)
http.use_ssl = true
request = Net::HTTP::Get.new(uri.request_uri)
request['x-hookpulse-api-key'] = '{{x-hookpulse-api-key}}'
request['x-brand-uuid'] = '{{x-brand-uuid}}'
request['Content-Type'] = 'application/json'
response = http.request(request)
puts JSON.parse(response.body)
<?php
$url = 'https://api.hookpulse.io/v1/api/get_domain_paginated/?page={{page}}';
$ch = curl_init($url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_HTTPHEADER, [
'x-hookpulse-api-key: {{x-hookpulse-api-key}}',
'x-brand-uuid: {{x-brand-uuid}}',
'Content-Type: application/json'
]);
$response = curl_exec($ch);
curl_close($ch);
echo $response;
?>
{
"data": [
{
"protocol_type": "{{protocol_type}}",
"rate_limit_enabled": {{rate_limit_enabled}},
"concurrency_control_enabled": {{concurrency_control_enabled}},
"max_concurrent_jobs": {{max_concurrent_jobs}},
"max_requests_per_second": {{max_requests_per_second}},
"domain_uuid": "{{domain_uuid}}",
"domain_name": "{{domain_name}}"
}
],
"meta": {
"page": {{page}},
"total_count": {{total_count}},
"per_page": {{per_page}},
"total_pages": {{total_pages}},
"has_next": {{has_next}},
"has_prev": {{has_prev}}
},
"success": true,
"timezone": "{{timezone}}"
}
Retrieve a paginated list of domains from your HookPulse account.
Example request
curl -X GET "https://api.hookpulse.io/v1/api/get_domain_paginated/?page={{page}}" \
-H "x-hookpulse-api-key: {{x-hookpulse-api-key}}" \
-H "x-brand-uuid: {{x-brand-uuid}}" \
-H "Content-Type: application/json"
const response = await fetch('https://api.hookpulse.io/v1/api/get_domain_paginated/?page={{page}}', {
method: 'GET',
headers: {
'x-hookpulse-api-key': '{{x-hookpulse-api-key}}',
'x-brand-uuid': '{{x-brand-uuid}}',
'Content-Type': 'application/json'
}
});
const data = await response.json();
console.log(data);
import requests
url = 'https://api.hookpulse.io/v1/api/get_domain_paginated/'
headers = {
'x-hookpulse-api-key': '{{x-hookpulse-api-key}}',
'x-brand-uuid': '{{x-brand-uuid}}',
'Content-Type': 'application/json'
}
params = {
'page': {{page}}
}
response = requests.get(url, headers=headers, params=params)
print(response.json())
require 'net/http'
require 'json'
require 'uri'
uri = URI('https://api.hookpulse.io/v1/api/get_domain_paginated/')
uri.query = URI.encode_www_form(page: {{page}})
http = Net::HTTP.new(uri.host, uri.port)
http.use_ssl = true
request = Net::HTTP::Get.new(uri.request_uri)
request['x-hookpulse-api-key'] = '{{x-hookpulse-api-key}}'
request['x-brand-uuid'] = '{{x-brand-uuid}}'
request['Content-Type'] = 'application/json'
response = http.request(request)
puts JSON.parse(response.body)
<?php
$url = 'https://api.hookpulse.io/v1/api/get_domain_paginated/?page={{page}}';
$ch = curl_init($url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_HTTPHEADER, [
'x-hookpulse-api-key: {{x-hookpulse-api-key}}',
'x-brand-uuid: {{x-brand-uuid}}',
'Content-Type: application/json'
]);
$response = curl_exec($ch);
curl_close($ch);
echo $response;
?>
Query parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
page | integer | Yes | Page number to retrieve (starts from 1) |
Example response
{
"data": [
{
"protocol_type": "{{protocol_type}}",
"rate_limit_enabled": {{rate_limit_enabled}},
"concurrency_control_enabled": {{concurrency_control_enabled}},
"max_concurrent_jobs": {{max_concurrent_jobs}},
"max_requests_per_second": {{max_requests_per_second}},
"domain_uuid": "{{domain_uuid}}",
"domain_name": "{{domain_name}}"
}
],
"meta": {
"page": {{page}},
"total_count": {{total_count}},
"per_page": {{per_page}},
"total_pages": {{total_pages}},
"has_next": {{has_next}},
"has_prev": {{has_prev}}
},
"success": true,
"timezone": "{{timezone}}"
}
Response fields
Data array
| Field | Type | Description |
|---|---|---|
protocol_type | string | Protocol type for the domain |
rate_limit_enabled | boolean | Whether rate limiting is enabled |
concurrency_control_enabled | boolean | Whether concurrency control is enabled |
max_concurrent_jobs | integer | Maximum concurrent jobs allowed |
max_requests_per_second | integer | Maximum requests per second allowed |
domain_uuid | string | Unique identifier for the domain |
domain_name | string | Domain name |
Meta object
| Field | Type | Description |
|---|---|---|
page | integer | Current page number |
total_count | integer | Total number of domains |
per_page | integer | Number of items per page |
total_pages | integer | Total number of pages |
has_next | boolean | Whether there is a next page |
has_prev | boolean | Whether there is a previous page |
Root fields
| Field | Type | Description |
|---|---|---|
success | boolean | Indicates if the request was successful |
data | array | Array of domain objects |
meta | object | Pagination metadata |
timezone | string | IANA timezone identifier indicating the timezone used for all timestamps in the response (matches your brand’s selected timezone) |
Error Responses
If the page is out of range, you will receive:{
"success": false,
"timezone": "{{timezone}}",
"error": "Page out of range",
"meta": {
"page": {{page}},
"total_count": {{total_count}},
"per_page": {{per_page}},
"total_pages": {{total_pages}},
"has_next": {{has_next}},
"has_prev": {{has_prev}}
}
}
Authorizations
API key for authentication. Get this from your dashboard by selecting a brand and going to API Keys section.
Brand UUID for authentication. Get this from your dashboard after adding a brand - it will be displayed in the UI.
Query Parameters
Page number to retrieve (starts from 1)
Required range:
x >= 1⌘I

