> For the complete documentation index, see [llms.txt](https://developers-apps-in-toss.toss.im/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://developers-apps-in-toss.toss.im/guide/en/authentication/anon-key.md).

# Issue a user identification key

Issuing a user identification key is a feature that helps you reliably identify users inside a mini app without any separate server integration or user consent process.

The moment a user enters the mini app, a mini app semi-member profile for that user is created. Based on this user, the mini app can manage information such as service usage data, stored data, rankings, and points.

{% hint style="info" %}
**Toss Login migration**

If you have been identifying users with Toss Login, you can switch to the user identification key issuance method. It is suitable when user identification is needed without a separate login screen or server integration.
{% endhint %}

## What is a user identification key?

A user identification key is a unique key value used to distinguish one user within a mini app. It helps the mini app reliably recognize the same user internally without directly exposing the user's personal information.

The returned user identifier is unique to each mini app. Even for the same Toss user, different identification keys are used in different mini apps.

{% hint style="info" %}
**Please make sure to check**

* Within the same mini app, the same identification key is always returned for the same user.
* Even if the app is deleted or the device changes, the same identification key is returned as long as it is the same user.
* You must use the issuance method that matches the mini app type. Using it in another type may cause errors.
* In the sandbox, mock data is returned. Please test the actual behavior in the Toss app using a QR code.
  {% endhint %}

## How it is used by mini app type

The method for issuing a user identification key differs depending on the mini app type.

| Mini app type | Purpose                              | Description                                                                                                  |
| ------------- | ------------------------------------ | ------------------------------------------------------------------------------------------------------------ |
| Game          | Game user identification             | Used when managing game data, rankings, points, save data, and more on a per-user basis.                     |
| Non-game      | General mini app user identification | Used when managing service usage history, user-specific settings, stored data, and more on a per-user basis. |

## Game mini app

In a game mini app, you receive a user identification key as a dedicated method for identifying users inside the game. Without showing a separate authentication screen like Toss Login, you can use a unique user identifier inside the game mini app.

This identification key is valid only within the corresponding game mini app. It can be used for data that needs to be connected based on the user, such as in-game data storage, ranking management, point management, and save data management.

{% hint style="warning" %}
**Caution**

* It can only be used in game mini apps.
* In Toss app versions lower than the supported version, a user identification key may not be provided.
* To provide identifiers for all users more reliably, the minimum supported Toss app version for game mini apps has been raised.
* Below the supported version, an update guidance screen is shown when entering the mini app.
* In the sandbox environment, mock data is returned. Please test the actual behavior in the Toss app using a QR code.
  {% endhint %}

## Non-game mini app

In non-game mini apps, you receive a user identification key as a method for identifying users within a general service. Without a separate authentication screen or server integration, you can use a unique user identifier inside the mini app.

This identification key is valid only within the corresponding mini app. It can be used for data that must be managed based on the user, such as user-specific settings, usage history, and stored data.

{% hint style="warning" %}
**Caution**

* It can only be used in non-game mini apps.
* In environments below the supported version, a user identification key may not be provided.
* The returned user identification key is not a key for calling the Toss server API.
* Please use it only for internal user identification and data management.
* In the sandbox environment, mock data is returned. Please test the actual behavior in the Toss app using a QR code.
  {% endhint %}

## Examples of using the user identification key

The user identification key can be used when you need to continue managing data based on the user inside the mini app.

* Managing a user's service usage history
* Saving user-specific settings
* Managing game rankings, points, and save data
* Restoring a returning user's previous state
* Building personalized experiences provided without login

{% hint style="info" %}
A user identification key is a value used to distinguish users. It is not a feature that replaces personal information such as a user's real name, phone number, or account information.
{% endhint %}

## Develop

How to receive a user identification key in a non-game mini app is [User.getAnonymousKey](https://developers-apps-in-toss.toss.im/documentation/sdk/domains-api/user/user.getanonymouskey)Please check here.


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation by asking a question.

Perform an HTTP GET request on the following URL with the `ask` and `goal` query parameters:

```
GET https://developers-apps-in-toss.toss.im/guide/en/authentication/anon-key.md?ask=<question>&goal=<user_goal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is what the user is ultimately trying to achieve, the reason they need the answer. Sharing it helps GitBook give you a better, more relevant answer. A goal is most helpful when it describes the outcome the user wants rather than restating the question. For example, with `ask=how do I create an API token`, a goal like `automate deployments from our CI pipeline` lets GitBook tailor the answer to that use case.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
