Get subscription
Retrieve one subscription to inspect its destination, trigger, active state, and current status. Check system_message when a subscription is inactive or deliveries are not behaving as expected.
Webhook secrets are intentionally absent from read responses. Peerlogic returns secret_key only in the original create response.
curl --request GET \
--url https://api.prod.peerlogic.com/api/subscriptions/{id}/ \
--header 'Authorization: Bearer <token>'import requests
url = "https://api.prod.peerlogic.com/api/subscriptions/{id}/"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://api.prod.peerlogic.com/api/subscriptions/{id}/', 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.prod.peerlogic.com/api/subscriptions/{id}/",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>"
],
]);
$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.prod.peerlogic.com/api/subscriptions/{id}/"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Authorization", "Bearer <token>")
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.prod.peerlogic.com/api/subscriptions/{id}/")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.prod.peerlogic.com/api/subscriptions/{id}/")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Authorization"] = 'Bearer <token>'
response = http.request(request)
puts response.read_body{
"id": "<SUBSCRIPTION_ID>",
"created_at": "2026-09-15T19:18:09Z",
"modified_at": "2026-09-15T19:18:09Z",
"name": "Missed-call events",
"description": "Notify our integration when a call is missed",
"destination": "https://partner.example.com/webhooks/peerlogic",
"extra": null,
"practice_id": "<PRACTICE_ID>",
"subscription_type": "webhook",
"is_active": true,
"system_message": null,
"trigger": {
"trigger_type": "missed_call"
}
}{
"detail": "'Authorization' header is required"
}{
"message": "No permissions assigned to permit access to this endpoint."
}{
"detail": "No Subscription matches the given query."
}Authorizations
Bearer access token issued by Peerlogic.
Path Parameters
A unique value identifying this subscription.
Response
The requested subscription.
Customer-defined name used to identify the subscription.
1 - 128Time when the subscription was created.
Customer-defined explanation of the workflow this subscription supports.
255Delivery destination. Webhook destinations must be HTTPS URLs.
1Optional customer-defined value available for webhook subscriptions.
255Unique subscription ID. Webhook deliveries include this value in X-Subscription-ID.
1Whether the subscription is enabled to produce deliveries.
Time when the subscription was last changed.
Practice whose activity is evaluated for this subscription.
Delivery channel used by the subscription. Customer webhook integrations use webhook.
webhook, email, sms, noop Current verification or delivery status requiring attention, or null when no status is present.
email_verification_required, phone_verification_required, disabled_for_consecutive_error_responses, disabled_for_404_response, unexpected_response_received Condition that produces a delivery for this subscription.
Show child attributes
Show child attributes
Was this page helpful?
curl --request GET \
--url https://api.prod.peerlogic.com/api/subscriptions/{id}/ \
--header 'Authorization: Bearer <token>'import requests
url = "https://api.prod.peerlogic.com/api/subscriptions/{id}/"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://api.prod.peerlogic.com/api/subscriptions/{id}/', 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.prod.peerlogic.com/api/subscriptions/{id}/",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>"
],
]);
$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.prod.peerlogic.com/api/subscriptions/{id}/"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Authorization", "Bearer <token>")
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.prod.peerlogic.com/api/subscriptions/{id}/")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.prod.peerlogic.com/api/subscriptions/{id}/")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Authorization"] = 'Bearer <token>'
response = http.request(request)
puts response.read_body{
"id": "<SUBSCRIPTION_ID>",
"created_at": "2026-09-15T19:18:09Z",
"modified_at": "2026-09-15T19:18:09Z",
"name": "Missed-call events",
"description": "Notify our integration when a call is missed",
"destination": "https://partner.example.com/webhooks/peerlogic",
"extra": null,
"practice_id": "<PRACTICE_ID>",
"subscription_type": "webhook",
"is_active": true,
"system_message": null,
"trigger": {
"trigger_type": "missed_call"
}
}{
"detail": "'Authorization' header is required"
}{
"message": "No permissions assigned to permit access to this endpoint."
}{
"detail": "No Subscription matches the given query."
}