List delivery attempts
List delivery attempts with optional filters for event, connection, destination, and status.
GET
/delivery-attempts
List delivery attempts with optional filters for event, connection, destination, and status.
Authentication
API Key (header: X-API-Key) API Key (cookie: better-auth.session_token)
Query Parameters
limit
string
optional
query
Max results (default 50, max 100)
Example:
"50"offset
string
optional
query
Offset for pagination
Example:
"0"event_id
string
optional
query
Filter by event ID
connection_id
string
optional
query
Filter by connection ID
destination_id
string
optional
query
Filter by destination ID
status
string
optional
query
Filter by delivery status
is_dlq
string
optional
query
Filter by DLQ status (1 = DLQ only)
Responses
200
Paginated list of delivery attempts
application/jsondelivery_attempts
object[]
REQUIRED
Array of:
id
string
REQUIRED
org_id
string
REQUIRED
env_id
string
REQUIRED
event_id
string
REQUIRED
connection_id
string
REQUIRED
destination_id
string
REQUIRED
request_url
string
REQUIRED
request_method
string
REQUIRED
request_headers
string | null
REQUIRED
request_body_size
integer
REQUIRED
response_status
integer | null
REQUIRED
response_headers
string | null
REQUIRED
response_body
string | null
REQUIRED
duration_ms
integer | null
REQUIRED
status
string
REQUIRED
error
string | null
REQUIRED
created_at
string
REQUIRED
attempt_number
integer | null
REQUIRED
next_retry_at
string | null
REQUIRED
is_dlq
integer | null
REQUIRED
dlq_at
string | null
REQUIRED
trigger_type
string | null
REQUIRED
connection_name
string | null
REQUIRED
destination_name
string | null
REQUIRED
pagination
object
REQUIRED
total
number
REQUIRED
limit
number
REQUIRED
offset
number
REQUIRED
has_more
boolean
REQUIRED
next_cursor
string | null
prev_cursor
string | null
401
Unauthorized
curl -X GET 'https://hookstream.io/v1/delivery-attempts' \
-H 'Authorization: Bearer YOUR_API_TOKEN'
const response = await fetch('https://hookstream.io/v1/delivery-attempts', {
method: 'GET',
headers: {
"Authorization": "Bearer YOUR_API_TOKEN"
}
});
const data = await response.json();
console.log(data);
import requests
headers = {
'Authorization': 'Bearer YOUR_API_TOKEN'
}
response = requests.get('https://hookstream.io/v1/delivery-attempts', headers=headers)
print(response.json())
package main
import (
"fmt"
"io"
"net/http"
)
func main() {
req, _ := http.NewRequest("GET", "https://hookstream.io/v1/delivery-attempts", nil)
req.Header.Set("Authorization", "Bearer YOUR_API_TOKEN")
resp, _ := http.DefaultClient.Do(req)
defer resp.Body.Close()
result, _ := io.ReadAll(resp.Body)
fmt.Println(string(result))
}
200
Response
{
"delivery_attempts": [
{
"id": "<string>",
"org_id": "<string>",
"env_id": "<string>",
"event_id": "<string>",
"connection_id": "<string>",
"destination_id": "<string>",
"request_url": "<string>",
"request_method": "<string>",
"request_headers": "<string>",
"request_body_size": 123,
"response_status": 123,
"response_headers": "<string>",
"response_body": "<string>",
"duration_ms": 123,
"status": "<string>",
"error": "<string>",
"created_at": "<string>",
"attempt_number": 123,
"next_retry_at": "<string>",
"is_dlq": 123,
"dlq_at": "<string>",
"trigger_type": "<string>",
"connection_name": "<string>",
"destination_name": "<string>"
}
],
"pagination": {
"total": 123,
"limit": 123,
"offset": 123,
"has_more": true,
"next_cursor": "<string>",
"prev_cursor": "<string>"
}
}
GET
/delivery-attempts