CloudSave API for storing records. More...
#include <AccelByteCloudSaveApi.h>
Public Member Functions | |
| CloudSave (Credentials const &InCredentialsRef, Settings const &InSettingsRef, FHttpRetrySchedulerBase &InHttpRef, TSharedPtr< AccelByte::FApiClient, ESPMode::ThreadSafe > const &InApiClient=nullptr) | |
| CloudSave (Credentials const &InCredentialsRef, Settings const &InSettingsRef, FHttpRetrySchedulerBase &InHttpRef, FAccelBytePlatformPtr const &InAccelBytePlatform) | |
| FAccelByteTaskWPtr | SaveUserRecord (const FString &Key, bool bSetPublic, const FJsonObject &RecordRequest, const FVoidHandler &OnSuccess, const FErrorHandler &OnError) |
| Save a user-level record with Metadata input value. | |
| FAccelByteTaskWPtr | SaveUserRecord (FString const &Key, FJsonObject RecordRequest, bool IsPublic, FVoidHandler const &OnSuccess, FErrorHandler const &OnError) |
| Save a user-level record. If the record doesn't exist, it will create and save the record, if already exists, it will append to the existing one. | |
| FAccelByteTaskWPtr | GetUserRecord (FString const &Key, THandler< FAccelByteModelsUserRecord > const &OnSuccess, FErrorHandler const &OnError) |
| Get a record (arbitrary JSON data) by its key in user-level. | |
| FAccelByteTaskWPtr | GetPublicUserRecord (FString const &Key, FString const &UserId, THandler< FAccelByteModelsUserRecord > const &OnSuccess, FErrorHandler const &OnError) |
| Get a public record (arbitrary JSON data) by its key and userId in user-level. | |
| FAccelByteTaskWPtr | BulkGetPublicUserRecord (FString const &Key, const TArray< FString > &UserIds, THandler< FListAccelByteModelsUserRecord > const &OnSuccess, FErrorHandler const &OnError) |
| Get a public record (arbitrary JSON data) by its key and userId in user-level. | |
| FAccelByteTaskWPtr | BulkGetUserRecords (TArray< FString > const &Keys, THandler< FListAccelByteModelsUserRecord > const &OnSuccess, FErrorHandler const &OnError) |
| Bulk get records (arbitrary JSON data) by list of keys. | |
| FAccelByteTaskWPtr | ReplaceUserRecord (const FString &Key, bool bSetPublic, const FJsonObject &RecordRequest, const FVoidHandler &OnSuccess, const FErrorHandler &OnError) |
| Replace a record in user-level. If the record doesn't exist, it will create and save the record. If already exists, it will replace the existing one. | |
| FAccelByteTaskWPtr | ReplaceUserRecord (FString const &Key, FJsonObject RecordRequest, bool IsPublic, FVoidHandler const &OnSuccess, FErrorHandler const &OnError) |
| Replace a record in user-level. If the record doesn't exist, it will create and save the record. If already exists, it will replace the existing one. | |
| FAccelByteTaskWPtr | ReplaceUserRecordCheckLatest (FString const &Key, FDateTime const LastUpdated, FJsonObjectWrapper RecordRequest, FVoidHandler const &OnSuccess, FErrorHandler const &OnError) |
| Replace a record in user-level. If the record doesn't exist, it will create and save the record. If already exists, it will replace the existing one, but will failed if lastUpdated is not up-to-date. | |
| FAccelByteTaskWPtr | ReplaceUserRecordCheckLatest (int TryAttempt, FString const &Key, FJsonObjectWrapper RecordRequest, THandlerPayloadModifier< FJsonObjectWrapper, FJsonObjectWrapper > const &PayloadModifier, FVoidHandler const &OnSuccess, FErrorHandler const &OnError) |
| Replace a record in user-level. If the record doesn't exist, it will create and save the record. If already exists, it will replace the existing one. Beware: Function will try to get the latest value, put it in the custom modifier and request to replace the record. will retry it again when the record is updated by other user, until exhaust all the attempt. | |
| FAccelByteTaskWPtr | ReplaceUserRecordCheckLatest (FString const &Key, FDateTime LastUpdated, FJsonObjectWrapper RecordRequest, THandler< FAccelByteModelsReplaceUserRecordResponse > const &OnSuccess, FErrorHandler const &OnError) |
| Replace a record in user-level. If the record doesn't exist, it will create and save the record. If already exists, it will replace the existing one, but will failed if lastUpdated is not up-to-date. | |
| FAccelByteTaskWPtr | ReplaceUserRecordCheckLatest (int TryAttempt, FString const &Key, FJsonObjectWrapper RecordRequest, THandlerPayloadModifier< FJsonObjectWrapper, FJsonObjectWrapper > const &PayloadModifier, THandler< FAccelByteModelsReplaceUserRecordResponse > const &OnSuccess, FErrorHandler const &OnError) |
| Replace a record in user-level. If the record doesn't exist, it will create and save the record. If already exists, it will replace the existing one. Beware: Function will try to get the latest value, put it in the custom modifier and request to replace the record. will retry it again when the record is updated by other user, until exhaust all the attempt. | |
| FAccelByteTaskWPtr | DeleteUserRecord (FString const &Key, FVoidHandler const &OnSuccess, FErrorHandler const &OnError) |
| Delete a record under the given key in user-level. | |
| FAccelByteTaskWPtr | SaveGameRecord (FString const &Key, FJsonObject RecordRequest, FVoidHandler const &OnSuccess, FErrorHandler const &OnError) |
| Save a namespace-level record. If the record doesn't exist, it will create and save the record, if already exists, it will append to the existing one. | |
| FAccelByteTaskWPtr | GetGameRecord (FString const &Key, THandler< FAccelByteModelsGameRecord > const &OnSuccess, FErrorHandler const &OnError) |
| Get a record by its key in namespace-level. | |
| FAccelByteTaskWPtr | ReplaceGameRecord (FString const &Key, FJsonObject RecordRequest, FVoidHandler const &OnSuccess, FErrorHandler const &OnError) |
| Replace a record in namespace-level. If the record doesn't exist, it will create and save the record. If already exists, it will replace the existing one. | |
| FAccelByteTaskWPtr | ReplaceGameRecordCheckLatest (FString const &Key, FDateTime const LastUpdated, FJsonObjectWrapper RecordRequest, FVoidHandler const &OnSuccess, FErrorHandler const &OnError) |
| Replace a record in namespace-level. If the record doesn't exist, it will create and save the record. If already exists, it will replace the existing one, but will failed if lastUpdated is not up-to-date. | |
| FAccelByteTaskWPtr | ReplaceGameRecordCheckLatest (int TryAttempt, FString const &Key, FJsonObjectWrapper RecordRequest, THandlerPayloadModifier< FJsonObjectWrapper, FJsonObjectWrapper > const &PayloadModifier, FVoidHandler const &OnSuccess, FErrorHandler const &OnError) |
| Replace a record in namespace-level. If the record doesn't exist, it will create and save the record. If already exists, it will replace the existing one. Beware: Function will try to get the latest value, put it in the custom modifier and request to replace the record. will retry it again when the record is updated by other user, until exhaust all the attempt. | |
| FAccelByteTaskWPtr | DeleteGameRecord (FString const &Key, FVoidHandler const &OnSuccess, FErrorHandler const &OnError) |
| Delete a record under the given key in namespace-level. | |
| FAccelByteTaskWPtr | BulkGetGameRecords (TArray< FString > const &Keys, THandler< FAccelByteModelsListGameRecords > const &OnSuccess, FErrorHandler const &OnError) |
| Bulk get game records (arbitrary JSON data) by list of keys. | |
| FAccelByteTaskWPtr | BulkGetOtherPlayerPublicRecordKeys (FString const &UserId, THandler< FAccelByteModelsPaginatedBulkGetPublicUserRecordKeysResponse > const &OnSuccess, FErrorHandler const &OnError, int32 const &Offset=0, int32 const &Limit=20) |
| Retrieve the public key record for a user in bulk. | |
| FAccelByteTaskWPtr | BulkGetCurrentPlayerPublicRecordKeys (THandler< FAccelByteModelsPaginatedBulkGetPublicUserRecordKeysResponse > const &OnSuccess, FErrorHandler const &OnError, int32 const &Offset=0, int32 const &Limit=20) |
| Retrieve the public key record for current user in bulk. | |
| FAccelByteTaskWPtr | BulkGetOtherPlayerPublicRecords (FString const &UserId, TArray< FString > const &Keys, THandler< FListAccelByteModelsUserRecord > const &OnSuccess, FErrorHandler const &OnError) |
| Retrieve the public record for a user in bulk using public keys. | |
| Public Member Functions inherited from AccelByte::FApiBase | |
| FApiBase (Credentials const &InCredentialsRef, Settings const &InSettingsRef, FHttpRetrySchedulerBase &InHttpRef, TSharedPtr< AccelByte::FApiClient, ESPMode::ThreadSafe > const &InApiClient) | |
| FApiBase (Credentials const &InCredentialsRef, Settings const &InSettingsRef, FHttpRetrySchedulerBase &InHttpRef, FAccelBytePlatformPtr const &InAccelBytePlatform) | |
| void | SetApiClient (TSharedPtr< AccelByte::FApiClient, ESPMode::ThreadSafe > const &InApiClient) |
Additional Inherited Members | |
| Protected Member Functions inherited from AccelByte::FApiBase | |
| template<typename T> | |
| bool | ValidateAccelByteId (FString const &Id, EAccelByteIdHypensRule HypenRule, FString const &ErrorMessage, T const &OnError) |
| Protected Attributes inherited from AccelByte::FApiBase | |
| TSharedRef< Credentials const, ESPMode::ThreadSafe > | CredentialsRef |
| Settings const & | SettingsRef |
| FHttpRetrySchedulerBase & | HttpRef |
| FHttpClient | HttpClient |
| FAccelBytePlatformPtr | AccelBytePlatformPtr |
CloudSave API for storing records.
| FAccelByteTaskWPtr AccelByte::Api::CloudSave::BulkGetCurrentPlayerPublicRecordKeys | ( | THandler< FAccelByteModelsPaginatedBulkGetPublicUserRecordKeysResponse > const & | OnSuccess, |
| FErrorHandler const & | OnError, | ||
| int32 const & | Offset = 0, | ||
| int32 const & | Limit = 20 ) |
Retrieve the public key record for current user in bulk.
| OnSuccess | This will be called when the operation succeeded. The result is const FAccelByteModelsPaginatedBulkGetPublicUserRecordKeysResponse&. |
| OnError | This will be called when the operation failed. |
| Offset | The offset of the cloudsave result. Default value is 0. |
| Limit | The limit of the cloudsave result. Default value is 20. |
| FAccelByteTaskWPtr AccelByte::Api::CloudSave::BulkGetGameRecords | ( | TArray< FString > const & | Keys, |
| THandler< FAccelByteModelsListGameRecords > const & | OnSuccess, | ||
| FErrorHandler const & | OnError ) |
Bulk get game records (arbitrary JSON data) by list of keys.
| Keys | List Key of record. |
| OnSuccess | This will be called when the operation succeeded. The result is const FAccelByteModelsListGameRecords&. |
| OnError | This will be called when the operation failed. |
| FAccelByteTaskWPtr AccelByte::Api::CloudSave::BulkGetOtherPlayerPublicRecordKeys | ( | FString const & | UserId, |
| THandler< FAccelByteModelsPaginatedBulkGetPublicUserRecordKeysResponse > const & | OnSuccess, | ||
| FErrorHandler const & | OnError, | ||
| int32 const & | Offset = 0, | ||
| int32 const & | Limit = 20 ) |
Retrieve the public key record for a user in bulk.
| UserId | UserId of the keys owner. |
| OnSuccess | This will be called when the operation succeeded. The result is const FAccelByteModelsPaginatedBulkGetPublicUserRecordKeysResponse&. |
| OnError | This will be called when the operation failed. |
| Offset | The offset of the cloudsave result. Default value is 0. |
| Limit | The limit of the cloudsave result. Default value is 20. |
| FAccelByteTaskWPtr AccelByte::Api::CloudSave::BulkGetOtherPlayerPublicRecords | ( | FString const & | UserId, |
| TArray< FString > const & | Keys, | ||
| THandler< FListAccelByteModelsUserRecord > const & | OnSuccess, | ||
| FErrorHandler const & | OnError ) |
Retrieve the public record for a user in bulk using public keys.
| UserId | UserId of the keys owner. |
| Keys | List Key of record. |
| OnSuccess | This will be called when the operation succeeded. The result is const FListAccelByteModelsUserRecord&. |
| OnError | This will be called when the operation failed. |
| FAccelByteTaskWPtr AccelByte::Api::CloudSave::BulkGetPublicUserRecord | ( | FString const & | Key, |
| const TArray< FString > & | UserIds, | ||
| THandler< FListAccelByteModelsUserRecord > const & | OnSuccess, | ||
| FErrorHandler const & | OnError ) |
Get a public record (arbitrary JSON data) by its key and userId in user-level.
| Key | Key of record. |
| UserIds | List UserId(s) of the record owner. |
| OnSuccess | This will be called when the operation succeeded. The result is const FAccelByteModelsUserRecord&. |
| OnError | This will be called when the operation failed. |
| FAccelByteTaskWPtr AccelByte::Api::CloudSave::BulkGetUserRecords | ( | TArray< FString > const & | Keys, |
| THandler< FListAccelByteModelsUserRecord > const & | OnSuccess, | ||
| FErrorHandler const & | OnError ) |
Bulk get records (arbitrary JSON data) by list of keys.
| Keys | List Key of record. |
| OnSuccess | This will be called when the operation succeeded. The result is const FAccelByteModelsUserRecord&. |
| OnError | This will be called when the operation failed. |
| FAccelByteTaskWPtr AccelByte::Api::CloudSave::DeleteGameRecord | ( | FString const & | Key, |
| FVoidHandler const & | OnSuccess, | ||
| FErrorHandler const & | OnError ) |
Delete a record under the given key in namespace-level.
| Key | Key of record. |
| OnSuccess | This will be called when the operation succeeded. |
| OnError | This will be called when the operation failed. |
| FAccelByteTaskWPtr AccelByte::Api::CloudSave::DeleteUserRecord | ( | FString const & | Key, |
| FVoidHandler const & | OnSuccess, | ||
| FErrorHandler const & | OnError ) |
Delete a record under the given key in user-level.
| Key | Key of record. |
| OnSuccess | This will be called when the operation succeeded. |
| OnError | This will be called when the operation failed. |
| FAccelByteTaskWPtr AccelByte::Api::CloudSave::GetGameRecord | ( | FString const & | Key, |
| THandler< FAccelByteModelsGameRecord > const & | OnSuccess, | ||
| FErrorHandler const & | OnError ) |
Get a record by its key in namespace-level.
| Key | Key of record. |
| OnSuccess | This will be called when the operation succeeded. The result is const FAccelByteModelsGameRecord&. |
| OnError | This will be called when the operation failed. |
| FAccelByteTaskWPtr AccelByte::Api::CloudSave::GetPublicUserRecord | ( | FString const & | Key, |
| FString const & | UserId, | ||
| THandler< FAccelByteModelsUserRecord > const & | OnSuccess, | ||
| FErrorHandler const & | OnError ) |
Get a public record (arbitrary JSON data) by its key and userId in user-level.
| Key | Key of record. |
| UserId | UserId of the record owner. |
| OnSuccess | This will be called when the operation succeeded. The result is const FAccelByteModelsUserRecord&. |
| OnError | This will be called when the operation failed. |
| FAccelByteTaskWPtr AccelByte::Api::CloudSave::GetUserRecord | ( | FString const & | Key, |
| THandler< FAccelByteModelsUserRecord > const & | OnSuccess, | ||
| FErrorHandler const & | OnError ) |
Get a record (arbitrary JSON data) by its key in user-level.
| Key | Key of record. |
| OnSuccess | This will be called when the operation succeeded. The result is const FAccelByteModelsUserRecord&. |
| OnError | This will be called when the operation failed. |
| FAccelByteTaskWPtr AccelByte::Api::CloudSave::ReplaceGameRecord | ( | FString const & | Key, |
| FJsonObject | RecordRequest, | ||
| FVoidHandler const & | OnSuccess, | ||
| FErrorHandler const & | OnError ) |
Replace a record in namespace-level. If the record doesn't exist, it will create and save the record. If already exists, it will replace the existing one.
| Key | Key of record. |
| RecordRequest | The request of the record with JSON formatted. |
| OnSuccess | This will be called when the operation succeeded. |
| OnError | This will be called when the operation failed. |
| FAccelByteTaskWPtr AccelByte::Api::CloudSave::ReplaceGameRecordCheckLatest | ( | FString const & | Key, |
| FDateTime const | LastUpdated, | ||
| FJsonObjectWrapper | RecordRequest, | ||
| FVoidHandler const & | OnSuccess, | ||
| FErrorHandler const & | OnError ) |
Replace a record in namespace-level. If the record doesn't exist, it will create and save the record. If already exists, it will replace the existing one, but will failed if lastUpdated is not up-to-date.
| Key | Key of record. |
| LastUpdated | last time the record is updated. Retrieve it from GetGameRecord. |
| RecordRequest | The request of the record with JSON formatted. |
| OnSuccess | This will be called when the operation succeeded. |
| OnError | This will be called when the operation failed. |
| FAccelByteTaskWPtr AccelByte::Api::CloudSave::ReplaceGameRecordCheckLatest | ( | int | TryAttempt, |
| FString const & | Key, | ||
| FJsonObjectWrapper | RecordRequest, | ||
| THandlerPayloadModifier< FJsonObjectWrapper, FJsonObjectWrapper > const & | PayloadModifier, | ||
| FVoidHandler const & | OnSuccess, | ||
| FErrorHandler const & | OnError ) |
Replace a record in namespace-level. If the record doesn't exist, it will create and save the record. If already exists, it will replace the existing one. Beware: Function will try to get the latest value, put it in the custom modifier and request to replace the record. will retry it again when the record is updated by other user, until exhaust all the attempt.
| TryAttempt | Attempt to try to replace the game record. |
| Key | Key of record. |
| RecordRequest | The request of the record with JSON formatted. |
| PayloadModifier | Function to modify the latest record value with your customized modifier. |
| OnSuccess | This will be called when the operation succeeded. |
| OnError | This will be called when the operation failed. |
| FAccelByteTaskWPtr AccelByte::Api::CloudSave::ReplaceUserRecord | ( | const FString & | Key, |
| bool | bSetPublic, | ||
| const FJsonObject & | RecordRequest, | ||
| const FVoidHandler & | OnSuccess, | ||
| const FErrorHandler & | OnError ) |
Replace a record in user-level. If the record doesn't exist, it will create and save the record. If already exists, it will replace the existing one.
| Key | Key of record. |
| SetPublic | Metadata is_public value and set by client |
| RecordRequest | The request of the record with JSON formatted. |
| OnSuccess | This will be called when the operation succeeded. |
| OnError | This will be called when the operation failed. |
| FAccelByteTaskWPtr AccelByte::Api::CloudSave::ReplaceUserRecord | ( | FString const & | Key, |
| FJsonObject | RecordRequest, | ||
| bool | IsPublic, | ||
| FVoidHandler const & | OnSuccess, | ||
| FErrorHandler const & | OnError ) |
Replace a record in user-level. If the record doesn't exist, it will create and save the record. If already exists, it will replace the existing one.
The end point of this method if bIsPublic is true (using suffix /public) will be deprecated in future
| Key | Key of record. |
| RecordRequest | The request of the record with JSON formatted. |
| IsPublic | Save the record as a public/private record. |
| OnSuccess | This will be called when the operation succeeded. |
| OnError | This will be called when the operation failed. |
| FAccelByteTaskWPtr AccelByte::Api::CloudSave::ReplaceUserRecordCheckLatest | ( | FString const & | Key, |
| FDateTime const | LastUpdated, | ||
| FJsonObjectWrapper | RecordRequest, | ||
| FVoidHandler const & | OnSuccess, | ||
| FErrorHandler const & | OnError ) |
Replace a record in user-level. If the record doesn't exist, it will create and save the record. If already exists, it will replace the existing one, but will failed if lastUpdated is not up-to-date.
| Key | Key of record. |
| LastUpdated | last time the record is updated. Retrieve it from GetGameRecord. |
| RecordRequest | The request of the record with JSON formatted. |
| OnSuccess | This will be called when the operation succeeded. |
| OnError | This will be called when the operation failed. |
| FAccelByteTaskWPtr AccelByte::Api::CloudSave::ReplaceUserRecordCheckLatest | ( | FString const & | Key, |
| FDateTime | LastUpdated, | ||
| FJsonObjectWrapper | RecordRequest, | ||
| THandler< FAccelByteModelsReplaceUserRecordResponse > const & | OnSuccess, | ||
| FErrorHandler const & | OnError ) |
Replace a record in user-level. If the record doesn't exist, it will create and save the record. If already exists, it will replace the existing one, but will failed if lastUpdated is not up-to-date.
| Key | Key of record. |
| LastUpdated | last time the record is updated. Retrieve it from GetGameRecord. |
| RecordRequest | The request of the record with JSON formatted. |
| OnSuccess | This will be called when the operation succeeded. The result is const FAccelByteModelsReplaceUserRecordResponse. |
| OnError | This will be called when the operation failed. |
| FAccelByteTaskWPtr AccelByte::Api::CloudSave::ReplaceUserRecordCheckLatest | ( | int | TryAttempt, |
| FString const & | Key, | ||
| FJsonObjectWrapper | RecordRequest, | ||
| THandlerPayloadModifier< FJsonObjectWrapper, FJsonObjectWrapper > const & | PayloadModifier, | ||
| FVoidHandler const & | OnSuccess, | ||
| FErrorHandler const & | OnError ) |
Replace a record in user-level. If the record doesn't exist, it will create and save the record. If already exists, it will replace the existing one. Beware: Function will try to get the latest value, put it in the custom modifier and request to replace the record. will retry it again when the record is updated by other user, until exhaust all the attempt.
| TryAttempt | Attempt to try to replace the game record. |
| Key | Key of record. |
| RecordRequest | The request of the record with JSON formatted. |
| PayloadModifier | Function to modify the latest record value with your customized modifier. |
| OnSuccess | This will be called when the operation succeeded. |
| OnError | This will be called when the operation failed. |
| FAccelByteTaskWPtr AccelByte::Api::CloudSave::ReplaceUserRecordCheckLatest | ( | int | TryAttempt, |
| FString const & | Key, | ||
| FJsonObjectWrapper | RecordRequest, | ||
| THandlerPayloadModifier< FJsonObjectWrapper, FJsonObjectWrapper > const & | PayloadModifier, | ||
| THandler< FAccelByteModelsReplaceUserRecordResponse > const & | OnSuccess, | ||
| FErrorHandler const & | OnError ) |
Replace a record in user-level. If the record doesn't exist, it will create and save the record. If already exists, it will replace the existing one. Beware: Function will try to get the latest value, put it in the custom modifier and request to replace the record. will retry it again when the record is updated by other user, until exhaust all the attempt.
| TryAttempt | Attempt to try to replace the game record. |
| Key | Key of record. |
| RecordRequest | The request of the record with JSON formatted. |
| PayloadModifier | Function to modify the latest record value with your customized modifier. |
| OnSuccess | This will be called when the operation succeeded. The result is const FAccelByteModelsReplaceUserRecordResponse. |
| OnError | This will be called when the operation failed. |
| FAccelByteTaskWPtr AccelByte::Api::CloudSave::SaveGameRecord | ( | FString const & | Key, |
| FJsonObject | RecordRequest, | ||
| FVoidHandler const & | OnSuccess, | ||
| FErrorHandler const & | OnError ) |
Save a namespace-level record. If the record doesn't exist, it will create and save the record, if already exists, it will append to the existing one.
| Key | Key of record. |
| RecordRequest | The request of the record with JSON formatted. |
| OnSuccess | This will be called when the operation succeeded. |
| OnError | This will be called when the operation failed. |
| FAccelByteTaskWPtr AccelByte::Api::CloudSave::SaveUserRecord | ( | const FString & | Key, |
| bool | bSetPublic, | ||
| const FJsonObject & | RecordRequest, | ||
| const FVoidHandler & | OnSuccess, | ||
| const FErrorHandler & | OnError ) |
Save a user-level record with Metadata input value.
| Key | Key of record. |
| SetPublic | Metadata is_public value and set by client |
| RecordRequest | The request of the record with JSON formatted. |
| OnSuccess | This will be called when the operation succeeded. |
| OnError | This will be called when the operation failed. |
| FAccelByteTaskWPtr AccelByte::Api::CloudSave::SaveUserRecord | ( | FString const & | Key, |
| FJsonObject | RecordRequest, | ||
| bool | IsPublic, | ||
| FVoidHandler const & | OnSuccess, | ||
| FErrorHandler const & | OnError ) |
Save a user-level record. If the record doesn't exist, it will create and save the record, if already exists, it will append to the existing one.
The end point of this method if bIsPublic is true (using suffix /public) will be deprecated in future
| Key | Key of record. |
| RecordRequest | The request of the record with JSON formatted. |
| IsPublic | Save the record as a public/private record. |
| OnSuccess | This will be called when the operation succeeded. |
| OnError | This will be called when the operation failed. |