Skip to main content
GET
/
api
/
v3
/
admin
/
webhook_endpoints
Spree Admin SDK
import { createAdminClient } from '@spree/admin-sdk'

const client = createAdminClient({
  baseUrl: 'https://your-store.com',
  secretKey: 'sk_xxx',
})

const endpoints = await client.webhookEndpoints.list()
{
  "data": [
    {
      "id": "whe_UkLWZg9DAJ",
      "name": "Order pipeline",
      "url": "https://shop.example.com/webhooks/orders",
      "active": true,
      "subscriptions": [
        "order.created",
        "order.completed",
        "product.created"
      ],
      "disabled_reason": null,
      "created_at": "2026-06-05T13:13:14.683Z",
      "updated_at": "2026-06-05T13:13:14.683Z",
      "disabled_at": null,
      "secret_key": null,
      "last_delivery_at": null,
      "recent_delivery_count": 0,
      "recent_failure_count": 0,
      "total_delivery_count": 0,
      "successful_delivery_count": 0,
      "failed_delivery_count": 0
    }
  ],
  "meta": {
    "page": 1,
    "limit": 25,
    "count": 1,
    "pages": 1,
    "from": 1,
    "to": 1,
    "in": 1,
    "previous": null,
    "next": null
  }
}

Authorizations

x-spree-api-key
string
header
required

Secret API key for admin access

Authorization
string
header
required

JWT token for admin user authentication

Headers

x-spree-api-key
string
required
Authorization
string
required

Bearer token for admin authentication

Query Parameters

page
integer

Page number

limit
integer

Number of records per page

q[name_cont]
string

Filter by name (contains)

q[url_cont]
string

Filter by URL (contains)

sort
string

Sort by field. Prefix with - for descending (e.g., -created_at).

fields
string

Comma-separated list of fields to include. id is always included.

Response

webhook endpoints found