List Webhook Endpoints
curl --request GET \
--url https://api.hopnow.io/v1/customers/{customer_id}/webhook-endpoints \
--header 'X-API-Key: <api-key>'import requests
url = "https://api.hopnow.io/v1/customers/{customer_id}/webhook-endpoints"
headers = {"X-API-Key": "<api-key>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {'X-API-Key': '<api-key>'}};
fetch('https://api.hopnow.io/v1/customers/{customer_id}/webhook-endpoints', 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.hopnow.io/v1/customers/{customer_id}/webhook-endpoints",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"X-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"
"net/http"
"io"
)
func main() {
url := "https://api.hopnow.io/v1/customers/{customer_id}/webhook-endpoints"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("X-API-Key", "<api-key>")
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.hopnow.io/v1/customers/{customer_id}/webhook-endpoints")
.header("X-API-Key", "<api-key>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.hopnow.io/v1/customers/{customer_id}/webhook-endpoints")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["X-API-Key"] = '<api-key>'
response = http.request(request)
puts response.read_body{
"items": [
{
"id": "<string>",
"object": "<string>",
"url": "<string>",
"events": [
{}
],
"description": "<string>",
"created": "<string>",
"updated": "<string>",
"created_by": "<string>",
"updated_by": "<string>",
"last_used_at": "<string>",
"deleted_at": "<string>"
}
],
"page": 123,
"size": 123,
"total": 123,
"pages": 123
}Webhooks
List Webhook Endpoints
Retrieve a paginated list of webhook endpoints for a customer
GET
/
v1
/
customers
/
{customer_id}
/
webhook-endpoints
List Webhook Endpoints
curl --request GET \
--url https://api.hopnow.io/v1/customers/{customer_id}/webhook-endpoints \
--header 'X-API-Key: <api-key>'import requests
url = "https://api.hopnow.io/v1/customers/{customer_id}/webhook-endpoints"
headers = {"X-API-Key": "<api-key>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {'X-API-Key': '<api-key>'}};
fetch('https://api.hopnow.io/v1/customers/{customer_id}/webhook-endpoints', 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.hopnow.io/v1/customers/{customer_id}/webhook-endpoints",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"X-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"
"net/http"
"io"
)
func main() {
url := "https://api.hopnow.io/v1/customers/{customer_id}/webhook-endpoints"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("X-API-Key", "<api-key>")
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.hopnow.io/v1/customers/{customer_id}/webhook-endpoints")
.header("X-API-Key", "<api-key>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.hopnow.io/v1/customers/{customer_id}/webhook-endpoints")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["X-API-Key"] = '<api-key>'
response = http.request(request)
puts response.read_body{
"items": [
{
"id": "<string>",
"object": "<string>",
"url": "<string>",
"events": [
{}
],
"description": "<string>",
"created": "<string>",
"updated": "<string>",
"created_by": "<string>",
"updated_by": "<string>",
"last_used_at": "<string>",
"deleted_at": "<string>"
}
],
"page": 123,
"size": 123,
"total": 123,
"pages": 123
}The list includes deleted endpoints. An endpoint is active when
deleted_at is null.
Signing secrets are never included.Path Parameters
string
required
The customer’s external ID (starts with
cus_)Query Parameters
integer
default:"1"
Page number (minimum 1)
integer
default:"10"
Number of endpoints per page (1-100)
Response
array
Webhook endpoints in the current page
Show Webhook Endpoint Fields
Show Webhook Endpoint Fields
string
Webhook endpoint identifier (starts with
wh_)string
Always returns
"webhook_endpoint"string
Webhook delivery URL
array
Subscribed event types
string
Webhook description, or
nullstring
ISO 8601 creation timestamp
string
ISO 8601 last-update timestamp
string
Identifier of the actor that created the endpoint, or
nullstring
Identifier of the actor that last updated the endpoint, or
nullstring
Timestamp of the most recent successful delivery, or
nullstring
Deletion timestamp, or
null when the endpoint is activeinteger
Current page number
integer
Number of items requested per page
integer
Total number of endpoints, including deleted endpoints
integer
Total number of pages
Response Example
{
"items": [
{
"id": "wh_1234567890abcdefghijklmn",
"object": "webhook_endpoint",
"url": "https://api.mycompany.com/webhooks/hopnow",
"events": ["deposit.received", "withdraw.completed"],
"description": "Production webhook",
"created": "2026-07-15T02:00:00Z",
"updated": "2026-07-15T02:00:00Z",
"created_by": null,
"updated_by": null,
"last_used_at": null,
"deleted_at": null
},
{
"id": "wh_fedcba098765zyxwvutsrqpo",
"object": "webhook_endpoint",
"url": "https://archive.mycompany.com/webhooks",
"events": ["account.updated"],
"description": "Retired endpoint",
"created": "2026-06-01T00:00:00Z",
"updated": "2026-07-01T00:00:00Z",
"created_by": null,
"updated_by": null,
"last_used_at": null,
"deleted_at": "2026-07-01T00:00:00Z"
}
],
"page": 1,
"size": 10,
"total": 2,
"pages": 1
}
⌘I