Skip to main content
This is the REST API reference for Salty, the CRM built for AI agents — see trysalty.com for the product overview and pricing. Every curl example below uses $SALTY_API as the base URL — set it once and the snippets work as-is.
All requests require Authorization: Bearer <token> (an sk_live_… API key, a Supabase JWT, or a salty_oat_… OAuth token). See Authentication.

Conventions

  • Identifiers are UUIDs unless noted.
  • Timestamps are ISO 8601 strings (2026-05-24T02:45:46.461Z).
  • bigint fields (deals.value_cents) are returned as strings to avoid JS precision loss.
  • All errors use the Stripe-shaped envelope. See Errors.
  • Pagination uses opaque cursors. See Pagination.
  • POST is idempotent when you pass Idempotency-Key. See Idempotency.
  • Rate limits are per workspace, per plan tier. See Rate limits.
  • Custom attributes are validated by the schema engine. See Schema engine.

Interactive explorer

Every endpoint listed here is also available in the Scalar API explorer at $SALTY_API/reference. Paste your key, click an endpoint, send a request, see the real response.

Endpoints in v1

Deletes are soft — records move to a 30-day trash and can be restored.

SDK alternative

Every endpoint here is also a method on the Salty class: