Webhooks
Get Webhook Details
Get detailed information about a specific webhook.
GET
/
webhooks
/
{webhook_id}
JavaScript
import DodoPayments from 'dodopayments';
const client = new DodoPayments({
bearerToken: process.env['DODO_PAYMENTS_API_KEY'], // This is the default and can be omitted
});
const webhookDetails = await client.webhooks.retrieve('whk_YdWqVEGKmSYKbsIyDxEab');
console.log(webhookDetails.id);import os
from dodopayments import DodoPayments
client = DodoPayments(
bearer_token=os.environ.get("DODO_PAYMENTS_API_KEY"), # This is the default and can be omitted
)
webhook_details = client.webhooks.retrieve(
"whk_YdWqVEGKmSYKbsIyDxEab",
)
print(webhook_details.id)package main
import (
"context"
"fmt"
"github.com/dodopayments/dodopayments-go"
"github.com/dodopayments/dodopayments-go/option"
)
func main() {
client := dodopayments.NewClient(
option.WithBearerToken("My Bearer Token"),
)
webhookDetails, err := client.Webhooks.Get(context.TODO(), "whk_YdWqVEGKmSYKbsIyDxEab")
if err != nil {
panic(err.Error())
}
fmt.Printf("%+v\n", webhookDetails.ID)
}package com.dodopayments.api.example;
import com.dodopayments.api.client.DodoPaymentsClient;
import com.dodopayments.api.client.okhttp.DodoPaymentsOkHttpClient;
import com.dodopayments.api.models.webhooks.WebhookDetails;
import com.dodopayments.api.models.webhooks.WebhookRetrieveParams;
public final class Main {
private Main() {}
public static void main(String[] args) {
DodoPaymentsClient client = DodoPaymentsOkHttpClient.fromEnv();
WebhookDetails webhookDetails = client.webhooks().retrieve("whk_YdWqVEGKmSYKbsIyDxEab");
}
}package com.dodopayments.api.example
import com.dodopayments.api.client.DodoPaymentsClient
import com.dodopayments.api.client.okhttp.DodoPaymentsOkHttpClient
import com.dodopayments.api.models.webhooks.WebhookDetails
import com.dodopayments.api.models.webhooks.WebhookRetrieveParams
fun main() {
val client: DodoPaymentsClient = DodoPaymentsOkHttpClient.fromEnv()
val webhookDetails: WebhookDetails = client.webhooks().retrieve("whk_YdWqVEGKmSYKbsIyDxEab")
}require "dodopayments"
dodo_payments = Dodopayments::Client.new(
bearer_token: "My Bearer Token",
environment: "test_mode" # defaults to "live_mode"
)
webhook_details = dodo_payments.webhooks.retrieve("whk_YdWqVEGKmSYKbsIyDxEab")
puts(webhook_details)<?php
require_once dirname(__DIR__) . '/vendor/autoload.php';
use Dodopayments\Client;
use Dodopayments\Core\Exceptions\APIException;
$client = new Client(
bearerToken: getenv('DODO_PAYMENTS_API_KEY') ?: 'My Bearer Token',
environment: 'test_mode',
);
try {
$webhookDetails = $client->webhooks->retrieve('whk_YdWqVEGKmSYKbsIyDxEab');
var_dump($webhookDetails);
} catch (APIException $e) {
echo $e->getMessage();
}using System;
using DodoPayments.Client;
using DodoPayments.Client.Models.Webhooks;
DodoPaymentsClient client = new();
WebhookRetrieveParams parameters = new()
{
WebhookID = "whk_YdWqVEGKmSYKbsIyDxEab"
};
var webhookDetails = await client.Webhooks.Retrieve(parameters);
Console.WriteLine(webhookDetails);use dodopayments::Client;
#[tokio::main]
async fn main() -> dodopayments::Result<()> {
let client = Client::from_env()?;
let webhook_id = "webhook_id";
let result = client
.webhooks()
.retrieve()
.webhook_id(webhook_id)
.await?;
println!("{result:?}");
Ok(())
}curl --request GET \
--url https://test.dodopayments.com/webhooks/{webhook_id} \
--header 'Authorization: Bearer <token>'{
"created_at": "<string>",
"description": "<string>",
"id": "<string>",
"metadata": {},
"updated_at": "<string>",
"url": "<string>",
"disabled": true,
"filter_types": [
"<string>"
],
"rate_limit": 1
}Authorizations
Bearer authentication header of the form Bearer <token>, where <token> is your auth token.
Path Parameters
Webhook ID
Response
Webhook details retrived.
Created at timestamp
An example webhook name.
The webhook's ID.
Metadata of the webhook
Show child attributes
Show child attributes
Updated at timestamp
Url endpoint of the webhook
Status of the webhook.
If true, events are not sent
Filter events to the webhook.
Webhook event will only be sent for events in the list.
Configured rate limit
Required range:
x >= 0Last modified on March 25, 2026
Was this page helpful?
⌘I
JavaScript
import DodoPayments from 'dodopayments';
const client = new DodoPayments({
bearerToken: process.env['DODO_PAYMENTS_API_KEY'], // This is the default and can be omitted
});
const webhookDetails = await client.webhooks.retrieve('whk_YdWqVEGKmSYKbsIyDxEab');
console.log(webhookDetails.id);import os
from dodopayments import DodoPayments
client = DodoPayments(
bearer_token=os.environ.get("DODO_PAYMENTS_API_KEY"), # This is the default and can be omitted
)
webhook_details = client.webhooks.retrieve(
"whk_YdWqVEGKmSYKbsIyDxEab",
)
print(webhook_details.id)package main
import (
"context"
"fmt"
"github.com/dodopayments/dodopayments-go"
"github.com/dodopayments/dodopayments-go/option"
)
func main() {
client := dodopayments.NewClient(
option.WithBearerToken("My Bearer Token"),
)
webhookDetails, err := client.Webhooks.Get(context.TODO(), "whk_YdWqVEGKmSYKbsIyDxEab")
if err != nil {
panic(err.Error())
}
fmt.Printf("%+v\n", webhookDetails.ID)
}package com.dodopayments.api.example;
import com.dodopayments.api.client.DodoPaymentsClient;
import com.dodopayments.api.client.okhttp.DodoPaymentsOkHttpClient;
import com.dodopayments.api.models.webhooks.WebhookDetails;
import com.dodopayments.api.models.webhooks.WebhookRetrieveParams;
public final class Main {
private Main() {}
public static void main(String[] args) {
DodoPaymentsClient client = DodoPaymentsOkHttpClient.fromEnv();
WebhookDetails webhookDetails = client.webhooks().retrieve("whk_YdWqVEGKmSYKbsIyDxEab");
}
}package com.dodopayments.api.example
import com.dodopayments.api.client.DodoPaymentsClient
import com.dodopayments.api.client.okhttp.DodoPaymentsOkHttpClient
import com.dodopayments.api.models.webhooks.WebhookDetails
import com.dodopayments.api.models.webhooks.WebhookRetrieveParams
fun main() {
val client: DodoPaymentsClient = DodoPaymentsOkHttpClient.fromEnv()
val webhookDetails: WebhookDetails = client.webhooks().retrieve("whk_YdWqVEGKmSYKbsIyDxEab")
}require "dodopayments"
dodo_payments = Dodopayments::Client.new(
bearer_token: "My Bearer Token",
environment: "test_mode" # defaults to "live_mode"
)
webhook_details = dodo_payments.webhooks.retrieve("whk_YdWqVEGKmSYKbsIyDxEab")
puts(webhook_details)<?php
require_once dirname(__DIR__) . '/vendor/autoload.php';
use Dodopayments\Client;
use Dodopayments\Core\Exceptions\APIException;
$client = new Client(
bearerToken: getenv('DODO_PAYMENTS_API_KEY') ?: 'My Bearer Token',
environment: 'test_mode',
);
try {
$webhookDetails = $client->webhooks->retrieve('whk_YdWqVEGKmSYKbsIyDxEab');
var_dump($webhookDetails);
} catch (APIException $e) {
echo $e->getMessage();
}using System;
using DodoPayments.Client;
using DodoPayments.Client.Models.Webhooks;
DodoPaymentsClient client = new();
WebhookRetrieveParams parameters = new()
{
WebhookID = "whk_YdWqVEGKmSYKbsIyDxEab"
};
var webhookDetails = await client.Webhooks.Retrieve(parameters);
Console.WriteLine(webhookDetails);use dodopayments::Client;
#[tokio::main]
async fn main() -> dodopayments::Result<()> {
let client = Client::from_env()?;
let webhook_id = "webhook_id";
let result = client
.webhooks()
.retrieve()
.webhook_id(webhook_id)
.await?;
println!("{result:?}");
Ok(())
}curl --request GET \
--url https://test.dodopayments.com/webhooks/{webhook_id} \
--header 'Authorization: Bearer <token>'{
"created_at": "<string>",
"description": "<string>",
"id": "<string>",
"metadata": {},
"updated_at": "<string>",
"url": "<string>",
"disabled": true,
"filter_types": [
"<string>"
],
"rate_limit": 1
}