Changelog

    API Changelog

    Every change to the Public API v1, newest first. Additive changes ship continuously; anything breaking gets a new major version. See Versioning & Changes for the full policy.

    v1 · Phase 5, batch 4

    Current

    Branches, employees, and the audit log

    • Added/v1/branches and /v1/branches/{id} for multi-location companies.
    • Added/v1/employees and /v1/employees/{id} with role and branch scoping.
    • Added/v1/audit-log — read-only, keyset-paginated activity history.
    • ChangedGET /v1/whoami now reports effective per-minute, per-day, and per-month windows alongside the plan tier.

    v1 · Phase 5, batch 3

    Shipped

    Messaging, tasks, and claims

    • Added/v1/sms and /v1/emails for outbound messaging and message history.
    • Added/v1/tasks with create, update, and completion support.
    • Added/v1/claims with create and update for damage and loss workflows.
    • ChangedWrite-capable keys must send Idempotency-Key on every create.

    v1 · Phase 5, batch 2

    Shipped

    Money, storage, and inventory

    • Added/v1/payments and /v1/invoices reads with keyset pagination.
    • Added/v1/storage-accounts and /v1/inventory reads and writes.
    • AddedSigned webhook endpoints at /v1/webhook-endpoints, with a rolling 100-delivery log.

    v1 · Phase 5, batch 1

    Shipped

    Estimates, jobs, and dispatch

    • Added/v1/estimates, /v1/jobs, and /v1/dispatch with branch-aware filtering.
    • AddedETag / If-None-Match support on list and by-id reads (304 on match).
    • ChangedEvery GET now also answers HEAD with identical headers and no body.

    v1 · Phase 4

    Shipped

    Public API v1 goes live

    • AddedBearer API keys (mip_live_…), company- and branch-scoped, with per-key scopes.
    • AddedHMAC-SHA-256 request signing on all write-capable keys, with replay protection.
    • Added/v1/whoami, /v1/customers, and /v1/leads.
    • AddedFail-closed query parameters — an undeclared or misspelled filter returns 400 unknown_param instead of the unfiltered set.

    How we version

    New endpoints, new optional parameters, and new response fields are additive and can appear in v1 at any time — write clients that ignore unknown fields. Removing a field, changing a type, or tightening validation is breaking and ships as v2 with an announced sunset window for v1.