> ## Documentation Index
> Fetch the complete documentation index at: https://docs.riseworks.io/llms.txt
> Use this file to discover all available pages before exploring further.

# Migrated Clients

<Note>
  **TL;DR:** Rise is launching a new API. Your existing integration will keep working after migration, but **database IDs are changing from integers to strings**. This affects **webhook responses**, the **Talents API**, and the **Teams API**. Only **new entities created on the new platform** will have string IDs — existing entities keep their integer IDs. Update your code to accept both `string` and `number` IDs before migration to avoid breakage.
</Note>

### API Migration Guide

Welcome. This page contains essential information for developers currently integrated with the Rise API. We are launching a brand-new version of our API and have designed a transition plan to ensure your current integration continues to work smoothly. The sections below outline the steps you need to take to prepare for the new Rise API. ​

#### 1. Before the Migration

Before your account is migrated to the new Rise platform, please review the critical requirement below to ensure your current integration remains flawless.

* **Identifier (ID) Format Change:** In the current API, all database identifiers are integers. In the new API, identifiers will be strings. You must update your system to handle *both* string and integer IDs immediately. After the initial backend migration, your existing code will continue to function, but any newly created entities (such as teams or payees) will be assigned string IDs. If your code strictly expects integers, it will break. ​
* Id update example:
  ```typescript theme={null}
  // Define the expected payload where 'id' can be either format
  interface RisePayload {
    id: string | number; // Old API returns number, New API returns string
    name: string;
  }
  // Function to process the incoming data
  function handleRiseEntity(payload: RisePayload) {
    // Safely cast the ID to a string regardless of its original type
    const normalizedId: string = String(payload.id);
    // From this point on, your system should rely solely on 'normalizedId'
    console.log(`Processing entity with ID: ${normalizedId}`);
    
    // Example: saveToDatabase(normalizedId, payload.name);
  }
  // 1. Simulating the old API behavior (Integer)
  const oldData = { id: 84729, name: "Legacy Team" };
  handleRiseEntity(oldData); 
  // Output: Processing entity with ID: 84729
  // 2. Simulating the new API behavior (String)
  const newData = { id: "a1b2c3d4-5678", name: "New Team" };
  handleRiseEntity(newData); 
  // Output: Processing entity with ID: a1b2c3d4-5678
  ```

#### 2. Immediately After the Migration

Once the initial migration is complete, your system will be powered by the new Rise infrastructure, but you will still interact with it using the exact same interfaces, payloads, webhooks, and endpoints as before. The only immediate change you will notice is the string ID format mentioned above.
