Set a single high-capacity key-value pair in a KV namespace. This operation supports values up to 25 MB.
Operation description
This interface provides the same functionality as PutKv, but supports larger request bodies. If your request body is small, use the PutKv interface instead to reduce server-side processing time. Call this interface using an SDK. For example, with the Go SDK, call the PutKvWithHighCapacityAdvance function.
func TestPutKvWithHighCapacity() {
// Configure initialization
cfg := new(openapi.Config)
cfg.SetAccessKeyId("xxxxxxxxx")
cfg.SetAccessKeySecret("xxxxxxxxxx")
cli, err := NewClient(cfg)
if err != nil {
return err
}
runtime := &util.RuntimeOptions{}
// Construct the key-value pair request to be uploaded
namespace := "test-put-kv"
key := "test_PutKvWithHighCapacity_0"
value := strings.Repeat("t", 10*1024*1024)
rawReq := &PutKvRequest{
Namespace: &namespace,
Key: &key,
Value: &value,
}
payload, err := json.Marshal(rawReq)
if err != nil {
return err
}
// If the payload is larger than 2 MB, call the high-capacity interface to upload
reqHighCapacity := &PutKvWithHighCapacityAdvanceRequest{
Namespace: &namespace,
Key: &key,
UrlObject: bytes.NewReader([]byte(payload)),
}
resp, err := cli.PutKvWithHighCapacityAdvance(reqHighCapacity, runtime)
if err != nil {
return err
}
return nil
}
Try it now
Test
RAM authorization
Request parameters
|
Parameter |
Type |
Required |
Description |
Example |
| Namespace |
string |
Yes |
The name specified when calling CreateKvNamespace. |
test_namesapce |
| Key |
string |
Yes |
The name of the key to set. It cannot exceed 512 characters and cannot contain spaces or backslashes (/). |
test_key |
| Url |
string |
Yes |
The download link for the key-value pair to set. This parameter is automatically generated when you call the SDK. Use the SDK to call it. |
https://xxxobject.oss-cn-reginon.aliyuncs.com/9d91_xxxxxxxxxxx_158bb6e0f97c477791209bb46bd599f7 |
Response elements
|
Element |
Type |
Description |
Example |
|
object |
Schema of Response |
||
| RequestId |
string |
The request ID. |
EEEBE525-F576-1196-8DAF-2D70CA3F4D2F |
| Length |
string |
The length of the value in the key-value pair. |
4 |
| Value |
string |
The content of the key. If the length exceeds 256 characters, the first 100 and last 100 characters are displayed, with the middle omitted. |
test |
Examples
Success response
JSON format
{
"RequestId": "EEEBE525-F576-1196-8DAF-2D70CA3F4D2F",
"Length": "4",
"Value": "test"
}
Error codes
|
HTTP status code |
Error code |
Error message |
Description |
|---|---|---|---|
| 400 | InvalidAccount.Malformed | The specified account is invalid. | The account number is not entered correctly, for example, the input is empty. |
| 400 | InvalidNameSpace.Malformed | The specified namespace is invalid. | The bucket name is entered incorrectly, such as an empty string. |
| 400 | InvalidKey.Malformed | The specified key is invalid. | Key name input error, such as entering an empty string. |
| 400 | InvalidKey.ExceedsMaximum | The size of the key cannot exceed 512 bytes. | The length of the requested key is too large. |
| 400 | InvalidValue.ExceedsMaximum | The size of the value cannot exceed 2,000,000 bytes. | The value deposited is too large. |
| 403 | InvalidKey.ExceedsCapacity | The maximum capacity of a single namespace cannot exceed 1 GB. | The capacity of the storage space exceeds the limit. |
| 403 | Unauthorized.InvalidParameters | The specified authentication parameters are invalid. | Authentication parameter input error. |
| 403 | Unauthorized.InvalidTime | The specified authentication time is invalid. | The authentication time parameter you entered is invalid. Check the parameter value and try again. |
| 403 | Unauthorized.InvalidToken | Token authentication failed. | The token you entered is invalid. Please check and enter the correct token and try again. |
| 404 | InvalidAccount.NotFound | The specified account does not exist. | The specified account does not exist. |
| 404 | InvalidNameSpace.NotFound | The specified namespace does not exist. | |
| 404 | InvalidKey.NotFound | The specified key does not exist. | The specified key-value pair does not exist. |
| 406 | InvalidNameSpace.Duplicate | The specified namespace already exists. | Specified storage space |
| 406 | InvalidNameSpace.QuotaFull | The maximum number of namespaces is exceeded. | The number of storage spaces exceeds the capacity limit. |
| 429 | TooManyRequests | Too many requests are submitted. | Submissions are too frequent, please try again later |
| 429 | TooQuickRequests | Request for putting or deleting keys are frequently submitted. | The modification or deletion of key-value pairs is too frequent. |
See Error Codes for a complete list.
Release notes
See Release Notes for a complete list.