Skip to main content
v1 (https://api.klipy.ai/api/v1) is deprecated in favor of v2. It continues to work today with no functional changes, and there’s no fixed shutdown date yet — but new integrations should start on v2, and existing ones should plan to move over.

What changed

API keys

v1 keys (klipy_pk_<id>) and v2 keys (klipy_live_<random>) are different formats and are not interchangeable — a v1 key does not authenticate against /api/v2/*, and a v2 key does not authenticate against /api/v1/*. You’ll need to issue new v2 keys; see Issuing API keys. Two other differences worth knowing before you migrate:
  • Scopes are required. v1 keys were issued with full (ALL) access. v2 has no ALL scope — you choose exactly which resource:action scopes a key needs at creation time.
  • Access level is explicit. v2 keys are either organization-wide or bound to a single user, chosen at creation. v1 had no equivalent concept.

Resource naming

The v1 people resource is called contacts in v2 — same underlying object, new name:
v1v2
peoplecontacts
companiescompanies
interactionsinteractions

New in v2

v2 covers the full CRM object model, not just the three resources v1 exposed:
  • New resources: deals, pipelines, tasks, notes, segments, meetings, recordings, bookings.
  • Relationship sub-resources: link/unlink contacts and companies on a deal, records on a note, members on a segment, and single deal/company associations on a meeting. See Introduction.
  • Batch-create: POST /{resource}/batch for up to 100 items in one request, on every resource that supports creation.
  • Idempotency: every POST/PATCH accepts an Idempotency-Key header so retries are safe.

What didn’t change

  • Field naming. Both v1 and v2 use snake_case JSON field names.
  • Envelope shape. Both use the same { object, data, meta } pattern for single-resource responses and cursor-based page_info for lists.
  • Rate limits. Both are 200 req/min per key, 1000 req/min per organization.

Migration checklist

1

Issue a v2 key

Create a new key at Settings → API with the scopes your integration needs. See Issuing API keys.
2

Update the base URL

Change requests from https://api.klipy.ai/api/v1 to https://api.klipy.ai/api/v2.
3

Rename `people` calls to `contacts`

Update any request path or reference from /people to /contacts. The request/response shape for the equivalent operations is otherwise the same.
4

Switch the auth header value

Swap the v1 key for the new v2 key in your X-Klipy-Api-Key or Authorization: Bearer header — the header names themselves are unchanged.
5

Test, then retire the v1 key

Once traffic is confirmed on v2, revoke the v1 key from the same settings page.
Last modified on July 7, 2026