curl -X POST https://api.hookpulse.io/v1/api/add_domain/ \
-H "x-hookpulse-api-key: {{x-hookpulse-api-key}}" \
-H "x-brand-uuid: {{x-brand-uuid}}" \
-H "Content-Type: application/json" \
-d '{
"protocol_type": "{{protocol_type}}",
"domain": "{{domain}}",
"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}}
}'
const response = await fetch('https://api.hookpulse.io/v1/api/add_domain/', {
method: 'POST',
headers: {
'x-hookpulse-api-key': '{{x-hookpulse-api-key}}',
'x-brand-uuid': '{{x-brand-uuid}}',
'Content-Type': 'application/json'
},
body: JSON.stringify({
protocol_type: '{{protocol_type}}',
domain: '{{domain}}',
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}}
})
});
const data = await response.json();
console.log(data);
import requests
url = 'https://api.hookpulse.io/v1/api/add_domain/'
headers = {
'x-hookpulse-api-key': '{{x-hookpulse-api-key}}',
'x-brand-uuid': '{{x-brand-uuid}}',
'Content-Type': 'application/json'
}
payload = {
'protocol_type': '{{protocol_type}}',
'domain': '{{domain}}',
'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}}
}
response = requests.post(url, headers=headers, json=payload)
print(response.json())
require 'net/http'
require 'json'
require 'uri'
uri = URI('https://api.hookpulse.io/v1/api/add_domain/')
http = Net::HTTP.new(uri.host, uri.port)
http.use_ssl = true
request = Net::HTTP::Post.new(uri.path)
request['x-hookpulse-api-key'] = '{{x-hookpulse-api-key}}'
request['x-brand-uuid'] = '{{x-brand-uuid}}'
request['Content-Type'] = 'application/json'
request.body = {
protocol_type: '{{protocol_type}}',
domain: '{{domain}}',
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}}
}.to_json
response = http.request(request)
puts JSON.parse(response.body)
<?php
$url = 'https://api.hookpulse.io/v1/api/add_domain/';
$data = [
'protocol_type' => '{{protocol_type}}',
'domain' => '{{domain}}',
'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}}
];
$ch = curl_init($url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_POSTFIELDS, json_encode($data));
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;
?>
{
"success": true,
"details": "Domain added successfully"
}
Domain Setup
Add Domain
Add a new domain to your HookPulse account with rate limiting and concurrency control settings
POST
/
v1
/
api
/
add_domain
/
curl -X POST https://api.hookpulse.io/v1/api/add_domain/ \
-H "x-hookpulse-api-key: {{x-hookpulse-api-key}}" \
-H "x-brand-uuid: {{x-brand-uuid}}" \
-H "Content-Type: application/json" \
-d '{
"protocol_type": "{{protocol_type}}",
"domain": "{{domain}}",
"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}}
}'
const response = await fetch('https://api.hookpulse.io/v1/api/add_domain/', {
method: 'POST',
headers: {
'x-hookpulse-api-key': '{{x-hookpulse-api-key}}',
'x-brand-uuid': '{{x-brand-uuid}}',
'Content-Type': 'application/json'
},
body: JSON.stringify({
protocol_type: '{{protocol_type}}',
domain: '{{domain}}',
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}}
})
});
const data = await response.json();
console.log(data);
import requests
url = 'https://api.hookpulse.io/v1/api/add_domain/'
headers = {
'x-hookpulse-api-key': '{{x-hookpulse-api-key}}',
'x-brand-uuid': '{{x-brand-uuid}}',
'Content-Type': 'application/json'
}
payload = {
'protocol_type': '{{protocol_type}}',
'domain': '{{domain}}',
'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}}
}
response = requests.post(url, headers=headers, json=payload)
print(response.json())
require 'net/http'
require 'json'
require 'uri'
uri = URI('https://api.hookpulse.io/v1/api/add_domain/')
http = Net::HTTP.new(uri.host, uri.port)
http.use_ssl = true
request = Net::HTTP::Post.new(uri.path)
request['x-hookpulse-api-key'] = '{{x-hookpulse-api-key}}'
request['x-brand-uuid'] = '{{x-brand-uuid}}'
request['Content-Type'] = 'application/json'
request.body = {
protocol_type: '{{protocol_type}}',
domain: '{{domain}}',
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}}
}.to_json
response = http.request(request)
puts JSON.parse(response.body)
<?php
$url = 'https://api.hookpulse.io/v1/api/add_domain/';
$data = [
'protocol_type' => '{{protocol_type}}',
'domain' => '{{domain}}',
'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}}
];
$ch = curl_init($url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_POSTFIELDS, json_encode($data));
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;
?>
{
"success": true,
"details": "Domain added successfully"
}
Add a new domain to your HookPulse account with rate limiting and concurrency control settings.
Example request
curl -X POST https://api.hookpulse.io/v1/api/add_domain/ \
-H "x-hookpulse-api-key: {{x-hookpulse-api-key}}" \
-H "x-brand-uuid: {{x-brand-uuid}}" \
-H "Content-Type: application/json" \
-d '{
"protocol_type": "{{protocol_type}}",
"domain": "{{domain}}",
"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}}
}'
const response = await fetch('https://api.hookpulse.io/v1/api/add_domain/', {
method: 'POST',
headers: {
'x-hookpulse-api-key': '{{x-hookpulse-api-key}}',
'x-brand-uuid': '{{x-brand-uuid}}',
'Content-Type': 'application/json'
},
body: JSON.stringify({
protocol_type: '{{protocol_type}}',
domain: '{{domain}}',
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}}
})
});
const data = await response.json();
console.log(data);
import requests
url = 'https://api.hookpulse.io/v1/api/add_domain/'
headers = {
'x-hookpulse-api-key': '{{x-hookpulse-api-key}}',
'x-brand-uuid': '{{x-brand-uuid}}',
'Content-Type': 'application/json'
}
payload = {
'protocol_type': '{{protocol_type}}',
'domain': '{{domain}}',
'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}}
}
response = requests.post(url, headers=headers, json=payload)
print(response.json())
require 'net/http'
require 'json'
require 'uri'
uri = URI('https://api.hookpulse.io/v1/api/add_domain/')
http = Net::HTTP.new(uri.host, uri.port)
http.use_ssl = true
request = Net::HTTP::Post.new(uri.path)
request['x-hookpulse-api-key'] = '{{x-hookpulse-api-key}}'
request['x-brand-uuid'] = '{{x-brand-uuid}}'
request['Content-Type'] = 'application/json'
request.body = {
protocol_type: '{{protocol_type}}',
domain: '{{domain}}',
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}}
}.to_json
response = http.request(request)
puts JSON.parse(response.body)
<?php
$url = 'https://api.hookpulse.io/v1/api/add_domain/';
$data = [
'protocol_type' => '{{protocol_type}}',
'domain' => '{{domain}}',
'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}}
];
$ch = curl_init($url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_POSTFIELDS, json_encode($data));
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;
?>
Request body
| Field | Type | Required | Description |
|---|---|---|---|
protocol_type | string | Yes | Protocol type for the domain (e.g., “https”, “http”) |
domain | string | Yes | Domain name to add (e.g., “api.hookpulse.io”) |
rate_limit_enabled | boolean | Yes | Enable rate limiting for this domain |
concurrency_control_enabled | boolean | Yes | Enable concurrency control for this domain |
max_concurrent_jobs | integer | Yes | Maximum number of concurrent jobs allowed |
max_requests_per_second | integer | Yes | Maximum requests per second allowed |
Example response
{
"success": true,
"details": "Domain added successfully"
}
Response fields
| Field | Type | Description |
|---|---|---|
success | boolean | Indicates if the request was successful |
details | string | Success message or error details |
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.
Body
application/json
Domain configuration
Protocol type for the domain (e.g., 'https', 'http')
Domain name to add
Enable rate limiting for this domain
Enable concurrency control for this domain
Maximum number of concurrent jobs allowed
Maximum requests per second allowed
⌘I

