curl --request POST \
--url https://api.cargado.com/webhooks/endpoint/register \
--header 'Content-Type: application/json' \
--header 'api-key: <api-key>' \
--data '
{
"url": "<string>",
"description": "<string>",
"filterTypes": [],
"channels": [
"<string>"
],
"throttleRate": 500,
"disabled": true,
"metadata": {},
"secret": "<string>"
}
'import requests
url = "https://api.cargado.com/webhooks/endpoint/register"
payload = {
"url": "<string>",
"description": "<string>",
"filterTypes": [],
"channels": ["<string>"],
"throttleRate": 500,
"disabled": True,
"metadata": {},
"secret": "<string>"
}
headers = {
"api-key": "<api-key>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {'api-key': '<api-key>', 'Content-Type': 'application/json'},
body: JSON.stringify({
url: '<string>',
description: '<string>',
filterTypes: [],
channels: ['<string>'],
throttleRate: 500,
disabled: true,
metadata: {},
secret: '<string>'
})
};
fetch('https://api.cargado.com/webhooks/endpoint/register', 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.cargado.com/webhooks/endpoint/register",
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([
'url' => '<string>',
'description' => '<string>',
'filterTypes' => [
],
'channels' => [
'<string>'
],
'throttleRate' => 500,
'disabled' => true,
'metadata' => [
],
'secret' => '<string>'
]),
CURLOPT_HTTPHEADER => [
"Content-Type: application/json",
"api-key: <api-key>"
],
]);
$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://api.cargado.com/webhooks/endpoint/register"
payload := strings.NewReader("{\n \"url\": \"<string>\",\n \"description\": \"<string>\",\n \"filterTypes\": [],\n \"channels\": [\n \"<string>\"\n ],\n \"throttleRate\": 500,\n \"disabled\": true,\n \"metadata\": {},\n \"secret\": \"<string>\"\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("api-key", "<api-key>")
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://api.cargado.com/webhooks/endpoint/register")
.header("api-key", "<api-key>")
.header("Content-Type", "application/json")
.body("{\n \"url\": \"<string>\",\n \"description\": \"<string>\",\n \"filterTypes\": [],\n \"channels\": [\n \"<string>\"\n ],\n \"throttleRate\": 500,\n \"disabled\": true,\n \"metadata\": {},\n \"secret\": \"<string>\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.cargado.com/webhooks/endpoint/register")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["api-key"] = '<api-key>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"url\": \"<string>\",\n \"description\": \"<string>\",\n \"filterTypes\": [],\n \"channels\": [\n \"<string>\"\n ],\n \"throttleRate\": 500,\n \"disabled\": true,\n \"metadata\": {},\n \"secret\": \"<string>\"\n}"
response = http.request(request)
puts response.read_body{
"endpoint": {
"id": "<string>",
"url": "<string>",
"description": "<string>",
"filterTypes": [],
"channels": [
"<string>"
],
"throttleRate": 123,
"disabled": true,
"metadata": {},
"createdAt": "<string>",
"updatedAt": "<string>"
},
"secret": "<string>"
}{
"message": "<string>"
}Register webhook endpoint
Create a webhook endpoint for your organization. Cargado will POST event payloads to the given URL, signed with the returned secret so you can verify authenticity. The signing secret is only included in this response — store it securely.
curl --request POST \
--url https://api.cargado.com/webhooks/endpoint/register \
--header 'Content-Type: application/json' \
--header 'api-key: <api-key>' \
--data '
{
"url": "<string>",
"description": "<string>",
"filterTypes": [],
"channels": [
"<string>"
],
"throttleRate": 500,
"disabled": true,
"metadata": {},
"secret": "<string>"
}
'import requests
url = "https://api.cargado.com/webhooks/endpoint/register"
payload = {
"url": "<string>",
"description": "<string>",
"filterTypes": [],
"channels": ["<string>"],
"throttleRate": 500,
"disabled": True,
"metadata": {},
"secret": "<string>"
}
headers = {
"api-key": "<api-key>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {'api-key': '<api-key>', 'Content-Type': 'application/json'},
body: JSON.stringify({
url: '<string>',
description: '<string>',
filterTypes: [],
channels: ['<string>'],
throttleRate: 500,
disabled: true,
metadata: {},
secret: '<string>'
})
};
fetch('https://api.cargado.com/webhooks/endpoint/register', 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.cargado.com/webhooks/endpoint/register",
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([
'url' => '<string>',
'description' => '<string>',
'filterTypes' => [
],
'channels' => [
'<string>'
],
'throttleRate' => 500,
'disabled' => true,
'metadata' => [
],
'secret' => '<string>'
]),
CURLOPT_HTTPHEADER => [
"Content-Type: application/json",
"api-key: <api-key>"
],
]);
$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://api.cargado.com/webhooks/endpoint/register"
payload := strings.NewReader("{\n \"url\": \"<string>\",\n \"description\": \"<string>\",\n \"filterTypes\": [],\n \"channels\": [\n \"<string>\"\n ],\n \"throttleRate\": 500,\n \"disabled\": true,\n \"metadata\": {},\n \"secret\": \"<string>\"\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("api-key", "<api-key>")
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://api.cargado.com/webhooks/endpoint/register")
.header("api-key", "<api-key>")
.header("Content-Type", "application/json")
.body("{\n \"url\": \"<string>\",\n \"description\": \"<string>\",\n \"filterTypes\": [],\n \"channels\": [\n \"<string>\"\n ],\n \"throttleRate\": 500,\n \"disabled\": true,\n \"metadata\": {},\n \"secret\": \"<string>\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.cargado.com/webhooks/endpoint/register")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["api-key"] = '<api-key>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"url\": \"<string>\",\n \"description\": \"<string>\",\n \"filterTypes\": [],\n \"channels\": [\n \"<string>\"\n ],\n \"throttleRate\": 500,\n \"disabled\": true,\n \"metadata\": {},\n \"secret\": \"<string>\"\n}"
response = http.request(request)
puts response.read_body{
"endpoint": {
"id": "<string>",
"url": "<string>",
"description": "<string>",
"filterTypes": [],
"channels": [
"<string>"
],
"throttleRate": 123,
"disabled": true,
"metadata": {},
"createdAt": "<string>",
"updatedAt": "<string>"
},
"secret": "<string>"
}{
"message": "<string>"
}Authorizations
Body
The HTTPS URL where webhook payloads will be sent via POST
^https://"https://api.example.com/webhooks"
A label for this endpoint, visible in the dashboard and API responses
256"Production bid notifications"
Only deliver events matching these types. Omit to receive all event types.
50Event types available for webhook subscriptions.
Use these values in filterTypes to receive only specific events.
bid.created, bid.accepted, bid.rejected, bid.revoked, bid.closed, bid.countered, bid.counter_accepted, bid.counter_revoked, bid.counter_rejected Channels to subscribe to (e.g. app installation IDs to scope delivery). Omit to receive events on all channels.
50Max events per second delivered to this endpoint. Omit for unlimited.
1 <= x <= 1000Set to true to create the endpoint in a paused state
Arbitrary key-value pairs to attach to this endpoint. Maximum 50 entries.
Show child attributes
Show child attributes
Provide your own signing secret. Omit to have one generated automatically.
1 - 256
