← API overview
Read the delivery log
GET
/v1/app/webhooks/{webhook_id}/deliveriesrequires app.manageWhat Stride sent to this endpoint recently and what came back, newest first. This is the first place to look when an app is missing events: it distinguishes "we never sent it" from "we sent it and your endpoint returned 500".
Kept for seven days.
Path parameters
webhook_idstringrequiredThe webhook subscription ID (`whs_...`), as returned when you created it.
Query parameters
limitintegerHow many attempts to return. Defaults to 50, maximum 100.
Example
bash
curl -X GET "https://api.stride.is/v1/app/webhooks/{webhook_id}/deliveries" \
-H "Authorization: Bearer $STRIDE_TOKEN"Response 200
Success.
deliveriesobject[]always presentathlete_idstringalways presentattemptintegeralways presentattempted_atstringalways presenterrorstringeventstringalways presentidstringalways presentobject_idstringstatus_codeintegeralways presentsucceededbooleanalways present
Errors
Every error is an RFC 9457 problem document. Branch on its code, which is stable; detail is prose and may be reworded.
400The request was malformed: an unparseable date, an unknown enum value, or a parameter combination that cannot be satisfied.401No access token was supplied, or it is not valid for this API.402The Stride account the token belongs to has no active subscription or trial.403The token does not hold the scope this endpoint requires, or may not act on the athlete or team named.404No such resource, or it is not visible to this token. The two are deliberately indistinguishable.405The path exists but does not serve this method. The Allow header lists the ones it does.429A rate limit was exceeded. Retry after the period in the Retry-After header.500Something failed on Stride's side. The failure is logged with a trace ID.