Recover failed deliveries

POST
/v1/hooks/applications/{application}/endpoints/{endpoint_id}/recover

Queues every delivery to the endpoint that failed, of messages sent since since, for one more attempt each, e.g. after its receiver was down. COSS works through them in the background (oldest first); follow status with the returned recovery. The endpoint must be enabled.

Authorization

bearerAuth
headerAuthorizationBearer <token>

A secret API key from the dashboard: coss_live_… for production environments, coss_test_… for sandbox environments.

Path Parameters

application*string

The application's id (happ_…) or your uid for it.

endpoint_id*string

The endpoint's id.

Header Parameters

Coss-Version?"2026-10-10"

The API version (a date) to use for this request. Defaults to your organization's version, pinned to the latest one when it first used the API and upgraded from the dashboard. The SDK always sends the version it was built for.

Value in"2026-10-10"

Request Body

application/json
  1. body
since*string

Requeue deliveries that failed, of messages sent from this time until now.

Formatdate-time

Response Body

The recovery.

application/json
  1. response
object*"hook_endpoint_recovery"
Value in"hook_endpoint_recovery"
id*string
endpoint_id*string
since*string
Formatdate-time
until*string
Formatdate-time
status*string

pending while COSS is still requeueing deliveries (in the background).

Value in"pending""completed"
requeued*integer

Deliveries requeued so far.

created_at*string
Formatdate-time
completed_at*|
Formatdate-time
import { Coss } from "coss";const coss = new Coss({  apiKey: process.env.COSS_API_KEY,  baseUrl: "https://api.coss.com",});const { data, error } = await coss.hooks.endpoints.recover("customer_8812", "hep_01k7c8m4q2f3e9v6t5r1n0p8yz", {  since: "2026-01-15T00:00:00.000Z",});
{  "object": "hook_endpoint_recovery",  "id": "hrec_01k7c8m4q2f3e9v6t5r1n0p8yz",  "endpoint_id": "hep_01k7c8m4q2f3e9v6t5r1n0p8yz",  "since": "2026-01-15T00:00:00.000Z",  "until": "2026-01-15T09:30:00.000Z",  "status": "pending",  "requeued": 0,  "created_at": "2026-01-15T09:30:00.000Z",  "completed_at": null}