Skip to main content

Withdrawal Account Recovery

This API recovers an account that is in the withdrawal grace period.

URL Confirmation

This API uses the service-account.playnanoo.com domain.

API Information​

  • URL: https://service-account.playnanoo.com/api/v20240401/withdrawal/restore
  • Method: PUT
  • Authentication Required: No

Request Parameters​

ParameterTypeRequiredDescription
withdrawal_keystringRequiredWithdrawal key (issued upon withdrawal request)
platformstringRequiredPlatform (e.g., "aos", "ios")
device_idstringRequiredDevice unique ID
device_modelstringRequiredDevice model name
device_osstringRequiredDevice OS
device_languagestringRequiredDevice language (e.g., "KO", "EN")
DeviceInfo Inheritance

The Req class for this API inherits from DeviceInfo. All properties of DeviceInfo are automatically included.

Response Data​

Res Class​

FieldTypeDescription
StatusstringStatus value

Unity C# Implementation​

BaseResponse Class​

Base class for all API responses.

public class BaseResponse
{
public string ErrorCode;
public string Message;
public string WithdrawalKey;
public string BlockKey;
}

Field descriptions:

  • ErrorCode: Error code
  • Message: Error message
  • WithdrawalKey: Key required for recovery when the account is in withdrawal grace period (only provided for accounts in withdrawal grace period)
  • BlockKey: Key provided when the account is blocked (only provided for blocked accounts)

Member Withdrawal Cancellation Class​

using System;
using System.Collections;
using UnityEngine.Networking;

public class WithDrawalRestore
{
static string path = "https://service-account.playnanoo.com/api/v20240401/withdrawal/restore";

[Serializable]
public class Req : DeviceInfo
{
public string withdrawal_key;

public IEnumerator Send(
string withdrawalKey,
Action<Res> onSuccess,
Action<BaseResponse> onError)
{
if (!string.IsNullOrEmpty(withdrawalKey)) this.withdrawal_key = withdrawalKey;

yield return HttpClient.Send<Req, Res>(
UnityWebRequest.kHttpVerbPUT,
path,
requireToken: false,
body: this,
onSuccess: onSuccess,
onError: onError
);
}
}

[Serializable]
public class Res : BaseResponse
{
public string Status;
}
}

Usage Example​

public void RestoreWithdrawal(string withdrawalKey)
{
WithDrawalRestore.Req req = new WithDrawalRestore.Req();

StartCoroutine(req.Send(
withdrawalKey: withdrawalKey,
onSuccess: res =>
{
Debug.Log($"계정 복구 완료: {res.Status}");
Debug.Log("이제 정상적으로 게임을 이용할 수 있습니다.");
},
onError: (error) =>
{
Debug.LogError($"계정 복구 실패: [{error.ErrorCode}] [{error.Message}]");

if (error.ErrorCode == "WITHDRAWAL_PERIOD_EXPIRED")
{
Debug.LogError("유예 기간이 만료되어 계정을 복구할 수 없습니다.");
}
}
));
}
Getting WithdrawalKey

The withdrawal_key can be obtained upon withdrawal request or through the token status check API. Recovery is only possible within the grace period; after the grace period expires, the account cannot be recovered.