# GetNextKey()

> Returns the next id to assign to a key.

## Definition

* **Type:** Method
* **Namespace:** [Unity.Localization](/engine/6000.7/script-reference/unity/localization.md)
* **Assembly:** UnityEngine.LocalizationRuntimeModule

```csharp
long GetNextKey()
```

### Returns

| Type                                                        | Description                       |
| ----------------------------------------------------------- | --------------------------------- |
| [long](https://learn.microsoft.com/dotnet/api/system.int64) | The id to assign to the next key. |

### Remarks

The returned id should be non-zero, because a [SharedTableData](/engine/6000.7/script-reference/unity/localization/sharedtabledata.md) treats an id of `0` as "no key". The caller retries when a returned id is already in use, so an implementation does not have to guarantee uniqueness on its own.

Request an id from the default generator.

### Examples

```csharp
using Unity.Localization;
using UnityEngine;

namespace Unity.Localization.Samples
{
    public class IKeyGeneratorGetNextKeyExample
    {
        public void Run()
        {
            IKeyGenerator generator = new DistributedUIDGenerator();

            long id = generator.GetNextKey();

            Debug.Log(id);
        }
    }
}
```
