# GetNextKey()

> Returns the next distributed unique id.

## Definition

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

```csharp
public long GetNextKey()
```

### Returns

| Type                                                        | Description                                       |
| ----------------------------------------------------------- | ------------------------------------------------- |
| [long](https://learn.microsoft.com/dotnet/api/system.int64) | A distributed unique id suitable for a table key. |

### Remarks

Combines the current timestamp, the [DistributedUIDGenerator.MachineId](/engine/7000.0/script-reference/unity/localization/distributeduidgenerator/machineid.md), and a per-millisecond sequence. Every generator in the process shares that sequence, so ids stay unique when the clock moves backwards, when several ids are requested within the same millisecond, and when two generators are asked for a key at the same moment.

Generate a single id.

### Examples

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

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

            long id = generator.GetNextKey();

            Debug.Log(id);   // a distributed unique id
        }
    }
}
```
