Skip to main content

V1 to V2 Migration Guide

The v2 API is a complete evolution of the Trackly SMS platform API. It introduces new resources, cleaner naming conventions, and fully functional CRUD endpoints. This guide covers every breaking change and new feature to help you migrate smoothly.
The v1 API is deprecated. All v1 responses now include deprecation headers. While v1 endpoints continue to function, we strongly recommend migrating to v2 as soon as possible.

What’s Still the Same

Before diving into changes, here is what has not changed:
  • Base URL: https://api.tracklysms.com/api
  • Authentication: The X-Api-Key header with your trk_[32-char-alphanumeric] key works identically in v2.
  • Content type: All requests use Content-Type: application/json.
  • HTTP methods: Standard REST conventions (GET, POST, PUT, PATCH, DELETE).

V1 Deprecation Headers

All v1 responses now include deprecation headers to signal that the endpoint is deprecated:

Key Field Renames

The most impactful change is the renaming of core fields used in message sending.

Important Notes

  • list_number replaces from_phone_number_id. In v1, you passed a Trackly ID for the sending number. In v2, you pass the phone number itself in E.164 format (e.g. +14155551234).
  • to remains the same field name but now strictly requires E.164 format (e.g. +14155556789).

Response Format Changes

All v2 responses include a top-level success boolean field: V2 success response:
V2 error response:
Success responses include a top-level success: true field. Error responses return a flat object with error (human-readable message) and code (machine-readable code) — no success field is included in errors.

Endpoint Path Changes

Message Sending

Contacts

V1 contact endpoints (/v1/contacts) are no-ops — they accept requests but do not actually create, update, or persist contacts. V2 contact endpoints are fully functional with real CRUD operations.

New Resources in V2

The following resources are only available in v2 and have no v1 equivalent:

Side-by-Side: Sending a Message

V1 (Deprecated)

V1 Response:

V2 (Current)

V2 Response:

Migration Checklist

Use this checklist to track your migration progress:
  • Update send endpoint: Change POST /v1/messages to POST /v2/send
  • Rename from_phone_number_id: Replace with list_number using the E.164 phone number
  • Rename to_msisdn: Replace with to (if you were using to_msisdn)
  • Handle success field: Update response parsing to check the success boolean
  • Replace contact no-ops: If you were using /v1/contacts, switch to /v2/contacts for real CRUD
  • Adopt new resources: Evaluate whether /v2/creatives, /v2/audiences, /v2/schedules, and other new endpoints can simplify your integration
  • Test in development: Verify all updated endpoints before deploying to production
  • Remove deprecation header handling: Once fully migrated, you can stop monitoring for X-API-Deprecated headers

Need Help?

If you encounter issues during migration, reach out to our support team. When reporting an issue, include:
  1. The full request URL and method
  2. The request headers (redact your API key)
  3. The request body
  4. The full response body and status code

Next Steps

V2 API Overview

Explore all v2 endpoints and features

Error Codes

Handle v2 error responses