GetUserToken
Returns a store user token (JWT) for the current user, generated on the server. The client can use it to call the store's APIs on the user's behalf. Currently only supported for Xsolla.
| Service | Operation |
|---|---|
| appStore | GET_USER_TOKEN |
Method Parameters
| Parameter | Description |
|---|---|
| storeId | The store to get the token for, e.g. "xsolla". Refer to the current available store IDs here. |
note
- Xsolla (
xsolla) needs the app's Xsolla integration to have a server client ID, a server client secret and a login ID set. If any of these is missing, or the call to Xsolla fails,userTokenis returned asnull. - Other stores are not supported yet.
- An unknown
storeIdfails with HTTP 400 and reason codeINVALID_STORE_ID(40700).
Usage
http://localhost:3000
- C#
- C++
- Obj-C
- Java
- JavaScript
- Dart
- Roblox
- GDScript
- Lua
- Cloud Code
- Raw
string storeId = "xsolla";
SuccessCallback successCallback = (response, cbObject) =>
{
Debug.Log(string.Format("Success | {0}", response));
};
FailureCallback failureCallback = (status, code, error, cbObject) =>
{
Debug.Log(string.Format("Failed | {0} {1} {2}", status, code, error));
};
_bc.AppStoreService.GetUserToken(storeId, successCallback, failureCallback);
const char *storeId = "xsolla";
_bc->getAppStoreService()->getUserToken(storeId, this);
NSString *storeId = @"xsolla";
BCCompletionBlock successBlock; // define callback
BCErrorCompletionBlock failureBlock; // define callback
[[_bc appStoreService] getUserToken:storeId
completionBlock:successBlock
errorCompletionBlock:failureBlock
cbObject:nil];
String storeId = "xsolla";
this; // implements IServerCallback
_bc.getAppStoreService().getUserToken(storeId, this);
public void serverCallback(ServiceName serviceName, ServiceOperation serviceOperation, JSONObject jsonData)
{
System.out.print(String.format("Success | %s", jsonData.toString()));
}
public void serverError(ServiceName serviceName, ServiceOperation serviceOperation, int statusCode, int reasonCode, String jsonError)
{
System.out.print(String.format("Failed | %d %d %s", statusCode, reasonCode, jsonError.toString()));
}
var storeId = "xsolla";
_bc.appStore.getUserToken(storeId, result =>
{
var status = result.status;
console.log(status + " : " + JSON.stringify(result, null, 2));
});
var storeId = "xsolla";
ServerResponse result = await _bc.appStoreService.getUserToken(storeId:storeId);
if (result.statusCode == 200) {
print("Success");
} else {
print("Failed ${result.error['status_message'] ?? result.error}");
}
local storeId = "xsolla"
local callback = function(success, response)
if success then
print("Success")
else
print("Failed | " .. tostring(response.status_message))
end
end
_bc.appStore:getUserToken(storeId, callback)
var store_id = "xsolla"
var result = await _bc.app_store_service.get_user_token(store_id)
if result.status == 200:
print("Success")
else:
print("Failed: %s" % result.status_message)
local storeId = "xsolla"
local callback = function(success, response)
if success then
print("Success")
else
print("Failed | " .. tostring(response.status_message))
end
end
_bc.appStore:getUserToken(storeId, callback)
var storeId = "xsolla";
var appStoreProxy = bridge.getAppStoreServiceProxy();
var postResult = appStoreProxy.getUserToken(storeId);
if (postResult.status == 200) {
// Success!
}
{
"service": "appStore",
"operation": "GET_USER_TOKEN",
"data": {
"storeId": "xsolla"
}
}
JSON Response
{
"data": {
"userToken": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9..."
},
"status": 200
}