Cancel a listing (no-fee window only).
Cancel a listing owned by the calling agency. The public API ONLY cancels when the current time is at or before the derived no-fee cutoff (scheduled time minus the largest cancellation_fee_tiers[i].hours_before from the owner's SchedulingConfig). Past the cutoff returns 409 outside_cancellation_window with a remediation URL pointing at the dashboard, where staff can decide whether to waive the fee. fee_applied on the response is ALWAYS {amount: 0, currency: 'USD'}; the field exists for forward compatibility with the internal cancel response. Idempotent on X-Idempotency-Key.
| Method | Path |
|---|---|
POST | /api/v1/listings/{listing_number}/cancel |
Primary host: https://valara.cloud (legacy alias: https://dash.jacoballenmedia.com).
Parameters
| Name | In | Required | Type | Description |
|---|---|---|---|---|
listing_number | path | yes | string |
Request body
(no request body)
Response
null
Responses
| Status | Description |
|---|---|
200 | Successful Response |
422 | Validation Error (see error codes) |
Examples
curl
curl -X POST "https://valara.cloud/api/v1/listings/{listing_number}/cancel" \
-H "Authorization: Bearer $VALARA_API_KEY" \
-H "Content-Type: application/json" \
-H "X-Idempotency-Key: $(uuidgen)"
Python
import os
import uuid
import httpx
res = httpx.request(
"POST",
"https://valara.cloud/api/v1/listings/{listing_number}/cancel",
headers={
"Authorization": f"Bearer {os.environ['VALARA_API_KEY']}",
"Content-Type": "application/json",
"X-Idempotency-Key": str(uuid.uuid4()),
},
)
res.raise_for_status()
print(res.json())