[PB] ListInsertRecord
Supported version: 3.50.0
Brief Introduction
Insert records in a List PB table. Index indicates the index value assigned to the record. It supports the insertion of head and tail, and is controlled by the parameter Index. When the number of elements under the list single key exceeds the maximum, it can be specified to delete old elements from the head or tail. By default, FIFO is used to expire the first element.
- Index = -1: means insertion at the head
- Index = -2: means insertion at the front
- Shift: 0 means no removal; 1 means to remove the first element, 2 means to remove the last element
POST http://{Tcaplus_REST_URL}
Request Syntax
Http Request
#Tencent Cloud Console RESTful Endpoint, ip: 80, port: 80 by default
http://172.17.0.22
#TcaplusDB Local docker RESTful Endpoint, ip: 31001, port: 31001 by default
http://9.135.8.93:31001
Http Head
x-tcaplus-target:Tcaplus.ListInsertRecord
x-tcaplus-app-id:{string}
x-tcaplus-zone-id:{string}
x-tcaplus-protocol-version:{string}
x-tcaplus-table-name:{string}
x-tcaplus-pwd-md5:{string}
x-tcaplus-result-flag:result_flag
x-tcaplus-version:{string}
x-tcaplus-data-version-check:{string}
x-tcaplus-idl-type:protobuf
Parameter description:
| Name | Required or not | Limitations | Description |
|---|---|---|---|
| x-tcaplus-target | Yes | None | Tcaplus.ListInsertRecord |
| x-tcaplus-version | Yes | None | Tcaplus3.50.0 |
| x-tcaplus-app-id | Yes | None | Correspond to the app id number(aka, cluster access id) |
| x-tcaplus-zone-id | Yes | None | Correspond to the zone number (aka, table group id) |
| x-tcaplus-protocol-version | Yes | None | Correspond to the protocol version number, default 2.0 |
| x-tcaplus-table-name | Yes | None | Correspond to the table name |
| x-tcaplus-pwd-md5 | Yes | None | App password (aka, cluster access password), that is, the md5 value after the calculation |
| x-tcaplus-idl-type | Yes | None | protobuf |
| x-tcaplus-result-flag | No | None | 0: No data will be returned after successful operation; 1: After the operation is successful, the data that is consistent with the request will be returned; 2: After the operation is successful, the data after this update operation will be returned; 3: After the operation is successful, the data before the tcapsvr operation will be returned |
| x-tcaplus-data-version-check | No | 1: Detect the record version number. Only when the version number is the same as the server version number, the version number will automatically increase; 2: Do not detect the record version number, but force the client record version number to be written to the server; 3: Do not detect the record version number, and automatically increase the server version number | |
| x-tcaplus-data-version | No | Version number |
Example:
x-tcaplus-target:Tcaplus.ListInsertRecord
x-tcaplus-app-id:3
x-tcaplus-zone-id:1
x-tcaplus-protocol-version:2.0
x-tcaplus-table-name:tb_online_list
x-tcaplus-pwd-md5:4e81984efccfb4982333aeb1ff7968d5
x-tcaplus-result-flag:2
x-tcaplus-version:Tcaplus3.50.0
x-tcaplus-data-version-check: 3
x-tcaplus-idl-type:protobuf
Data
Use json format to represent the record related information. Parameter
- Index: indicates the insertion position, - 1: tail, - 2: head
- Shift: 0 means no removal; 1 means to remove the first element, 2 means to remove the last element
{
"Index": -1,
"Shift":0,
"Record": {
"openid": 10,
"tconndid": 10,
"timekey": "10",
"gamesvrid": "2",
"logintime": 0,
"lockid": [],
"pay": {
"total_money": 0,
"pay_times": 1
}
}
}
Complete Request Example
Please replace the relevant parameters in the example with the actual TcaplusDB parameters.
curl -i -XPOST -H 'x-tcaplus-target: Tcaplus.ListInsertRecord' -H 'x-tcaplus-app-id: 70' -H 'x-tcaplus-zone-id: 1' -H 'x-tcaplus-protocol-version: 2.0' -H 'x-tcaplus-table-name: tb_online_list' -H 'x-tcaplus-pwd-md5: 0972ad76decf4d11a69e2e0d9af335da' -H 'x-tcaplus-result-flag: 2' -H 'x-tcaplus-version: Tcaplus3.50.0' -H 'x-tcaplus-data-version-check: 3' -H 'x-tcaplus-idl-type: protobuf' http://172.17.32.12 -d '{
"Index":-1,
"Shift":0,
"Record": {
"openid": 10,
"tconndid": 10,
"timekey": "10",
"gamesvrid": "2",
"logintime": 0,
"lockid": [],
"pay": {
"total_money": 0,
"pay_times": 1
}
}
}'
Return Syntax
Return Parameter Description
| Parameter name | Description |
|---|---|
| Parameter name | Description |
| ErrorCode | Return code |
| ErrorMsg | Return message |
| ReturnValues | The reserved data set by the user arrives at tcaplus with the request and is returned in the original form by the response |
| SucceedRecords | Data returned of successful records in json format. For details, refer to Data section |
| SucceedNum | Number of successful records |
| FailedRecords | Data returned of failed records in json format. For details, refer to Data section |
| FailedNum | Number of failed records |
Return Example
Successful Return Example
{
"ErrorCode": 0,
"ErrorMsg": "Succeed",
"RecordVersion": 998,
"Index": 1,
"Record": {
"openid": 10,
"tconndid": 10,
"timekey": "10",
"gamesvrid": "2",
"logintime": 0,
"lockid": [],
"pay": {
"total_money": 0,
"pay_times": 1
}
}
}
Failed Return Example
{
"ErrorCode": -4109,
"ErrorMsg": "tcapsvr_fail_invalid_index"
}
Error code
Refer to Common Error Codes