Changelog
Reverse-chronological history of public API changes. We add fields and
event types additively within a major version; removing or renaming a
field bumps the URL path prefix (/api/v2/) and ships with a 12-month
deprecation window.
Every entry carries the release date, a one-line summary, and a pointer to the commit or pull request on GitHub. Subscribe to the announcement mailing list at support@valara.cloud to be notified before each release.
2026-05-29 - Initial public release
First GA cut of the Media Agency Public API. Available on both production hosts per CLAUDE.md rule 10a:
- Primary:
https://valara.cloud/api/v1/ - Legacy alias:
https://dash.jacoballenmedia.com/api/v1/(kept until the legacy host retires; date to be announced).
Endpoints shipped (10)
Listing lifecycle:
POST /api/v1/listings- create a listing.GET /api/v1/listings- paginated listing index.GET /api/v1/listings/{listing_number}- fetch a single listing.PATCH /api/v1/listings/{listing_number}/status- transition lifecycle status.POST /api/v1/listings/{listing_number}/cancel- cancel within the no-fee cutoff window.PATCH /api/v1/listings/{listing_number}/sections/{name}- update thematterportorfloorplansection.POST /api/v1/listings/{listing_number}/media- upload media against the listing.GET /api/v1/listings/{listing_number}/orders- list invoices and payments tied to the listing.
Scheduling:
GET /api/v1/scheduling/availability- read available slots.
Users and hierarchy:
GET /api/v1/users- paginated users under the agency hierarchy.
Webhook management (carried forward from the private beta):
GET /api/v1/webhooks/events- catalog of 16 public event types.POST /api/v1/webhooks/endpoints- register a receiver; returns the signing secret exactly once.
Webhook events shipped (16)
Listing lifecycle: listing.created, listing.updated,
listing.status_changed, listing.cancelled, listing.section_modified.
Appointment lifecycle: appointment.scheduled,
appointment.rescheduled, appointment.cancelled,
appointment.orphan.detected.
Media: media.delivery.completed, media.delivery.failed.
Billing: invoice.payment_made, subscription.created,
subscription.cancelled.
User lifecycle: user.signed_up, user.hierarchy_changed,
user.deactivated.
Known limitations
- No official SDK. We publish the OpenAPI spec at
https://valara.cloud/api/openapi.jsonand a Postman collection (link in the SDKs page). Unofficial SDKs can be generated viaopenapi-generatoror similar tools. - No write access to user profiles or billing. The public API is read-only for user data and billing; mutations for these domains stay in the dashboard. See the deny list for the full excluded surface.
- Rate-limit tuning is manual. Steady-state QPS that exceeds the defaults at rate limits requires a support ticket to raise the per-key override.
- Webhook replay from DLQ is UI-only. Once a delivery lands in the dead-letter queue, you replay it from Settings > API Keys > Webhook Endpoint > Deliveries in the dashboard. A headless replay endpoint is on the post-launch roadmap.
Security notes
- Cross-agency reads always return
404(never403) per the existence-hiding contract documented on the error codes page. - Every mutation requires an
X-Idempotency-Keyheader; replays are serialized per(agency_id, idempotency_key)with a 24h window. - Webhook deliveries are HMAC-SHA256 signed. Receivers MUST verify the signature and reject deliveries older than 5 minutes. See the webhook overview for the bit-exact recipe.
Upcoming
The following items are on the post-launch roadmap and MAY appear in future release notes. Dates are indicative and subject to change.
- Service-level SLA and status page integration. The status page
at
https://status.valara.cloudis live; SLA numbers for the public API will be published alongside the first quarterly report. - Webhook DLQ replay API. Headless replay of dead-lettered
deliveries via
POST /api/v1/webhooks/endpoints/{id}/deliveries/{id}:replay. - Per-endpoint pagination limits. Today's 200-row cap is uniform; future work may tune per endpoint based on observed usage.
Subscribe to release announcements by emailing support@valara.cloud with the subject "subscribe api changelog".