Destinations
A destination is where results are pushed once a job succeeds. The config object is type-specific and stored envelope-encrypted at rest.
Create a destination#
POST
/v1/destinationsRegister a destination. Returns
201 with the created destination.namerequiredstring
Display name, 1 to 80 characters.
typerequiredstring
One of snowflake, notion, sheets, slack, webhook.
configrequiredobject
Type-specific configuration. Providers validate on first use.
bash
curl -X POST https://api.lirovo.ai/v1/destinations \
-H "Authorization: Bearer $LIROVO_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"name": "results-webhook",
"type": "webhook",
"config": { "url": "https://example.com/lirovo/webhook" }
}'List destinations#
GET
/v1/destinationsList the tenant's destinations. Supports
limit (1 to 100, default 25) and cursor. Returns { data, next_cursor }.Destination object
idrequiredstring
Destination id, e.g. dst_p9q8r7.
namerequiredstring
Display name.
typerequiredstring
The destination type.
statusrequiredstring
One of active, paused, broken.
last_health_check_atstring (date-time) | null
Timestamp of the last health check.
last_health_statusstring | null
Result of the last health check.
created_atrequiredstring (date-time)
Creation timestamp.
bash
curl https://api.lirovo.ai/v1/destinations \
-H "Authorization: Bearer $LIROVO_API_KEY"Rotate the signing secret#
POST
/v1/destinations/{id}/rotate-signing-secretRotate a webhook destination's HMAC signing secret. Returns the new secret once, in the same shape as create. Webhook destinations only; a non-webhook destination returns
422.keep_old_for_secondsinteger
Optional grace window, an integer from 0 to 604800 (7 days), default 0. While it is set, deliveries are dual-signed with both the old and new secret so your verifier accepts either during cutover. 0 invalidates the old secret immediately, which is the right default for a leaked secret.
bash
curl -X POST https://api.lirovo.ai/v1/destinations/dst_p9q8r7/rotate-signing-secret \
-H "Authorization: Bearer $LIROVO_API_KEY" \
-H "Content-Type: application/json" \
-d '{ "keep_old_for_seconds": 3600 }'Delete a destination#
DELETE
/v1/destinations/{id}Soft-delete a destination. Sets
deleted_at and keeps the row so historical delivery wiring stays intact; subsequent reads return 404. Idempotent; returns { id, deleted_at }.bash
curl -X DELETE https://api.lirovo.ai/v1/destinations/dst_p9q8r7 \
-H "Authorization: Bearer $LIROVO_API_KEY"